diff --git a/Assets/FluxTension.cs b/Assets/FluxTension.cs new file mode 100644 index 000000000..371b46c0d --- /dev/null +++ b/Assets/FluxTension.cs @@ -0,0 +1,48 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class FluxTension : MonoBehaviour +{ + TypeQuark[] quarks; + [Tooltip("How elastic are flux tubes at pulling quarks together? (A constant)")] public float A = 1; + public float B = 1; + public float C = 1; + public float threshold = 1000; + + public GameObject fluxCenter; + + public float scale = 0.1f; + + // Start is called before the first frame update + void Start() + { + quarks = gameObject.GetComponentsInChildren(); + } + + // Update is called once per frame + void Update() + { + foreach (TypeQuark quark in quarks) { + Vector3 totalForce = Vector3.zero;//getForce(quark.transform.position, transform.position) * 100; + totalForce += getForce(quark.transform.position, fluxCenter.transform.position); + if (float.IsNaN(totalForce.x) || float.IsNaN(totalForce.y) || float.IsNaN(totalForce.z)) //NaN Check + continue; + quark.GetComponent().AddForce(totalForce, ForceMode.Force); //Apply a force to each quark in the direction of the flux tube center + //fluxCenter.GetComponent().AddForce(-scale * totalForce, ForceMode.Force); + } + } + + Vector3 getForce(Vector3 pos1, Vector3 pos2) { + Vector3 r = pos2 - pos1; + //F = Ar + Br^Cr + Vector3 force = ((A * r + (Mathf.Pow(B * r.magnitude, C * r.magnitude) * r.normalized)) * Time.deltaTime); + + if (force.magnitude > threshold) { + force = force.normalized * threshold; + Debug.Log("Threshold reached!"); + } + + return force; + } +} diff --git a/Assets/Scripts/ECS Particles/Spawner.cs.meta b/Assets/FluxTension.cs.meta similarity index 83% rename from Assets/Scripts/ECS Particles/Spawner.cs.meta rename to Assets/FluxTension.cs.meta index 0dc228483..27ffb3e93 100644 --- a/Assets/Scripts/ECS Particles/Spawner.cs.meta +++ b/Assets/FluxTension.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: d2fc70c9c46a0144682aea3d738badb7 +guid: 064c76acb20ef95468574513385756dd MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Assets/Fonts/Renogare-Regular SDF.asset b/Assets/Fonts/Renogare-Regular SDF.asset index e2f088de2..63f66789e 100644 --- a/Assets/Fonts/Renogare-Regular SDF.asset +++ b/Assets/Fonts/Renogare-Regular SDF.asset @@ -41,7 +41,7 @@ Texture2D: m_ColorSpace: 0 m_PlatformBlob: image data: 1048576 - _typelessdata: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010406070b0e0f0f0d09080603000000000000000000020507080c0e0f0e0b07070501000000000000000000030608090d0f0f0e0a07060400000000000000000000000000000000000105090b0b1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110d0c0a060200000000000000000000000000000000000000000000000000000000000000000000000000040607070809090a0908080706050300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004060707070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070707060400000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b1313131313131313131313131311110e0b060000000000000000000003090d11121313131313131313131313131313090907030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606070808080707060400000000000000000000000000000000000000000000000000000000000000000000000000000205070813131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313130d0c0a0702000000000000000000000000000000010407071213131313131313131313131313130f0e0c08040000000000000000000000000000000000000000000000000000000000000000000406071213131313131313131313131313130f0e0c080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306070808090a090807070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306070809090a090808070604000000000000000000000000000000000000000000000000000000000000000000000000000001050707121313131313131313131313131313130b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e10111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312110f0c0701000000000000000000000000000000000000000000000001070d111314181b1c1b191515120f0a04000000000003090e121415191b1c1b181413110d08020000000000040a0f1315161a1b1c1b171313100c070000000000000000000000000000060c111517181d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d191916120d070000000000000000000000000000000000000000000000000000000000010407070a070c10131314151516161615151413120f0b06090706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020608080b070c101313141413100c070a070604000000000000060606060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000020608080b070c101313141413100c070a07060400000000000006060606060606060606060606000000000000000000000000000000060c11151718202020202020202020202020201e1d1b17120b0400000000000000070e15191d1f20202020202020202020202020201615130f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507060b0f121314151515141313100c070706030000000000000000000000000000000000000000000000000000000000000003090e1214151f202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201a1917130e0700000000000000000000000001080d1113141f20202020202020202020202020201b1a18140f09010000000000000000000000000000000000000000000000000000000000070c1013131e20202020202020202020202020201b1a18140f090100000000000000000000000000000000000000000000000000000000000000000000000001040607060c101213151516161615141312100c06080705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606060b101213151516161615141413100c070807050200000000000000000000000000000000000000000000000000000000000002080d1113141f202020202020202020202020202020181715110c060000000000000000000000000000000000000000000000000000000000000000000000000000000000030b11161a1c1d202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1e1b18130c05000000000000000000000000000000000000000000040c13181d2021242829282622211f1b150e08020001070c141a1e2121262829282521201d19130b06000003090e151b1f22232628292724201f1c18120b0300000000000000000000000911181d2124252a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2625231e19120a010000000000000000000000000000000000000000000000000406080d1113141719181c1f20212122232323222121201f1b1718151312100c060300000000000000000000000000000000000000000000000000000000000000000000000000000000000206090e121415181b181c1f2021201f1c181a171312100c070407090a1313131313131313131313131307060401000000000000000000000000000000000000000000000000000000000206090e121415181b181c1f2021201f1c181a171312100c070407090a1313131313131313131313131307060401000000000000000000000910171d2124242d2d2d2d2d2d2d2d2d2d2d2d2d2b2a27231d160e0600000000000911192025292c2c2d2d2d2d2d2d2d2d2d2d2d2d2d23221f1b160f070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090e121415171c1f202121222221201f1c18161312100b0604010000000000000000000000000000000000000000000000000000060e141a1e21222c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2626231f19120a01000000000000000000040c13191d20212c2d2d2d2d2d2d2d2d2d2d2d2d2d2d282724201a130b030000000000000000000000000000000000000000000000000000030b12181c1f202b2d2d2d2d2d2d2d2d2d2d2d2d2d2d282724201a130b0300000000000000000000000000000000000000000000000000000000000000000205070d11131417171c1f2021222223232221201f1c17181514120e090603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121316171c1f2021222323232221201f1d18171414110e0905020000000000000000000000000000000000000000000000000000050c13191d20212c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2423211d171008000000000000000000000000000000000000000000000000000000000000000000000000000000050d151c2226292a2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2b2a28231e170f0600000000000000000000000000000000000000090d161d24292c2d31343535332f2e2b262019140d050b12181f252a2d2e32353534322e2d2a251e17110a060e151a20272b2e2f33353534312d2c28231d150c0800000000000000000009121b22292e313237373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373733322f2a231c130a00000000000000000000000000000000000000000004070c101314191d2021242623282c2d2e2e2f2f302f2f2e2d2d2b27222422201f1c17120f0b060000000000000000000000000000000000000000000000000000000000000000000000000003090e12151a1e2122252823282c2d2d2d2c29232723201f1c181210131616202020202020202020202020201413110d080100000000000000000000000000000000000000000000000003090e12151a1e2122252823282c2d2d2d2c29232723201f1c181210131616202020202020202020202020201413110d08010000000000000009121a22282d3031393939393939393939393939393836332e2820180e0400000007111b232b3136383939393939393939393939393939302f2c2721191007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f13151a1e212122282b2d2d2e2f2e2e2d2c282323201f1c1713100d07010000000000000000000000000000000000000000000000060f181f262b2d2e393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393933322f2a241c130a0000000000000000040d161e24292c2d3939393939393939393939393939393534312c251d150b00000000000000000000000000000000000000000000000000030c151d23282c2d3839393939393939393939393939393534312c251d150b01000000000000000000000000000000000000000000000000000000000003090e1214181d20212423282c2d2e2f2f302f2f2e2d2c28232422211e1a15130f0a050100000000000000000000000000000000000000000000000000000000000000000000000000000000000003090f11171c1f202223282b2d2e2f2f302f2f2e2d2c29242421201e1914120e09030000000000000000000000000000000000000000000000050e161e252a2d2e3939393939393939393939393939393931302d28221a120800000000000000000000000000000000000000000000000000000000000000000000000000030d171f272d323637393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393837342f2921180f0500000000000000000000000000000000020b121b1f282f35393a3e414242403c3a37312a251f170e151d232931363a3b3f4142413e3a39363028231c140f1820262b32373b3c404242413d3a38342e271e1a120a0100000000000006111b242d343a3d3e444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444403e3b352e251c1207000000000000000000000000000000000000070c1013181d1f2024292c2d30332e34383a3a3b3c3c3d3c3b3b3a3937332d312f2d2c28231f1c17110e08020000000000000000000000000000000000000000000000000000000000000000040a0f151a1e21262b2d2e32342e34383a3a3a38342f34302d2c28231f1c2022232d2d2d2d2d2d2d2d2d2d2d2d2d2d201d19130c04000000000000000000000000000000000000000000040a0f151a1e21262b2d2e32342e34383a3a3a38342f34302d2c28231f1c2022232d2d2d2d2d2d2d2d2d2d2d2d2d2d201d19130c04000000000006101a242c34393d3e4646464646464646464646464644433f39322a20160b0000030e19232d353c424546464646464646464646464646463c3b38322b22190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f151b1f22252a2d2e2d3338393a3b3b3b3a3a38342e302d2b2823201d18120c07010000000000000000000000000000000000000000030e18212a31373a3b4646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646403f3b352e251c1207000000000000010c1620282f35393a45464646464646464646464646464642403c372f271d0f060000000000000000000000000000000000000000000000000b151e272e34383a45464646464646464646464646464642403c372f271d1309000000000000000000000000000000000000000000000000000000060b10141a1e2024292c2d302e34383a3b3b3c3d3c3b3a3a38342e312e2d2b26221f1b15110d08020000000000000000000000000000000000000000000000000000000000000000000000000000040a0f151a1c22282b2d2f2e34383a3b3c3c3d3c3b3b3a39352f302e2d2a25211e1a140f0a040000000000000000000000000000000000000000020c1620283036393a454646464646464646464646464646463e3d39342c241a0d040000000000000000000000000000000000000000000000000000000000000000000000000b151f2931383e4244464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464544403a332a21170c010000000000000000000000000000000b141d242d313a4145474b4e4f4e4c4847433c36302920181f272f343b4246484c4e4f4e4b4746413a342e261e19212a31373d4347494d4e4f4e4a46454039302c241c130a0000000000010c18222d363f454a4b5050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050504c4b4640372e23190d02000000000000000000000000000002080d12181c1f24292c2d2f35393a3d3f4140454647484849494948484746443f403e3c3a38342e2b28221c19140c07000000000000000000000000000000000000000000000000000000000002080d151b20262b2e31373a3b3e41434045464747454043413d3a38342e2c282c2f3039393939393939393939393939392c29241e160d0400000000000000000000000000000000000002080d151b20262b2e31373a3b3e41434045464747454043413d3a38342e2c282c2f3039393939393939393939393939392c29241e160d04000000000c17222c363e45494b53535353535353535353535353514f4b443c32281d1206000915202b353f474e5253535353535353535353535353534948433d342b21160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f161b20272b2e31363a3b3f3f44464748484847464540403c3a38342e2c29241d18120c070000000000000000000000000000000000000009141f2a333c42464852535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353534d4b4740372e24190e02000000000008131e28323a4145475253535353535353535353535353534e4d4841392f21180e030000000000000000000000000000000000000000000007121d2730394045465153535353535353535353535353534e4d4841392f251a0f04000000000000000000000000000000000000000000000001070c11171c1f252a2d2f35393a3d403f44464848494949484746443f403e3b3a37312e2b27201e19130d08020000000000000000000000000000000000000000000000000000000000000000000002080d151b20262b2d3338393c3f3f444648484949494847474540403d3b3a36302d2a261f1b160e090300000000000000000000000000000000000008131e28323a414647525353535353535353535353535353534b49453e362c1f160c010000000000000000000000000000000000000000000000000000000000000000000005111c27313b434a4f505353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535352504c453c33291e1307000000000000000000000000000009131d262f363f434b5154575b5c5b5955534e46413b322a2128313940454d5354595b5c5b5854524c443f383027232b333c42474e5456595b5c5a5753514b433e362e251c12080000000005111d29343f485056585d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5957514940352a1e120600000000000000000000000002080e13191d23282c2f35383a3d4145474a4c4e4b51535454555656565554545350494d4b4846443f3938332d2a251e18120b030000000000000000000000000000000000000000000000000000050c131920272b31373a3c4247484b4e504b51535453514b504d4a4644403a3834383c3d464646464646464646464646464639352f281f160c0100000000000000000000000000000000050c131920272b31373a3c4247484b4e504b51535453514b504d4a4644403a3834383c3d464646464646464646464646464639352f281f160c01000005111d28343e48505557606060606060606060606060605e5c564e44392e23170b000d1925313c4751595e5f6060606060606060606060606056544f473d32271b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c151b21272c32373b3c4246484b4a5053545455555453514b4d4946443f3a39352f29231d18120b0300000000000000000000000000000000020e1a26313c454d53555f606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605957524a40352a1f130700000000010d19242f3a444c52545f60606060606060606060606060605b59534b41332a201509000000000000000000000000000000000000000000000c18232e39434b51535e60606060606060606060606060605b59534b41372c20140800000000000000000000000000000000000000000000030b12181c23282b30363a3b4145474a4d4a50535455555656555453504a4d4b4846423c3b37322d2a251e19130d070100000000000000000000000000000000000000000000000000000000000000040c131920272b3137383f4446494c4a50535455565656555453514b4c4a4746423b3a36312c27211a140b0600000000000000000000000000000000010d1925303a444c52545f606060606060606060606060606060575550483e31281d1207000000000000000000000000000000000000000000000000000000000000000000000a16222d38434d555b5d606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605e5c574f453a2f23180c00000000000000000000000000040d1b252f38404850555d606467686866625f58524d443c332a313a434b51575e616568686765615e56504a4239302b353d454d535860626668686764605c55504840372e241a0c030000000915212e3a45505a62656a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a66635b51463b2f23160a0000000000000000000001070c14191e252a2e34383a4045474a4c525457595b545c60616162626362626160605b535a575553504a46443f38363028231c150c06000000000000000000000000000000000000000000000000080e161e252a32373c4247484d5355585b5d545c6060605c555c5a5653514a464440444849535353535353535353535353535345413a31281e1308000000000000000000000000000000080e161e252a32373c4247484d5355585b5d545c6060605c555c5a5653514a464440444849535353535353535353535353535345413a31281e130800000815212d3945505a61646c6c6c6c6c6c6c6c6c6c6c6c6c6b6760564b3f33271b0e00111d2936424e59636a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6360594f43382c1f1307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b121820262b32383d4347494d535458545b606061626161605c555a5653504a47454039342f28231c150c0700000000000000000000000000000005121e2b37424d575f616c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0000000004111d2935414c565d606c6c6c6c6c6c6c6c6c6c6c6c6c6c6c68655d53453c31261a0e03000000000000000000000000000000000000000004101c2834404b555c606b6c6c6c6c6c6c6c6c6c6c6c6c6c6c68655d53483c3124180c000000000000000000000000000000000000000003090d151d23292e34383b4246484b5154575a545c6061626263626261605c545a5755534d4947433d39363029251e18130c040000000000000000000000000000000000000000000000000000000000080e161e252932373c43474a50535559545c6061626263626261605d55595754524d4846423b38322a261f17110a02000000000000000000000000000005111d2a36414c565e616c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5043392f24180d030000000000000000000000000000000000000000000000000000000000000000010e1a26323e4a555f666a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6861574c4034281b0f000000000000000000000000010c161f2d37404a525a62676d71747575736f6a615e564d453c313a434b555c60696e72747574716d68605c544a4239333d474f575f626a6f73757574706d67615a514940362c1e150b0000000b1724313d4a56626c71777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777736d63574b3e3225190c000000000000000000030b12181f252a3036394045464b515357565d6063666769666d6d6e6f6f706f6e6e6d6c6569676462605c5453504a46413b342e271e17110a020000000000000000000000000000000000000000010a111a202830363c43474d5355575f616567696b666d6d6d676b696763605c5453514a4f5456606060606060606060606060605f524c433a2f24190d01000000000000000000000000010a111a202830363c43474d5355575f616567696b666d6d6d676b696763605c5453514a4f5456606060606060606060606060605f524c433a2f24190d01000a1724303d4955616c71797979797979797979797979797772675c4f43362a1d1100121f2c3845525e6a7579797979797979797979797979796f6b6054483b2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c151d232832373d43484e5456575e616568666c6d6e6e6e6d6d67696663605c5453514b454039342e271e18100700000000000000000000000000000714212d3a46535f696e7979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979736e63574b3f3226190c000000000713202c3945525d686d787979797979797979797979797979756f65574d42372b20150900000000000000000000000000000000000000010c161f2c3845515c676d787979797979797979797979797979756f65594d4034271a0e00000000000000000000000000000000000000060d141a1f272f34383f44464d5254555d60636669666d6e6e6f706f6e6d6d66696764615f5756544e4746413a353029241d160d070100000000000000000000000000000000000000000000000000010a111a202830353d43474e53545b60626568666d6e6f6f706f6e6e6d67686663615e5655534d48433d363127221b140b04000000000000000000000000000713202d3946525e686d78797979797979797979797979797979716c61554b4035291f1409000000000000000000000000000000000000000000000000000000000000000003101c2936424f5b667177797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797873685c5044372a1e1100000000000000000000000008131e28313f49525c646d717a7e8182817f7c756e685f574d4339414b555d676d747b7f8182817e7a736d665c544a403b454f5960696e767c808182817d79716c635b51483e30271d120700000b1825323e4b5865717e8383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383837f7366594c403326190d0000000000000001080d151d242930363a41464b5153555d606467686d7072747678797a7b7b7c7c7c7b7b7a79787673716f6d6663605b54524c4440393027221b140b02000000000000000000000000000000000000020b131c232c323a41464e54575f6266696e7174767879797a7a79787674706d6663605c545960636c6c6c6c6c6c6c6c6c6c6c6c6c6c5d564c4135291d11040000000000000000000000020b131c232c323a41464e54575f6266696e7174767879797a7a79787674706d6663605c545960636c6c6c6c6c6c6c6c6c6c6c6c6c6c5d564c4135291d1104000b1824313e4b5764717e8686868686868686868686868684776b5e5144382b1e110013202c3946535f6c7987868686868686868686868686867c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e171e272e343c43474f5458606266696e727577797a7b7b7b7a797876736f6d6664605d55514b444039302a2218120b030000000000000000000000000815222e3b4855616e7b8686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686807366594d4033261a0d000000000714212d3a4754606d7a8586868686868686868686868686868175695f53473c31261a0e0305050505050505050505050505050505050008131e2935404b55606d798486868686868686868686868686868175685b4e4235281b0f000000000000000000000000000000000001070f181f262a313940454a5053575e6166676d70737577797b7b7c7c7c7b7a79787673716e696762605854524c46413a352f281f18120b030000000000000000000000000000000000000000000000020a131c232b323a41464e54585f62666c6f727577797b7b7c7c7c7b7a7a787573706e6966615f57544e46423b332d261d160d050000000000000000000000000714212e3a4754616d7a858686868686868686868686868686867e71675d51453b31261a0c030000000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a77838686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868685786b5e5245382b1f120000000000000000000000010d19242f3a43515b646e747e858a8e8f8e8c88827a6e695f554b4045515d676d7980868c8e8f8e8b8680786d665c5144424d57606b707b82898c8e8f8d8a847e736d635a5043392e23180c00000d192633404c5966737f8c909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090908e8174675b4e4134281b0e000000000000040c13191f272f353b41464c52545c6064676d7074777a7d7f81838486878788898989888787868582807e7b7974706c66615e56514a423d332d261d140b0200000000000000000000000000000000020b141d252e353e444c52586062696e73787b7e81838586868786868582807d7974706d6661606b707979797979797979797979797976685d5245392c20130600000000000000000000020b141d252e353e444c52586062696e73787b7e81838586868786868582807d7974706d6661606b707979797979797979797979797976685d5245392c201306000b1824313e4b5764717e8a93939393939393939393939184776b5e5144382b1e110013202c3946535f6c7986929393939393939393939393897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000811192029303940454e535960636a6f73777b7e8284868787888887868483807c7975716d67605c55514a423c3428231d150c0300000000000000000000000714212d3a46535f69717e8b93939393939393939393939393939393939393939393939393939393939393939393939393939393939393938c807366594d4033261a0d000000000713202c3945525d68727f8c96939393939393939393939392877b6e62574d42372b2015091212121212121212121212121212121212120d19242f3945515d67727f8b96939393939393939393939392867b6e6155483b2e22150800000000000000000000000000000000030b1218212931363e434b51545c6064696e72767a7d8082848687888889898887868583807e7b78746f6a66615e56524c45403a3129231d150d06000000000000000000000000000000000000000000010a141c252e353d444c525860626a6e73787c7f828486878889898988878684827f7d7b77736e69626058534d443f382f281f170e0500000000000000000000000713202d3946525e68727f8b959393939393939393939393939184796d60574d42362a1e150b0000000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a77839093939393939393939393939393939393939393939393939393939393939393939393939393939393939393939185786b5e5245382b1f12000000000000000000000004111d2935414c56626d74808b92979a9b9b99938f847b6e675d51454f59606d79838d92999b9b9a98928c82786d60584e46535e69707d869094999b9b9a96918a7f736c61554b4034281c1004000d192633404c5966737f8c999d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9a8e8174675b4e4134281b0e0000000000070d161e2429313940454d52565e61666d7075797d8184868a8c8e8f91939a949595969595949993928f8d8a8885817d78736e68605c544f443f382f261d140a000000000000000000000000000000000a141d262f3740474f565e616a6f757b8084888b8e90919299939992918f8d8985817d79706c63707d868686868686868686868686867a6d6054473a2d211407000000000000000000000a141d262f3740474f565e616a6f757b8084888b8e90919299939992918f8d8985817d79706c63707d868686868686868686868686867a6d6054473a2d211407000b1824313e4b5764717e8a979f9f9f9f9f9f9f9f9f9e9184776b5e5144382b1e110013202c3946535f6c7986929f9f9f9f9f9f9f9f9f9f96897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a232b333b424b51585f626b6f767c8083878b8f9092989495949a93918f8d8985817e79726d67605c544e463e342e271e150d030000000000000000000005121e2b37424d57626c75818e96a19f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f998c807366594d4033261a0d0000000004111d2935414c56606d7984919ea89f9f9f9f9f9f9f9fa3998e8175695f53473c31261a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d2935414c56606d7985919ea89f9f9f9f9f9f9f9fa2988d8074695f53463a2d211407000000000000000000000000000000050d151d2329333b424650555c60666d71767b7f83868a8d8f9192999595969595949792908d8a8885807c77736d68615e56514b433d342f271f180f0700000000000000000000000000000000000000000a131c262e373f474f565e616a6f757b8084888c8f91929995959695959496918f8c8a87837f7b756f6a615f5750494139312920170d040000000000000000000005111d2a36414c56606c7883909aa49f9f9f9f9f9f9f9f9fa1968d8073695f53463d30271c120700000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9e9185786b5e5245382b1f1200000000000000000000000613202c3945525d68727f8b929ea1a9a8a8a59e969184796d60534755606b75828f959fa3aba8aaa29f948d80746a5f534c56616e7b8592989fa6a8a8a8a19e918a7e71675c5145382c1f1306000d192633404c5966737f8c99a6aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa79a8e8174675b4e4134281b0e000000000910181f282f353e434b51565e61686d73797d81858a8d909399999a9c9e9fa4a1a2a2a3a2a1a1a49f9e9c9a9797928e8984807a726d666059504941382f261b1106000000000000000000000000000008121c262f384149515961686d757c82888d9196989a9c9e9fa3a0a39f9e9c9a97928e8a847d766f707c899393939393939393939393877a6d6054473a2d21140700000000000000000008121c262f384149515961686d757c82888d9196989a9c9e9fa3a0a39f9e9c9a97928e8a847d766f707c899393939393939393939393877a6d6054473a2d211407000b1824313e4b5764717e8a97a4acacacacacacacaa9e9184776b5e5144382b1e110013202c3946535f6c7986929facacacacacacacaca296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111a242c353d454d545c606a6f757c82898c9095989b9d9fa3aaa1a1a49f9e9c9997928e8a857f79726d665f585045403930271f150b02000000000000000000020e1a26313c45505a606d7a849199a4afacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaca6998c807366594d4033261a0d00000000010d19242f3a45515d67727e8b96a0acacacacacacacb5ab9f93877b6e62574e42372b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c3945525d68727f8c97a1adacacacacacacb3a99f92867a6d61574d42362a1e12050000000000000000000000000000060e161f272f343e454d535a61676d72787e83878c909299999c9d9fa3aba2a3a2a1a9a29f9c9a9797918d8984807a736d68605d554f45403931292119100800000000000000000000000000000000000008111c262e384049515960686d747c82878d9196989b9d9fa3aba2a3a2a1a8a19e9b999695908c87827c756e69605b534b433b32291f160c02000000000000000000010d1925303a44505b666f7c87939fa9b3acacacacacacb2a89f92867b6e61594f42392e23180c02000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacab9e9185786b5e5245382b1f1200000000000000000000000714212d3a4754606d7a85929fa4adb3b5b4afa9a0968c7f7266564c5663707d89939ea7afb5b5b4aea69f93877c6e6255525e6875818e97a2aab0b4b5b2ada39e9184796d6053463a2d201307000d192633404c5966737f8c99a6b2b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b4a79a8e8174675b4e4134281b0e00000009121b222a313a41454f555d60686e747a7f858a8e92989a9d9fa4aba7a9abacafb6aeafafafaeb5afacaba9a6a9a29f9a96918d857f78706b605b534941382d22170f05000000000000000000000000050f1a242e38414a525b636b707a81888f93999ea1a8a7a9abacaeb5aeacaba9a9a29f9b96918a827c707c89969f9f9f9f9f9f9f9f9f93877a6d6054473a2d2114070000000000000000050f1a242e38414a525b636b707a81888f93999ea1a8a7a9abacaeb5aeacaba9a9a29f9b96918a827c707c89969f9f9f9f9f9f9f9f9f93877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1b9b9b9b9b9b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9b9b9b9b9b9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19232c363e474f575e666d747c82898f94999da0a7a8aaacaeb4aeb6afacaba9a9a19e9b97928c847e786f6a625a514b423931271d140a0000000000000000000009141f2a333f45525d68707d87939fa7b1bcb9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b3a6998c807366594d4033261a0d000000000008131e2935404b55606d7884919ea7b1bcb9b9b9b9bbafa4998e81756a5f53473c313838383838383838383838383838383838383838383835414c56606d7a85929ea9b3beb9b9b9b9b9ada1978c8073685e52453b31261a0e0200000000000000000000000000060f1720283139404550575f616c70797f848a90939a9d9fa3aba8aaacaeb5afafafaeb3adaba9a6a9a19e9a96918c86807a736d676059514b433b332b221a110800000000000000000000000000000000050f1a232e38404a525b636b707a81878f939a9ea1a8a8aaacaeb5afafafaeb2acaba8a6a7a09d9a938f89827b726c655d554d443b31281e140a0000000000000000000008131e28333f4a54606a74818e97a2adbab9b9b9b9b9baaea3988f82756b60544a4034281e1408000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b8ab9e9185786b5e5245382b1f1200000000000000000000000b1825313e4b5864717e8b97a2adb9bec2c1bbb2a89d918477685d525b6875818e9ba6b0bbc0c2bfbaafa4998d8073665a54616d7a86929fa9b3bcc1c2bdb9ada1968a7d7063574a3d3024170a000d192633404c5966737f8c99a6b2bfc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c1b4a79a8e8174675b4e4134281b0e000006101b242d343c434c525961676d737b81868c91979b9fa2aaaaacafb5b4b6b7b9bbc0bbbcbcbcbbc0bbb9b8b5b3b3adaba8a19e98928c847d736c655b53493f332721170d0200000000000000000000030c17212c36404a525c646d737d858e939b9ea6abacb2b4b6b8b9bbbfbbb9b8b6b3adaba8a09e948f867d7d8996a3acacacacacacaca093877a6d6054473a2d21140700000000000000030c17212c36404a525c646d737d858e939b9ea6abacb2b4b6b8b9bbbfbbb9b8b6b3adaba8a09e948f867d7d8996a3acacacacacacaca093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdc6c6c6c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5c6c6c6bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b353e48505960696e7881878f949c9fa6aaacb1b5b7b9babfbbc0bbb9b7b6b3adaba9a19e96918b847c716c605c544b43392f261c1106000000000000000000030e18212935414c56606b73808d959faab4bfcac6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6bfb3a6998c807366594d4033261a0d0000000000010c18242f3944505c66717e8a95a0acb8c2cdc6ccc0b5ab9f93877b6e62574e4245454545454545454545454545454545454545454545454546525e6873808c97a2adbbc4cfc6c9bdb2a89e92857a6d60564c4133291f140900000000000000000000000000050f172129323a434b515a61696e767d848b91969c9fa4acacafb5b5b7b9bbbfbbbcbcbbbebab8b6b3b2adaba8a09e98928d8580796f6b605c554d453c342c231a12080000000000000000000000000000030c17212c35404a525c646d727d858e939a9fa4acadb2b5b7b9bbbfbcbcbcbbbdb9b7b5b2b1acaca49f9b948f867f776d675e564d433a30261c1106000000000000000000020b17222d38424e58616d7a85929fa7b1bec7d2c6cbbfb4aa9e93897d70665c51443b3025190b020000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c4b8ab9e9185786b5e5245382b1f1200000000000000000000000e1b2734414e5a6774818d9aa9b3becacfcdc3b8aca096877a6d60545e6b7884919eabb7c1cbd0cac0b5ab9c8f8376695c5763707d8a99a3afbcc5cecfc9bdb2a8998d8073665a4d4033271a0d000d192633404c5966737f8c99a6b2bfcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbc1b4a79a8e8174675b4e4134281b0e00000c17222d363e464e565d606b70797f868d92989ea1a9acaeb4b7b9bbc0c1c2c4c6c8ccd2c8c9c8d2ccc7c6c5c2c0bebab8b2adaaa29f96918880776c655b50443e33291f1409000000000000000000000a151e29333e48525c646e747f8892979ea5aab0b7b9bdc1c3c4c5c7cbc7c5c4c2bebab8b2aca69f989286808d9aa6b3b9b9b9b9b9ada093877a6d6054473a2d211407000000000000000a151e29333e48525c646e747f8892979ea5aab0b7b9bdc1c3c4c5c7cbc7c5c4c2bebab8b2aca69f989286808d9aa6b3b9b9b9b9b9ada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad2d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d2c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a333d47505a616b6f7b838d939a9ea6abb0b7b8bcc2c3c5c7cbd1ccc8c6c4c2beb9b8b3ada8a19e9691867e746d665d554b42382d22171007000000000000000000060f1924303a444f59606d78839098a2aebac1ccd6d2d2d2d2d2d2d5cec8c5c3c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2bfb3a6998c807366594d4033261a0d00000000000007121d28343f4a54606c7883909da6b0bbc7d3d2c7bbafa4998e81756a5f53525252525252525252525252525252525252525252525252524d56616d7a85929fa9b3becdd6d2c5b9ada1968c7f72675d51443a3021170d03000000000000000000000000050e172129333b444c555c606c717b828a91969ea0a8acafb6b9bbc0c2c4c5c7cbd1c9c8d0cac6c5c3c0beb9b8b2acaaa29f98928c847d736d675f574e463d352c241a1107000000000000000000000000000b151e29333e47525c646e737f8792979fa4acafb6b9bdc2c4c5c7cbd1c9c8cec9c5c4c2bfbcb8b6afaca69e98928c81796e695e554b42382e23170b0300000000000000000006111c262f3d46525e68727f8b95a0acb6c0ccd8d1c6bcafa59d9184786d60564c41362a1d140a0000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0d2d2d2d2d2d2d2d2d2dbd6d3d2cbcacacacacacacacacacacacacacacacacacacacacac4b8ab9e9185786b5e5245382b1f1200000000000000000000000f1c2835424f5b6875828e9ba8b5c1cfdad4c8bcb1a794887b6e61555f6c7985929facb8c5d2dbd2c3b7aa9d9084776a5d5864717e8b97aab4bfcbd7d9d0c1b4a79a8e8174675b4e4134281b0e000d192633404c5966737f8c99a6b2bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebeb4a79a8e8174675b4e4134281b0e0005111d28343e4850585f686d747d848c92989fa2aaadb3b8babfc3c6c7ccd2cfd1d2d1cfcecdcccdcecfd1d2d1cfd0cac6c4bdb9b4aea8a09a938c81776c605a50453b30251a0e03000000000000000006111c26303b45505a646e74808c939aa1a9afb6bbc1c5c9cecfd2ccc7c6c4c3c4c5c6c6c3bdb8b0aaa298928d929da9b5c1c6c6c6baada093877a6d6054473a2d21140700000000000006111c26303b45505a646e74808c939aa1a9afb6bbc1c5c9cecfd2ccc7c6c4c3c4c5c6c6c3bdb8b0aaa298928d929da9b5c1c6c6c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323c454f59616c717d8590959fa4acb0b7bbc2c5c8c9c6c4c2c1c0c1c2c4c5c8cac6c5beb9b2ada8a098928b80786d675d544a3f332822190b0200000000000000000008131e28323d44515c666e7b86929fa5afbac4d0d9e3dfdfdfd5cbc3bcb8b7b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b3a6998c807366594d4033261a0d000000000000010c17232e3844505b65707d89949fabb7c1cfd7ccc0b5ab9f93877b6e62575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e6873808d98a2aebbc5cfd4c8bcb1a79e9184796d60554c4132291e0f06000000000000000000000000030c172029333b454d565e676d757e868f949ea1a8acb2b9bbc0c5c7cbd1d0d2d2d0cfcececfd0d2d2cfcfc9c6c3bdb8b4aeaaa29f96918780796e6960584f473e362c23190f06000000000000000000000007121d27303b454f59636e73808c9399a1a9afb6bbc0c7c9cfd2ccc8c6c5c3c4c5c6cad0cecdc8c7c0bbb9b0aaa29f938f837b6e675d544a3f34281f1409000000000000000000000a141d2a36414c56606d7883909aa4afbbc5d0d8cfc1b8aca0958c7f72685e52463d2f261b110600000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0dddfdfdfdfdfe9e0d7d0cac6c5bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb8ab9e9185786b5e5245382b1f1200000000000000000000000e1b2734414e5a6774808d9aa9b3bec9cfccc3b8aca095877a6d60545e6b7884919eabb7c1cacfcabfb4ab9c8f8376695c5663707d8998a3aebac4cdd0c7bdb2a8998d8073665a4d4033271a0d000d192633404c5966737f8c99a6b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a79a8e8174675b4e4134281b0e000815212d3945505a616a6f7a818a91969fa2aaaeb4b9bec4c6cad0d2d4d2d1cfc9c6c5c2c1c0c0c0c1c2c4c5c9cfd2d4d3cfc9c5bebab2aca49f938d80746c61574d42362a20150900000000000000000c17232e38424d57616c73808d929fa4acb3bbc1c6ccd2ccc8c6c2c0bbb9b8b7b7b8babec0c4c2bcb4aaa39f9a9da4aeb9c5d1d2c6baada093877a6d6054473a2d2114070000000000000c17232e38424d57616c73808d929fa4acb3bbc1c6ccd2ccc8c6c2c0bbb9b8b7b7b8babec0c4c2bcb4aaa39f9a9da4aeb9c5d1d2c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c1925303a444d57606b717e8791979fa7afb6bec1c7cac6c4beb9b8b6b4b3b4b5b7b8bdc3c5c8c9c4bdb9b2aaa39f928d82796d665b50443f342b1d140a000000000000000000020c16202834404a545f69717e8b939ea8b2bdc7d2dde8e4d9cec3b9b1acaaa8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a6998c807366594d4033261a0d0000000000000006111c27333f4953606b76828f9ca5afbdc7d1d2c7bbafa4998e81756a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e7b86929faab4becdd7d1c5b8aca0958b7e71675c51433a2f20170d000000000000000000000000000b151e29323b454d575f686d79818b92989fa6acb2b9bdc4c8ccd2d3d2d0cac6c5c4c2c1c1c2c4c6c7ccd2d2d2cec8c6bfbab4aea8a099938d837b6f6a615950483e352b21180e05000000000000000000000c18232e39424d57616b73808c929fa4abb3bbc0c7ccd1cbc7c5c0bbb9b8b7b7b8babec2c6c8ccd2ccc8c1bcb4aea59e959083796d665c50443c31261a0e05000000000000000000020b1925303a44505c666f7c87939fa9b3becad6d4c8bdb1a89f92857a6e61584e41382d22170b01000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0dde9ececf8ede2d7cec6bfbab8b2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0ab9e9185786b5e5245382b1f1200000000000000000000000b1824313e4b5764717e8a97a1adb9bdc1c0bbb1a79d908377675d515b6874818e9ba5afbabfc1beb9aea3998c8073665954606d7a86929fa9b3bbc1c1bdb5aba096897d7063564a3d3023170a000d192633404c5966737f8c99a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59a8e8174675b4e4134281b0e000a1724303d4956616c717c848e939ea1a8aeb4babfc6c9cfd3d5d2cfcac6c5c1beb9b8b6b4b4b3b3b4b5b7b9bdc2c6c8ccd2d5d0cac3beb6afa59d928a7e71695e52463c31261a0e0000000000000003101c28343f4a545e69707e8a929da4afb6bec5cdd2d0c7c0bbb9b6b5afacabaaaaabaeb3b3b7b8bdbcb4aeaca6a9aeb6c0cad6d3c6baada093877a6d6054473a2d211407000000000003101c28343f4a545e69707e8a929da4afb6bec5cdd2d0c7c0bbb9b6b5afacabaaaaabaeb3b3b7b8bdbcb4aeaca6a9aeb6c0cad6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302316090404040302020100000000000000000000000000000000000000000000000000000000000000000000000000000a141e2a36414c565f69707d879299a1a9b1bbc0c7cbc5bebab8b3adaba9a8a6a7a8aaacb1b7b8bdc3c9c9c3bcb4aea49d948f81786c605b51463d2f261b1106000000000000000000040e18232e39424d57626c75818e96a1abb5c0ccd7e0e0d4c8bcb1a7a09d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c998c807366594d4033261a0d00000000000000000b17222d38414f59626f7c89939eabb5c0cbd7ccc0b5ab9f93877c787878787878787878787878787878787878787878787878787878787878808d98a2aebcc5d0d4c8bcb1a79d9184786d60554b4031281e0e0500000000000000000000000007121d27303a444d575f696e7a838e939fa2aab0b9bdc4c9ced4d1cbc7c5c2bfbab8b7b6b4b5b6b7b9bbc0c5c6cacfd4d0cac5bebab2aba49f9590857c706b615a50473d332a20170d02000000000000000004101c2834404b545e69707d88939fa4afb5bdc5ccd2cfc6bfbab9b6afacabaaaaabaeb3b5b9bbc0c7d0d4cec6bfbaafa7a0958f82786d60574d42372b21160b0000000000000000000008131e28343f4a54606a74818e97a2adbac3d0d9cec3baaea2988e81746a6053493f33271d1307000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0dde7f0f7f2e7dbd0c6bcb4aeaca5a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49e9185786b5e5245382b1f1200000000000000000000000714202d3a4753606d7985919ea4adb2b5b5afa8a0958b7f7265554c56636f7c89939ea6aeb4b5b3ada59f92867b6e6155525d6874818e97a1a9afb4b4b1aba4999184786d6053463a2d201307000d192633404c5966737f8c989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898988e8174675b4e4134281b0e000b1825313e4b5864717e8691969da5adb2babfc6cad0d5d3cfc9c6c4beb9b8b4b3adaba9a8a7a6a7a7a8abadb2b5b9bbc0c7d0d4d6d0c7c0bbaea49f92867b6e61574d42372b1c110600000000000006121f2c3844505c666e7b85929fa4aebbc0c7d0d1cbc2beb6afaca9aba49f9e9d9e9fa2aaa6aaacb2b8bcbab8b3b5b9c0c8d2dcd3c6baada093877a6d6054473a2d211407000000000006121f2c3844505c666e7b85929fa4aebbc0c7d0d1cbc2beb6afaca9aba49f9e9d9e9fa2aaa6aaacb2b8bcbab8b3b5b9c0c8d2dcd3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231611111111100f0e0d0c0b090706030000000000000000000000000000000000000000000000000000000000000006111c26303846525e686e7b859299a3abb3bbc2ccc7c0bbb3adaba9a19e9c9b9a9a9c9da0a8aaacb2b9bec5cdc6bfbaaea69e938d80746d62584e41382d22170b0100000000000000000007121c27303c45505a616d7a849199a4afbbc3ced7ded1c5b8aca095908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8c807366594d4033261a0d000000000000000006111b262f3d4754606a75828f99a3afbbc6d1d2c7bbafa499928685858585858585858585858585858585858585858585858585858585858587939faab4bfced7d0c7b8ab9f958a7d70665c5043392e1f160c000000000000000000000000050e18232e39434c565e696e7b8490959ea5aeb4bcc2c9ced5cfc9c6bfbab9b5b4aeacaaa9a8a8a9aaacafb5b8b9bec5c8ced5d0cac4bdb5afa7a09792867d716c61594f453c32291e1408000000000000000006131f2c3845515c666e7b85929aa4afbbc0c7d0d0cac1bdb4aeacaca49f9e9d9d9fa2aaa8acafb6bec2ccd2d0cac1b9b1a79e948d8073695f53463d33271c1003000000000000000000020b17232e38424e58616d7a85929fa7b1bec7d2d6cabeb3aa9f93877c6f655b50443a2f24180d030000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3ced5dee5eeefe2d6cabfb4aaa29f98979797979797979797979797979797979797979797979797979185786b5e5245382b1f1200000000000000000000000613202c3945515d67717e8a929ea1a8a8aba49f969083786d60534654606b74818e949fa2aaa8a9a29e938c8073695f534c56616e7a8591979ea5a7a8a8a09993877d70665c5044382c1f1206000d192633404c5966737f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8174675b4e4134281b0e000e1b2834414e5b6774818e96a0a8afb9bdc4cad0d6d4ccc7c4beb9b8b3adaba7a9a19e9c9b9a999a9b9c9ea1a8a9acafb6bec2cad1d9d2ccc0baaea2988e8174695f5347382d22170b000000000004101d2935404b55606d78839097a2adb6c0ccd2cfc6bfbab0aca49f9c989993919091929896999da0a8acb1b9c0c0c1c5cad2dae4d3c6baada093877a6d6054473a2d2114070000000004101d2935404b55606d78839097a2adb6c0ccd2cfc6bfbab0aca49f9c989993919091929896999da0a8acb1b9c0c0c1c5cad2dae4d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231e1e1e1e1e1d1c1b1a1918161312100c0606040000000000000000000000000000000000000000000000000000000b17232e38424f59616d7a849197a2abb4bdc4cdc5bdb5afa9a29f9997918f8e8d8e8f9195989da0a8adb3bbc3cbcbc0b8afa59d928b7f726a6053493f33271d1207000000000000000000000b151e2a333f46525d68707d87939fa7b1bcc6d0dbd0c3b7aa9d908382828282828282828282828282828282828282828282827e7164574b3e3124180b0000000000000000000a141d2b37434e58626e7b87929faab4bfcbd7ccc0b5aba298929292929292929292929292929292929292929292929292929292929292929399a4afbcc6d0d2c7beb0a69d9083766c61544a3f30271d0d040000000000000000000000020d17202834404b555e686e7b8491969fa7afbabec5ced5d0cac4bdb9b4aeaca8aaa29f9d9c9b9b9c9d9fa4ababadb3b8bcc3c9cfd6d0c7c0bbb1a9a19892877e716b60574e443b3025190f0500000000000004101c2934404b55606d79839097a2acb6c0ccd2cec6bfbaafaba39f9b9a939290919298979c9fa4acb0bbc0c7d0d6cbc3b9b0a69f92867b6e61594f44382c1f14090000000000000000000006111c26303d46525e68727f8b95a0acb6c0ccd8d0c5bbafa49a9083786c60554b4135291f15090000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909dabb3bcc3ccd3dce7ecdfd3c6baaea298928b8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a85786b5e5245382b1f12000000000000000000000004101d2935404b55616c737f8a91969a9b9a99938e847b6e665c51444f59606d79828c92989a9b9a97928b81786c60574d46525e686f7c858f93999a9b999591877f726b60544a3f34281c1003000916232f3c4956626f7c7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7d7063564a3d3023170a000714202d3a4753606d79849199a3afbbc3ced6d2ccc8c2bbb7b3adaba9a29e9b9797928f8e8d8d8d8e8f9196979c9fa4acb0b8c0c8d1ddd6cabeb4aa9f93877b6e62544a3f33281c0f030000000006131f2c3845515d67727f8c959fa9b3bec8d8cdc5bdb4aea69f9a938f8b88868584848586898d91969da0a7afb7bfc7d1d6dce4e0d3c6baada093877a6d6054473a2d2114070000000006131f2c3845515d67727f8c959fa9b3bec8d8cdc5bdb4aea69f9a938f8b88868584848586898d91969da0a7afb7bfc7d1d6dce4e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302a2a2a2a2a2a2a292827262523201f1c171313100c0700000000000000000000000000000000000000000000000003101c28343f4a54606b75828f96a0a9b3bdc6cdc4bbb3aba39f97928d8985838180818284888b91969ea1a9b1b9c2cacac1b8aea49f93877c6f655b5044392f24180c00000000000000000000030c18212935414c56606b73808d959faab4bfcad6d0c4b7aa9d91847975757575757575757575757575757575757575757575716c6155493d3024170a000000000000000000020b1b27323d47535f6a74818e98a3aebac5d0d2c7bdb4aaa29f9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9fa4abb5c0ced8ccc0b6ac9f94897d70635a5042382e1e150b00000000000000000000000009141f29333b45515c676d7a849196a0a8b1b9c1cad0d4cec5bfbab2adaba39f9c989892918f8e8e8f9193999a9ea2a9acb1b9bec4cdd7d2ccc3bbb3aaa29992877d6f6a5f564c41362a21170d03000000000006131f2c3845515c67727f8c959fa9b3bec7d2cfc6bcb4aea59e99928e8a8685848485878b8f939a9fa6afb6bec7d2d5cbc2baaea3998f82756b6054483b31251a0e02000000000000000000000a141e2a36414c56606d7883909aa4afbbc5d0d8ccc0b6ac9f958b7e71675d51453c31261a0c0300000000000000000000000000000000000000000000000004111d2a3744505d6a77839099a2aab2bac2cad6dce2dfd2c5b8ac9f92857f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7063574a3d3024170a0000000000000000000000010d18242f3943505a636d737e848a8d8e8e8b87817a6e695e544a4045515c676d7880868b8d8e8d8a857f756c665b5045414c565f6a6f7b82888c8e8e8d89847d726d62594f42382e23170c00000815222e3b4754606a6f727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272706b6054483c2f221609000613202c3945515d676f7c87929fa7b1bcc6ccc7c0bbb9b0aaa9a19e9a97928e8a87858381818080818284878b8f939a9fa6aeb6c0c8d2dbd0c5bbafa49a8d8074665b5044382b1f120600000003101c28343f4a54606d7985929ea7b1bbc5d0d0c5bbb3aba39f948f87827f7b79787777787a7c80848a91959da5adb5bfc9d2dee7e0d3c6baada093877a6d6054473a2d21140700000003101c28343f4a54606d7985929ea7b1bbc5d0d0c5bbb3aba39f948f87827f7b79787777787a7c80848a91959da5adb5bfc9d2dee7e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c373737373737373635353433322f2d2c2823201f1c18120d080200000000000000000000000000000000000000000006121f2b3844505c66707d89949ea8b2bbc5cfc4bbb3a9a299928d85807c797675737475777b7f848b9297a0a7b0b8c2cccac0bbafa4999083786c60554b4035291c110600000000000000000000060f1924303a444f59606d78839098a2aebac1ccd1c5b8aca0958e81746c696969696969696969696969696969696969696964615a5045392d211508000000000000000000000a16202b37434e58616e7b86929faab4becad6d0c6bcb4aeacababababababababababababababababababababababababababababababacafb5bdc7d2d4c8bbafa49a8f82766b6054483e30261c0c030000000000000000000000020b1a25303b45505a606d79839096a0a8b2bac2cbd6d7cac2bcb4aea8a19e99928f8b878584838182838486898d92979da0a7adb3bbc1cbd1d7cdc5bcb4aba39992857c6e685e52463f33291f14090000000004101c2834404a54606d7985919ea7b1bbc5d0d1c7bdb4aaa29f938e86817d7a787777787a7e82878f949fa4acb6c0ccd8d7cbbfb4ab9e94897d7063574d42362a1e120500000000000000000000020c1925303a44505c666f7c87939fa9b3becad6d2c7beb1a79e91857a6d60574d42372b1e150b000000000000000000000000000000000000000000000000000c1926323f4c5965727f879298a0a8b0b8c0cbd0d8dfd3c6baaea29891857d72717171717171717171717171717171717171717171717171706b6155483c2f23160900000000000000000000000007121d28313e48525b636c71797d8082817f7b746d685e574d4239404b555c666d737a7e8182807e7a726d605b544a3f3b444e585f696e757b7f8181807d78706b625b51473d30261c1106000006131f2b37434e5860626565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656360594f44382c2013070004111d2935404b55606b73808d95a0aab4bfc0bbb6afaca69f9c97918d8985817d7a7876757473747475787a7e82878f949ca4aeb6c0ccd6d8ccc0b6ac9e9285796c605346392d20130600000006121f2b3844505c66727f8b97a1adb9c2cdd2c7bdb3a9a299928b827c76726e6d666a6b676d7073787e838e939ca3adb7c0ccd5dfe0d3c6baada093877a6d6054473a2d21140700000006121f2b3844505c66727f8b97a1adb9c2cdd2c7bdb3a9a299928b827c76726e6d666a6b676d7073787e838e939ca3adb7c0ccd5dfe0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356494444444444444444434241403f3e3c3a38342e2d2c28231d19130e090300000000000000000000000000000000000004101d2935404b55606d7883909da6b0bac4cdc6bdb3a9a1979287807a736f6c6568676769696e72787f8590959fa6b0bac4cfccc0b5ab9f958a7e71675d5145382d22170b000000000000000000000008131e28323d44515c666e7b86929fa5afbac4d0c8bdb1a89d928a7e70695e545c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c575550483e34281d110500000000000000000000040f1a26313c46535e6973808d98a2aebac5cfd7cec6bfbab8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b9bbc0c7d0d7cbc0b5ab9f93877c6f62594f44362c1e140a0000000000000000000000000a141d2a36424d57626c74818e959fa8b2bac3ccd4d2ccc0b8b0aaa29f96918b86827e7a797776757576777a7d80858a91959ea1a9afbbc0c7cfd6cec5bdb4aba29791847a6e615a50453b31251a0e0200000006121f2c3844515c66727f8b97a1adb9c2cdd7cbc0b5aba298928b817b74706d676a6a686e71757c828c939aa4afbbc0cdd6d1c6bdb0a69c8f8276695e53463a2d211406000000000000000000000008131e28343f4a54606b74818e97a2adbac3d0d9d0c2b9ada1978d8073695f53473e30271d12070000000000000000000000000000000000000000000000000b1825313e4a56626d727d8691969fa6aebabfc6ced6d6cabfb4aaa19791877f756d676464646464646464646464646464646464646464646361594f44382c201407000000000000000000000000010c161f2c364049525a61676d70737574726e69605d564d453b3039434b545c60686d71747574716d67625b504a4238323c464e575e616a6e72747573706d66605951493f352c1e150a000000030f1b27323d464e545658585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585856544f473d33271c100400010d18242f3a434f59606d78839098a3aebab6afaca49f9b948f8985817d7974706e6969686766676869686d71767c828d929ca4aebac4cfdad2c7b9ada197897c6f6256493c2f2316090000000713202d3a4653606d7884919ea9b3becbd7ccc0b5aba29792877e766f6a6561605c54555d6063666c7179818c919ca5afb9c3ced9e5d3c6baada093877a6d6054473a2d2114070000000713202d3a4653606d7884919ea9b3becbd7ccc0b5aba29792877e766f6a6561605c54555d6063666c7179818c919ca5afb9c3ced9e5d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356515151515151515151504f4e4d4c4b4946443f3c3a38342e29241e1a140c07000000000000000000000000000000000006131f2c3945515d67727e8b95a0acb8c1cccbbfb5aba19791857d736d6862605b535a5b575f61666d727b838f949fa8b2bdc6d1c7bdb1a79e9184796d60544a3f33281c0f0300000000000000000000020c16202834404a545f69717e8b939ea8b2bdc7cec3baafa59e92857b6e665b504f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b49453e362c22170c0000000000000000000000000915202a36424d57616d7a85929fa9b3bec9d5d7d0cac6c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c6c7ccd2d9d3c7bbafa3998e81756a5f54473d32241a0c02000000000000000000000006111b262f3846525e69717e8b939da7b1bac3ccd5d0c7c0bbaea69f98928c847e7a75716d686a69686869686d7074797e848b91979ea5afb5bdc5ced7cfc6bdb3a9a0968f82766c62574d42362a1e12050000000713202d3a4653606d7984919ea9b3becbd4d3c7bbafa39992867e746e6964605d55565e61646a6f777f88939fa4aebbc4cfd8cfc1b9ac9f93877b6e6154483b2d22170b0000000000000000000000020b17232e38424f59616d7a85929fa7b1bec7d2d5c9beb3a99f92877b6e62594f42392e23180c0200000000000000000000000000000000000000000000000916222e3a46515b626b707c848f949da4aeb4bcc4ccd4d0c6bcb3a9a199928b81796e69615957575757575757575757575757575757575757554f473e33281c100400000000000000000000000000040d1a242e37404850555c606367686765615f57524c443b33293139424a50565e616567686764605d5551443f382f2a343c454d52585f626667686663605c544f473f372d231a0c03000000000a16202b343d4347494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a48443d352b21160b00000007131d28313d44515c666e7c86929fa6b0aca49f9a938f89827d7874706d6664615e565b5a5a5a5b565e61646a6f78808d929da8b2bdc9d5d6cabeb3a9998c7f7266594c3f3326190c0000000b1824313e4b5764717e8a96a0acbbc5cfd4c7bbafa49992857d716c625f585553504a4b5153545b60666d747f8c939da7b1bcc8d4e0d3c6baada093877a6d6054473a2d2114070000000b1824313e4b5764717e8a96a0acbbc5cfd4c7bbafa49992857d716c625f585553504a4b5153545b60666d747f8c939da7b1bcc8d4e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635d5d5d5d5d5d5d5d5d5d5d5c5b5a59585653504a494645403935302a251f18120b030000000000000000000000000000000714202d3a4753606d7985929ea7b1bccad3c7bbaea39991857b706b615e565350494d4e4d53545c60696e79828f96a0abb4bfcbd0c2b9ada1968c7f73665b5044382b1f12060000000000000000000000040e18232e39424d57626c75818f96a1abb5c0ccccc0b9ada2978f82786c60584e4342424242424242424242424242423e3d39342c241b1006000000000000000000000000030e1a25313b46525e68737f8c97a1adb9c4cedadbd6d3d2d1d1d1d1d1d1cfc9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9d1d1d1d1d1d1d1d2d4d7ddd6cabfb4aa9f92877b6e61584e43352b2111080000000000000000000000000b17222d3841505a616e7b86929fa5afb9c3ccd5d2c7bdb5afa49d948f867f79716d6765615e565c5b5b565d6063676d71787e858f939fa3abb4bcc5cecec8c5bbb2a89f948b7e71695e53463a2d2114070000000b1724313e4a5764717d8a96a1acbbc4cfd3c7bcb0a69f92877d716c615e5753514b4c5254585f656c737f8b929da9b2bdc9d5d4c8bbafa49a8b7f726553493f33271b0f03000000000000000000000006111c26303d46525e68727f8b95a0acb6c0ccd8cfc4bbaea3998f82756b61544b4034281f1409000000000000000000000000000000000000000000000006121e29353f495159616a6e7a828d929fa3aab2bac2cbd7cec4bbb3aba39f938e837b706b605b534c4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443e352c21160b00000000000000000000000000000008121c252e363e434b5153575a5b5b5855534d45413a3229212730383f444c5254585a5b5a5754514b433f332d26222a333b42464e5355595b5b5a5653504a423d352d251b11080000000000040f19222b32373b3c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d3c38332b23190f05000000010c161f2834404a545f6a727f8b949fa8a19a938e87827c76706c6663605c5454524d4e4e4d4d4e4c52545860666c74808d96a1adb9c5d2dacfc1b4a79b8e8174685b4e4135281b0e000006121f2b37434e586875818e9ba8b2bdcdd5c9bdb2a89f93877d706b615a534e4846443f4045474a50545c606d74818e95a0acb8c3ced9d3c6baada093877a6d6054473a2d211407000006121f2b37434e586875818e9ba8b2bdcdd5c9bdb2a89f93877d706b615a534e4846443f4045474a50545c606d74818e95a0acb8c3ced9d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6a6a6a6a6a6a6a6a6a6a6a69686867666562605c545653514b46413a363128231d150c060000000000000000000000000005111d2935414c5664717e8b97a1adb9c3cec9bdb2a89f92877d6f696059524c46443f404142464a50575e676d7a849199a3aebac6d0c9bdb2a89e9184786c605346392d20130900000000000000000000000007121c27303c45505a616d7a849199a4afbbc3cecabeb3a99f948c7f726a60554b403536363636363636363636363631302d28221b1209000000000000000000000000000009141f2a36414c56606d7985929ea8b2bdc9d5dfe2dfdfdeded4ccc7c3c2bcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcc5c6c9cfd7dededfe0e3dfd3c7baaea2988d8174695f53463c3223190f000000000000000000000000030f1b27333f4953616c75828f98a2aeb7c0cbd4d7ccc0b5aba49f928d827a736d67605d5554524c504e4f4c5254555c60666d717a818b9299a2aab4bcc6c3bcb8b4aeaca69f92867b6e6154483b2e211508000006121e2b37424d576774818e9aa8b2bdcdd6d0c4b7ab9f948b7e726b615a534d4745404146474e535b606d74808d96a1adb9c6d1d8ccc0b6ac9c8f8275655b5044372b1f12050000000000000000000000000a141e2a36414c56606d7883909aa4afbbc5d0d7cbbfb5ab9e948a7d70665c51453b3025190b0200000000000000000000000000000000000000000000010d18232d373f474f585f686d78808a9298a1a8b1b9c0cbd1cdc4bdb5afa59e9590857d736c655d564e463e3e3e3e3e3e3e3e3e3e3e3e3e3d3c38332c231a1005000000000000000000000000000000000a131c242c30394045464a4d4f4e4c4846423b352f2820171e262e343a4146474b4e4f4d4b4745413a3128221c19212930363c4347484c4e4e4d4a46443f38302b231b13090000000000000007101920272b2e2f323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232302f2c27211911080000000000040d18232e39424e58606c77828f979d969188817c756f6a63605b5453504a47464242414041414146474e545b606d7984919eabb7c4d1dcd0c3b6a99d9083766a5d5043372a1d1000000815212e3a47535f6a7885929eabb8c4ced2c5b9ada1968c80736b60595047433c3a383435383a3f444b515b606d7983919da8b2bdc8d4d3c6baada093877a6d6054473a2d21140700000815212e3a47535f6a7885929eabb8c4ced2c5b9ada1968c80736b60595047433c3a383435383a3f444b515b606d7983919da8b2bdc8d4d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897d7777777777777777777777777675747372716f6d666663605c54524c46423b342e271e180f070000000000000000000000000713202d3946525d6876838f9ca9b3becbd2c5b9aca0968c7f726b60574f46413a37332d3136383f444d555d686f7c86929faab4bfcacfc4b9ada196897d7063564a3d31251a0e020000000000000000000000000b151e2a333f46525d68707d87939fa7b1bcc6cfc5bbb0a69f92877c6f675d51453e3329292929292929292929292424211d171009000000000000000000000000000000030d1925303a45515d67727f8b96a1acb9c3ced9e4ecebded4cac2bbb7b5afafafafafafafafafafafafafafafafb8b9bec5cdd7e1ecebe0d6cabeb3a99f92867b6e61574d42342a20110700000000000000000000000005121f2b3744505b65707d8a939eaab4bec9d2d4cbc2bbafa499938b80786e68605d55514c4746414342424145474b51545c60686d757f879298a2aab4bab8b1acaba39f9b96918c8276695c4f4336291c1003000814212e3a47535f697884919eabb7c4ced5c9bdb2a89c9083766d62595046423b393536393c4149505b606d7984919eabb5bfcbd7d2c5b8ac9f9285796c605346392d201306000000000000000000000000020c1925303a44505c666f7c87939fa9b3becad6d1c6bdb0a69e9184796d60564d42362a1d140a000000000000000000000000000000000000000000000007111b252d353e464e565d666d737e8691969fa7afbbc0c7cfcfc7c0bbafa7a097928880776d685f5850443f382f313131313131313131302f2c28211a11080000000000000000000000000000000000010a121a1e272e34383a3d4042413f3b3a363129241e160d151c23283036393a3e4142413e3a39352f281f17110f171f252a31373a3b3f4142403d3a38342e261e191109000000000000000000070f161b1f22232525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252322201c160f080000000000000007121c27303c44505b656e7b8592928e847d756f6a62605853504a46443f3b3a36303433343036393c424a515c6673808c99a6b3bfccd9d0c4b7aa9d9184776a5e5144372b1e1100000915222f3c4855626f7b8897a1adb9c6d6cabfb4aa9e9184796d60594f473e37322d2b28292c2d33394045515c67717e8a96a0acb9c5d2d3c6baada093877a6d6054473a2d21140700000915222f3c4855626f7b8897a1adb9c6d6cabfb4aa9e9184796d60594f473e37322d2b28292c2d33394045515c67717e8a96a0acb9c5d2d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2ddd1c4b7aa9e9184848484848484848484848484838281807f7e7c7976736f6d66615d56534d454039302a2119110800000000000000000000000714212e3a4754616d7a86939facb9c5cfcabfb4aa9e9184786d60594f453d35302b2722262a2e343b434c565f6a74808d98a2aebac7d3c9bdb2a89a8e817467574d42362a1e1205000000000000000000000000030c18212935414c56606b73808d959faab4bfcacdc2bbafa3999184796d605a50453b30261c1c1c1c1c1c1c1c1c181715110c06000000000000000000000000000000000008131e2935404b55606d7984919ea7b1bcc8d4dee9e3d8ccc2b8b0aba9a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2abadb3bbc5cfdae6e6dacfc6baada2978d8073695e52453c3122190e000000000000000000000000000613202d394653606c7883909da5afbcc5d0d8cec2b8afa59f93877f746d665e56514b45413a393630352f35393a40454a50565e616d727d869298a2aaaeaca7a09d99928e8984807b6e6154483b2e21150800000815222f3b4855626e7b8896a1adb9c5d6d2c5b9aca196897c6f635b51473e36312c292a2d2f383f45515d67717e8b99a3aebbc7d3d3c6baaea298877b6e6154483b2e2115080000000000000000000000000008131e28343f4a54606b74818e97a2adbac3cdd8cfc1b9aca0968c7f72695e52463d2f261c1106000000000000000000000000000000000000000000000009131b232c333c444c545c606c717c8490959da5afb5bdc5cdd1cbc1b9b1a9a29a938c827a6f6a615a504a42393028242424242424242423201c1610080000000000000000000000000000000000000000080c151d23282c2d30343534322e2d2a261f19130c040a11171e252a2d2e32343534312d2c29241d160d06050d141a20262b2e2f33343533302d2b28231c140c080000000000000000000000040a0f131516191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919171613100b050000000000000000000b151e27333f49535e69717e8a898179706b625f58544e46443f3a38342e2d2a25272727252a2d2f38404a5464717d8a97a4b0bdcad7d1c4b8ab9e9185786b5e5245382b1f1200000c1925323f4c5865727f8b98a9b3bec9d3c6baaea2988b7f72665c51473d352b26201f1c1d1f22282e34404b55606d7884919eaab7c4d1dcc6baada093877a6d6054473a2d21140700000c1925323f4c5865727f8b98a9b3bec9d3c6baaea2988b7f72665c51473d352b26201f1c1d1f22282e34404b55606d7884919eaab7c4d1dcc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd2c5b9aca09691909090909090909090909090908f8e8d8c8b8985827f7c79736d68615e57514b423c332b23191108000000000000000000000b1724313e4a5764717d8a99a4afbbc7d3c6baaea2988b7e71665c50473d3329251f1b171a1c2328313a444e58616e7b86929facb8c5d2cfc4b7ab9e918478695e53463a2d21140700000000000000000000000000060f1924303a444f59606d78839098a2aebac1cccbc0b5aba0968e81746c61574d42382e23170d0f0f0f0f0f0f0b0a080500000000000000000000000000000000000000020d18242f3a45515c66717e8b95a0acb8c2cdd8e4dfd3c7bbb0a69f9c969696969696969696969696969696969ea1a9b3bec9d5e2e1d5c9beb2a99f92857a6d60564d42332a1f100700000000000000000000000007131f2c38434f5964717e8a95a0acb8c1ced7d0c6bcb0a69d938b7f726d605c544c454039352f2d2a252824292c2e34383f444c525b626b707d869298a3a29f9a95918c86827d78736e695e53463a2d21140700000c1925323f4c5865727f8b98a8b2bdc9d5d1c4b7ab9e9184786b6054483f352a25201d1e20262d35404b55606d7a86929facb9c5d2d6cabfb4aa96897d7063564a3d3023170a00000000000000000000000000020b17232e38424f59616d7a85929fa7b1bcc8d4d4c8bdb2a89f92867b6e61584e42382d22170b01000000000000000000000000000000000000000000000109111a212a323a424a505a616a6f7a838e939fa3abb3bbc3cbd7cbc3bbb3aca49f948f847c716c605b544b433a3129201717171717171614100b0500000000000000000000000000000000000000000000030b12181c1f20242728282522211e1a140d08010000060c13191d2021252728272421201d18130c04000003090e151a1f21222628282723201f1c17110a020000000000000000000000000000030608090c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0a0907040000000000000000000000030c17222d38414d57616c74807d746d676059534e47433d38332d2c2823202222272b2d2e34383a40454e5865727e8b98a5b1becbd8d1c5b8ab9e9285786b5f5245382c1f1200020f1c2835424f5b6875828e9ba8b5c1cfd2c5b8ac9f9286796d60544b40352c231b1312101013171d232f3944505c6673808c99abb5bfcbd7c6baada093877a6d6054473a2d21140700020f1c2835424f5b6875828e9ba8b5c1cfd2c5b8ac9f9286796d60544b40352c231b1312101013171d232f3944505c6673808c99abb5bfcbd7c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd5c9bdb2a8a09e9d9d9d9d9d9d9d9d9d9d9d9d9c9b9b9a999898928f8c89857f7a746e69605c544d453d352b231910070000000000000000010e1b2734414e5a6774818d9aabb5c0ccd2c5b8ac9f9285796d60544a3f342b2119130f0b0e11171f28323c46525e6875818e9bacb6c0ccd2c5b9aca196877b6e6154483b2e211508000000000000000000000000000008131e28323d44515c666e7b86929fa5afbac4d0c7bdb2a89d938a7e71695e544a3f34281f160c010303030300000000000000000000000000000000000000000000000007131d2834404b54606c7883909da6b0bcc7d3e2ddd0c3b7ab9f948f898989898989898989898989898989899297a1adb9c6d2dfddd2c6b9ada1978c7f72685d52443b3021180e000000000000000000000000000915222f3b4854606b7783909da7b1bccad3d6cabfb4aa9f948e81746d625b504a423b352f2924201e191b191d2023282e343a41465159616b707d86929c98928e89847f7a75706c66615e574d42362a1e120500000e1b2734414e5a6774818d9aa7b4c0cfdacdc0b3a79a8d807467594f43362d231a141111141b242f3945525d6876828f9ca9b5c2cfdbd0beb1a4988b7e7165584b3e3225180b000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7cec3baaea2988e81746a60544a3f33281e1308000000000000000000000000000000000000000000000000080f18202830383f44505860686e79818b9299a1a9b1b9c1cbd1cdc5beb6afa69e9691867e746c665c554b433a32292118100b0b0a0907040000000000000000000000000000000000000000000000000000070c101313171a1c1b191514120e0903000000000002080d111314181b1c1a181413110d0701000000000003090f121415191b1b1a171312100b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f3b45505a646e74706b605d554f47433c37322b282222282b2d2f2d3337393b3f44464b51585f6a74818e9ba7b4c1cedad0c4b7aa9d9184776a5e5144372b1e110004101d2a3743505d6a7683909da9b6c3d0cfc2b5a89c8f8275675d5142392e231a110a060304060b121d28343f4a5463707d8999a3aebbc7d3c6baada093877a6d6054473a2d2114070004101d2a3743505d6a7683909da9b6c3d0cfc2b5a89c8f8275675d5142392e231a110a060304060b121d28343f4a5463707d8999a3aebbc7d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd9cec4bab2acaaaaaaaaaaaaaaaaaaaaaaaaaaa9a8a7a6a5aaa29f9c9997928c86807b736d665f574f473d352b22190e040000000000000003101c28343f4a546976838f9ca9b6c2d2cec2b5a89b8f8275665c5142382e22190f08030000060d16202a36414d5664717e8a9aa4afbbc8d4c9bdb2a8968a7d7063574a3d3024170a0000000000000000000000000000020c16202834404a545f69717e8b939ea8b2bec7cfc4baafa59f92857b6e665c50443d31281e130800000000000000000000000000000000000000000000000000000000010c18232e3944505b66707d8a949fabb7c1d0d9dccfc2b5a99c8f827d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d85929eabb8c5d1ded4c8bdb2a89e9184796d60564c4132291f0f0600000000000000000000000004101d2935404b55636f7c8995a0acb9c3cedcd3c7baaea2989082786d605b51443f383029241d1913110d080d1113181c232830363f474f59606b717e8b908b85817c77726d6863605b54534d453b31251a0e0200000f1c2835424f5b6875828e9ba8b5c1ced8cbbeb1a5988b7e7265584b3f32251b110904050a121d2935414c566774808d9aa7b3c0cdd8cbbfb2a5988c7f7265594c3f3226190c0000000000000000000000000000000a141e2a36414c56606d7883909da5afbcc5d0d6cabfb4aa9f93877c6f665b50443a2f24190d03000000000000000000000000000000000000000000000000060d161e262e343e464e565e676d747f879297a0a7afbbc0c7cfd0c7c0bbb0a8a098928a80786d675d554c443b332a22180f0500000000000000000000000000000000000000000000000000000000000000000406070a0d0f0e0c08070502000000000000000000010507070b0e0f0e0b07060401000000000000000000020608080c0e0f0d0a0706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29333e48525c6467636159514b433d37312b282b2d2f2d3338393b3e3f4446484a5053555c606a6f7c87929facb9c5d2dcd0c3b6a99d9083766a5d5043372a1d100004101c2834404b546b7784919eaab7c4d1cbbfb2a5988c7f7265554b4030271d11080000000000010b17232e3a4753606d7a86929facb9c5d2c6baada093877a6d6054473a2d2114070004101c2834404b546b7784919eaab7c4d1cbbfb2a5988c7f7265554b4030271d11080000000000010b17232e3a4753606d7a86929facb9c5d2c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfe0d6ccc4bdb9b7b7b7b7b7b7b7b7b7b7b7b7b7b6b5b4b3b2b4aeaca9a9a19e98928d8780796e6960594f473d342b20160c0200000000000006121f2c3844505c667885919eabb8c4d1cbbeb1a5988b7e7265544b4030261c10070000000000040e1925303b4754616d7a86939facb9c6d2cebfb2a5988c7f7265594c3f3226190c000000000000000000000000000000040e18232e39424d57626c75818f96a1acb6c0ccccc1baada2979082786d60594f433a2f24190f060000000000000000000000000000000000000000000000000000000007121d28333f4a54616b7683909ca6b0bec7d2ddd2c5b9ac9f92867a6f6f6f6f6f6f6f6f6f6f6f6f6f717e8a97a1adb9c6d2dcd2c5b8aca0968b7e72675d51443a3020170d0000000000000000000000000006131f2c3945515d6774818e9aa7b1bccbd5d6cabeb3a99f92867b6e665c51493f342e261e18120d080501000104070c11171e252a353e464f59626c7481837e7a746f6a65615e5653504a46423b33291f1409000000101d2a3643505d697683909ca9b6c3cfd6cabdb0a3978a7d7064574a3d3124170a000000010d19242f3f4c5966727f8c99a5b2bfccd8ccbfb2a6998c7f7366594c403326190d000000000000000000000000000000020c1925303a44505c666f7c89939ea9b3becad6d0c5bbafa49a9083786c60564c41352920150a00000000000000000000000000000000000000000000000000040c141c2328343d444c555c606d727d8590959ea5afb5bdc5cdd2ccc1bab2aaa29f928d81796d675e564d453c342a21170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b17212c36404a52585a56554f45403a312b2e2e34383a3c3e3f4446484b49505355545c6063676d727c849199a3afbbc7d3dbcec2b5a89b8f8275685c4f4235291c0f0006131f2c3845515c667885929fabb8c5d2c9bcb0a396897d7063564a3d2f23150b0000000000000006131f2c3845515d677885919eabb8c4d1c6baada093877a6d6054473a2d2114070006131f2c3845515c667885929fabb8c5d2c9bcb0a396897d7063564a3d2f23150b0000000000000006131f2c3845515d677885919eabb8c4d1c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfe8ded6cec9c5c4c3c3c3c3c3c3c3c3c3c3c3c3c3c2c1c0bfbfbab8b5b3adaaa29f99928c837b706b60594f463d32281e13080000000000000713202d3a4653606d798697a1adb9c6d2c9bcb0a396897d7063564a3d2e23150a000000000000000814202d3946525e687885929eabb8c5d1cdc0b3a79a8d8074675a4d4134271a0e0000000000000000000000000000000007121c27303c45505a616d7a84919aa4afbbc3cecabeb3a99f948c7f736b60564c41352921180c03000000000000000000000000000000000000000000000000000000000b17222d38424f59636f7c89949eacb6c0ccd8d3c7baaea3988d807368636363636363636363636c7883909da9b3bec9d5d4c8bcb1a79e9184786d60554b4032281e0e05000000000000000000000000000714202d3a4753606d7985929facb8c3cedfd2c6b9ada1978d8073695e544b403728231c150c07010000000000000000060b1319232c343d47505a646f7476716d6762605854524c46443f3836312921170d03000000111e2b3744515e6a7784919daab7c4d0d6cabdb0a3978a7d7064574a3d3124140a00000000081926333f4c5966727f8c99a5b2bfccd8ccbfb2a6998c7f7366594c403326190d0000000000000000000000000000000008131e28343f4a54606b74818e97a2adbac3ced8ccc0b6ac9f958b7e71685d52453c31261a0d0300000000000000000000000000000000000000000000000000020a1117222b323b434b515b626b707b838e939fa3abb3bbc3cbd7ccc4bcb4aea49d938e82796d685f574e463c332920170c03000000000000000000000000000000000000000000000000050a0d0f101212121212121212121212120d0c0a070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070809090908070604010000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a242f3840474c4d4a48443d352f31373a3c3f4446484b4a50535557535b606164666d6f73797f859196a0abb5c0cbd7d6cabfb4aa998c7f7366594c403326190d000713202d3a4653606d798698a2aebac6d3c8bbafa295887c6f6255493c2f2216090000000000000004101d2935404b556a7784909daab7c3d0c6baada093877a6d6054473a2d211407000713202d3a4653606d798698a2aebac6d3c8bbafa295887c6f6255493c2f2216090000000000000004101d2935404b556a7784909daab7c3d0c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfece4ddd6d2cfcdcccccccccccccccccccccccccccccdcdd0cac6c5c2beb9b4aeaba39f9590857d706b60584e443a3025190d0400000000000714212d3a4754606d7a8793a9b3bec9d5c8bbafa295887c6f6255493c2f2216090000000000000005111d2935414c566a7784909daab7c3d0cec1b4a79b8e8174685b4e4135281b0e00000000000000000000000000000000000b151e2a333f46525e68707d88939fa7b1bcc6d0c5bcb0a69f92877d6f685d52453e332a1e150a0000000000000000000000000000000000000000000000000000000006111c262f3e4854606b75828f9aa4afbbc6d1d7cbbfb4aa9f92867a6d61565656565656565b65717d8a95a0acbbc5cfdad1c4b8aba0958a7e71665c5043392f20160c00000000000000000000000000000a1724303d4a5763707d8a98a2aebac6d3d7cbc0b5ab9e92857a6d60574d42392e2517110a0300000000000000000000000208111a222b353f48535d64686965605d55544e4746413a38332d2a251f170f0500000000121f2c3845525f6b7885929eabb8c5d1d8cbbeb1a5988b7e7265584b3f2f261b110904050a111d2935414c566774818d9aa7b4c0cdd8cbbeb1a5988b7e7265584b3f3225180c00000000000000000000000000000000020b17232e38424f59616e7a85929fa7b1bcc8d4d2c7beb1a79e92857a6d60584e43372b1f150b010000000000000000000000000000000000000000000000000000061019202930394045515960696e79818c9299a2a9b1b9c1ccd2cec6bfbaaea59e948f837a6e695f584e453b32291e150b00000000000000000000000000000000000000000000030a1016191c1d1f1f1f1f1f1f1f1f1f1f1f1f191916130d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707070c10131414151616151413110d080a0706040000000000000000000000000000000000000000000000000000000000000000000000000009121d262f363c3f413d3c3833373a3c4347484a50535558545b60626467656c6e7174797c80848b9297a0a8b2bdc7d1dcd3c7baaea2988a7d7063574a3d3024170a000814212e3b4754616e7a8794aab3becad6c7baaea194877b6e6154483b2e21150800000000000000000c18242f43505c6976838f9ca9b6c2cfc6baada093877a6d6054473a2d211407000814212e3b4754616e7a8794aab3becad6c7baaea194877b6e6154483b2e21150800000000000000000c18242f43505c6976838f9ca9b6c2cfc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfe4dbd2cbc6c2c1bfbfbfbfbfbfbfbfbfbfbfbfbfbfc0c1c3c5c8cecfc9c6bfbab5afa7a09792867d706a60564c41352920150a00000000000815212e3b4854616e7b8794a1aebacfdac7baaea194877b6e6154483b2e21150800000000000000010d19253043505c6976838f9ca9b6c2cfcec1b5a89b8e8275685b4f4235281c0f0000000000000000000000000000000000030c18212935414c56606b73808d95a0aab4bfcacec2bbafa39991847a6d605a50453b30261c1106000000000000000000000000000000000000000000000000000000000a141d2c38444f59626f7c87939fabb5bfcbd7d1c6baaea2988d8073685d524949494953606c7883909da7b1bccdd7d3c7bbb0a69d9083786c60544a3f31271d0e040000000000000000000000000004101d2935404b556774808d9aaab4bfcad6d4c7bbafa3998c7f72685d52453b30271d1306000000000000000000000000000000081019232d36414b53595b5d5853514b47433d3936302b28221c1a140d050000000000121f2c3845525f6b7885929eabb8c5d1dacdc0b4a79a8d817467594f41382d221a141111141c222d3946525d6876838f9ca9b6c2cfd6cabdb0a3978a7d7064574a3d3124170a000000000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7d0c3b9ada1978d80736a5f53473e31271d1207000000000000000000000000000000000000000000000000000000070e171e272e343f474f575e676d757f879297a0a7afbbc0c7d0d0cac0b7afa69f9590847b6f6a5f574d443a30271d12070000000000000000000000000000000000000000040d151b212628292c2c2c2c2c2c2c2c2c2c2c2c2625231e19120a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080d11131417181d1f20212223232221201d1919161413100c070400000000000000000000000000000000000000000000000000000000000000000000000b141d242b3033342d33373c4347484e5355545c60626467666c6e717376797b7e8185898d91969fa2a9b2bac4cfd9d8cfc5b8ac9f92867a6d6054473a2d211407000714212d3a4754606d7a8799a3aebbc7d3c8bbaea195887b6e6255483b2f2215080000000000000000071d2a3743505d6a7683909da9b6c3d0c6baada093877a6d6054473a2d211407000714212d3a4754606d7a8799a3aebbc7d3c8bbaea195887b6e6255483b2f2215080000000000000000071d2a3743505d6a7683909da9b6c3d0c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfddd2c9c0bab6b4b2b2b2b2b2b2b2b2b2b2b2b2b2b3b3b5b7b8bcc3c7cbd0cac7c0bbb1a9a29892867c6f685e52463c32271b0f05000000000714212e3a4754616d7a8794aab4becad6c8bbaea295887b6f6255483c2f2215070000000000000004101c2834404b556a7783909daab6c3d0cec1b4a89b8e8175685b4e4235281b0f000000000000000000000000000000000000060f1925303a444f59606d79839098a2aebac1cdcbc0b5aba1968e81756c61574d42382e23170e04000000000000000000000000000000000000000000000000000000020b1b27323d47535f6a75818e99a3aebbc6d0d6cabfb4aa9f92857a6d60554b41444f5964707d8a95a0acb9c3ced9cfc7b7ab9f94897d70655b5042382e1f150b000000000000000000000000000006131f2c3945515d677784909daab7c3d0dbd2c5b9ac9f92867a6d61564c4133291e150b000000000000000000000000000000000008111b242f3941484c4e504b4745403a38322d2a251f1c17110e0903000000000000111e2b3844515e6b7784919eaab7c4d1ddd1c4b7ab9e9184786b6053493f332a25201d1e20262d35414b55616d7a86929facb9c5d2d7cbbfb5ab96897d6f6356493c302316090000000000000000000000000000000000000a141e2a36414c56606d7883909da5afbcc5d0d5c9beb3a99f92877c6e625a5043392f23180c03000000000000000000000000000000000000000000000000000000050c151d2328353d454d555d606d727d8590959ea5afb5bdc5cdd6c9c1b8b0a7a09691857c6f695e564c43392e23180f05000000000000000000000000000000000000030d161f262d32353639393939393939393939393933322f2a241c130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013191d20212424292c2d2e2f302f2e2d2c29242623201f1d1812100c0700000000000000000000000000000000000000000000000000000000000000000000060e171e252a2f383f44464e5355585f6266666d6f717476797b7e808385888a8e92979a9ea1a8adb3bcc4ccd6dcd1c6bdb0a69b8e8175675d5145392c201306000713202c3945525d687986929facb9c5d2c9bcafa296897c6f6356493c302316090000000000000006121f2b37434e586b7784919eaab7c4d1c6baada093877a6d6054473a2d211407000713202c3945525d687986929facb9c5d2c9bcafa296897c6f6356493c302316090000000000000006121f2b37434e586b7784919eaab7c4d1c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd6cbc0b7afa9a7a6a6a6a6a6a6a6a6a6a6a6a6a6a6a7a8aaacb1b9babfc6cfd1cbc3bbb3aaa29891847a6d61584e43372b21160b000000000713202d3a4653606d798698a2aebac6d3c9bcafa396897c706356493d2e23180c0000000000000006131f2c3845515c677885919eabb8c4d1cdc0b4a79a8d8174675a4e4134271b0e0000000000000000000000030709090a0a0a0a08131e28323d45515c666e7b86929fa5afbbc4d0c7bdb2a89e938b7e71695f544a3f342820160c020000000000000000000000000000000000000000000000000000000a16212b37434e58616e7b86929faab4bfcad6d0c6baaea2988c7f73675d51454855616b7783909da7b1bccbd5d1c7bdafa59c8f82766b6053493f30261c0d0300000000000000000000000000000714202d3a4753606d7a86939facb9c6d2dccfc2b6a99c8f8376685e52433a2f20170c0300000000000000000000000000000000000009121d272f373c4041433e3a39352f2b27201d19130f0b06000000000000000000111e2a3744515d6a7783909daab7c3d0ddd2c5b9ada196897d70655b50443e36312c292a2d2f383f45515d67727f8b99a3afbbc7d3d3c7bbaea399887b6e6255483b2f221508000000000000000000000000000000000000020c1925303b44505c666f7d89939eaab3becad6cfc5bbafa3998f82766c61554b4034291f140900000000000000000000000000000000000000000000000000000000030b1218232b333b434b515b626b707b838e939fa4abb3bbc3ccd3cac2b9b1a8a09791857b6e685e554b40342821170d0200000000000000000000000000000000000a151f2831383e4243454545454545454545454545403e3b352e251c1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0f12181d1f252a2d2e302f35383a3b3c3c3c3b3a39352f33302d2c29241f1c18120d08020000000000000000000000000000000000000000000000000000000000020a1117202930363e41495053585f62676a6f7276797b7e808385888a8d8f9297979b9ea2a9abadb2babec5ced6dbd6cbbfb4ab9f94897d7063554c4135291d11040004111d2935414c566b7885919eabb8c4d1cabdb0a3978a7d7064574a3d3025190b020000000000000815212e3a47535f6a7985929facb8c5d2c6baada093877a6d6054473a2d2114070004111d2935414c566b7885919eabb8c4d1cabdb0a3978a7d7064574a3d3025190b020000000000000815212e3a47535f6a7985929facb8c5d2c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd2c6baafa59d9a99999999999999999999999999999a9b9da0a7acaeb4bcc3cbd7cdc5bcb4aaa1968e81756a6054473d33271c100100000006131f2c3845515c677885929fabb8c5d2cbbeb1a4988b7e7165544a4034281c11060000000000030c15202d3a4653606d7986929facb9c5d2ccbfb3a6998c807366594d4033261a0d000000000000000000040a0f13151617171717171716202834404b545f69717e8b939ea9b2bec7cfc4baafa59f92867b6e665c50443d32281e1308000000000000000000000000000000000000000000000000000000040f1b26323c46535f6974808d98a2aebac5cfd6cabeb4aa9f92857a6d60554b4f5963707d8a95a0acb9c3cdd7cbc0b5ab9e93897c6f62594f41382d1e150a0000000000000000000000000000000916222f3c4955626f7c889aa4afbbc8d4d7cbbfb5ab988b7f7265564c4131281e0e0500000000000000000000000000000000000000000b151d252b30333536322d2c29241d1b16110d080300000000000000000000000f1c2935424f5c6875828f9ba8b5c2cedbd5c9bdb2a89d9083786c60595046423b393536393c424a505b606d7a85919eabb5c0cbd7d2c5b9ac9f9286796d6053473a2d2014070000000000000000000000000000000000000008141e28343f4a54606b74818e98a2aebac3ced7cbc0b5ab9f948a7d70675c51453b30251a0c020000000000000000000000000000000000000000000000000000000000071119212931394045515960696e79818c9399a2a9b1bac2cad3cbc3bab2a9a19791847a6d675c51453e33291f14090000000000000000000000000000000005101b26313a42494e505252525252525252525252524c4b4640372e24190d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d151a1d24292c3036393a3d40404547474849494847454143403d3a39352f2c28231c19130b06000000000000000000000000000000000000000000000000000000020b141b2227323b414650535b60636a6f74777b7f8385888b8d909298979a9c9fa2a9a7abadb3b7b9bdc4cad0d7d8d0cac0baaea3998f82766b6054433a2f24190d0100010d19242f44515d6a7784909daab7c3d0ccc0b3a6998d807366564d42362a1d140a0200000000060f18222f3c4855626f7b8898a2aebac6d3c6baada093877a6d6054473a2d21140700010d19242f44515d6a7784909daab7c3d0ccc0b3a6998d807366564d42362a1d140a0200000000060f18222f3c4855626f7b8898a2aebac6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfcfc2b6a99d938e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8d8e9095999fa3aab1b9c2cbd4cfc6bcb2a89f93877c6f62594f44382c1d120700000004101c2834404b556a7783909daab6c3d0cec1b5a89b8e8275665c5144382e23170f07010000040b151e2935404b5563707d8999a3afbbc7d3cabeb3a9978a7d7164574a3e3124170b0000000000000000070f161b1f22232424242424242424232e39424d57626d75828f96a1acb6c0ccccc1baaea2989083786d60594f443a3024190f060000000000000000000000000000000000000000000000000000000a15202a36424d57616e7a86929fa9b3becad6d0c5baada2978c7f72675d5155616b7683909da7b1bccbd5d4c7bbafa3998f82756a6054473d2f261b0c030000000000000000000000000000000b1824313e4b5764717e8a97acb6c0ccd8d3c7bbaea399887b6e6155483b3022160c000000000000000000000000000000000000000000020b131a202427282a2520201d18130f0a0501000000000000000000000000000d1a2733404d5a6673808d99a6b3c0cedadacfc4b8ab9f958b7f726b625a534d4745414146474e545b606d74808d97a1adbdc7d1dccfc3b6a99c908376675d5145392c20130600000000000000000000000000000000000000020b17232e38424f59616e7a85929fa7b1bcc8d4d1c7bdb0a69e9184796d60574d42362a1e140a000000000000000000000000000000000000000000000000000000000000070f171f272f353f474f575f676d757f879297a0a8b0b8c1c9d2ccc3bbb2a9a0969083796d605a50453b30251a0e050000000000000000000000000000000a16212d38424c545a5c5f5f5f5f5f5f5f5f5f5f5f5f5957524940352a1e13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c131920262b2f35393a4146474a4d4b5153545556565554524c4f4c494745403a38342e29251e17110a02000000000000000000000000000000000000000000000000020b141d262d333e444c525a61656c70767c8084888c909298979a9c9fa2aaa6a9abadb3b4b8b9bec4c5c9cfd6d8d4cec6bfbaaea49f92867c6f62594f4431281e1308000000081d293643505c6976838f9ca9b6c2d1d0c3b6a99d908376695e52463a2f261b140e0909070c1117222b37434e5865727f8b98aab4bfcad6c6baada093877a6d6054473a2d2114070000081d293643505c6976838f9ca9b6c2d1d0c3b6a99d908376695e52463a2f261b140e0909070c1117222b37434e5865727f8b98aab4bfcad6c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dacdc1b4a79a8e817f7f7f7f7f7f7f7f7f7f7f7f7f80808284888d92989fa7b0b8c2cdd7cec4bbafa49a8f82766b605448392f24180c000000000c18232e414e5b6874818e9ba7b4c1ced2c5b8ab9f9285796d60544a3f34282118130e090c10151d26303845515d6774808d9aabb5c0cbd2c6b9ada297887b6f6255483c2f2215090000000000000007101921272c2f3030303030303030303030303c45505a616d7a84919aa4afbbc3cecabeb4aa9f958d80736b60564c41352921180c030000000000000000000000000000000000000000000000000000040e1a26313b46525e6873808c97a2adb9c4cfd6cabeb3a99e9285796d60555963707d89959fabb9c3cdd7cbbfb4aa9f92877b6e62584e43352b1d140a000000000000000000000000000000000d192633404c5966737f8c99a6b2bfd2ddd2c5b9ac9f9286796c605346392d2013060000000000000000000000000000000000000000000001090f14181a1b1d181413110d0701000000000000000000000000000000000b1825313e4b5864717e8b97a8b2bdc9d5e0d4c8bcb1a79f92877d716c615e5754514b4d52545860666c737f8b929da9b3becfd9d6cabeb3a9998c7f7366554b4035291d1004000000000000000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7cfc2b9aca0968c7f73695e52463d30261c1106000000000000000000000000000000000000000000000000000000000000050d151d2429353d454d555d606d727d8591959fa6afb7c0c8d1cdc4bbb2a89f958d80746c61574d42362a21160b0000000000000000000000000000000d1926323e49545e66696c6c6c6c6c6c6c6c6c6c6c6c66635b52463b2f23160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11171e24293137394045474c52545759555d606162636261605d565c595653514b46444039353028231c140c0600000000000000000000000000000000000000000000000a141d262f383f4450565e616c71787d82888d9196999c9fa2aaa7a9acaeb4b3b6b8babec1c5c6cacfd2d5d6d3cdc8c2bcb4aea49d928b7f726a5f53473d331f160c010000010d1a2734404d5a6773808d9aabb5c0cbd2c5b9ac9f92867b6e61564c41382d251e1a171617181c2328343c4754606a76828f9ca9b6c2d0dbc6baada093877a6d6054473a2d21140700010d1a2734404d5a6773808d9aabb5c0cbd2c5b9ac9f92867b6e61564c41382d251e1a171617181c2328343c4754606a76828f9ca9b6c2d0dbc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c73737373737373737373737373737475777b808690959fa6b0bbc5cfd8ccc0b6ac9f94897d7063554b4035291d1004000000071825323e4b5865717e8b98a7b1bcc8d3c6baada2978a7e71665c50443d3329241d1a18181c1f272f38424c56606d7985919eabb8c4d1d1c5b8ab9e9285796c605346392d201306000000000000040f19222b32383b3c3d3d3d3d3d3d3d3d3d3d3d3d3f46525e68707d88939fa7b1bcc6d0c5bcb1a79f93877d70685d52463f332a1e150b00000000000000000000000000000000000000000000000000000009141f2a36414c56606d7a85929ea8b2bdc9d5cfc5b9ada1978c7f72675c606b7683909da7b1bccbd5d3c7baaea3988e81746a5f53463d32231a0b02000000000000000000000000000000000d1a2734404d5a6773808d9aa6b3c0cdd9d1c4b7ab9e918478655b5044372b1f120500000000000000000000000000000000000000000000000003080b0e0e100b070604010000000000000000000000000000000000000815222f3b4855626e7b8896a1acb9c5d2ded8cdc2bbafa39992867e756e6964605d55565e61656a6f788088939fa4aebbc4cfdfd2c6b9ada297897c6f6256493c2f24180d010000000000000000000000000000000000000000000a141e2a36414c56606d7883909da5afbcc5d0d5c9bdb2a89f92867b6e61594f42382e23170b02000000000000000000000000000000000000000000000000000000000000030b1218232b333b434b515b636b707b8390949ea5aeb6bfc7d1cdc3bab1a79d928a7e71695e52463d33271c100400000000000000000000000000000f1c2835424e5a667076787878787878787878787878736d63574b3e3225190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c151c232830353c43474b5153565e61636669676d6e6f6f6f6e6d686b696663605d5553514a46413a342e261e18100600000000000000000000000000000000000000000006111b262f384149505a62686e757e848a8f949a9ea0a8a9acaeb4b3b6b8babfc0c2c5c6cad0d1d2d6d6d3d0cac6c3bcb8b0aaa29f928d80746d62584e43352b210d04000000000a1724303d4a5763707d8a99a3afbbc7d4c7bbafa3998d8073685e53493f36302a2524232324292e343d46505a626f7c88949fabb7c3d0d3c6baada093877a6d6054473a2d21140700000a1724303d4a5763707d8a99a3afbbc7d4c7bbafa3998d8073685e53493f36302a2524232324292e343d46505a626f7c88949fabb7c3d0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f666666666666666666666666666768696e737b8390949fa9b3becad6d2c7beb0a69c8f8276675d5145392c1f13060000000815222e3b4855616e7b8895a0acb8c6d0cabeb3a99e9184786d60584e453d352f2a252523292c3139414a545e68727f8c97a1adb9c6d2cabeb3aa9b8e8275665b5044382b1f12060000000000000a16212b343d4348494a4a4a4a4a4a4a4a4a4a4a4a4a4a4c56606b73808d95a0aab4bfcacec2bbafa49991847a6d615a50453c30271d12070000000000000000000000000000000000000000000000000000030e1925303b45525d68727f8c96a1adb9c3ced5c9beb3a99e9184796d6063707d89959fabb9c2cdd6cabeb3aa9f92867b6e61584e43342b20110800000000000000000000000000000000000e1b2834414e5b6774818e9aa7b4c1cddad0c3b6a99d9083766a53493f33271b0f0300000000000000000000000000000000000000000000000000000001020300000000000000000000000000000000000000000000000814212e3a47535f697884919eabb7c3ced9dfd7cbc0b5aba398928b817b74706d676a6b686e71757c828c939aa4afb6c0cdd6d6cabeb4aa9e9285786c605346392d20130700000000000000000000000000000000000000000000020c1925303b44505c666f7d89939eaab3becad6cec4baaea2988e81756b60544a3f34281e13080000000000000000000000000000000000000000000000000000000000000001071119212931394045515961696e7a828e939da4adb5bfc8d1ccc2b9aea49f92867b6e61594f44382c21160a0000000000000000000000000000101d293643505c6976828585858585858585858585857f7366594c403326190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e171e262e343a41464e53555d6064686d707375787a7a7b7c7c7b7a79787673706d6764605c54524c443f38302a2217110a02000000000000000000000000000000000000030c17222d384149535b606c717a828a91969c9fa6aaacb2b6b8babfc0c3c5c6cad0cfd2d3d6d6d3d2d0cac6c5bfbab8b1aba69f98928b80746e645b51463c3123190f00000000000714212d3a4754606d7a86929facb9c5d1cbc0b5ab9f92867a6d655b5046413b36303130302f35383f444f58616c75828f9ba6b0bbc7d3d3c6baada093877a6d6054473a2d21140700000714212d3a4754606d7a86929facb9c5d1cbc0b5ab9f92867a6d655b5046413b36303130302f35383f444f58616c75828f9ba6b0bbc7d3d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635959595959595959595959595a575f61696e79829097a2adb9c5cfd9d0c2b8ac9f92867a6d6053473a2d2014070000000714212d3a46535f697784909daab4bfcbd0c5b8aca0968b7f726a60574f45403a3631322f34383d434b535c666d7a85929ea9b3bec9d3c6baaea2988a7e7164544a3f33281c0f030000000000030f1b27323d464f54565757575757575757575757575757575759606d79839098a2aebac3ceccc0b5aba1968f81756c62574d42392e23180e05000000000000000000000000000000000000000000000000000008141e2935414c56606d7984919ea8b2bdc8d4cfc5b9ada1978b7f72666b7683909ca7b1bccbd4d3c6baaea2988d8073695e52463c3122190f0000000000000000000000000000000000000f1b2835424e5b6875818e9ba8b4c1cedbcec2b5a89b8f8275685c4f422d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2b37424d576774818e9aa8b2bdc8d4e0dcd1c7bdb4aaa39f938e86817d7a787777797a7e82888f949fa4acb6c0c8d2d9d0c7baaea2988d8073665b5044382b1f1206000000000000000000000000000000000000000000000008141e28343f4a54606b75818e98a2aebac3ced6cabfb4aa9e93897d6f665c50443a3024190d040000000000000000000000000000000000000000000000000000000000000000080f171f282f353f474f575f686d79818d929ca3adb6bfc9d3cbc0baaea2988e81756b6054483d32271b0f0200000000000000000000000000111d2a3744505d6a778390929292929292929292928d8073665a4d4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019202930383f444c52585f62676d71767a7d808285868788898988878685827f7c7a76716d66615e56504a423c3428221c140b0200000000000000000000000000000000000b151e27333f49535b656c747e858f939da0a8abb0b7b9bdc3c5c6cad0cfd2d3d6d6d3d2cfcfcac6c5c2bebab8b4aeaca79f9d948f867e736e645c52493f342a20110700000000000613202c3945515d677683909dabb5c0cbd1c7baaea2988f82776c605b524c46423e3d3c3d3e40454a5059606a717e8a939eaab8c2ccd8d3c6baada093877a6d6054473a2d21140700000613202c3945515d677683909dabb5c0cbd1c7baaea2988f82776c605b524c46423e3d3c3d3e40454a5059606a717e8a939eaab8c2ccd8d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f63564c4c4c4c4c4c4c4c4c4c4d4d4d53575f676e7a85929ea9b3bec9d5d3c7baaea3988a7d7063574a3d3024170700000005121e2a36424d5765727f8c98a3aebac4cfc8bdb2a89f92877c6f696059514b4642403f3f4045474f555d656d78828f97a2adbbc4cfcabfb4aa9f9285796d6053473a2d22170b00000000000007131f2c38434f596063636363636363636363636363636363636363666e7c86929fa8b2bdc8d2c7bdb2a89e938b7e71695f544b40342820170c0200000000000000000000000000000000000000000000000000020d19242f3a45515c67717e8b96a0acb8c3cdd5c9beb2a99e9184796d707d89949fabb9c2cdd5c9beb3a99f92857a6d61574d42332a2010070000000000000000000000000000000000000f1b2835424e5b6875818e9ba8b4c1cedbcfc2b5a89c8f8275695c4f422e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313d495663707d8996a0acb8c4cfdae3d9cfc6bcb4aea59e99928e8a8785848485878b8f949c9fa6afb6bec7d2ddd2c7beb3a99f92857a6d61544a3f33281c0f030000000000000000000000000000000000000000000000020c17232e38424f59616e7a85929fa7b1bcc8d4d0c6bcafa59d9083786d60564c41352920150a000000000000000000000000000000000000000000000000000000020507080b0e0f0d161d2429353d454d565d676d78808c919ca4aeb7c1cdd6cabeb4aa9e93897d7063594f43382c1e130800000000000000000000000000111d2a3744505d6a7783909d9f9f9f9f9f9f9f9f998d8073665a4d4033271a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071119222b333b424a50565d616a6e74797e82868a8c8f929794959695949992918f8c8986827d79736d68605c544e463f332d261d140c0200000000000000000000000000000007121d27303944505b656c77808b92979ea5acb2b7bbc2c5c9ced2d3d6d6d3d2cfd0cac6c5c2c0bebab8b5b3adabaaa29f9a95908a827c716c645c524a41372d22180e00000000000004111d2935414c556673808c99a3afbbc7d4cabfb4aa9e948c7f736d615e56524d4b4a494a4b4b51545c606b6f7c86929fa5afbbcad4ded3c6baada093877a6d6054473a2d211407000004111d2935414c556673808c99a3afbbc7d4cabfb4aa9e948c7f736d615e56524d4b4a494a4b4b51545c606b6f7c86929fa5afbbcad4ded3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635649404040404040404040404142474d555e68717e8b97a1adb9c6d2d6cbbfb4aa9a8d8174675a4e412f24180d010000020e1a26313b4754616d7a86929fa9b3bec9cec3baaea39991857b6f6b605d55534d4d4b4c4b51535960676d77808d949fa9b3becdd3c6baaea2988d8174675d5145382c1c11060000000000000915222f3b4854606b6f7070707070707070707070707070707070707070727e8b96a0acb9c5d2d0c4baafa59f92867b6e665c51453d32291e1308000000000000000000000000000000000000000000000000000008131e2934404b55606d7884919da7b1bcc8d4cfc4b9aca1968b7e7176828f9ca6b0bccbd4d2c6b9ada1978c7f73685e52453b3021180e000000000000000000000000000000000000000e1b2734414e5a6774818d9aa7b4c0cddad0c3b6aa9d9083776a544a4034281c10040000000000000000000000000000000000000000000000000001050707070604010000000000000000000000000000000000000000000913202d394653606c7884919ea9b2bec9d5e1e1d8cec6bfbaafaba39f9b97979291919298989c9ea6abb0bbc0c7d0d9d7ccc0b6aca2978c8073685e5242382d22170b0000000000000000000000000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7cec1b8aca0958b7e72685d52463c31261b0d0300000000000000000000000000000000000000000000020608090e121415181b1c1b181218232c333c444c555c666c747f8c929ca5afbbc5cfd0c5bcafa59d9083776b6054483a3025190d01000000000000000000000000111d2a3744505d6a7783909daaababababababa6998d8073665a4d4033271a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019232b343d454d545c60686d747c81858a8f9299999c9ea1a9a2a2a2aba39f9e9c9999928f8a84807a726d665f5850443f382f261e140a0000000000000000000000000000000c18232e39424f59606c77818d929fa2a9afb8bdc3c7ccd2d5d7d3d2d0cbc7c5c3c0bebab8b6b3b3adaba9a9a29f9b98928e88837d766e6a625a524a41382f251b1006000000000000010d19242f3b4855616e7b87929facb9c2cfd0c5bcb0a69c918c7f756e68615e575857565658555d60666d727d859298a2aeb7c1ccdce6d3c6baada093877a6d6054473a2d2114070000010d19242f3b4855616e7b87929facb9c2cfd0c5bcb0a69c918c7f756e68615e575857565658555d60666d727d859298a2aeb7c1ccdce6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c33333333333333333331373b434c56606d7985929eabb8c5d1dcd0c4b7aa9d9184776a554b4135291d11040000000914202d3946525e6873808d97a1adb9c3cecbbfb4aba19791857d736d67615e57595859555c60636b7079818d929da6b0bbc5cfc9bdb2a89f92867b6e61554b4035291d0a00000000000000091623303c4956636f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d84919eaab7c4d1d6ccc1baaea2989083796d60594f443a302519100600000000000000000000000000000000000000000000000000010c18232f3944505c66717e8a959fabb8c2ccd5c9bdb2a89e9184787d89949fabb8c2cdd5c9bdb2a89e9285796d60564c4133291f0f06000000000000000000000000000000000000000d1a2733404d5a6673808d99a6b3c0ccd9d1c5b8ab9e928578665c5144382c1f1206000000000000000000000000000000000000000000000002080d1113141413100d07010000000000000000000000000000000000000005121f2b3744505b65727f8c97a1adb9c2cfd9e3e0d8d0cbc1bdb4aeaca7a9a29f9d9e9fa2aaa8aab0b7bbc2ccd2d9d1cbc1bbafa49a92857a6d60564c412f261c110600000000000000000000000000000000000000000000000000000a151e2a36414c56606d7883909da5afbcc5d0d4c8bcb1a79e92857a6d61584e43372b1f150b010000000000000000000000000000000000020608090e1214151a1e21222528282725201a1a212a323a434b545b606d73808d939ea9b3bec9d5cec1b8aba095897c6f63564c41362a1d1105000000000000000000000000111d2a3744505d6a7783909daab6b8b8b8b8b3a6998d8073665a4d4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e19222b353d464e575e666d727a80878e92989c9fa3aba8abadb3aeafafb5afacaba9aba39f9c97918c857f786f6a625a504a423830261c11060000000000000000000000000004101c2834404b54606b737f8c939da4adb3bbc1c8ced3d7d3d1cbc7c5c2bfbab8b6b3b3adaba9a6a9a29f9c9997928e8b86817c77716c625f58504840382f261d120900000000000000000814212d3a46535f6975818e9ba6b0bcc6d1cec1b8ada39c918c817a736e6966656463636466676d71787f869297a1aab4bfc9d3dde0d3c6baada093877a6d6054473a2d2114070000000814212d3a46535f6975818e9ba6b0bcc6d1cec1b8ada39c918c817a736e6966656463636466676d71787f869297a1aab4bfc9d3dde0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302626262626262626262b313b45515c6774808d9aa7b3c0cddad2c5b8ac9f928579675d5145392c20130600000005111e2a36414c56606d7a85919ea7b1bcc5cfc6bdb2a9a19792878079726e696766656667676d70757d838f939da4aeb8c2cdcac2b9aca0968c7f72685e5243392f24180c00000000000003101d2a3643505d6976828a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a9196a0acb9c5d2ded6cabfb4aaa0958d80736b60564c41362a22180d030000000000000000000000000000000000000000000000000007121d28343f4a54616c7783909da6b0bbc7d3cec4b9aca0968a7e828f9ca6b0bbcad4d2c5b9aca0968b7f72675d51443a3021170d00000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfd0dbd2c6b9ac9f9386796d6053463a2d20130a00000000000000000000000000000000000000000000040c13191d202120201d18120f0a050100000000000000000000000000000000030f1b27333f4953606d7a84919ea6b0bdc7d1dce8e2dcd6cfc6bfbab9b4b3adabaaaaacaeb4b5b7bbc1c7cdd8d5cfc7c0bbafa59f93887e71685d52443a301d140a000000000000000000000000000000000000000000000000000000030c1925303b44505c666f7d89939eaab4becad6cdc3b9ada1978d80746a5f53473e31271d120700000000000000000000000000000105090f1214151a1e2122262a2d2e32353534312c251e1820283139424a505b606c77818f97a1adb9c4cfd4c8bcb1a79b8e8275685e5246392d201307000000000000000000000000111d2a3744505d6a7783909daab6c3c5c5c0b3a6998d8073665a4d4033271a0d0000040607070706040000000000000000000000000000000000000000000000000000000000000000000000000000020b17202b343d474f5860696e787f858d92999fa2aaacafb5b5b8b9bebbbcbcc0bbb9b8b5b5aeaca9a19e97928b837c716c605b544a42382e2317110800000000000000000000000006131f2c3845515c66707d88939fa5aebabec5cdd4d9d1cbc7c5bfbab9b5b4aeaca9a6a9a29f9c999797928f8c8985827e7a746f6a64615a534e463f362e261d140b00000000000000000005121e2a36424d57626f7c88949eaab4bfcbd7cabfb5ada39c938e86807b777371706f70717275797e848b9298a1a9b3bcc6d0dbe5e0d3c6baada093877a6d6054473a2d21140700000005121e2a36424d57626f7c88949eaab4bfcbd7cabfb5ada39c938e86807b777371706f70717275797e848b9298a1a9b3bcc6d0dbe5e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231919191919191a1a1f2834404b5564717d8a97a4b0bdcad7d3c7baaea298877a6d6054473a2d211407000000010d1925303a45515d67717e8b95a0aab3bdc7cfc4bbb2a9a199928c857f7b77747372727475797d828990959ea5aeb6c0cacbc2b8afa59e9184796d60564d4131271d120700000000000003101d2a3643505d697683909696969696969696969696969696969696969696969ea0a8b2bdc8d4e1dbd0c6bcb1a79f93887d70685e52463f342a1f150b01000000000000000000000000000000000000000000000000010b17232e3842505a63707d89949fabb7c1cfd5c9bdb2a89e92858f949fabb8c2cdd4c8bcb1a79e9184796d60554b4032281e0f0500000000000000000000000000000000000000000a1724303d4a5763707d8a96aab4bfcad6d4c8bbafa49a897c6f6356493c31261b0f040000000000000000000000000000000000000000040e161e24292d2e2d2c29241d1b16110d08030000000000000000000000000000000b17222d3845515d67717e8a949fabb5c0cbd7e2ebe7e1d8d1cbc7c5c1bebab8b7b7b8babfc2c3c7ccd3d4cfc9c4bdb5afa69e938c7f736c61564c4132281e0b020000000000000000000000000000000000000000000000000000000008141e28343f4a54606b75818e98a2aebac3ced6cabeb3a99f92877c6f625a5043392f24180c03000000000000000000000002080d11151a1f2122262b2e2f31363a3b3e4142403d372f271e161f272f383f44505b656d7a85929ea9b2bdc9d5cdc3b9ac9f92867a6d6154473a2e211407000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d4033271a0d070c101313141413100c070c09070603000000000000000000000000000000000000000000000000000000000000000a141d29323d464f59606a6f7b838b92979fa3abaeb4b9bbc0c2c5c6c9cfc9d1cbc7c5c4c2bfbbb9b2ada9a29f9590867e746c665c544a3f3428231a100500000000000000000000000713202d3a4653606d7984919aa4afb7c0cacfd7d3cfc7c0bbb9b4aeaca9aaa39f9c9a9797928f8d8a8885827f7c7975716d68626058555047433c332d241c140b02000000000000000000020e1a26313b47535f6a76828f98a3aebac1ccd1c7bfb6ada59e98928c8783807e7d7c7d7e7f82868a91969fa3aab3bbc5ced7dfe6e0d3c6baada093877a6d6054473a2d211407000000020e1a26313b47535f6a76828f98a3aebac1ccd1c7bfb6ada59e98928c8783807e7d7c7d7e7f82868a91969fa3aab3bbc5ced7dfe6e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160d0d0d0d0d090d18232e3b4855626e7b8895a1aebbc8d4d6cabfb4aa94887b6e6155483b2e2215080000000008131e2935414b55606c78839098a2abb5c0cbcdc4bbb3aba39f97918c878381807e7f8082858a8f949da0a7afb7c0c8ccc3b9b0a69d938a7e70675c51443b301f150b0100000000000003101d2a3643505d697683909ca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3aaacb2bac3ced9e5e2d8cec3bbafa49a91857a6d615b51463c31271d12070000000000000000000000000000000000000000000000000006111c26303e4854606b76828f9ca5afbdc7d1cec4b9ada19792979fa6b0bbcad4d1c5b8aca0958a7e71665c51433a2f20160c0000000000000000000000000000000000000000000815222e3b4855616e7b8898a2aebac7d3d8ccc0b6ac9a8d807367584e43372b20150a00000000000000000000000000000000000000030c1620283035393a3a39352f2b27201d19130f0b060000000000000000000000000006111b2935414b55616c76829099a3afbbc4d0d9e4eeeae2dcd7d3d2cfcac6c5c4c4c5c6cad0d0d2d0cec8c4bdb9b3aba39f948e81776c605a50443a2f20160c0000000000000000000000000000000000000000000000000000000000020c17232e38424f59616e7b86929fa7b1bcc8d4cfc5bbafa3998f82766c61554b4035291f140900000000000000000000050c13191d20262b2e2f31373a3b3e4246484b4e4f4d4841392f2017151d262d333f49535e68717e8b96a1adb9c5d2d4c7bbafa3998a7d7164574a3e31241707000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d4033271a161a181c1f2021201f1d181b19161312100b060300000000000000000000000000000000000000000000000000000006111c262f3b444e58606b6f7d8590959ea2a9afb5babfc5c7cbc8c5c4c2c1c0c0c1c2c5c6cacbc7c4beb9b3ada7a098928b80786d665c50443f352c21160b0000000000000000000007131f2c38434f5965727f8b96a0acb6c0c9d6dbd1c9c1bdb5afacaba39f9c989892908d8a888583807d7b7876736f6d6665605d56544e49443e37312a211b120b02000000000000000000000009141f2b37434e58626f7c86929fa5afbac4cdd1c8bfb7afaaa29f9995908d8b8a89898b8c8f92989ea0a8aeb4bcc3c4c8cdd5dde6d3c6baada093877a6d6054473a2d2114070000000009141f2b37434e58626f7c86929fa5afbac4cdd1c8bfb7afaaa29f9995908d8b8a89898b8c8f92989ea0a8aeb4bcc3c4c8cdd5dde6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160900000000000714212d3a4754606d7a8793a0adbac6d3dbd0bcafa296897c6f6356493c3023160900000000020d18242f3a44505b666f7c869299a3afbbbfc6cdc5bdb4aea9a19e9895908e8c8b8c8d8f92989c9ea6acb1b9c1c9cbc2bab1a79f948e81746c61554b4032291f0d030000000000000003101d2a3643505d697683909ca9b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b7b9bdc3ccd5e0e3eae0d8ccc0b6aca1978f82756d62584e43392f23180e05000000000000000000000000000000000000000000000000000a141e2c38444f59626f7c88939eabb5c0cbd5c9beb3a9a19ea1a9b0b8c2ccd3c7bcb0a69d9083786c60544b4031281d0e050000000000000000000000000000000000000000000713202d3a4653606d7985929facb8c5d2ddd2c4b7aa9e9184776a5f53473c31261b0f060000000000000000000000000000000000000b151e28323a4146474745403937322d29251f1b17110e090300000000000000000000000d18242f3a43505a626f7c87929fa8b2bec7d2dde8f3ede7e3e0dfd8d1cbc7c5c6c8ccd0cac6c5c3c0bcb8b2ada9a199928c82796d655b50483e32281e0e0400000000000000000000000000000000000000000000000000000000000006111c26303d46525e68727f8c95a0acb8c1ced7cbc0b5ab9f948a7e71675d51453b31251a0c030000000000000000050e161e252a2d31373a3b3f4247484b4d5355585b5b59534b4132291f14141c222d38414c56606d7984919eabb8c4d1d7cbc0b5ab9a8d8174675a4e412f24180d010000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d40332720232723282c2d2d2d2c2924282623201f1c17120f0b06000000000000000000000000000000000000000000000000000b17222d38424c56606a6f7d8692979fa7adb3bbc0c7cac7c5c2bdb9b7b5b4b3b3b4b6b8babec4c5c8c9c5bebab1aaa39f928d81786d605b51473e33281c10040000000000000000000915222f3b4854606b7784919da8b2bec7d2dbd1c7bfb7afaba39f9b99928f8b888683807e7b797673716e69696662605c5454524c47433c39332b2620180f0900000000000000000000000000030f1b26313c47535f6a727f8b939ea8b2bbc4ccd7c9c1bcb4aeaca7a09d999897969697999c9fa3aaacb2babcb8b6b8bcc3cbd5dfd3c6baada093877a6d6054473a2d21140700000000030f1b26313c47535f6a727f8b939ea8b2bbc4ccd7c9c1bcb4aeaca7a09d999897969697999c9fa3aaacb2babcb8b6b8bcc3cbd5dfd3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160900000000000714202d3a4753606d7a8693a0adb9c6d3d6c9bcafa396897d706356493d3023160a000000000007131d28333f4a545f6a707d87929fa4aeb5bdc4cdc6bfbab3adaba7a09d9a9998999a9c9fa2aaaab0b8bcc3cbcac0b9b0a8a0958f82786d605a5043392e20170d000000000000000003101d2a3643505d697683909ca9b6bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdc4c5c8ced5d6d6d6d6d6ddd2c7beb3a99e948b7f726a5f554b40342920170b02000000000000000000000000000000000000000000000000020c1c27333d4754606a75818e99a3afbbc6d0cfc5bbb3adabadb3bbc2cad4d0c7b7ab9f948a7d70665b5042392e1f160c0000000000000000000000000000000000000000000006121f2b3844505c6676828f9ca9b5c2ced9d2c5b9aca096887c6f62584e43372b21180d040000000000000000000000000000000007121d27303a444c525453514b47433d3935302b27221b1a14100b0500000000000000000007131d28313e47535f6a74808d96a1acb6c0ccd8e1eaf4f3ede3d8cfc6bfbbb9b9bbc0babfbab8b6b3b1aca8a19e9791877f776d675d53493f362c20160c00000000000000000000000000000000000000000000000000000000000000000a151e2a36414d56606d7883909da5afbcc5d0d1c7bdb0a69e9184796d60574d42362a1e150a00000000000000020c1620283036393c4347484b4d535558575f61656868655d53443b3025190e111b262f3a45515c6674818d9aa7b4c0cddcd1c4b7aa9d9184776a554b4035291d10040000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d40332b2d30342e34383a3a3a38352f35332f2d2b28231f1b17110b0600000000000000000000000000000000000000000000030f1c28333f4a545e686f7c869298a1a9b1b9bec5cbc6bfbab9b5b2acaaa9a8a6a7a8a9abadb3b7b8bdc3c8cac3bcb4aea49d938e81746d63594f44382c201407000000000000000000091623303c4956636f7c8995a0acbac3d0d9d3cabfb5ada59e99928e8a86827f7c797673716e6c656664615f57595653504a4745413a37322d28221a150e060000000000000000000000000000000a15202b37434e58626d75818f96a1a9b2bac2cbd1cec6bfbab8b1acaaa6a4a3a2a3a4a5a8acaeb4b8bdb9b1abaaabb1b9c3cdd9d3c6baada093877a6d6054473a2d21140700000000000a15202b37434e58626d75818f96a1a9b2bac2cbd1cec6bfbab8b1acaaa6a4a3a2a3a4a5a8acaeb4b8bdb9b1abaaabb1b9c3cdd9d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160901010000040b15222e3b4855616e7b8894a1aebbc7d4d7cbbfb4aa95887b6f6255483c2f2215090000000000010b17222d38424e58606b717e8b929fa3abb3bbc2c9cbc4beb9b8b1acaaa7a6a5a5a7a8acaeb4b7bbc1c8cbc6bfbaaea69f969083796d665c50483e30271d0e05000000000000000003101d2a3643505d697683909ca9b6c3c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9cacacacacacacacacacacacad0c4bbb0a69f92867c6f675c51453e32291d140a000000000000000000000000000000000000000000000000000b16212b37434e58626e7b87929faab4bfcbd6cdc5beb9b8b9bec5cdd4d2c7bdb0a69c9083766b61544a3f30271d0d040000000000000000000000000000000000000000000003101c28343f4a5466727f8c99a8b2bdc8d4d4c8bdb2a89b8e81746a5f53473e332a1f160c0500000000000000000000000000020a1118232e39424c565d61605d55544e4746413a37332d2a251f1c1710080000000000000000010c161f2b37434e58606d7a84919aa4afbbc3cfd8e3edf3e7dcd1c6bdb5aeacacafb6adb4aeaca9a6a7a09d96918c857d726c655d554b41382d241a0d040000000000000000000000000000000001010101010101010101010101010101030c1925303b44505c66707d89939eaab4becad6cfc2b9aca1968c8073695e53463d30261c110600000000000008131e28323a4146474e535558575f626568696e7174756f65564d42362a1e130a141d2834404b5464717e8a97a4b1bdcad7d2c5b8ac9f928579675d5145392c2013060000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d4034383a3d40434045464747454043423f3c3a38342e2b27221b17110a0200000000000000000000000000000000000000010b151f2b3844505b666e7a849198a2aab3bbc2cac7c0bbb4aeaca8a8a09e9c9b9a9a9b9c9fa2a9aaacb1b8bdc3ccc6bfbaaea59e938c7f726b6155483c2f2316090000000000000000000d192633404c5966737f8c99a8b1bdccd5d8ccc2b8ada39c938e87817d7a76726f6d66676461605b535755534d4c4946443f3a3a3f3e3d39342d241b0f0600000000000000000000000000000000040f1b26323c46515b606d7a849197a1a8b0babfc6cfd0cac6c3bcb8b6b3b1b0afb0b1b2b5b8babfc0b6aea7a09da0a7b1bcc8d4d3c6baada093877a6d6054473a2d2114070000000000040f1b26323c46515b606d7a849197a1a8b0babfc6cfd0cac6c3bcb8b6b3b1b0afb0b1b2b5b8babfc0b6aea7a09da0a7b1bcc8d4d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160d0d0d070c10151c28333f4a5463707d8996a3b0bcc9d6d3c7baaea398877a6d6154473a2e21140700000000000006111c262f3c464f59626c73808b9299a1a9b1b9bdc4c9c9c6c3bcb8b6b4b3b1b2b3b5b8babfc6c7ccc7c0bbb4aea49d9490847b6e675d544a3f362c1e150b00000000000000000003101d2a3643505d697683909ca9b6bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbaaea3989083796d60594f443b2f261b1106000000000000000000000000000000000000000000000000050f1b27323c47535f6974818e98a3aebac5d0d6cfc9c6c5c6c9cfd6d7ccc0b5ab9e94897c6f63594f42382d1e150b0000000000000000000000000000000000000000000000000b17232e3c4955626f7c8896a0acb9c7d1d9cec3b9ac9f93877c6f62594f453c31281e170e070000000000000000000000050c141c232834404b545d686d6d6762605854524c46443f3836302d28221a12080000000000000000040d1b26313c45525d68707d88939fa7b1bdc6d1dce7efe3d7cbbfb5aba39f9fa4aca1aaa29f9d9a9795908b847f79706b605b534b43392f261b120800000000000000000000000000030608090d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d08141f28343f4a54606b75818e98a2aebac3ced5c9bdb2a89f92867b6e61594f42382e23170c0200000000010d1925303a444c5254585f626568696e7175787b7e818175695e52463a3024190c0b18232e3d495663707c8996a3afbcc9d6d3c7baaea298867a6d6053473a2d2014070000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d403f4446494d4f4b51535453514b504e4c4946443f3937332d27221b140b0600000000000000000000000000000000000007121d2a36414c56606c78829096a1aab4bcc5cdc4bdb5afaba39f9b9796918f8e8d8d8e8f9297999da0a8acb2bac1c4beb9b1aba59f93877d7063574a3d3024170a000000000000000003101c2936434f5c6976828f9ca9b5c2cedcd3c7bbb0a69c918c817b75716d676562605c5457555350494a484642403c3a383f44464c4b49453e362d22180d03000000000000000000000000000000000a15202a343f45525d686e7c8591969fa6aeb4bcc1c6cad0cdc8c4c3c0bebdbcbcbebfc2c5c3bcb8aea49d959095a0abb8c4d1d3c6baada093877a6d6054473a2d2114070000000000000a15202a343f45525d686e7c8591969fa6aeb4bcc1c6cad0cdc8c4c3c0bebdbcbcbebfc2c5c3bcb8aea49d959095a0abb8c4ccccc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231a1a1a1a1a181c1f272e3844505b6673808d9aa6b3c0cdd9d2c5b9ac9f928679685d5246392d201307000000000000000a141d2a343d47505a636e737f8791979fa7adb2b9bec5c7cbc8c4c3c1bfbebfc0c2c5c6cac8c7c0bbb5afaaa29f928d827a6e695e554c42382e241a0c0300000000000000000003101d2a3643505d697683909ca9b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b4aaa0958d80746b61564c41382d22170b000000000000000000000000000000000000000000000000000a15202b37424d57616e7b86929fa9b3becad6dad5d2d1d2d5dae0d4c7bbafa4998f82756b6054473e2f261c0c030000000000000000000000000000000000000000000000000615222e3b47545f6a7784919eabb5c0cbd7d4c7bbafa4998f82756b61574d433a30292018120b0502000000000000040a0e171e262e343f45515c666d7a7a746f6a65615e5653504946423b39332c241a100500000000000000000a15202935414c56606b74808d95a0abb5bfcbd7e0eae0d3c7bbaea39992939a9494939892908d8a87837e79726d6760595049413931271d140a000000000000000000000000040a0f1315161a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a17232e38424f59616e7b86929fa7b1bcc8d4cec4baaea3988e81756b60544a3f34281e13080000000005111d2a36414c565e61686a6e7275787b7e8184888b8e877b6e61564c4135291e150c15222f3c4855626f7b8895a2aebbc8d5d6cabfb4aa94887b6e6155483b2e2215080000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d484a5053565a5c545c6060605d555d5b595653504a46443f38332d261d17110a02000000000000000000000000000000000c18242f3946525e68717e8b949fa8b2bcc5ccc3bbb2aba39f99928f8a878482818080818385888c91959ea0a8afbbbab3ada7a09d938e867f7265594c3f3226190c000000000000000004101c2834404a546b7884919eabb7c4d1ded0c3b7aa9e948c7f756e6964605d555553514a4b4846443f3e3b3a3631353c424a505359585650483e342a1f150b01000000000000000000000000000000040e18222935414c565f6a6e7c8490949fa3aaafb8babfc4c5c9cfcccccbcac9cec8c5c3bdb9b1aca49d928d83909daab6c3d0d3c6baada093877a6d6054473a2d211407000000000000040e18222935414c565f6a6e7c8490949fa3aaafb8babfc4c5c9cfcccccbcac9cec8c5c3bdb9b1aca49d928d83909daab6bfbfbfbfbaada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3027272727272723282c3039414c55606c7884919eaab7c4d1ddd1c4b7ab9e9184786b564c4135291d110500000000000000020b18222b353f48525c636d727d8590959ea1a8adb3b9bbbfc4c5c9cfcacbcad0cac6c5c2bdb8b6afaba39f98928a80786e685e574d433a30261c12080000000000000000000003101d2a3643505d697683909ca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a79d928a7d70685e53493f33271b0f03000000000000000000000000000000000000000000000000040e1a26313c46525e6973808d97a2adbac4cfdae1dfdedfe1e2d7cbbfb4ab9f93877c6f62594f43352c1d140a0000000000000000000000000000000000000000000000000006131f2b37434e5866727f8c99a3afbbc7d2d7ccc0b5ab9e948a7d70695f554c433a3228231c15110e09080707070c10151b202930383f44515b606d788385817c77726d6863605b53524d49443e362c22170b0000000000000000040d19242f3a434f59606d79839199a3aebbc2ced8e2dfd2c5b9ac9f92878788888787868583807d7a77716d66605d554f443f382f271f150b020000000000000000000000070f151b1f222327272727272727272727272727272727272727272726303d46525e68727f8c95a0acb8c1ced6cbbfb4aa9e93897d70665c50443a3025190d040000000713202d3946525e686d75787b7e8185888b8e9196989a8c8073685d52463b30271e181c222f3c4855626f7b8895a2aebbc8d5d6cabfb4aa94887b6e6155483b2e2215080000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4f55545c606367696b666d6d6d676b6a686662605c54535049443f382f27221b140b04000000000000000000000000000004101d2935404b55616d7a85929ea6b0bac4cec3b9b1a9a199928e86827d7a77767573747576797b7f848a91969ea5aeaea9a19e959089817b726d62574a3e3125180b000000000000000006121f2c3844515c667885929fabb8c5d2dccfc2b5a99c8f82766d615e5754514b494644403e3b3937332d2e30363a41454e545c606564625a50463c31271d12070000000000000000000000000000000006101924303a444e585f6a6e7a828c92989ea5acaeb4b7b9bdbebfbfc0c0bfbebcb8b7b2aca7a09d928d807d8996a3b0bcc9d3c6baada093877a6d6054473a2d2114070000000000000006101924303a444e585f6a6e7a828c92989ea5acaeb4b7b9bdbebfbfc0c0bfbebcb8b7b2aca7a09d928d807d8996a3b0b2b2b2b2b2ada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c343434343434342e34383c424a515d67717e8a96a0acb9c5d2d7cbc0b5ab9b8e8275685b4f423024190d01000000000000000006101a232d36404a525b626b6f7b838b91969ea1a9acaeb5b8b9bdbdbdbebdbdbfbab8b6b2acaca49f99928e867e746d665e564d453b31281e150a000000000000000000000003101d2a3643505d6976839097979797979797979797979797979797979797979797979797979797979797979797979797979797979792857a6e655b5044372b1f1205000000000000000000000000000000000000000000000000000915202a36424d57616d7a85929fa9b3bec9d5e0ebebece7dbd0c7baaea3998e81756a5f53473d32231a0b0200000000000000000000000000000000000000000000000000030f1b26323c4754616e7b87929fabb5c0ccd7d2c7bdb0a69f92857b6e675d554c443c342e27201e1a1615141415181c1f272b323a424a505b636d74808d928e89837f7a75706c65615e575550483e33281c1004000000000000000008131e28313d45515c676f7c87929fa7b1bcc6d0dbded2c5b8ab9f92857b7b7b7a7a79797673706e6864605c54514b433d332d261d150d03000000000000000000000007101920272b2e2f343434343434343434343434343434343434343434343436414d56606d7883909da5afbcc5d0d0c6bcafa59d9083786d60564c41362a20150a0000000714212e3a4754616d7a8185888b8e9197989b9ea1a89f92857a6d61564d4239302924282b333d4a5663707d8996a3b0bcc9d6d3c6baaea298867a6d6053473a2d2014070000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a596163666d7073767879797a7a79787675726f6d6663605b535049413c332d261d160d040000000000000000000000000006131f2c3945515d6773808d97a2adb8c2ccc6bcb1a7a0979187817b75716d686968676768656c6e72787d848e939fa3a39f97918b837c756e69625b51463a2e22160900000000000000000713202d3a4653606d798698a2aebac6d3d7cabdb1a4978a7e71645b534d4745413c3a38342e2e2d2b2d31373b41464b515860666d72716c62584e43392f24180f050000000000000000000000000000000008131e28323c464e585f686e787f868f939b9fa2aaabadb2b1b2b3b3b3b2b1b1acaaa8a19e95908980747d8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000008131e28323c464e585f686e787f868f939b9fa2aaabadb2b1b2b3b3b3b2b1b1acaaa8a19e95908980747d8996a3a6a6a6a6a6a6a6a093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356494040404040404040414044464e545c606d7a84919ea8b2bdc8d4d4c7bbafa3998a7e7164574b3e312418080000000000000000000008111b242e384049515960696e787e848b92979c9fa3ababadb2b0b1b1b1b0b4aeaca9a8a09e9a938e87817b716c605c544d443b33291f160c03000000000000000000000003101d2a3643505d6976828a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a82786c605346392d20130600000000000000000000000000000000000000000000000000030e1a25303b46525d68727f8c97a1adb9c4ced9e5f1efe2d6cabfb4aa9f92867b6e61584e43352b2111080000000000000000000000000000000000000000000000000000000a15202d3a46525e6975818e99a4afbbc6d0d9d0c1baada2979183796d675e564e444039302d2a25232220212223282c32373e444c545c606d737f8c929f9a95908b86817d78736e6964615a5044392d2114080000000000000000010c161f2934404b55606a737f8c959faab4bfcad6ded3c6baada2979083786e6e6d6c666a6764615e5653514b45413a3127221b140b030000000000000000000000040f19222b32373b3c4040404040404040404040404040404040404040404040404044505c66707d89939eaab4becad6cec1b8aca0958b7f72685e52463c32261b0f0000000613202d394653606c79849197989b9ea1a9a8abadaea2988d8073695e544a423a352f34383d454f5965727f8c98a5b2bfcbd8d2c5b8ac9f928579675d5145392c2013060000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665f626b7074797c80828486868786868583817f7c7974706c65605b534e443f382f281f160d040000000000000000000000000714202d3a4753606d7985929ea9b3becacbbfb4aaa09591857c746e6964615e565b5a5a535b6062656c7179818b929999928d857e786f6b615e5751493f352920180f06000000000000000713202d3a4653606d798698a2aebac6d3d5c8bcafa295897c6f625649423b39352f2f2e2f302d3337393c42474c52555d606a6f787f7e716a5f554b40352921170c03000000000000000000000000000000020c16202a343c464e565e666d737b82888e92989b9ea1a8a4a5a6a7a6a6a5a7a09d9996918b837d74707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000020c16202a343c464e565e666d737b82888e92989b9ea1a8a4a5a6a7a6a6a5a7a09d9996918b837d74707c899699999999999999999993877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f63564d4d4d4d4d4d4d4d4d4d4a5153585f666d75818e96a0acbac3ced9d2c5b9ac9f92867a6d6154473a2e211407000000000000000000000009121c262e373f474f575e666d71797f858b8f92999b9ea1a9a3a4a4a4a3aaa29f9c9896918d87817b746e69615a514a423b322921170d0400000000000000000000000000091623303c4956636f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7a6d6054473a2d211407000000000000000000000000000000000000000000000000000009141f2935414c56606d7985919ea8b2bdc9d5dfeae8ded3c6baaea2988d8074695f53463c3123190f0000000000000000000000000000000000000000000000000000000005111e2a36424d56626e7b87939faab4bfcad6d6cabeb3a9a0958f82796d685f58514a423e3a3630302e2d2d2e2e34383d434750565e666d747f8c919ca4a7a09d98928e89847f7b76716c6155493c3023160a000000000000000000040d18232f39434e58606d78839098a2aebac1ccd5d6cabeb3a99f958d80736c60605b545a5754524c46454039352f281f17110a020000000000000000000000000a15202b343d4347494d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a54606b75818e98a2aebac3ced4c8bcb1a79f92857a6d61584e43372b1c1106000005121f2b3744505b6573808d99a4a8abadb2b4b7b9b3aa9f92867b6e665c544b4540413f44464e57606b7683909da9b6c3d0dcd1c4b7aa9e9184776b554b4035291d11040000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073666a6f767d8185898d8f91929993999392908e8c8985817c78716c655f585049413a31281f160d030000000000000000000004111d2935414c5565727e8b97a2adbbc5cfc7baaea39891837b6f6a615e5654524c4e4d4d495053535b60676d747e87928f86807a716c666059524d453f3a37312a22180e0300000000000006121f2b3844505c667985929facb8c5d2d7cabdb1a4978a7e716459504745413e3d3c3b3c3d3e3f4446494d53565e61676d747c838c867c6e675d51453e33291e150a00000000000000000000000000000000040e18222a333c444c545c60696e757c81868a8e9196969899999a9999989695908c88847e786f6b707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000000040e18222a333c444c545c60696e757c81868a8e9196969899999a9999989695908c88847e786f6b707d898c8c8c8c8c8c8c8c8c8c8c877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635a5a5a5a5a5a5a5a5a5a5a545c60636a6f78818e939ea8b2bdccd5d4c8bdb2a89c8f8376685d5246392d2013070000000000000000000000000a141c252d353d454d545c60676d72797f82868a8e91969596979897979698928f8c8884807c756e69615e5750444039302920170f0500000000000000000000000000000915222f3b4854606b6f707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070706d685d5245392c2013060000000000000000000000000000000000000000000000000000020d1924303a45515d67727f8b96a0acb9c3cdd9e4e0d6cabeb3a99f92867a6e61574d42342a20100700000000000000000000000000000000000000000000000000000000020e1925303b47535f6a75818e98a2aebac3ced7cfc5bbb1a79e948f827a6f6a605c54504746423e3c3b3a3a3b3c4045464e545a61686d78808c919ca3adb1acaaa39f9b96918c87827e7164574a3e3124170b0000000000000000000007121d27313c44505c666e7b86929fa5afbac3cfd8cfc5bbb1a79d928a7d70695e544a4d4a4746413b38342e29241d160d0600000000000000000000000000030f1b27323d464e54565a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59616e7b86929fa7b1bcc8d4cec3baada2978d81746a5f5347382e23170b0000030f1b27333f4953626e7b87939facb6b9bec1c4c5baaea2989082786d665d55514b4e4a5053586069707d89959fabb8c4d1d7cbbfb5ab9b8e8174685b4e412f24180d010000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d80736d747c83898e92979a9c9e9fa3a0a49f9e9d9b9997928e89837d786f6a605b534b433a31281f150b010000000000000000000613202c3945515d6776828f9ca9b3becdcabeb3aa9f92867c6e696058524d4c4c4c4c4c4c4c4c4c4950555d606c717e86827b736d67605b544f4c4c4c4847433c342a20150a00000000000003101c28343f4a546b7885919eabb8c4d1dbcec1b5a89b8e82756b625a54524c4a494848494a4b49505356575f62686e737a808790959083796d605a50453b30261c110600000000000000000000000000000000060f18212a323b424a51575f626a6f757a7e818487898b8c8c8d8d8c8b898784807c78726d6663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000060f18212a323b424a51575f626a6f757a7e818487898b8c8c8d8d8c8b898784807c78726d66616e7b7f7f7f7f7f7f7f7f7f7f7f7f7f796d6053463a2d201307000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f67676767676767676767676768666d70747c828e939ea5afbac4ced8cec6b8aca0968b7e7165564c4135291d1105000000000000000000000000020a131b232b333b424a50555c60676d72767a7d818587888a8a8b8a8a898785837f7b77736f6a625f57534d453e342e271e170e0500000000000000000000000000000007131f2c38444f59606364646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464605d564c4135291d110400000000000000000000000000000000000000000000000000000008131e2935404b55606d7984919ea7b1bcc8d4dedacfc6b9ada1978c8073685e52453b3122180e00000000000000000000000000000000000000000000000000000000000009141f2b37434e58616e7b86929fa7b1bcc5d0d7cdc3b9b0a69e9490847c726d66615a54524d4b4948474748494b51535860626c707a828d929ca3adb6bcb8b4aeaca8a19e99938d8174675a4e4134271b0e01000000000000000000010b151f28343f4a545f69717e8b939ea8b2bdc6d1d7cdc2b9aea49f92857b6e665c51443e3b3936302c28231d18130c04000000000000000000000000000006131f2b37434e58606267676767676767676767676767676767676767676767676767676767676769727f8c95a0acb8c5d1d6cabeb3a99f93877c6f62544a3f34281c100300000b17222d3847535f6975818e9aa4afbbc5cfd1cabfb4aa9f948e81786d67605d555a545c60636a6f7b84919ea7b1bcc8d4d3c7bbaea3998a7d7164574a3e31241707000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d807379808790949a9ea1a9a9abacaeb5afacaba9a8a9a29f9a95908a837c736c655d554c433a31271d12070000000000000000000714212d3a4754606d7a86929facb9c5cfc6baaea2988c7f726a5f57595959595959595959595959595959595a626c707b756e69605d5559595959595955534e463c31261a0f020000000000000b17232e43505c6976828f9ca9b6c2d0dbcfc3b6aa9e938a7d716c64605d5657565554555758535b606266696e747a80858d9399a0958d80746c61574d42382e23170e0500000000000000000000000000000000060f182029303940444d53585f62676d7174787a7c7e7f8080807f7e7c7a77736f6a65605c63707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000060f182029303940444d53585f62676d7174787a7c7e7f8080807f7e7c7a77736f6a65605c5f696e737373737373737373737373736d675c5145382c1f1306000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c737373737373737373737373747576797d818790949ea5afb7c1ccd6d0c6bcb0a69d9184786d6053463a3024190d010000000000000000000000000001091119202930383f444b51555d6065676d7174787a7c7d7e7e7e7d7c7b7976726e6967625f58534d46423b3328231c150c0500000000000000000000000000000000030f1b27323d474f54565757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575754524c433a2f24190d01000000000000000000000000000000000000000000000000000000020d18242f3944515c66717e8a95a0acb8c2cdd8d5c9bdb2a89e92857a6d60564c4133291f1006000000000000000000000000000000000000000000000000000000000000020f1a26313c46535e69727f8c959fa9b3bec7d2d5ccc1b8b0a69f9691857f79706c65615e5757565553545556545c60646a6f767d858f949da4adb5bfc8c6bfbab9b2aca4999184796d6053473a2d2014070000000000000000000000030d17232e38424d57626c75818e96a0abb4bfcbd7d4cbc0baada2979083786d605a50453b302a251f1c18120d07010000000000000000000000000000000815222e3b4754606a6f73737373737373737373737373737373737373737373737373737373737373737984919daab7c4d0dbcfc5bbafa499908376665c5044382b1f1206000006111b2b37424d57626f7c87939fa9b3becad6d0c5bcb0a69d938e8279726d67686769666d70757c849196a1adb9c2cdd9d0c5b9ac9f92867a6d6054473a2d211407000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d807a828d93999fa6abadb3b5b7b9bbbfbbb9b8b6b4b3adaba7a09d9590877f776d675d564c43392f23180f0500000000000000000b1724313e4a5764717d8a99a3aebbc7d2c5b8ab9f9285796d66666666666666666666666666666666666666666666696e696666666666666666666666625f584e43372b1f1206000000000000061a2734404d5a6773808d9aaab4bfcad6d2c6baafa59f92877e76716d68666463626162636566656c6f73767b81868c92979fa4a79d928a7e71695e544a3f342820170d0200000000000000000000000000000000060e171e272e343c42474e53555d606468686e6f71727374737372706e6966625f58535663707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000000000000060e171e272e343c42474e53555d606468686e6f71727374737372706e6966625f585350575f6166666666666666666666666666605c554b4034281c1004000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dbcec1b4a89b8e8180808080808080808080808080828385898e92999fa6afb7c1c9d3d2c7bdb4aa9f948a7d70665c504438281e130800000000000000000000000000000000070e171e262e343940454b5153555d606468676d6f7071717170706e6c6565625f5755534e47423c3631292118120b030000000000000000000000000000000000000a16212b353d4448494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4745413a31281e1308000000000000000000000000000000000000000000000000000000000007121d2834404a54606c7883909da6b0bbc7d3d2c5b9ada1968c7f72675d51443b3021170d00000000000000000000000000000000000000000000000000000000000000000915202a36424d57606d78839097a2acb6c0ccd8d3cac1b8b0a8a098928b847d76726e69666463616060616365666d71767c828a92979ea6aeb6bfc7d4d1cbc2b9b0a69f93877d6f675d5145392c20130600000000000000000000000006111c26303c45505a606d79849199a3aebac1ccd6d6cabeb3a99f958d80746c61574d42392e2318100c070000000000000000000000000000000000000916232f3c4956626f7c808080808080808080808080808080808080808080808080808080808080808080828f9ca9b6c2cfdcd7ccc0b5ab9f9486796d6053463a2d2013070000000e1a26313c47535f6a75818e97a1adb9c1cbd5cec2b8afa59d948f857f797775747577797d81889196a1a9b2bdcbd4d2c7beb0a69c8f8276675d5145392c201306000000000000000000000000111d2a3744505d6a7783909daab6c3d0cdc0b4a79a8d808390959fa4abb0b8b9bec2c4c5c7cbc7c6c5c3c1bebab8b1aca79f99928c82796d685d554b40342921170d03000000000000000d1a2633404d596673808c99abb5bfcbcec1b4a79b8e8174727272727272727272727272727272727272727272727272727272727272727272727272726e6a5f53473a2e2114080000000000000a1724313d4a5764707d8a98a2aebac7d2d7ccc1bbaea399928b837d7a767371706f6e6f70717375787c7f83878e92989fa2a9afaea49f92857b6e665c50443d32291e13080000000000000000000000000000000000050c151c232831373c43474b515357565e61636566666766666563615e5655534e495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000050c151c232831373c43474b515357565e61636566666766666563615e5655534e46444d53555959595959595959595959595953514b43392e23180c00000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfcfc2b6aa9e938e8d8d8d8d8d8d8d8d8d8d8d8d8d8e9092979b9fa3abb0b8c1c9d2d1cbc0b5aba2989082766c61544a3f3428160c020000000000000000000000000000000000050c141c23282e343a4045474c515457555d606263646564646361605b5355534d4847433c37312a251f170f070000000000000000000000000000000000000000040f19232b32383b3c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a39352f281f160c010000000000000000000000000000000000000000000000000000000000010c18232e3944505b65707d8a949fabb7c1d0c8bcb1a79e9184796d60554c4132291e0f060000000000000000000000000000000000000000000000000000000000000000030e1a25313b44505c666e7b85929aa4afbbc0c9d7d3cbc2bab2aaa29f96918a837f7b7673716f6e6d6d6e6f7275797d82898f949ea1a9b0b8c0c8d1d4ccc3bab1a79e948d80736b60554b4035291d1004000000000000000000000000000a141e2a333f45515d676f7c86929fa5afbac4cfd9d0c5bbb1a79d928a7e70695e544b40342821170c030000000000000000000000000000000000000b1825323e4b5865717e8b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f949fabb7c3d0ddddd2c7bdb0a69386796d6053463a2d2013070000000915202b37434e58616d7a85929ea6b0b9c3cdd4cbc0b7afa69e97918c85838181828485898e939aa1a8b2bbc4cfd8ccc0b6ac9e94897c6f63554c4135291d1104000000000000000000000000111d2a3744505d6a7783909daab6c3d0d2c6b9ac9f938790959fa7afb5bdc2c6c5c4c3c2c3c4c5c7cad0d0cac6c3bcb8b1aba39f948f837a6d675c51453e33291f1409000000000000020f1c2935424f5c6875828f9ba8b5c2d1cec1b5a89b8e817f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7c6e6255483b2f2215080000000000000714202d3a4753606d7985929fabb5c0ccd7d7cbbfb5aba39f95908a8683807d7c7b7b7c7d7e7f8185898c9093999fa3aaadb3bbbaada2979083786d60594f443a3025190d010000000000000000000000000000000000030b121820262b32373a4045474b4d5254565859595a5a59585654524d494743495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000000000030b121820262b32373a4045474b4d5254565859595a5a59585654524d4947433c3b4246484c4c4c4c4c4c4c4c4c4c4c4c4c4645403930271d120700000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd2c6baafa59e9b9a9a9a9a9a9a9a9a9a9a9a9a9a9b9c9fa2a9acafb5bdc2cad2cfc6bfbbafa49992867c6f625a5042382e23170400000000000000000000000000000000000000020a11171d23282f35393a4145474a4b515455575758575756545350494847423c3a37312b261f1a140d050000000000000000000000000000000000000000000007111921272c2f30313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312d2c29241e160d040000000000000000000000000000000000000000000000000000000000000007121c27333f4953616b7683909ca6b0bdc7c5b8aca0958b7e71675c51433a2f20170d0000000000000000000000000000000000000000000000000000000000000000000009141f28343f4a545f69707d88939fa4aeb7c0cbd1d4ccc4bcb3aea8a09d95908b87837f7e7c7b7a7a7b7c7f82858a8f949c9fa6adb3bbc2cad2d7cbc2bab2a89f958f82786d60594f43392f24180d0100000000000000000000000000020c18212935414b555f6a727f8b939ea8b2bdc7d1d7cdc2b9aea49f92857b6e665c51453e33291e150b0000000000000000000000000000000000000b1825323e4b5865717e8b989a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9c9fa6b0bbc7d3dfe3d9d0b9aca09386796d6053463a2d201307000000030f1b26313c46525e68717e8b949ea7b1bbc4ced2c9c0b8b0a9a19e9892908e8d8f9092989b9fa4acb2bac4cdd5ccc3bbafa49a8f82756b6054433a2f24190d01000000000000000000000000111d2a3744505d6a7783909daab6c3d0d4c7bbafa49993999fa7b1bbc0c5bfbab9b7b6b5b6b7b8babfc4c5c8cecec8c2bdb5afa69e959083796d605a50453b31251a0e04000000000003101c28343f4a546b7784919eaab7c4d1cfc3b6aa9e938e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7165584b3e3225180b00000000000006131f2c3845515d6774818e99a4afbbc4cfd9d1c6bdb5aea79f9d9992908c8a898887888a8b8c8e9297999d9fa4abaeb4babec5beb3a99f958d80736b60564c41362a1e110500000000000000000000000000000000000000070c151a20262b2f35393a3e414647494b4c4d4d4d4c4b494746423c3b3d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000070c151a20262b2f35393a3e414647494b4c4d4d4d4c4b494746423c3b373231363a3b404040404040404040404040403a38342e271e150b0000000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd7ccc1b7afaaa8a6a6a6a6a6a6a6a6a6a6a6a6a7a8a9abadb3b9bbc0c7cfd4ccc4bdb5aea49f93877e706a5f53473e30261c1106000000000000000000000000000000000000000000060b12181d24292c2f35393a3e414547494a4b4b4b4a494746443f3b3a37312e2b26201a150e0903000000000000000000000000000000000000000000000000070f161b1f22232424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242421201d19130c040000000000000000000000000000000000000000000000000000000000000000000b17222d38414f59636f7c89949eabb5c0bcb1a79d9184786d60554b4031281e0e0500000000000000000000000000000000000000000000000000000000000000000000030b17232e38424d57616c737f8c929da5aebbc0c7cfd6cec5bebab2aca79f9d9a93908c8a8988868788898b8e92979c9ea6abb0b9bec5cdd3d1cbc1b9b1a8a0969083796d665c50473d31281d1207000000000000000000000000000000060f18242f3a434e58626d75818f96a1abb5c0cbd7d4cbc0baada2979083786d605a50453b30271d120700000000000000000000000000000000000b1825323e4b5865717e8b98a4a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a9abb0b8c2ccd8e3ebd3c6b9aca09386796d6053463a2d201307000000000a15202a36414c56616c75828f95a0a9b3bcc4ccd8cac1bbb3adaaa29f9d9b9a9c9d9fa2aaacafb6bec4ccd7cbc3bab0a69f93877c6f62594f4331281e130800000000000000000000000000111d2a3744505d6a7783909daab6c3d0d7ccc0b5aba49fa4abb1b9beb9b8b4aeacabaaa9a9aaacaeb4b7b9bdc3c9cfcfc7c0bbb0a79f958d80746c61574d42362a20160a000000000006121f2c3844505c667985929facb8c5d2d2c6baafa59e9b999999999999999999999999999999999999999999999999999999999999999999999999988b7f7265584c3f3225190c00000000000004101d2935404b55626e7c87939fa9b3bdc7d0d8cfc6bfbbb1ababa39f9d9997969594959698999b9ea1a9a9acafb5babfc6cacfc5bbb1a79f93887d70685e5246392d201307000000000000000000000000000000000000000003090e151b1d24292c2d3036393b3c3e3f404140403f3d3b3a3630303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000003090e151b1d24292c2d3036393b3c3e3f404140403f3d3b3a36302e2b26262a2d2e333333333333333333333333332d2c28231d150c030000000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfddd3c9c1bab6b4b3b3b3b3b3b3b3b3b3b3b3b3b3b5b6b8babec5c7cbd1ccc8c1bab2aba39f928c7f726c61584e43352c1e150a000000000000000000000000000000000000000000000000070c13181d2024292c2d2f35393a3c3d3e3e3e3d3d3b3937332d2e2b26211f1b150e0903000000000000000000000000000000000000000000000000000000040a0f131516171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171413110d08010000000000000000000000000000000000000000000000000000000000000000000006111b262f3e4854606b75828f99a4afbbb8ab9f958a7d70665c5043392f1f160c00000000000000000000000000000000000000000000000000000000000000000000000006111c26303c454f59636d74808d939ca4afb5bdc4cdd5d0cac3bdb8b1abaca49f9d9997969493939496989b9ea2a9aab0b7bbc2c9cfd7cfc7c0bbafa79f9691847a6d675d544a3f352b1f160c010000000000000000000000000000000007131d28313c46515b606d7a849199a3afbbc2cdd6d6cabeb3a99f958d80746c61574d42392e23180f06000000000000000000000000000000000b1825323e4b5865717e8b98a4b1b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b6b7bbc2cad4deeadfd3c6b9aca09386796d6053463a2d20130700000000040d1925303a44505a606d79839097a1aab2bac2ccd2cdc4beb9b4aeacaaa8a7a8aaabaeb4b9bbc0c7d0d2ccc1b9b1a89e948d80736a5f53463d321f160c0100000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd2c7bdb5afacafb5bdbab3adababa39f9e9d9c9d9e9fa2aaaaacb2b9bec4cdd1cbc1b9b1a79d928a7e71695e53463d32271b0f03000000000713202d3a4653606d798698a3aebac7d3d7ccc1b7afaaa8a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5998c7f7266594c3f3326190c000000000000000c18242f3947535f6a75818e97a1abb5bec6cfd7d1cbc2bcb8b5afaca9a6a4a3a2a1a2a3a4a6a8abadb3b6b9bbc0c7cbd1d6d1cbc2bbafa49a91857a6d6154473a2e21140700000000000000000000000000000000000000000000040a0f13181d2020252a2d2e3032333334333332302e2d2a25303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000040a0f13181d2020252a2d2e3032333334333332302e2d2a25211f1b1a1e212226262626262626262626262626201f1c18120b03000000000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2ddddddd3ccc6c2c1c0c0c0c0c0c0c0c0c0c0c0c0c0c1c3c5c6cad0d1cbc7c0bbb9afa8a199928c80746d625a50463c32231a0c030000000000000000000000000000000000000000000000000001070d1113191d202124292c2d2f3031323131302e2d2b2722211e1a15120f0a0400000000000000000000000000000000000000000000000000000000000000030709090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a07060401000000000000000000000000000000000000000000000000000000000000000000000000000a141d2c38434f59626f7c87939fabb4b0a69d9083766c61544a3f31271d0d04000000000000000000000000000000000000000000000000000000000000000000000000000a141e2a333e47525b606c77818d929fa3abb2bbc1c9ced6cec8c2bcb8b6afaca9a6a4a2a1a0a0a1a2a5a8abadb3b7bbc2c7ccd5d1cbc3bdb5afa59e9590847b6e685e554b42382e23190d040000000000000000000000000000000000010c161f2a343f45525d686f7c87929fa6b0bbc4d0d9d0c5bbb1a79d928a7e70695f544b40342821180c030000000000000000000000000000000b1825323e4b5865717e8b98a4b1bec0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c2c3c7ccd4dedededed3c6b9aca09386796d6053463a2d201307000000000008131e29323e45515d676e7b859198a1a8b1bbc0c7d0cfc9c6bfbab8b6b4b4b5b7b8babec5c8ccd2ccc7c0bbafa7a0958f82786c60584e43342b210d040000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd9d0c7c0bbb9bbbcb4aea9a19e9a999291908f90919298999ea0a8adb2bbc2cad7cbc2b9aea49f92857b6e61584e43372b201509000000000714212d3a4754606d7a8793aab4bfcbd6ddd3c9c1bab6b5b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a6998c807366594d4033261a0d0000000000000007121d2b37434e58616d7a859199a3acb4bdc4cbd1d6cdc8c7c0bbb9b6b3b0afaeaeafb0b1b2b4b8b9bec3c6c7ccd2d6d2ccc7c0bbb2ada59e978f8276695c4f4336291c1003000000000000000000000000000000000000000000000001070d111314191e202123252626272726252321201e23303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000001070d111314191e202123252626272726252321201e1915130f0e121415191919191919191919191919191313100c070000000000000b1824313e4b5764717e8a97a4b1bdcad0d0c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d0d0d0d0d0d0d0d0cecdcdcdcdcdcdcdcdcdcdcdcdcdcececdcec8c5c3c0bbb6afaca59e9691877f746e645b51483e342a201108000000000000000000000000000000000000000000000000000000000104080d111314181d20212224242524242321201f1b1714120e09060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b1b27323d47535f6a74818e99a3aeac9f94897d70635a5042382e1f150b0000000000000000000000000000000000000000000000000000000000000000000000000000020c18212c354044505b656c77808b9299a1a9afb9bdc4cad0d4cdc7c7c0bbb9b6b2b1afaeadadaeafb2b5b8b9bec5c7ccd3d2ccc7c0bbb1aba39f938f837a6e695f564c433930261c110700000000000000000000000000000000000000040d19222935414c56606b727f8c949fa9b3bdc7d2d7cdc2b9aea49f92857b6e665c51453e33291e150b0000000000000000000000000000000b1825323e4b5865717e8b98a4b1becbcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcfd1d1d1d1d1d1d1d1d1c6b9aca09386796d6053463a2d2013070000000000020d17202935414b555e696f7c8691969fa7afb6bec2c9ced0cac6c5c3c1c0c2c3c5c6cad0d2ccc7c0bbb5afa59e959083796d665b50463c3222190f000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde2d9d2ccc7c2bab2aaa29f97928d8986848382838485898d91969ea1a9b0b8c1c9d3cbc0baada2978f82766a6054473c31261a0f000000000815212e3b4854616e7b8794a1aebad0dce7dbd3ccc6c3c1bababababababababababababababababababababababababfbfbfbfbfbfbfbfbfbfb3a69a8d8073675a4d4034271a0d00000000000000010f1a26313c46525e68707d87929aa3abb2bbc0c7cbd0d4d1cbc7c5c3bfbdbcbbbabbbdbebfc1c5c6c9cfd2d4d3d0cac7c0bbb5afa9a19e938e857e7064574a3d3124170a0000000000000000000000000000000000000000000000000000010406080e1114141618191a1a1a19181614141623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000010406080e1114141618191a1a1a1918161414110e090603020507080d0d0d0d0d0d0d0d0d0d0d0d0d07060400000000000000000b1824313e4b5764717e8a97a4b1bdc3c3c3c3b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c2c2c0bfbcb8b7b5afaca49f9b938f847c726d645c52493f362c22180e0000000000000000000000000000000000000000000000000000000000000000010406070d111314161718181817161413120f0b0606020000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080b0e0f10100e0c080705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212b37434e58616e7b86929faaa49a8f82766b6054483e30261c0d03000000000000000000000000000000000000000000000000000000000000000000000000000000060f1a2327333f49535b656c737f8791969ea5acb2babfc5c9cfd3d2ccc8c6c3bfbdbcbbb9babbbcbec1c5c6cacfd3d2ccc7c0bbb5afa7a099928c81796d685f574d443a31271e140a00000000000000000000000000000000000000000007101924303a444f59606c77828f97a1abb5c0ccd7d4cbc0baada2979083786d605a50453b30271d120700000000000000000000000000000b1825323e4b5865717e8b98a4b1bec4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b9aca09386796d6053463a2d201307000000000000050e18242f3a434d57606a6f7c8490959fa4acb1b9bdc4c6cacfcfd0cecdcfcfcecfcac6c5c0bbb6afaba49f938f837b6e675d544a3f342a201007000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddebe2d6cdc2b9b1a8a098928c85807d797877767677797c80848b91979fa6afb7c1cbd6cabeb3a99f94897c6f62584e43372b1b11060000000714212e3a4754616d7a8794aab4bfcbd6ded4cac2bbb7b6adadadadadadadadadadadadadadadadadadadadadadadadb6b7bbc2caccccccccc0b4a79a8d8174675a4e4134271b0e00000000000000000a15202a36414c56606b717e889299a1a8afb5babfc6c8ced2d3d2d0cccac9c8c7c8c9cbccced1d2d3d2d1cbc7c5bfbab6afaba39f96918a817a706c6155493c3023160a00000000000000000000000000000000000000000000000000000000000002050708090b0c0d0e0d0d0c0a080a1623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000002050708090b0c0d0e0d0d0c0a08070502000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1b6b6b6b6b6b6aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b5b5b3b2b1acaaaba39f9a938f89827a6f6a625b524a41372d241a100600000000000000000000000000000000000000000000000000000000000000000000000001040607090a0b0b0b0a0a080605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080e111414181b1c1d1c1b191514120e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1b26313c46535e6974808d98a29f93877c6f62594f44362c1e140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000081117222d384149535b606d727d848f939ea1a8aeb4b9bec5c7cbd1d2d2d0cccac9c7c6c6c7c9cbced1d2d2cdc8c7c0bbb5afaba39f95918780786d675e564d453b32291f150c020000000000000000000000000000000000000000000008131e28323d44505b656d7a859199a4afbbc2cdd1d1cabeb3a99f958d80746c61574d42392e23180e05000000000000000000000000000b1825323e4b5865717e8b98a4b1b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7aca09386796d6053463a2d2013070000000000000007131d28313b454e58606a6f7a838e939a9fa7acb2b8b9bec0c2c3c4c4c3c3c2c0bebab8b6afaca49f99938c81796e695e554c42382d22180e00000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde4d9d0c4bbb1a79f9691867f7a74706d676a696a666c6f73797e848f949ea5afb9c2ced0c5bbb0a69b8f82756a5f5347382d22170b0000000713202d3a4653606d798698a3aebac7d3d8cdc2b8b0aba9a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a9abb0b8c2ccd8d8cdc0b3a69a8d8073675a4d4034271a0d0000000000000000030d1925303a444f59626c717e8791969fa3abaeb4b8bdc2c5c6cad0cdcdcecfcfcfcfcececdd1cbc7c5c3bfbbb9b4aeaca49f99928d847d756d68615a5044392d20140800000000000000000000000000000000000000000000000000000000000000000000000000000100000000000a1623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4aaaaaaaaaaaaaaaa9e9184776b5e5144382b1e110013202c3946535f6c7986929faaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9a9a8a7a5a7a09d9a99928e87827c756d686058514941382f251b1108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f14191e20212528292a29282521211e1a140f0b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a36424d57616d7a86929f998e81756a5f54473d32241a0c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f384149505b626b707a828a91969fa2aaadb3b9bbc0c4c5c9cfcdcfcfd0d1d0cfcecdd0cac6c5c2bcb8b5afaba49f99928d837c736c665d554c443b332920170d030000000000000000000000000000000000000000000000020c162027333f49535e68707d87939fa6b0bbc4c4c4c4c4bbb1a79d928a7e70695f544b40342820170d020000000000000000000000000b1825323e4b5865717e8b98a4abababababababababababababababababababababababababababababababababababababababababababa09386796d6053463a2d20130700000000000000010c161f29333c464e585f686e79818790959ea1a8abadb3b3b5b6b7b7b7b6b5b3b3adabaca49f9a938e877f776d675e574d433a2f261c100600000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddddd2c7beb2a99f9590847b736d6763605c555c545b6063666d717a828e939ea7b1bcc5d0cdc2b9ac9f93877b6e6253493f33271b0f03000006121f2c3844515c667985929facb8c5d2d3c7bbb0a69f9c9393939393939393939393939393939393939393939393939c9fa6b0bbc7d3d8ccbfb2a5998c7f7266594c3f3326190c00000000000000000008131e28323d47505a626c717d848d92999fa3aaacb2b5b8babebec0c1c1c2c2c3c2c2c1c0bfc0bbb9b6b5aeacaaa29f9a938e87817a706b615d5650483e33281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000001060b0f11121313131313131313131313130d0c0a07020000000000000000000002060a0c0d131313131313131313131313130a0907040000000000000000000000000000000b1824313e4b5764717e8a979d9d9d9d9d9d9d9d9d9d9184776b5e5144382b1e110013202c3946535f6c7986929d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c9c9b9a989795908d8a86817c756f6a615d564e463f372f261d130900000000000000000000000000000002050708121313131313131313131313131313131006050300000000000000000000000002070b0d0d131313131313131313131313131313130b0a08050000000000000000000000000000000001070c151b1e252a2d2e323436373635322e2d2a251f1b160d070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a25313b46525e6873808c9792877b6e61584e43352b21110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262f383f44515960686d757e848c92989ea1a9acafb5b7b9bdbfc0c2c3c3c4c3c2c2c1c0bebab8b6b1acaba49f99938e8780796f6a605b544b433a322921180e0500000000000000000000000000000000000000000000000000040e17222d38414c56606b73808c949fa9b3b7b7b7b7b7b7b7aea49f92857b6e665c51453e32291e13080000000000000000000000000b1825323e4b5865717e8b989e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9386796d6053463a2d2013070000000000000000040d17212b343c464e565e676d747c838a91969b9ea2a9a7a9a9aaaaaaa9a8a7a9a29f9b9a938f87817c736c655d554d453b31281d140a0000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd8ccc0b6aca19790827a6e69605d5553514b4f4a5053545c60686d78818e959faab3becad4c8bbafa49a8e8174655b5044372b1f1205000004101c2834404a546b7884919eabb7c4d1d0c4b7ab9f94908787878787878787878787878787878787878787878787878f949fabb7c3d0d8ccc0b6ac978b7e7164584b3e3125180b000000000000000000020c16202c353e48505a616b6f7a81878d92989da0a8a8abadb3b1b3b4b4b5b6b6b5b5b4b3b2b5afacaaaba39f9c98928d87817b746d686159524c443e362c22170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc6c6c6baada093877a6d6054473a2d21140700000000040c12171b1d1e2020202020202020202020201a1917130e080000000000000000070d1216181920202020202020202020202020171614100b05000000000000000000000000000b1824313e4b5764717e8a90909090909090909090909084776b5e5144382b1e110013202c3946535f6c79869090909090909090909090909090909090909090909090909090908f8f8d8c8a8784807d7a756f6a626058524c443d342d251d140b010000000000000000000000000003090e1214151f2020202020202020202020202020201c13120f0b06000000000000000000080e1317191a20202020202020202020202020202020171714110c0500000000000000000000000000030b121820272b3036393b3e41424343413f3b3a36312c272118130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36414c56606d7a85928d8174695f53463c3223190f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141d262d333f474f565e616c717980868c92979c9fa3ababadb2b2b4b5b6b6b7b7b6b5b4b3b3aeaba9a7a09d99938e87817b736d676058504a4239312820180f0600000000000000000000000000000000000000000000000000000006111b262f3a444f59606d78829097a1ababababababababababa2979083786d605a50443a3025190d0100000000000000000000000b1825323e4b5865717e8b919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919186796d6053463a2d201307000000000000000000050f19222b343c444c555d606a6f787e84898e9297989a9c9d9d9e9d9c9b9a9897928e8b87827c756e6a605b534b433b33291f160b020000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd4c8bbafa49a91857a6e685f57514b464540433f44464a50565d666d78839098a2aebac6d0ccc0b6ac9e9285786c605346392d2013060000000c18232e424f5c6975828f9ca8b5c2d1cfc3b6a99c90827a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a828f9ca9b6c2cfd4c8bbafa49a897c6f6256493c2f23160900000000000000000000050e1a232d363e48505960676d747b80868c9196989c9fa2a9a4a6a7a8a8a9a9a9a8a8a7a5aba39f9d9a99928f8b85817b756e69605d564f46413a322c241a10050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afb9b9b9b9b9ada093877a6d6054473a2d211407000000060e161d23272a2b2d2d2d2d2d2d2d2d2d2d2d2d2726231f19120a0200000000010a12191e2225262d2d2d2d2d2d2d2d2d2d2d2d2d2423201c1610080000000000000000000000000a1724303d4a5763707d838383838383838383838383838275685c4f4235291c0f00101d2a3743505d6a76838383838383838383838383838383838383838383838383838383838282807f7d7a7774706d67625f58544e46413a322b221b130b0200000000000000000000000000060d141a1e21222c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d29201f1b17110a020000000000020a12191f2326272d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2423211c1710080000000000000000000000050d151d232932373b4146474b4e4f504f4e4c4846423b383229241d160d05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d1925303a45515d67727f8c867b6e61574d42342a20110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b2227353d444c525a61676d737a7f858a8f92999b9ea1a8a5a7a8a9aaaaaaa9a8a7a6aaa29f9c9995908c87817b756e69605c554e443f382f271f160e0600000000000000000000000000000000000000000000000000000000000a141d29323d44505c666e7b85929e9e9e9e9e9e9e9e9e9e9e9e9e958d80746c61564c41362a1e110500000000000000000000000b1724313e4a5764717e84848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484786d6053463a2d20130700000000000000000000071019222a323b434b515860656c71787d8185898b8d8f90919190908f8d8b8985827e7b756f6a625f585049413a312921170d04000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd2c6b9ac9f93887d6f685e564d45403a38342e3338393f444c545c666e7b85929faab4bfcbd2c7b9ada197887c6f6255483c2f221507000000071a2733404d5a6673808d99abb5c0cbd2c5b8ab9f9285796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d7985929fabb8c5d2d2c6b9ac9f93867a6d6053473a2d201407000000000000000000000008111b242d363e474f555d60696e747a8084888b8f929796989a9a9b9c9c9c9c9b9b9a98979992908d8a86827e7a746e6a625f57524c443e353028201a1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3adadadadadadada093877a6d6054473a2d2114070000040e1820282e33373839393939393939393939393933322f2a241c140a000000000a131c232a2f323339393939393939393939393939302f2c28211a110800000000000000000000000916232f3c4855616b7077777777777777777777777777756f65594d4134281b0e00101c2936424e5b66717677777777777777777777777777777777777777777777777777777676757472706e686763605d55534e47433d353028201910090100000000000000000000000000060f181f262a2d2e39393939393939393939393939393939362d2b27221b140b02000000000a141c242a2f33343939393939393939393939393939393931302d28221a1208000000000000000000050e171f272f343d43474c5254585b5c5d5c5b5854534d48443d352f281f170f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2935414b55606d79848073695e52453c3122190e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a1117232b323a414650555d60686d73797e82868b8e919696989a9c9c9d9e9d9c9b9a999798928f8c88837f7b756e6a625f57514b433c332d261d150d05000000000000000000000000000000000000000000000000000000000000020b172028343f4a545e69707d8a9191919191919191919191919191918a7e71685e5246392d20130700000000000000000000000a1723303d4955616c71787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878786d665c5044382b1f120600000000000000000000000710182029313940454e535b60666c7075797c7e8082838484848382807f7c7975716e69625f58534e443f382f281f170f0500000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d4c8bcb1a79b8f82756b60564c443c352f2c2823282b2e343a424b545e6973808d98a3aebac7d3c9beb3a9988b7f7265584c3f2f24180d0100000b1724313e4a5764717d8a99a3afbbc7d3c6baada2978a7d706360606060606060606060606060606060606065707d8a97a2adbac6d3d0c4b7aa9d918477675d5145392c20130600000000000000000000000009121b242d353d434c51575e61686d73777b7f828587898b8d8e8e8f8f908f8f8e8d8c8a888683817e7a76726d67625f58534d45413a3229241e160e0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a0a0a0a0a0a0a0a0a093877a6d6054473a2d21140700010c16202a323a3f4345464646464646464646464646403f3b352e261c1208000007121c252e353b3e40464646464646464646464646463d3c38332c231a1005000000000000000000000714202c38444f5961636a6a6a6a6a6a6a6a6a6a6a6a6a68655d54493d3125190c000d1a26323e4a555f666a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a696968676564615e565754514c47433c373229241e160e070000000000000000000000000000030d18212931363a3b45464646464646464646464646464646433937332d261d140a00000007111c262e363b3f40464646464646464646464646464646463e3c39332c241a100500000000000000040d172029313940454e54565e616567696a696865615e57544f45403a312921170d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18242f3a45515c67707d7a6d60564d42332a1f10070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061119202830353e434b51565d60676d71757a7e8184878a8c8d8f909091908f8f8e8d8a888583807b77726e69625f57534d4540393128221c140b030000000000000000000000000000000000000000000000000000000000000000050e17232e38424d57616b738084848484848484848484848484848484837a6d6154473a2e21140700000000000000000000000814212d3945505a61646b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b605c544a3f34281c1003000000000000000000000000060e171f272f353d414950545b6063666c6f72747676777777767574726f6c6665615e57534e47433c332d261d160d050000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d1c5b8aca095897c6f62594f443b3229241f1c181c1f23283039424d57616d7a86929facb8c5d2cfc2b5a89c8f827569554b4135291d110400000714212d3a4754606d7a86929facb9c5d0cabeb3a99c9083766d6259545454545454545454545454545459606c7883909da9b3becad5c9bdb2a89a8d807367554b4035291d11040000000000000000000000000009121b232b313a41454d53565e6166696e7275787a7c7e808181828383828281807f7d7c7a7774716d6865605d55534e47423c352f282019130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c899393939393939393939393877a6d6054473a2d2114070006121d28323c444b50515353535353535353535353534d4b4740382e24190e02020d19232e3740464b4c535353535353535353535353534a48443e352c21160b0000000000000000000004101c28333e474f55575d5d5d5d5d5d5d5d5d5d5d5d5d5c59544b42372c211509000a16222d38434d555b5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5c5c5a595754524c4a4745413a37312b272019130c0400000000000000000000000000000009141f29333b424648525353535353535353535353535353534f46443f382f261b110600040d19232e3840474b4d535353535353535353535353535353534a49453e362c22170c000000000000010c161f29323b434b51586062686e717475767674726e69636059514b433b332920160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d2834404b55616c706d685d52443b3021180e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e161e2529313940454c52555d6064686d7174787b7d7f818283838484838281807e7b7976736e6a65615e57534e47423c342f271f17110a020000000000000000000000000000000000000000000000000000000000000000000006111c26303b454f59636e7378787878787878787878787878787878776d685e5246392d201307000000000000000000000005111d28333e485055575e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e53504a42382e23170b0000000000000000000000000000050d151d24292f383f444a5053545b60626567696a6a6b6a6968676562605b5454524d47433c373127221b140b04000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d0c3b7aa9d9084776a6054473d3229201813100c0f12171e27303b46525e6875828e9ba8b5c1d2d2c5b8ab9f928578675d5145392c20130600000713202c3945525d6876838f9ca9b3becad0c5b7ab9f948b7f726b615a524d47474747474747474b5159606b727f8b959fabbbc5cfd2c5b9ada196897d706356493d2f24180d0100000000000000000000000000000910191f282f353b42464c5254575f616569686d6f717374757576767675757472706f6d676764605d5654514c47433c373129241e160d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707d868686868686868686868686867a6d6054473a2d211407000b17232e3a444e565c5e6060606060606060606060605a58524a40352a1f130706121e2a3540495157596060606060606060606060606057554f473e33281c1004000000000000000000000b16212c353e44484a505050505050505050505050504f4d49423930261b10040005111c27313a434a4e505050505050505050505050505050505050505050505050505050504f4f4d4c4a4746413d3a39352f2b26201b150d0802000000000000000000000000000000020e1a26313b454d53555f6060606060606060606060606060605c53504941382d22170c030c161f2b35404a52585a60606060606060606060606060606060575550483e33281c1105000000000007131d28313b444d555c606a6f767a7e81828382817f7b766f6b605d554d453b32281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e3943505a6164605d564c4132291f0f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191f272f353a41454b5153565e616568696e707274757677777776757473716e6c6566625f5854524d47423c373129231d150d06000000000000000000000000000000000000000000000000000000000000000000000000000a141e29333e47525c63666b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a615e564c41362a1e11050000000000000000000000000c17222c363e45494a5151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515146443f3830261c1106000000000000000000000000000000030b12181d262d33383f44464a505356585a5c5d5e5e5d5d5c5a585653504a4846423b37312b262017110a0200000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0cdc0b3a69a8d807367584e43352b20170e07040003060c151e2a36414c5665727e8b98acb6c0ccd3c6baaea298877a6d6054473a2d211407000004111d2935414c5665727f8b97a2adbac5cfc7bbb0a69f92867d716c615e5653514b4d4d4d4d52555d606b707d86929fa7b1bccdd6cabfb4aa9e9184796d6053463a2d20130700000000000000000000000000000000070d161e242931363a4146474d535558565e61636567676869696969686867656462605d555754524c4745413a37312b261f19130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d787a7a7a7a7a7a7a7a7a7a7a7a7976685d5245392c201306000f1b27333f4b5660686b6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0a16222f3b46515b63666c6c6c6c6c6c6c6c6c6c6c6c6c6361594f44382c2014070000000000000000000005101a232c33383c3d4444444444444444444444444442413d3730271e14090000000a151f2831383e42434444444444444444444444444444444444444444444444444444434342413f3d3b3936302d2c29241e1b150f0a04000000000000000000000000000000000005121e2a36424d575f616c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c69605b53493f33271e150b131d28313d47525c64676c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5045392d21140800000000010d18242f3a434d565e676d747c82878b8e8f908f8e8b87837d756d675e574d443a2f24190d05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303e4850555754524c443a3020170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d151d24293035394045474c525458575e6163656769696a6b6a696867666462605b5355534e4846423b37312b261f18120b030000000000000000000000000000000000000000000000000000000000000000000000000000020c17212c35404a52585a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d54524c443a3025190d0100000000000000000000000005101a242c33393d3e454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545453a38342e261e140a000000000000000000000000000000000001070b141b22272d3338393f4446494b4d4f50515151504f4d4c4946443f3b3a36302b26201a150b06000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c9bdb0a3968a7d7063574a3d3224190e050000000000030c1925303b4855626e7b889aa4afbbc8d4cabeb3aa94887b6e6155483b2e2215080000010d1924303a4753606d7a85929fa9b3becacdc2baaea29892867e756e6863605d555a595a575e61676d737d869298a3aeb9c2cdd0c7baaea2988c7f73665c5044382b1f12060000000000000000000000000000000000040c13191f252a3036393b4246484b4c525456585a5b5b5c5c5d5c5c5b5a59575553514b4b4745413a39352f2b26201a150d08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c666d6d6d6d6d6d6d6d6d6d6d6d6d6d675d564c4135291d110400111d2a3743505c687278797979797979797979797979736e63584b3f3226190c0c1825323e4b57636d7379797979797979797979797979706b6155483c2f231609000000000000000000000008111a21282c2f30373737373737373737373737373534312c261e150c02000000030d161f272d32363737373737373737373737373737373737373737373737373737373636353432312e2d2a2521201d19130f0a03000000000000000000000000000000000000000714212d3a46535f696e78797979797979797979797979797979766c655b50443c30271d1218242f3a434f59646e7379797979797979797979797979797979716c6155493c3023170a0000000004111d2935414b555e696e7981898f939a9a9c9d9c9b9894908981796e695e564c41352921160b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e2c363e44494a4745413a32281e0e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181e24292f35383a4146474b4d535457595a5c5d5d5e5d5c5c5b5a57555350494847433c3a36302b26201a150c070100000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a232e3840474b4d51515151515151515151515151515151514746413a32291e1308000000000000000000000000000008121a22282d3031383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838382d2b28231c140c0200000000000000000000000000000000000000020a11171c22282b2d3338393c3f4143434444444342413f3c3938332d2d2a251f1b150f0a0300000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c8bbaea195887b6e6255483b2f221508000000000000000813202d3a4653606d7986939facb9c6d2d0bcafa295897c6f6256493c2f2316090000000813202c3945515d6773808d97a2adbac2cccabfb4aaa298928a817b75706d676867666768696e727980879298a2aab4bfcbd2c7beb2a89f92867a6e61544a3f34281c100300000000000000000000000000000000000001080d141a1e252a2d31363a3b3f414647494b4d4e4e4f50504f4f4e4d4c4a494745403e3a39352f2c29241e1a150e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a545c60606060606060606060606060605d554c433a2f24190d0100121e2b3845515e6b78848686868686868686868686868073665a4d4033271a0d0d192633404c5966737f868686868686868686868686867d7063574a3d3024170a0000000000000000000000000810161c2023242a2a2a2a2a2a2a2a2a2a2a2a2a292825211b140c030000000000040d151c2226292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a292927262421201e191413110d08010000000000000000000000000000000000000000000815222e3b4855616e7b8586868686868686868686868686868682776c60584e42392e2318202935414b55606b7380868686868686868686868686868686867e7164574a3e3124170b000000040e19222c3945515d676e7b838e939c9fa4aca8a9a9a7a69f9c938e837b6e685d52453e33281c10030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c1a242c33393c3d3a3935302820160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c13191d24292c3036393a3e4246484a4c4e4f50505151504f4e4d4b4846443f3b3a37312d2a251f1a150e09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111c262e353b3f4045454545454545454545454545454545443a3936302920170d020000000000000000000000000000000810171d2123242b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b201f1c17110a0200000000000000000000000000000000000000000000060b11171c1f22282b2d2f32343637373837363534322f2d2b2822201e1a140f0a04000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c7baada094877a6d6154473a2e2114070000000000000006121f2c3844505c667885929fabb8c5d2c9bdb0a3968a7d7063574a3d3024170a00000004111d2935404b55616d7a85929fa6b0bac4cec6bcb4aaa39f938e86817d7a767574737475777b7f858c9399a2aab4bcc6d0ccc0b6aca1968c8073685e5242382e23170b00000000000000000000000000000000000000000003090e13191e20262a2d2e3036393a3c3e404142424343434242413f3d3c3a39352f2d2c2924201d19130f09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e38424a505353535353535353535353535353514b433a31281e13080000121e2b3845515e6b788491939393939393939393938d8073665a4d4033271a0d0d192633404c5966737f8c93939393939393939393938a7d7063574a3d3024170a00000000000000000000000000050b101416171d1d1d1d1d1d1d1d1d1d1d1d1d1c1b191510090200000000000000030a11161a1c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1c1a19171414110d0806040100000000000000000000000000000000000000000000000714212d3a46535f69707e8a92939393939393939393939393948b7f726a5f544b4034282028323a45515d676f7d8793939393939393939393939393958d80746c6155493c3023170a0000000a15202c38444f59606d798390959da5acafb6b5b4b5b4b0aba59e9590837a6d60594f44382c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a22282d30312d2c29241e160e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d12181d1f252a2d2e31363a3b3d3f414243444444434241403e3b3937332d2e2b26201e1a140e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141c242a2f323338383838383838383838383838383838372e2d2a251e170e050000000000000000000000000000000000050c111417171e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1312100b060000000000000000000000000000000000000000000000000000060b0f12171c1f20232527292a2b2b2a2a29272523201f1c1714120e09030000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c6b9aca09386796d6053463a2d2013070000000000000003101c28343f4a546b7784919eaab7c4d1cabeb1a4978b7e7164584b3e3125180b000000010d18242f3a46525e68727e8b949fa8b2bcc5cec6bcb4aea59e99928e898683818080808184878c91979fa4abb4bcc5cecbc2bbafa49a9184796d60564c4130261c1106000000000000000000000000000000000000000000000002080d11141a1e2122252a2d2e30323434353636363635353432312f2d2c292421201d1913110d0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c2630383f44464747474747474747474747474745403931281f160c010000121e2b3845515e6b7884919e9f9f9f9f9f9f9f9f998d8073665a4d4033271a0d0d192633404c5966737f8c999f9f9f9f9f9f9f9f9f968a7d7063574a3d3024170a0000000000000000000000000000000407090a111111111111111111111111110f0e0c09040000000000000000000000050a0d1010111111111111111111111111111111111111111111111111111110100f0e0c0a0807050100000000000000000000000000000000000000000000000000000005121e2a36424d57616c73808d949fa99f9f9f9f9f9f9f9fa69f92867c6f665c51453d3228303a444f59606d79849199a49f9f9f9f9f9f9f9f9fa1979083786d605a5045392d2114080000030f1b26323c4855616b75828f95a0a7afb5afaca9a7a9acaeb5afa7a0958f82756b6155483c31261b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171c20232421201d19130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013191d2021252a2d2e303234363637383736353433312f2d2b2722211f1a15120e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a12191f2326272b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a21201e19130d05000000000000000000000000000000000000000005080a0b1212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121207060300000000000000000000000000000000000000000000000000000000000003060b0f121316181a1c1d1e1e1e1d1c1a191613120f0b06050200000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c6b9ada093867a6d6053473a2d2014070000000000000005121f2b3744505b657885919eabb8c4d1cabdb0a4978a7e7164574a3e3124170b0000000007131d2a36414c56606c77829096a1aab4bcc4cdc6bfbaafaba39f9b9992908e8d8c8d8e9095989ea1a9afb5bdc5ceccc2b9b0a69f93887d70675d51443b301e140a00000000000000000000000000000000000000000000000000000105090e121415191e2021232527282829292a29292827262422201f1d181413110d08040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e262e34383a3a3a3a3a3a3a3a3a3a3a3a3a3a39352f281f160d04000000121e2b3845515e6b7884919eabacacacacacaca6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6acacacacacacaca3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b45505a606d78829097a1abb5acacacacacacaea3989083796d60594f443a3035414c56616b74818e96a0abb5acacacacacacafa49a92857b6e665c51483e33281c1105000006131f2b37434e5863707d8a949ea7b1b2aba49f9c9a9c9fa3abb2b1a79e948a7d7063584e43372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b101416171413110d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080d1113141a1e2121242627292a2a2b2a292928272422201f1b1714120f0a050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080e1317191a1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1413110d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606090c0e1010111111100f0e0c090606030000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c7baaea194877b6e6154483b2e211506000000000000000613202d394653606c7986929facb9c5d2c9bcafa396897d706356493d3023160a00000000010d1925303a44505b656e7a849198a2aab3bbc2cacbc1bdb4aeacaba39f9d9b9a999a9b9da0a7abadb3bbc0c7d0c7c0bbb0a79e948d80746b60554b4032291e0c020000000000000000000000000000000000000000000000000000000000020507080d11131416181a1b1b1c1d1d1c1c1b1a1917161413100c070704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c141c23282b2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c29241d160d0400000000121e2b3845515e6b7884919eabb7b9b9b9b9b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2b9b9b9b9b9b0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000003060708090a0b0c0d0e0e0d0c0b0a0907060400000000000000000000000000000000000000000000000000000000000000000000000000010507080c0e0f0e0c080705020000000000000000000000000000000000000009141f29333e44505c666e7b859299a4afbbb9b9b9b9bfb4aaa0958d80736b60564c41353b46525e68707d8a939da8b2bdb9b9b9b9bbb0a69f93887d70695e544a40362c22170c0000000815222e3b47545f6a7784919da6b0b2a8a19993908e8f9299a0a8b2b0a69d9083776a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0a07070401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010507090e12141517191b1c1d1d1e1e1d1c1b1a181513120f0b060602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070a0c0d12121212121212121212121212121212110707050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c8bbafa295887c6f6255493c2e23170c000000000000000714212e3a4754616d7a8799a3aebbc7d3ccc0b6ac95887c6f6255483c2f221509000000000008131e27333f49535e686f7c869298a1a9b0b9bec5cbc6bfbab9b5aeaca9a8a7a6a7a8aaacb1b8b9bec4ccccc4beb6afa69f958f82786d60594f433a2f20170d0000000000000000000000000000000000000000000000000000000000000000000001050707090b0d0e0f0f1010100f0f0e0c0a090706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f2020202020202020202020202020201d18120c040000000000121e2b3845515e6b7884919eabb7c4c6c6c0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfc6c6c6bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000010507060c10121315161718191a1b1b1a191817161413100c0707040100000000000000000000000000000000000000000000000000000000000002080d111414181b1c1b191514120e09030000000000000000000000000000000000030d182128343f4a545e69707d87939fa6b0bbc4cfd0c6bcb1a79f93887d70685d52453e45505a616d7a85919ea5afbac4d0d1c7bdb2a99f948c80736b61574d42392e241a10050000000916222f3c4955626f7c8895a0acb9ada1969187838182879196a0acb8aca095887c6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080a0c0e0f10111111100f0e0d0b08060503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070a0c0d1313131313131313131313131313131313090806030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0cbbeb1a4988b7e7165544a3f34281c1108010000000309101c2834404b5564717d8a97abb5bfcbd4c8bbafa49a877a6e6154473b2e2114080000000000020b17222d38414c56606a6f7d8691979fa6adb3bbbfc6cac7c5bfbbb9b6b4b3b3b3b4b7b8bcc3c6c9cbc7c0bbb2aca49f948f83796d665c50473d31281d0e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b1012131414141414141414141414141413100d0701000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd2c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000306080d111314171c1f2022232425262627272726252423201f1d181413110d0801000000000000000000000000000000000000000000000000000000060b14191e2021252829282621211e1a140d070100000000000000000000000000000000060f17232e38424d57606b73808c949fa9b2bdc7d1cec3bbafa49a91847a6d605a50454d57616c75818e97a1adb7c0ccd7cbc0b5aba1968f82786c60594f453b30271c1208000000000d1a2633404d596673808c99a7b1b3a99e91847c7674767c84919ea9b3b1a7998c7f7366594c403326190d000000000003090d111213131313131313131313131313130b0a080400000000000000000000000000000000000000000000000000000000000000000005080a0b131313131313131313131313131312100c080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d1316191a202020202020202020202020202020201f1515120f0a03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0cec1b4a89b8e8175665c5044382d2219130e090a0a0f141a252c3845515c6774818d9aa7b4c0d1d2c6b9ac9f9386786d6053463a2d20130700000000000006111b262f3b444e58606b6f7c8590949ea2a9aeb5babfc5c7cbc7c5c3c1c0bfc0c1c3c5c8cec9c6bfbab6afa8a19a938d82796d675d544a3f352b1f160c00000000000000000000000000000000000000000000000000000000000001060b0f1112131313131313131313131313130c0b090601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030607070707070707070707070707070604010000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000040a0f1215191d202123282c2d2f30313132333434333231312f2d2c292421201d19130f0a040000000000000000000000000000000000000000000000020a11171e252a2d2e32353635322e2d2a251f18120c040000000000000000000000000000000006111c26303b454f59606c78828f97a1abb5c0cbd7ccc0b6aca1968e81756c61574d535e69717e8a939ea9b3bec9d2ccc4bbafa39991847a6d665b50473d33291e150b00000000000f1c2935424f5c6875828f9ba8b5ada197897d706a676a707d8997a2adb4a89b8e8175685b4e4235281b0f00000000070e15191d1f2020202020202020202020202020171614100b050000000000000000000000000000000000000000000000000000000000050c11141717202020202020202020202020201f1e1c19140d060000000000000000000002070a0c0d13131313131313131313131313131313130b0a08050000000000000000000000000000000000000000000000000106090b0c13131313131313131313131313131313130b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a131313131313131313131313131312100c08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a12191e2325262d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c22211f1a150e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d1c5b8ab9e9285796d60544a3f3329241e1a1817181b1f252a35404b55606d7984919eabb8c4d1d0c3b7aa9d908477665c5044382c1f1206000000000000000a141d29323d464f59606a6f7b838b92979fa3abaeb4b9bbc0c2c5c6cad0c9d1cbc7c5c4c1bdb9b4aeaca49f96918880796d675d554b42382e231a0d040000000000000000000000000000000000000000000000000000000000040c12171b1d1e20202020202020202020202020191816120d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000070c10151b1f2124292d2e2e34383a3b3c3d3e3f404141403f3e3d3c3a39352f2d2c29241e1b15100b050000000000000000000000000000000000000000030c141c23283036393b3f4142413f3b3a363129241d160d04000000000000000000000000000000000a151e29333d44505b666d7a859199a3afbbc1ccd2c7beb2a89e938b7e71695e545b656e7b85929fa5afbbc4cfcec4baafa59f92877d6f685e544a3f352c21170c030000000000101d2a3743505d6a7683909da9b6ab9e9285786b6058606b7885929fabb6a99c8f8376695c504336291d100000000911192025292c2c2d2d2d2d2d2d2d2d2d2d2d2d2d2423211c1710080000000000000000000000000000000000000000000000000000000810171d2123242d2d2d2d2d2d2d2d2d2d2d2d2d2c2b29241f1810080000000000000000080e1317191a2020202020202020202020202020202020181715110c06000000000000000000000000000000000000000000070d121618192020202020202020202020202020202020181715110c06000000000000000000000000000000000000000000000000000000000000000000000000050b10131616202020202020202020202020201f1e1c19140d06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c242a2f323339393939393939393939393939393939392f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d2c6b9ada1978b7e71665b50443e352f2a25252425262b31364045515d67727e8b97a1adb9c6d2ccc0b5ab9a8d807467544a3f34281c100300000000000000020b17202b343d474f5860696e787f858d92999fa2aaacafb5b5b8babebcbdbcc0bbb9b7b4b2acaaa39f9a938e847d736d675d554b433a30261c11080000000000000000000000000000000000000000000000000000000000060e161d23272a2b2d2d2d2d2d2d2d2d2d2d2d2d2d2525221e181109010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040607080909090a0908070706040000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000070c12181c1f262b2e3035393a3d3f444648494a4b4c4d4e4e4d4c4b4a494745403d3a39352f2b26201c160d08010000000000000000000000000000000000030c151e262e343b4146474b4e4f4e4c4846423b352f281f160e04000000000000000000000000000000030c172128333f4a545e686f7d87929fa6b0bac4cfd0c4baafa59f92857b6e665c606c77828f97a2adb7c1cdd0c6bcb2a89e938c7f726b60564c42382d231a0f05000000000000111d2a3744505d6a7783909daab6ab9e9184786a5f565f6a7885929eabb6a99c908376695d5043362a1d10000007111b232b313638393939393939393939393939393931302d28221a12080000000000000000000000000000000000000000000000000008121a22282d303139393939393939393939393939393835302a221a10060000000000020a12191f2326272d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2424211d171009000000000000000000000000000000000000010911181e2225252d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2424211d17100900000000000000000000000000000000000000000000000000000000000000000000070f161c2022232d2d2d2d2d2d2d2d2d2d2d2d2d2c2b29241f181008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121c252e353b3f4046464646464646464646464646464646463c3a37312a22180d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d5c9beb3a99d9184786c60595045413a363032313231373b4246525b606d7984919ea9b2bec9d4c7bbafa4998a7d7064574a3d2e23170c000000000000000000050e19222b353d464e565e666d727a80868e92989c9fa3aba9abadb3afb0afb5afacaba8a8a09e98928e87817a706b605c554b433a31281e140a0000000000000000000000000000000000000000000000000000000000040e1820282e3337383939393939393939393939393932312e29231b1309000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708070d10131415161616161615141312100c07000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000030b12181d23282c31373a3c4146474a4a50535556575859595a5a5a5958575653514b4a4745413a37322c272119130c04000000000000000000000000000000000b151e2730383f444c5254585b5c5b5954534d454039312820160c02000000000000000000000000000000050f17222d38424c56606b727f8c949ea8b2bdc6d1ccc1baaea2989082786d6069727f8b949fa9b3bec9d6cbbfb4aaa0968f81756d62594f443a2f261c1108000000000000000f1c2935424f5c6875828f9ba8b5ada196887c6f6864686f7c8897a1adb5a89b8e8175685b4f4235281c0f00030e19232d353c424546464646464646464646464646463e3c39332c241a1005000000000000000000000000000000000000000000000005101a242c33393d3e464646464646464646464646464644413b342c22180d02000000000a141c242a2f3233393939393939393939393939393939393931302d28221b1209000000000000000000000000000000000009131b23292e3132393939393939393939393939393939393931302d28221b1209000000000000000000000000000000000000000000000000000000000000000007111921272c2f3039393939393939393939393939393835302a221a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d19242e3740474b4d53535353535353535353535353535353524847433c342a1f150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dacfc5b8aca0968c7f736b615a514c46423f3e3d3e3f43474d535b636d74818e96a1acbbc4cfd2c6b9ac9f93867a6d6054473a2d21140600000000000000000000071019232b343d444d545c60686d747b81858a8f9299999c9fa2a9a2a3a3aba39f9e9b9896918d86817b756d686059514b433a31281f160c0200000000000000000000000000000000000000000000000000000000010c16202a323a3f4345464646464646464646464646463f3e3a342d251b1107000000000000000000000000000000000000000000000000000000000000000000000000000003090e12141518181d20202222232323222221201f1c1812110c06000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000002080c151d23282e34383c4347484c525457545c6062636464656667676665646462605d555754524c47433c383329241e160d07000000000000000000000000000007121c273039424a50565e616568696865615e57514b433a32281e13080000000000000000000000000000000006111c262f3a444f59606c77828f96a1abb4bfcbd6cabeb3aa9f948c7f726a6e7b86929fa6b0bbc5d0cbc3baaea39891847a6d605b51473d32291d140a00000000000000000d1a2734404d5a6773808d9aa9b2b2a89d90837a7371737a83909da9b3b2a8998d8073665a4d4033271a0d000915202b353f474e5253535353535353535353535353534a49443e362c22170b00000000000000000000000000000000000000000000000c17222c363e45494a5353535353535353535353535352514d463e342a1f140800000008121c262e353b3f4046464646464646464646464646464646463e3d39342c241b0f0600000000000000000000000000000007101b252d343a3e3f46464646464646464646464646464646463e3d39342c241b1006000000000000000000000000000000000000000000000000000000000000050f19232b33383c3d464646464646464646464646464644413b342c22180d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131e2a354049525759606060606060606060606060606060605f55534e463c31271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd4c8bdb2a89f93877d716c605d55524d4c4b4a4b4c4e53575e616d737f8b939ea8b2bdcdd5c9bdb2a89d908376685d5245392c2013070000000000000000000000071019222b323b424a50565d60696e747a7e82868a8d8f929794959696959992918e8b8784807a746e6a605d564f45403930281f160d04000000000000000000000000000000000000000000000000000000000006121d28323c444b5051535353535353535353535353534c4a463f372d23180d010000000000000000000000000000000000000000000000000000000000000000000000040a0f141a1e21212524292c2d2e2f2f30302f2e2e2d2c28231c1d1710090000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000040c13191e272e34394045464e5355565d616366666d6e6f707172737474737271706f6d676763605d56534e48443d352f281f191009000000000000000000000000000c18232e39424a545c60686e72747574726e69605d554c443a3024190d05000000000000000000000000000000000a141d29323d44505b656d7a849199a3aebac1ccd0c5bcb0a69f92877c6f78839098a2aeb8c2cdcec3b9afa59f92867c6f685d52493f352b20170b0200000000000000000a1623303d495663707c8996a1adb8aca0959085807e808490959fabb9ada196897c6f6256493c2f231609000d1925313c4751595e5f60606060606060606060606060575550483e33281c100400000000000000000000000000000000000000000005111d28333e48505557606060606060606060606060605f5d5850463b3024190c0000020e19242e3840474b4d53535353535353535353535353535353534b49453e362c21180d0300000000000000000000000000040e19222d373f464a4c53535353535353535353535353535353534b49453e362c22170c0000000000000000000000000000000000000000000000000000000000000b16212b353d4448495353535353535353535353535352514d463e342a1f140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16232f3b47525b63666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c625f584e43392f24180f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd9cec3bbafa49992867e736d67615e575958575859585f62696e75808b919ba5afbac4ced2c5b9ada1968b7e7164564c4135291d1104000000000000000000000000071019202930383f444c52575f62676d71767a7d8082858788898a8988878684817e7b77736e68625f57524c443d342e271e160d040000000000000000000000000000000000000000000000000000000000000b17232e3a444e565c5e60606060606060606060606060585651493f34291e120600000000000000000000000000000000000000000000000000000000000000000000060b161b1f252a2d2e312f35393a3b3c3c3c3d3c3b3a3a38342e2d29221b120900000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000070e161e2429303940454b5153585f6266686d707376797b7c7d7e7f808181807f7e7d7c7a7673706d68625f58544f45413a312b221b1209000000000000000000000004101c2834404a545c666d737a7e8182817f7b746d675d564c41352922170b00000000000000000000000000000000020b172027333f49535d686f7c87929fa5afbac3cecec2bbafa3999184797f8c959faab4bfcad0c5bcb1a79e938b7e716a5f564c41372d23190e050000000000000000000613202d394653606c7884919ea7b1b1a7a097928d8b8c91969fa7b1b1a79e9184776c605346392d20130600111d2936424e59636a6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5044392d2114080000000000000000000002000000000000000000000814212d3945505a61646c6c6c6c6c6c6c6c6c6c6c6c6c6c6962584d4135291c10000007131f2a35404a52585a6060606060606060606060606060606060575550483e332a1f150b010000000000000000000000020b16202b343f495156586060606060606060606060606060606060575550483e34281d11050000000000000000000000000000000000000000000000000000000004101c27333d474f5456606060606060606060606060605f5d5850463b3024190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4b57636d7379797979797979797979797979797979796f6a5f554b40352921170c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dddfd7ccc0b5aba298928a807a726e69676665646566676a6f737b818c929ba3adb7c1ccd6cabeb3a99e9184796d6053463a2f24190d0100000000000000000000000000070e171e262e343a41454d53555d6064686e707376797a7b7c7d7c7b7a797875716e6966615e56534e45413a3228231d150c04000000000000000000000000000000000000000000000000000000000000020f1b27333f4b5660686b6c6c6c6c6c6c6c6c6c6c6c6c6c65625b51463a2e2216090000000000000000000000000000000000000000000000000000000000000000020a111721272c31363a3b3e4140454748494949494948474644403939342d241b1006000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000071019202830353e424b51545c60656a6f73777a7d80838588898a8b8c8c8d8d8d8c8b8a898683807d7a746f6a636059514c433c342d241b12090000000000000000000006121f2c3844515c666d7880868b8e8f8e8c8781796d685d52463e33281c100400000000000000000000000000000000050e17222d38414c56606a727f8b939ea8b2bcc6d0cbc0b5aba0968f8287929fa7b1bcc6d0cabeb4aaa0958e81746c62584e433a2f251b10070000000000000000000006121f2b3844505b66717e8b959fa9b2b1a9a19e9a97999ea1a8b1b3a9a0958b7e71655b5044372b1f120500121f2c3845525e6a757979797979797979797979797979716c6155493c3023160a000000000000010507070f070704010000000000000a1723303d4955616c71797979797979797979797979797974695d5144382b1e1200000a17232f3b47525c63666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a50453c31271d120700000000000000000000000a141d28323d46515b62656c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5045392d211508000000000000000000000000000000000000000000000000000000000713202c38444f5960636c6c6c6c6c6c6c6c6c6c6c6c6c6c6962584d4135291c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2633404d5966738086868686868686868686868686868686867c6f675d51453e33291e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde8ddd2c7bdb4aaa29f928d857f7b7774727170717274777b80868f939ca4adb5bec9d2ccc4baada2978c7f72665c514538281e1308000000000000000000000000000000050c151c232830353c42474b5153565e616466656c6d6e6f70706e6d6c656865615e5754524c47423c3530282018120b030000000000000000000000000000000000000000000000000000000000000004111d2a3743505c68727879797979797979797979797979726d62564a3e3125180b00000000000000000000000000000000000000000000000000000000000000030c141c232832383b4246484b4e4b5153555556565655555453514a49453e362d22170c000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000040f19222b323a41464f545c60666d71777c8084868a8d8f929896979798999a9a999897979992908d8a86817c76706b605d554e463f362d241b1108000000000000000006121f2b37434e58606d78828c92989b9c9b99928e837a6d615a5044392d201408000000000000000000000000000000000006111b262f3a444e58626d75818e96a0aab4bfcad1c7bdb2a89e948f9299a3aeb9c2cecbc2baaea2989083796d605a50463c31281e13090000000000000000000000030f1c28333f4a54606c78839097a1a9b0b3adaba6a4a6abadb2b1a9a1979083786c6053493f33271b0f030013202c3946535f6c7986868686868686868686868686867e7164574a3e3124170b0000000002080d1113141c1413110d0801000000000b1724313e4a5764717e8686868686868686868686868686796c5f5246392c1f1300000c1926323f4b58636e737979797979797979797979797979797979716c61574e43392f24180f0600000000000000000006111b262f3a444e58626d727979797979797979797979797979797979716c6155493d3024170a000000000000000000000000000000000000000000000000000000000916222f3c4854606b70797979797979797979797979797974695d5144382b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c78828f97939393939393939393939393989083796d605a50453b30271c12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde8e0d9d0c6bcb4aea49d97928c8784817f7e7d7e7f8184888d92989ea5adb6bec7d0cfc4baafa59f9285796d60544b403428160c0100000000000000000000000000000000030a11171e24293137394045474c525457535b6061616263636261605b535854534d4746413b373129241e160e0700000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884868686868686868686868686867f7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000030c151e262e343d43484d5354585b555d606162626363626161605c545650483e34291d11050000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000a16212b343d444c525961666d72797e83888d91939a999c9fa2aaa3a4a5a6a7a7a6a5a4aba39f9d9a99928e88827d756d67605850483f362d231a0f05000000000000000814212e3a47535f6a74808d949fa2aaa8aba39f958f82766c6155493c3023160a0000000000000000000000000000000000000a141d28323d46515b606d79849198a2aebac0cbcfc3bab0a69e9c9fa3abb4bfcbcdc2b9aea49f92867b6e675d51483f342a1f160c010000000000000000000000000b17222d3844505b666e7b8591979fa6acb2b6b3b1b3b6b2ada7a09792857b6e665b5041382d22170b000013202c3946535f6c79869293939393939393939393938a7d7164574a3e3124170b000000050c13191d20212921201d19130c040000000b1724313e4a5764717d8a93939393939393939393939286796c5f5246392c1f1300000d1a2733404d5a66738086868686868686868686868686868686867e716a5f554b40352922180d0400000000000000040e17222d38414c56606a727f86868686868686868686868686868686867e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000a1623303d495663707d8686868686868686868686868686796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b666e7a859299a49f9f9f9f9f9f9f9f9f9fa0958e81746c61574d42392e23180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dddfd6cfc9c5c4bfbaaea9a29e9995918d8c8b8a8b8c8d91969a9fa3aaafb7bfc8d0cfc7bdb2a89e938b7f72675d5142392e23180400000000000000000000000000000000000000060c13191f262b2f35393b4146474a495053545556575655545350494b4846423b3936302b262019130c040000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b78849193939393939393939393938b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000000000b151e2730383f444e54575e6164676a676d6e6f6f6f706f6e6d6d6664625a5045392d2115080000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000030f1b27323d464f565d616b70797f848b9095999d9fa4aca9acaeb4b0b1b2b3b4b4b3b2b1b5aeaca9aba39f9b948f89817a6f6a625a50483f352c21170d030000000000000815222f3b4855626e7b87929fa6aeb4b5b5afa79f948a7d7064574a3d3124170a000000000000000000000000000000000000020b16202b343f45515d676f7c86929fa5afb9c3ceccc1b8b0aaa8acaeb4bdc6d0c5bbb1a79d928a7e71695f554b40362d22180d040000000000000000000000000006111c28333f4a545e696f7c8590949ea0a8a9aaabaaa9a8a19e9590857c6f695f544a3f2f261b1106000013202c3946535f6c7986929f9f9f9f9f9f9f9f9f9f978a7d7164574a3e3124170b0000050e161e252a2d2e352d2c29241e160d0400000b1724313e4a5764717d8a979f9f9f9f9f9f9f9f9f9f9285796c5f5246392c1f1300000713202d3a4653606d78828f969393939393939393939393939392867c6e675d51453e342a1f160c010000000000020b162027333f49535d686f7c879293939393939393939393939393958d80746c6155493d3024170a000000000000000000000000000000000000000000000000000000000a1623303d495663707c8993939393939393939393939285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a545e68707d87939fa6b0acacacacacacacb1a79d928a7e71695f544a40342820170b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd6ccc4bdb9b8b9bdbbb3adaba8a09d9a99989798999a9ea0a8acaeb4bcc1c9d1cfc6bdb5aba1968f81756d62554b4030271d1207000000000000000000000000000000000000000002080d151a1d24292c3036393b3d3f44464748494a49484746443f3e3b3a36312d2a251e1a150d0802000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919e9f9f9f9f9f9f9f9f9f988b7f7265584c3f3225190c000000000000000000000000000000000000000000000000000000000007121c273039424a50586062696e717477787a7b7c7c7c7c7c7b7a7979716c6256493d3024170a0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000007131f2c38434f5960686d757d848c91969da0a7aaacafb6b6b8babfbdbebfbfc0c0c0bfbebfbbb9b6b5aeaca69f9c938e847c716c625a50473d33291f14090000000000000d1a2733404d5a6673808d99a3afbabfc2c0bbb0a69b8f8275685c4f4235291c0f02000000000000000000000000000000000000040e19222935414b555f6a717e8b939da7b1bcc5d0cac1bbb7b5b9babfc6cfc7beb3a99f958d80746c61574d43392f241b10070000000000000000000000000000000b17222d38424d575f6a6f7a828a9196999c9d9e9e9c9a96918b837b6f6a60574d42382d1d140a00000013202c3946535f6c7986929facacacacacacacaca4978a7d7164574a3e3124170b00030c1620283036393a423a39352f2820160c03000b1724313e4a5764717d8a97a4acacacacacacacac9f9285796c5f5246392c1f13000006121f2b3844505c666d7a849199a39f9f9f9f9f9f9f9f9f9fa2989083796d605a50463c31281d120700000000000a141d28323a44505b656d7a849199a39f9f9f9f9f9f9f9f9f9fa1979083786d605a5045392d211508000000000000000000000000000000000000000000000000000000000a1623303d495663707c89969f9f9f9f9f9f9f9f9f9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424c56606b73808c949fa9b3beb9b9b9b9b9b9afa59f92857b6e665c51443d32291d140a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dacfc4bab2adabadb2babeb9b8b1acaaa7a5a4a3a4a5a7aaacb2b9babfc6cfd4ccc4bcb4aba39991847a6d605b51433a2f1e150b000000000000000000000000000000000000000000000003090e12181d20252a2d2e2d3337393a3b3c3d3d3b3a3937332d2e2d2a25201e19140e09030000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabacacacacacacaca5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000c18232e39424a545c606a6f757b7e81848586888889898988888786867e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000915222f3b4854606b6f7a818a91969ea1a9acb1b7b9bbc0c2c5c6cad0cbc7c5c5c5c7cbd0cbc7c5c3bfbbb9b0aba59e9691877e716c62594f453b30251a0e040000000000101d293643505c6976838f9cabb5c0cad0cbc2b8ab9e9185786b5e5245382b1f120500000000000000000000000000000000000000071018242f3a434e58626c74818e95a0aab4becad6ccc7c3c2c5c7cbd1ccc0b6aca1979083786d605a50453c31271d12090000000000000000000000000000000006111c262f3b454e585f686e787e84898d8f919291908d89847e786e6960584e453b2f261c0b0200000013202c3946535f6c7986929facb9b9b9b9b9b9b0a4978a7d7164574a3e3124170b020b151e28323a4146474f4745413a32281e150b000b1724313e4a5764717d8a97a4b0b9b9b9b9b9b8ac9f9285796c5f5246392c1f13000003101c28343f4a545e686f7c87929fa5afacacacacacacacb4aaa0958e81746c62584e43392f2418100600000006111b262f3a444f59606c77828f96a1abb5acacacacacacacafa39992857b6e665c51483e34281d1105000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3acacacacacacacac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f3b444f59606d78829097a1acb6c0ccc6c6cbc0baada2979083786d60594f443b2f261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d5c9bdb2a8a19ea1a8adbabfc3bdb8b7b4b2b1b0b1b2b4b7b9bdc4c7cbd1cdc8c1bab2aaa39992877d6f685d52493f31281d0c030000000000000000000000000000000000000000000000000001070d1014191e202122272b2d2e2e2f30302f2e2d2b272221211e1a14110e080200000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7b9b9b9b9b9b2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000004101c2834404a545c666d747c82878b8e9092979495959696959494988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000091623303c4956636f7c848f939ea0a8adb2b8bcc3c6c8c8c6c3c0bdbbbfbab9b8b8babfbdc1c5c6cacbc7c2bbb7afa8a09992887f716b61574d42362a20150a0000000000111e2a3744515d6a7784909daab7c3d1dbd2c5b9ac9f9286796c5f5346392c201306000000000000000000000000000000000000000007131d28313c46505a606d79839098a2aebac0ced8d3d0cfd2d3d7d4c8bbafa49a92857b6e665c51483e332a1f150b0000000000000000000000000000000000000a141d29333c464e565e666c71787c808384858483807d79716d665e574e463d33291d140a0000000013202c3946535f6c7986929facb9c5c6c6c6bdb0a4978a7d7164574a3e3124170b0a141d27303a444c52545c54524c443a30271c12070b1724313e4a5764717d8a97a4b0bdc6c6c6c5b8ac9f9285796c5f5246392c1f130000000b17232e38424c56606a727e8b939da7b1bbb9b9b9b9b9bcb1a79d938b7e716a5f554b40352922180d0400050e17222d38414c56606b727f8c949ea8b2bdb9b9b9b9b9baafa59f92877d70695e544b40362c22170c00000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afb9b9b9b9b9b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29323d44505c666e7b85929aa4afbbc2cdd7d6cabeb3a99f958d80736b61564d42382d22170e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3ccccc5b9ada19691969ca3aeb4bcc1c5c4c0bfbebdbebfc0c4c5c9ced2ccc7c3bcb8afa8a19892877e716b60564c41372d1f160c000000000000000000000000000000000000000000000000000000000104080d111414171b1f2021222324232221201f1b171514120e090502000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4c6c6c6beb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000006121f2c3844515c666d7880898f93999a9d9fa2a9a2a2a2a3a2a1aa988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000916222f3c4955626f7c86929fa5acb2b9bdc4c8c7c7c0bbb9b7b3b0aeb4aeacabacaeb4b0b4b8b9bec5c9ccc7c1bab2aba39a93877d70695e52463c31261b0f0400000000101d293643505c6976828f9cabb4bfcad0cbc2b8ab9e9185786b5e5245382b1f12050000000000000000000000000000000000000000010c161f2a343f45515d676e7b86929fa4aebcc6d0dbdcdbdfe0d3c7bbb0a69f93887d70695e544b40362c21180d03000000000000000000000000000000000000020b17212a343c444d545b60666d6f73767778777674706d66605c544d453d342b21170b020000000013202c3946535f6c7986929facb9c5d2d2cabdb0a4978a7d7164574a3e31241706111b262f39434c565e6168605d564c42392e2318120b1724313e4a5764717d8a97a4b0bdcad2d2c5b8ac9f9285796c5f5246392c1f1300000006111c26303a444e58626d74818e95a0a9b3bdc7d2c6cec3b9afa59f92867c6e675d51453f342a1f160c020b172027333f49535e686f7d87929fa6b0bac4cfc6d0c6bcb2a89e938c7f726b60574d42392e241b100600000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc6c6c6c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b172028343f4a545e69707d88939fa6b0bbc5d0d9d0c5bcb1a79f93887d70685e544a3f332820160c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6bfbfbfbfb8ab9e91848c919fa3aaafb9babfc5c7cbd0cbccccccd0cac6c5c0bbb9b1aca59e9691867e716c61594f443a30251b0d0400000000000000000000000000000000000000000000000000000000000000010507060b0f12131415161716151413120f0b06070502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000006121e2b37424e57606d78828d929b9fa4abaaabadb3afafafafafaea5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000815212e3b47535f6a737f8c959faab4bfc9c7c2bbb7b6afacaaa6a3a2aba39f9e9fa3aaa4a7abadb3b9bec4cdccc4bdb4aca49992857b6e61584e43372b20160a000000000d1a2633404d596673808c99a3aebabec1bfbaafa59b8e8275685b4f4235281c0f02000000000000000000000000000000000000000000040d18222935404b555f69717e8a929daab4bfcad6e2e8ecddd0c4b7ab9f948c80736b61574d42392e241a0f060000000000000000000000000000000000000000050f18222a323b424a50545c606366696a6b6b696763605c54504a423b332b22190f06000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3124171117222d38414b555e686d756d685d544a403428241a111724313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000a141e29323d46515b606d79839097a2abb5c0ccd7d5cbc0baaea2989183796d605a50463c31281d130a141d29323a44505b656d7a849199a3afb8c1ccd6d6cabfb4aaa0968f81756d63594f453b30271d12090000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d2d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17232e38424d56616b73808d949fa9b3bec7d2d7cec2bbafa49a92857a6e665b50443d32281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab2b2b2b2b2b2a6998d807f8b92989ea5acaeb4b8babfbfbfc0c0bfbebebab8b5afaca7a09d938e847c716c615a50473d32281e1309000000000000000000000000000000000000000000000000000000000000000000000000000305060708090a0a08070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000814212e3a47535f6a737f8c949da4acafb5b7b8babebbbcbcbcbbb1a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000006131f2b37434e58606d78839098a2aebabfbab9b0abaca49f9d9a979594999292929895979b9ea2a9adb3bbc1c9cfc6beb5aba1978e81756a5f53473d32271b0f030000000815222e3b4855616e7b86929fa5adb3b5b4aea69e93897d7063564a3d3023170a0000000000000000000000000000000000000000000000061018242f39434d57616c74808d98a2aebac7d3e0ece9dccfc2b6a99c8f82786c60594f453b30271d12080000000000000000000000000000000000000000000006101820292f383f444a5053565a5c5e5f5e5d5a5653514a443f3830292119100700000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312417192327333f49535c676d7a827a6d665c514440362c23191724313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000020c17202b343f45515c676e7b859299a4afbbc1ccd6d6cabfb4aaa0958e81746c62584e433a2f2418111b262f3a444f59606c77828f96a1abb5c0cad3d4cbc2baaea29891847a6d605b51473d33291e150b000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b444f59606d78829097a1acb6c0ccd8d8ccc0b6aca1978f82786c60594f443a30241910060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909da6a6a6a6a6a6a6a6998d80737f868e939c9fa3abacaeb4b2b3b3b3b2b1b3adababa49f9c95908a817a6f6a615a50483e342b20160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000815222f3b4855626e7b86929fa6aeb9bbc0c3c5c6cad0c8c9c9beb1a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000030f1b26323c44505c666e7b86929fa6b0b4aeaca69f9c9a93908d8a88878686858587888a8e92979ea1a9afb7c1cad0c7bdb3a99f93877c6f62584e43372b1f13060000000714212d3a46535f6973808c939fa2a9a8aaa39f948e81756b6054483c2f22160900000000000000000000000000000000000000000000000007131d28313c46505a606d7a85929facb8c5d2dfebe2d5c8bbafa295887c6f665c50443e332a1f160c010000000000000000000000000000000000000000000000060e171d262d33383f4446494d50515251504d4946444039342e261e170f070000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312418222b353d44505b656d79828f82786d605b51483e352b211824313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000050e19222934404b555f69707d87939fa6b0bac4ced8d0c6bcb1a79e938b7e716a5f554b4035292217222d38414c56606b727f8c949ea8b2bdc7d1d6cdc2b9aea49f92867c6f675d51493f352b20170c03000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e29323d44505c666e7b85929aa4afbbc2cdd7d2c7beb3a99f948c7f726b60564c41352922180d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a778390999999999999999999998d8073727b81898f92999b9fa3aaa5a6a7a6a6a5a9a29f9c99938f8a837d756d68605850483e362c22190e0400000000000000000000000003080d1012131313131313131313131313130c0b090601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000000000000000005121e2a36424d576673808d99a3aeb8c0c7ccd2d2d3d0cac7c5c1beb1a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000a152028343f4a545f69727f8b949fa9aba39f9b948f8a8783807d7b7b7a7978797a7b7d81858b91979ea5afb8c1cdd0c5bbafa49a8f82756a6054473b2e22150900000005121e2a36424d57606c78818b92979a9b9a98928d82796d60594f44382c2013070000000000000000000000000000000000000000000000071018242f3a434e58616c74818e98a2aebac7d3e0ece9dccfc3b6a99c9082786d605a50453c31281d1207000000000000000000000000000000000000000000000000050b141c22282e34383a3c404344454443413d3a38342e28231c150c05000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3124202a343d47505a606c77818e948e81746d635a50473d332a2024313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000071018232f39434d57616b737f8c949ea8b2bcc6d0d8cec3b9afa59f92867c6f675d51453f342a2027333f49535e686f7d87929fa6b0bac4cfd9cfc4bbb0a69d928a7e716a5f554c41372d23190e0500000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c172028343f4a545e69707d88939fa7b1bbc5cfd9d0c5bbb0a69f92877d6f685d52453f342a1f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a77838c8c8c8c8c8c8c8c8c8c8c8c8073696e757c82868a8f92989798999a9999989697928f8b87827d78706b615e564e463e362c241a1007000000000000000000000000070e14191d1f1f202020202020202020202020191816120d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000714212d3a46535e697784919dabb4bfcad4d7ddd4cec6bfbab8b4b1b0a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cdc0b3a69a8d8073675a4d4034271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000040b17232e38424d57606c77828f97a29e99928e88827e7a7773706f6e6d676b686d6f7174797e858f939ea6b0bbc5cfccc0b6ac9e93897c6f6256493c31251a0e020000020e1a26313b44505b666c777f858a8d8e8d8b8680786d675d51473d33271c100400000000000000000000000000000000000000000000040d19222935404b555f6a717e8b939daab4bfcad6e2e6ebddd0c4b7ab9f948d80736c61574d43392f24181007000000000000000000000000000000000000000000000000020a11171c23282b2d3033363738383634302d2c28231c17110a0300000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312429323c464f59626c73808c939d938c7f736c61594f453c322824313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000007121d27313b454f59606c77828f96a0aab4bfcad6d5cbc1baaea2989183796d605a50463c3129323a44505b656d7a849199a3afb8c1ccd6d1c7bdb3a99f948d80746c61584e433a2f251c11070000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17232e38424d57616b73808d959fa9b3becad6d6cdc2bbafa39991847a6d605b51463c31281d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e7f7f7f7f7f7f7f7f7f7f7f7f7d7063616a6f757a7e8286888a8c8c8d8d8c8b898885827f7b76706c656159524c443d342c241a12080000000000000000000000000811191f25292b2c2d2d2d2d2d2d2d2d2d2d2d2d2525221e18110901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000815212e3b4854616e7b8795a0acbdc6d1dcdfd4cbc2bcb4aeaca8a5a3a3988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cdc0b4a79a8d8174675a4e4134271b080d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000006111c26303c44505b656e7b85929e938e86817c76716d6867646261605d565d616264666d717a818f949ea9b3bec9d2c7beb0a69a8d807467574d42362a1e120500000009141f28333f4a545b656c727a7e8082817e7a736d665d554b40352b21160b00000000000000000000000000000000000000000000010c16202b343c45515d676f7c86929fa5afbcc6d0dbdad9dedfd3c7bcb0a69d928a7e71695f554b40352922190e0500000000000000000000000000000000000000000000000000060b11171c1f202327292b2c2b2a2723201f1c18120c06000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3127313b444e58606b717e8b929ca59c918a7e716b60574d443a3027313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000010b151f29333d44505b656d7a849198a2aebac0cbd4d6cabfb4aaa0958e81756c62584e433a2f3a444f59606c77828f96a1abb5c0cad3d7cbc0b5aba1979082786d605a50463c31281e130a000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b454f59606d78839097a2adb9c0cbd4d7cbc0b5aba1968f81756d62584e43392f24180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1724313d4a56626c71737373737373737373737373706b60586062686d7175797b7e7f8080807f7e7d7b7975726e6964605b534f46413a322b221a120800000000000000000000000007111a232a3135383939393939393939393939393932312e29231b1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000091623303c4956636f7c8996a8b1bdcfd8e0d6ccc2b9b1aaa29f9b989796978b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cec1b4a79b8e8174685b4e413025190d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000a141e27333f49535e69717e8a928a817b746f6a64615e5657555453514c525455545c60686d78828f97a1adb9c6d0d0c1b7aa9d918477695e53463a2d211407000000030b17222d38424a535b60676d71747574716d68605c544b43392f23190f050000000000000000000000000000000000000000000008131e28323c46515b606d79839198a2aeb7c0ced8d0cdccd1d2d5cdc2b8aea49f92867b6e675d51453f342b20160b020000000000000000000000000000000000000000000000000000060b101213161a1d1e1f1e1d1a161312100c070000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312f39434c565f6a707d87929fa4ada39f92867d6f695f564c43392f313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000030d172127333f49535d686f7c86929fa4aeb9c2cdd6d0c6bcb1a89e938b7e716a5f554b4038424c56606b737f8c949fa8b2bdc7d1d5ccc3bbafa39991857b6e665c51483e342a1f160c01000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c151e29333e44505c666e7b85929ea4aeb9c2cdd7d1c7bdb2a89e938b7f726a5f554b40352920160c02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915212e3a45505a62656666666666666666666666666360594f54565d6064676d6f71727374737372706e6c6665615e57535049413e36302920191008000000000000000000000000030e19232c353c4145464646464646464646464646463f3e3a342d251b11070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4b0bdced7dacfc4bab1a79f98928e8b8a8a8a8b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cec2b5a89b8f827568564c41362a1d110d1a2633404d596673808c99a6b3bfccd6c9bcb0a396897d7063564a3d3023170a000000000000000000020c17222d38414d57616c7581857e756e69625f5854525153545555555453504a4a50565d666d7985929eaab4bfcbd1c5b8aca096877b6e6154483b2e2115080000000006111c262f38414950555d606467686765615e56514b423931281d110800000000000000000000000000000000000000000000071019242f3a444e58626d75818e95a0aab4bfc9d1cac4c1c0c5c6c9cfcac0baaea2989083796d605b51463d32281d140a00000000000000000000000000000000000000000000000000000000030607090d10111211100e0a07060400000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e2d38424b555e686e7c859299a3aebaaea39892857b6e685e554b41382d3e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000060f17222d38414c565f6a717e8b929da7b1bbc5cfd8cec3baafa59f92867c6f675d51453f4a545e68707d87929fa6b0bac4cfd7cec3baafa59f92877d70695e544a40362c22180d0400000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b11171c1f262b343f4a545e69707d8a929da7b1bbc5d0d9cfc4baafa59f92867c6f675d51453e32281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d29343f4850565859595959595959595959595956544f47474c5254555c6062646566676666656361605b5454524d46443f382f2a251e170e070000000000000000000000000008141f2a353e464d51525353535353535353535353534c4a463f372d23180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1825323f4b5865727e8b98a5b1becbd8d5c9bdb2a89f959086817e7d7d7d7e7c6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d0c4b7aa9d918477685e5246392d201510152734414e5a6774818d9aa7b4c0cdd5c8bcafa295897c6f6256493c2f2316090000000000000000000006111b262f3b45505a616d7a7a716c615e5654575a545c606161626161605c545a5754545d67727e8b98a3aebac7d3c8bdb2a8988b7e7165584b3e3225180b00000000000a141d262f383f444c5154575a5b5a5854524c45403930281f160c00000000000000000000000000000000000000000000050e19232935414c56606a727f8b939ea8b1bcc6d0c8c0b9b4b3b8b9bec5cdcabeb4aaa0958e81756d62584e443a2f261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e333f4a545d676e7a849197a2abb5bfb4aaa29791847a6d675c53493f333e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000006111b262f3a444e58616c74808d959fa9b3bdc7d1d5ccc1baaea3989184796d605b5144505b666d7a859199a3afb8c2ccd6d0c5bcb2a89e938c7f726b60564d42392e241a10060000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c23282c32373b3c424d57616c73808d959fa9b3becad6d6ccc1baaea3989184796d60594f443a3025190f05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18222d363f454a4b4c4c4c4c4c4c4c4c4c4c4c4c4948443d3a4145474b5153555759595a5a5958565553504a4746423b37332d261d19130d0500000000000000000000000000000d1925313c4650585d5f606060606060606060606060585651493f34291e120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd8d2c5b9ada19690827b7572707071716f6a5f53473a2e2115080000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d1c5b8aca096877a6d6154473c30261d1c1f2a36424d576875828e9ba8b5c1ced5c8bbaea295887c6f6255483c2f22150900000000000000000000000a141d29333e46525d686d6d68615a565e61646769666d6d6e6f6e6d6d666a6764615e56606d7a86929facb8c5d2cec1b4a79b8e8174685b4e4135281b060000000000020b141d262d333a4145474b4d4f4e4b4746413a342e271e160d04000000000000000000000000000000000000000000020b17202b353d45525d686f7c86929fa5afbac3cecac0b6aea8a6abadb3bbc5cfc5bcb1a79e938b7f726a60564c42382d22170f05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3e44505b666d79839096a1a9b3bdc6bcb3a9a0969082796d655b50443f3e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000a141d28323c46505a606d78839097a1abb5c0cbd7d6cbbfb4aaa0968e81756d62584f59606c78828f97a1abb5c0cad4d6cabfb4aaa0968e81756d62594f443b30271c1208000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b141b22272e34383c43474949505359606d78839097a2adbac1cbd7d7cbbfb4aaa0968e81746b61564c41362a21170b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b242d343a3d3e4040404040404040404040403d3c38332f35393a404546484b4c4d4d4d4c4b4a4846443f3b3a36302b27221b140b0802000000000000000000000000000000101d2935414d58626a6c6c6c6c6c6c6c6c6c6c6c6c6c65625b51463a2e22160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd8d1c4b8ab9e91847a6e696564636465625f584e43372b1f12060000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d4c8bdb2a8978a7d7064584e42382f2b292c303946525e697784919daab7c4d0d5c9beb3a994877b6e6154483b2e2115080000000000000000000000020b17202935414c565d61615e5d6065686d70737678797a7b7b7b7a79787673716e6863606775828f9ca8b5c2cfcfc2b5a99c8f8276695c4f432d22170b000000000000020b141b22272f35393a3e4142413e3a39363028231d150c04000000000000000000000000000000000000000000000a141d29323d47515b606d7a849198a3aeb7c1cccdc2b8aea49c999ea1a9b3bec9cec3b9afa59f92877c6f685e544a3f332821170c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e47515b606c78818f959fa8b2bcc5cfc5bbb2a89f948e81776c605a50473e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000020b16202a343e45515c666e7b859299a3afbbc1ccd5d0c6bcb2a89e938b7e726a5f56606b737f8c949fa9b2bdc7d1d4cac2baaea2989184796d605b51473d32291e150b00000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810181d262d33383f44464e5455535b606162666e7b85929fa5afbac6d2dcd1c6bcb2a89d938a7d70685e52463e33291d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121b22292e3132333333333333333333333333302f2c2724292c2e34383a3c3e3f404140403f3d3b3938332d2d2a251f1b17110a020000000000000000000000000000000000121f2b3845515d6a7479797979797979797979797979726d62564a3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd6cabfb4aa998c7f73685e575757575855534e463c31261b0f030000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d9cec2b5a89c8f82756a5f544a413a3734383b424c56616e7b8796a0acb8c5d1d2c6b9ada197877a6d6054473a2d21140700000000000000000000020b141b2227343d444c52555d60676d72767a7d808284868788888887868583807d7a75706c6573808d9aa6b3c0cdd0c3b7aa9d9084776a53493f33271b0f03000000000000020a11171e24292c2d31343534322e2d2a251e18120b030000000000000000000000000000000000000000000006111c262f3a444f59626d75828f96a0aab4bfc9cfc5bbb0a69c928d9297a1adb9c1cccbc1baaea39991847a6d665b50443e33291e150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a464f59626d73808d939ea7b1bac4ced7cdc3bab0a69e938d80736c62594f464a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000040e18222834404b545e69707d87929fa5afbac3ced7cec3baafa59f92867c6f675e68707d87939fa6b0bbc4cfd6cdc2b8aea49f92867c6e675d51493f352b20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000109111a222a2f383f444a5053585f6266656c6e6f7070707d8a939ea9b6c2cfdbd8cfc3baafa59e91857a6d615a50453b2f261b1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181d2124252626262626262626262626262322201c191d2023282c2d2f31323334333332302e2d2b2822201e1a140f0b0600000000000000000000000000000000000000131f2c3946525f6c79868686868686868686868686867f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd3c7baaea298887c6f62564d4a4a4a4b4847433c342a20150a000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded2c6b9ac9f93877c6f665c514b46424045474d545d68737f8c99a8b2bdc8d4d1c5b8ab9e928578685d5245392c201306000000000000000000000a141d262d333f464e555c60676d727a7e83868a8d8f9192999495949a9392908d8a86827d7870727f8c98a5b2bfcbd1c4b8ab9e918578655b5044372b1f12050000000000000000060b13191d2021242728272521201e19130c070000000000000000000000000000000000000000000000050e17222d38424c56606b727f8c939ea8b2bcc6d1cabeb3a99f948d8085929ea5afbac4d0cbbfb4aba1968f82786c60594f453b30271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a4e58616b727f8b929da5afb9c2ccd6dfd5ccc2b8afa59c928b7e716b60584e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000061018232e39424d57606b727f8c939ea8b1bcc5d0d5ccc1baaea39891847a6d666e7a859199a4afb8c2cdd6cfc4bbb0a69d928a7e716a5f554b41372d23190e050000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a131b232c343c414950545c60656a6f7376797a7c7d7d7d7c818e9ba7b4c1cedae1d5ccc0b9ada1978f81756c61574d41382d22170b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c11151718191919191919191919191919161613100d1113181c1f2022242626272726252322201f1c1714110e0903000000000000000000000000000000000000000000131f2c3946525f6c798592939393939393939393938b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd2c5b8ac9f9285796c6053463d3d3e3e3c3a37312a22180e03000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded4c8bbafa49a9082786d605d55534d4b5153575e666d7a85929fabb8c3ced9cfc2b5a99c8f827669564c4135291d110400000000000000000006111b262f383f44515860676d72797f858b8f93999a9c9e9fa3aba2aca49f9f9d9a99938f89847d747e8a97a4b1bdcad2c5b9ac9f9286796c605346392d20130600000000000000000001080d111314181a1c1b181413110d08020000000000000000000000000000000000000000000000030c172028333f4a545e686f7d87929fa6b0bac4cfccc4b9ada2978f82787e8a939da8b2bdc7d1c6bdb2a89f948c80736b61574d43392e23181006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574d575f6a707d87929fa4aeb7c1cbd4dee7ded4cbc1b7aea49f92877d706a5f564c5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000007121d27303b454f59636d75818e95a0aab4bfcad6d7cbbfb4aaa0968e81756d78828f97a1abb5c0cad4d1c7bdb3a99f948d80746c61584e433a2f251b1107000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141c252d353e464e535b60666d72777c8083858789898a8a888e939ea9b6c2cfdbe7ded5c9beb3a99e938b7e71695e53493f33271f140900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105090b0b0d0d0d0d0d0d0d0d0d0d0d0d0a0907040104070c1013131518191a1a1a1918171513120f0b0605020000000000000000000000000000000000000000000000131f2c3946525f6c7985929f9f9f9f9f9f9f9f9f988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b8ab9e918578655b5044373031322f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded8ccc0b6ac9f948d80756d67615f57555c6063696e78828f97a2adbac6d5d7cbbfb5ab998d8073665a4d402f24190d010000000000000000071017222d384149505b626a6f797f858c92979c9fa4aba9abacafb5aeb6afacaba9aba49f9c969189817e8a97a4b0bdcad3c7bbaea399877a6d6054473a2d2114070000000000000000000000010406070b0e0f0e0b07070501000000000000000000000000000000000000000000000000000a151e29333b44505b666d7a849199a3afb8c1cccfc4baafa59e92857b6e74818e96a1abb5c0cccfc4bab0a69f93887d70695e554b40342822180d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d716457555e696f7c869299a3afb6c0c9d3dde6e2e6ddd3c9c0bbafa39992857c6f685e555764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000b151e29333d47515b606d79839198a2aebac0cad4d1c6bcb2a89e938b7f73808c949fa9b3bdc7d2d7cbc0b5aba1979082786d605a50463c31281d130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121c262e373f474f585f656c71787e84888c8f929895969696959b9ea5afbac6d2deeae6dacfc4bbafa59f92857b6e655b50443b30251a0d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040607090b0c0d0e0d0d0c0a08060603000000000000000000000000000000000000000000000000000000131f2c3946525f6c7985929facacacacacacaca5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e493f3327242522211f1b150e060000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1deddd2c7beb0a69d928d817a736e696a6a676d6f747b828f949fa9b3becad6d3c7bbaea3998a7e7164574b3e312418080000000000000000040e182227333f49535b606d727c848c92979ea2a9acafb5b6b7b9bbc0bbc0bbb9b8b6b5afaca8a09d938e86929facb8c5d2d7cbbfb5a093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b454f59606c78828f96a1abb5c0cad1c7bdb2a89d938a7e71696d7a849199a4afbbc3cfccc2bbafa49a92857b6e675c51453e342a1f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164545d676e7b849198a2abb5c0c8d2dbdfded6dedfdbd7cbc0b5aba29791847a6e675d5464717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000030c17202b353f45515d676e7c86929fa4aeb8c2cdd6cfc3baafa59f92867f87939fa6b0bbc4d0d5ccc3bbafa39991857a6e665c50483e342a1f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101b242e3840495159616a6f787e848b9196999c9fa2aaa3a3a3a2a7a9afb7c1cbd7e2eeebe1d6cdc1baaea2988f82776c60574d42362a1f150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7985929facb8b9b9b9b9b2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e51442d2217181515120f0a03000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1dee4d9d0c2b8aea49d938e857f7b78777777797c81868f949fa6b0bbc5cfdbd2c5b9ac9f92867a6d6154473a2e21140700000000000000020c16202a343c44505b656c737f8791969ea1a9adb3b9bbc0c2c4c5c7cbd1ccc8c6c5c3c0bbb9b2aca59d989298a2aebac7d3dcd1baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f17232e38424d57606b73808c949fa8b2bdc7d1cbc0b5aba0968e81746c6167707d87939fa7b1bdc6d1ccc0b6aca2979083796d605a50463c31281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d71645c666d79839096a1aab4bdc7d1dad5d2d1c9d1d2d5dad1c7bdb3a9a1969083796d665b64717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000050e19232935414b555f6a717e8a929da6b0bbc4cfd5ccc1baaea398928c9399a4afb8c2cdd6cec3b9afa59f92877d6f685e544a3f362c22180d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f524631281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18222d36404a525b626b707c838a91969ea0a8a9acaeb4b0b0b0afb4b6bac1c9d2dde8f3f2e8dfd6cabeb3aa9f948b7f72695e52463e31271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002060808131313131313131313131313130b0a080500000000000000000000000004090c0f0f13131313131313131313131311100e0a05000000000000000000000000131f2c3946525f6c7985929facb8c5c6c6beb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e06090806030000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1dee5e2d4cac0b6aea59e97928c888583838486898d92989fa6b0b8c2cdd7d5c9bdb2a89b8f8275685e5246392d2013070000000000000008131e28323c46505a606c77808b9299a0a8adb3b9bec5c7cbc7c5c2bfbdbcbbbcbdbfc2c5c7c3bdb8afaaa29fa2aab4bfcad6d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c182128343f4a545e69707d87939fa6b0bac4cfcec6bbafa3999184796d605a606b73808d95a0abb4bfcbd2c7beb3a99f958d80746c61584e433a2f24191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164606d78828f95a0a8b2bcc5cfd6cfc9c6c4bcc5c6c9cfd6cfc5bcb2a89f958f81786c6064717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000071118242f3a434e58616c73808d949fa9b2bdc6d1d7cbbfb4aaa39f989fa4abb5c0cad4d0c5bcb1a79e938c7f726b60564d42382e241a0f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5a50433a2f24190c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a343e48525c636d727d8690959ea0a8acb2b6b8babfbcbdbdbbc1c2c6cbd2dbe4edf1f6f1e6dbd0c5bcb0a69f92867b6e61594f43392f23180c010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e12141520202020202020202020202020171714110c05000000000000000002091015191b1c2020202020202020202020201d1c1a16110b0300000000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1dedbd3ccc6c3c0b7afa9a19e99979190909192999a9fa2aab0b8c2cad4d5ccc4b9aca1968a7d7063564c41362a1d1105000000000000010d1925303a444e58616c73808d929fa3abb2b9bec5cac9c6bfbab8b5b2b0afaeafb0b2b5b9babfc6c0bcb4aeacaeb4bcc6d0dbd3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e29333b44505c666e7b859299a4afb8c2ccd0c6bcb1a79f92877d6f675d5159606d79839099a3aebac2ced0c5bbb1a79d928b7e716a5f554c41352923190e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d71646d74808d949ea7b1bac4ced6cdc4beb9b8afb8b9bec5cdd6cec4bab1a79e938d80746d64717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000007131d28313c46505a606d78828f96a1abb5bfcbd7d1c6bcb4aeaca5acafb5bdc7d2d6cabeb4aaa0958e81756d62594f443b30261c1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b18242f39434f5963707d8996a3b0bcc9d6d2c5b8ac9f9285796c61564c4135291e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323c46505a636e737f8792989fa7acb2b8bdc2c5c6cad0c9c9c8ced1d2d4d8dddee1e5eaf1ece1d7cec2baaea2988e81756b61554b4034291d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e151a1e21222d2d2d2d2d2d2d2d2d2d2d2d2d2423211d171008000000000000030c141b212528292d2d2d2d2d2d2d2d2d2d2d2d2a2926221c150d05000000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded3c9c1bab6b5b7b8b3adaba9a19e9d9d9e9fa3abacaeb4bcc2cad4d6ccc3baafa59e9184786d6053463a3025190d0100000000000005111d2935414c565f6a717e8a929ca4aeb5bdc4c9ccc4bdb9b4aeaca9a5a4a3a2a2a3a5a9acaeb4b9bec4bfbab8babfc6ced8e2d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303b45505a606d78829097a1abb5c0cad6cabfb4aa9f958c80736b60554b515c676f7c86929fa6b0bcc5d0cdc3b9aea49f92867c6f675d51453f352b20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d716c727f8c929da6b0b9c3ccd6cec4bbb2adaba3abadb3bbc5ced6ccc3b9afa59d928b7f726b717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000010c161f2a333e44505c666e7a849199a3aebbc1cbd5cfc6bfbab9b2b9bbc0c7d0d4cac2baaea2989183796d605b51473d32291e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d2935404b55606b74818e9ba7b4c1cedad3c6baaea2988a7d70685d52453d30271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000010d1924303a444e58616c73808b9299a2aab1b9bdc3c8ced2d2d1d0cac6c5c4c5c6c8ccd2d2d4d9e0e6ebe9e0d6cabfb4aa9e938a7d70675c5145392f24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f1820262b2e2f3939393939393939393939393931302d28221a120800000000020c151e262c3134363939393939393939393939393736322d271f170d030000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d7ccc1b7afaaa8aaacb1b9b8b3adabaaaaaaacafb5b8babfc5ced6d0cac3bab2a89e938a7d70665c504438281e1308000000000000030d17212d3946525e686f7c86929fa4aebbbfc6cfc7c0bbb2acaaa39f9c999796959697989c9fa3abadb3bbc0c7c5c7cad0d8e0ead3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18232e39434d57616c73808d949fa9b3bdc7d2cdc4baaea2989083786d60594f434b555f6a727f8c949faab4bfcad6cbc0baaea29891847a6d605b51473d32291e150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d71707e87939fa4aeb8c1cbd5cfc5bcb2a9a19e969ea1a9b3bcc6cfd4cbc1b8aea49f92877d70717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000040d182128343f4a545e686f7d87929fa5afb9c3cdd7d1cbc7c5bfc6c7ccd2d6cdc2b8aea49f92867c6e675d51493f352b20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f3845515d67707d89939da9b6c2cfdbd6cabfb4aa9e91847a6d60594f43392e23180b0200000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414c565f6a717e8b929fa3abb4bcc3c8ced4cfcac6c5c0bebab8b7b8b9bbc0c4c5c8ced5dae0e8e7dbd0c6bcafa59e9184796d60554b4035291d1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18212a31373a3b464646464646464646464646463e3d39332c241a100500000009141e2730373d414246464646464646464646464644423e3831291f150b0000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4ccccc6baafa59e9b9da0a7afb9bdb9b8b6b6b7b9bbc0c5c6cad0d0cbc5bebab1a8a0968e81756b61544a3f3428160c0200000000000009141f2a36424d57616d7a849198a2aeb6c0cbcec5bdb5afa8a19e98928f8c8a8988898a8c8f92999ea1a9aebabfc6ced6dbe2eae0d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18212834404b555f69707e8a929da6b0bbc5d0cfc4bbb0a69f92867b6e665c50473d434e58606c78829098a2aebac1cdcacabfb4aaa0968f81756d62594f443b30261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d717c869299a4afb6c0cad3d1c6bdb4aaa19791899297a1aab4bdc7d1d3cac0bbafa39992867c717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000060f17232e38424c56606b727f8b939ea7b1bbc5d0d9d7d3d2cbd2d4d7d8cfc4bbb0a69d928a7e716a5f554b40372d23190e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424e58606d7984919ea5afbac6d2dedbd0c6b9ada1968d81746b60554b4034281d140a0000000000000000000000000000000000000000000000000000000000000000000000000000030d17212d3946525d686f7c86929fa4afb5bdc5ced4d0cbc5beb9b8b3b3aeabaaabacafb6b7b8bdc3c9cfd6dfe6e2d7cec1b9aca0968c8073675d5145392c1f14090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915202a333c424748535353535353535353535353534a49453e362c22170c000004101b26303942494d4f535353535353535353535353504f4a433b31271c110500000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7bfbfbfbfb6aa9e938e90959ea5acb2b9bdc3c3c4c5c7cbd1ccc8c6c3bfbab3aea79f9691847a6d61594f42382e231705000000000000020e1a25313a46525e6973808d96a1aab4bfc8cfc5bcb3aba49f96918b86827f7d7c7b7c7d7f82868b91979ca4aeb4bcc6cfd9e3eee0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915202a333c45515c676e7b85929fa4aeb8bdbdbdbdbeb3a99e938b7e71695f544a3f343c44505b666e7b86929fa6b0bbbdbdbdbdbcb2a89e938c7f726b60564c42382e23170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7b859198a2abb5c0c8d2d7cbbfb5aba29891857c859298a2abb5c0cbd7d7cbc0b5aba29891847b7e8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000000006111c26303b444f59626d75818e95a0a9b3bec7d2dde0dfd8dfe0dcd1c6bdb2a99f948d80736c61574e433a2f251b110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1c28333f4a545f6a73808d96a0acb7c1cbd6e2e2d5c9bdb2a99f93887d6f675c51453c2f261c11060000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36424d57616d7a849198a2aebbc0c7cfd6cec6bfbab3adaba7aaa29f9e9e9fa4acaaacb2b9bdc4cdd4dce6e0d5c9bdb2a89f9285796d6053473b31251a0e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313c454d535560606060606060606060606060575550483e33281d1105000915212c37424b545a5c6060606060606060606060605d5b554d43382d22160a00000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb2b2b2b2b2b2a89b8e81838e939ea0a8acb2b6b8bcbcbebdbcc0bbb9b6b4aeaaa29f9590847b6e685e52473e30261c110600000000000005121e2a36424d57616e7b86929fa8b2bcc6d0c7bdb3aaa299938c847e79767271706f6f7072767a7f858d929fa2aab4bdc7d1dce8e0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000020f1a26313c46505a606d79839097a2adb0b0b0b0b0b0b0ada1978f82756d62574d42382e333f4a545f69717e8b949ea9b3b0b0b0b0b0b0afa59f92877d6f685e544a3f34281c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cbbeb1a4988b7e839097a1aab4bdc7d2d2c8c0bbaea39992867c707c869299a3afbbbfc9d2d1c7bdb4aaa19690837e8b98a4b1becbd7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000000000a151e29323d46515b606d79839097a2acb6c0ccd8e4ece5ece3d7cbbfb5aba1969082786d605a50453c31281d130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e1a242b3844505b666f7c87929fa8b2bdc9d2dde8e6dacfc4bbafa49a9184796d60584e42382d22170b030000000000000000000000000000000000000000000000000000000000000000000000020e1a26313a46535e6974808d96a0aab4bfcbd1d6ccc4bcb4aea9a19e9a9698929192939a999ea0a8adb2bbc2cad4dce5d9cec4baada2978b7e7164574d42362a1e12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2b37424d575f6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5045392d211408000c1925313d49545d65696c6c6c6c6c6c6c6c6c6c6c6c6a665f554a3e32261a0e00000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919ea6a6a6a6a6a6a6a6998d807a818b91969ea0a8aaacb1b0b1b1b0b6afacaaaaa39f98928c837a6e695e564c41352c1e140a000000000000000714212d3a46535e6974818d98a3aebac4cecbc0b5aba29892877f79716d6766646362636465676d7279808a9298a2abb5c0cbd7e2ebd3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e58616c74818d95a0a9a3a3a3a3a3a3a3a3a49e91857a6d615a50453c30262d38424d57626c75828f97a1a3a3a3a3a3a3a3a3a3a39991857a6e665c5044382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2ded1c5b8ab9e92859095a0a9b3bcc6d0d3cac0b6ada39f92877d706a707d87929fa4aeb7c1cad3cfc6bcb2a9a0959085929eabb8c5d1ded2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000000000030c17202b343f45515d676e7b85929aa4afbbc8d4e0edf2ede0d3c7bbaea39991847a6e665c50483e332a1f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a36424d57606c78839099a3afbac4cedbe4eeebe0d8ccc0b6aca0968c80736a5f544a3f33281f1409000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d57616e7b86929fa8b2bcc6d0d6ccc4bab2aaa39f97928d898685848586898c91969ea1a9b0b8c2cad4dee0d6cabeb3a99d908376695e53463a2d211406000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f697679797979797979797979797979716c6155493d3023170a000f1b2834414d5a6570757979797979797979797979797771665b4f4236291c1000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b788491999999999999999999998d8073747e848b9196999da0a7a3a4a4a3aca49f9d9998928d857f796d685e574d443a30231a0c02000000000000000815212e3b4854616e7b86929faab4bfccd4c7bbafa39992867d726d66605d555756555657555d60676d737e869299a3afbbc2d0d9e4d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f6a717e8a92979797979797979797979797928a7d70685e52483f332a1e262f3b45505a616e7a8592979797979797979797979797979082786d60544a3f34281c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfd2c6b9ada2979297a0a7b1bbc4ced4cbc1b8aea49c918b7e716b616b717f8b929ca5afb8c2cbd5cec4bbb1a7a0979297a2adb9c6d2dfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000000000050e19222935404b555f69707d88939facb9c6d2dfecf8ecdfd2c5b9ac9f92877d6f685e544a3f362c21180d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323a46535e69727f8b959fabb5c0ccd5e0e8e8ebe8ddd2c7beb2a89f92877c6f665b50443b31251a0e05000000000000000000000000000000000000000000000000000000000000000000000714212d3a46535f6974818e99a3aebac4ced7cec4bab2a8a198928c85807d7a787778797c7f848b91969fa6b0b8c2ccd5e0dbd0c5b7ab9f95877b6e6154483b2d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b868686868686868686868686867e7164574a3e3124170b000f1c2936424f5c69758286868686868686868686868683776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b78848c8c8c8c8c8c8c8c8c8c8c8c80736c71787e84898c90959596979796959a93908d8986807a736d675e564d453b32281e11080000000000000005111d2a36414c5666737f8c99a3aebcc6d0c8bcb1a79f92877d706b605c54514b4a4948494a4b51555d606c717d87929fa6b0bec7d2ddd3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b858a8a8a8a8a8a8a8a8a8a8a8a8a8a8a80746b61564c41362d21181d29333f46525e68707e898a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8073665c5044382c1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfd6cabeb3a9a29ea2a9b1b9c3cdd5ccc2b9b0a69d928c7f726c6159626d73808c939da6b0b9c3ccd6cdc3b9b1a9a29ea2a9b3becad6dfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000000000000071018242f39434d57616b75818e9ba8b4c1cedbe7f3e6dacdc0b3a79a8d80746b60564c42382e241a0f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d1924303a44505a616e7b86929fa7b1bdc7d1dededcdbdedfe4d9d0c3bbaea3999083786c60574d42362a20160c020000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b86929fabb4bfccd6d0c6bcb2a8a19691867f7a74706d676b666d6f73787e8490949fa6b0bac3ced9e1d3c7bcb1a7988b7e726553493f33271b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8893939393939393939393938a7d7164574a3e3124170b000f1c2936424f5c6975828f939393939393939393939083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e110b0a080500000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f7f7f7f7f7f7f7f7f7f7f7f7f7d7063666d71787c80838788898b8a8988878683807d79746d68605d554c443b332920160c00000000000000000713202d3946525e687683909dabb5bfced1c5b8aca0958c7f726b6159514b45403e3d3c3c3d40454b515a616b727f8b949facb6c0ccd8d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d796d60594f443a30241b0f18212a36414c56616c707d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7e786d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfdbcfc5bbb3adabadb3bbc3cbd5cdc3bab1a79e938d80746d635a505a636e74818e949fa7b1bac4cdd5cbc3bbb3adabadb3bbc5cfdbdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000000000040d182128343f4a545e686f7c86929facb9c5d2dfecf8ebded2c5b8ab9f92857b6e675d51453f342b20170c030000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2935414c56616c75828f98a2aeb9c3cfd9d7d2cfced1d2d5dad7cbbfb5ab9f958b7f72695e53463e32281e1308000000000000000000000000000000000000000000000000000000000000000005111e2a36414c566673808c99a3afbdc6d1d6cabfb4aaa19691847c736d6763605d555c6062666d717a828f949fa8b2bdc8d4ded8cdc2b5a89c8f8275655b5044372b1f12050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b88959f9f9f9f9f9f9f9f9f978a7d7164574a3e3124170b000f1c2936424f5c6975828f9c9f9f9f9f9f9f9f9f9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000000000000040a0f1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e19181715110c060000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4a56626d72737373737373737373737373706b605c60666c6f73777a7b7d7e7e7d7c7b7a7773706d67615e56514b433a322921170e0400000000000000000714212e3a4754616d7a86939facb9c6d1c9beb3a99d9183786c60594f454039352f302f302f353940455059626d76828f9aa4afbbc8d4d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b47535f6a6f707070707070707070707070707070706d675d51473e32291e12090f1925303b44505a616b70707070707070707070707070707070706d665c5044382c1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfe1d7cdc5beb9b8b9bec5cdd5cec5bbb2a89f958f81786d605b5148525c606d78828f95a0a8b2bbc5ced5cdc5beb9b8b9bec5cdd7e1dfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000000000010c161f2a333c44505c666d7a849198a3aebac7d3e0ecf0ecdfd3c6baaea2989083796d605b51473d32291e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313946525d68717e8a949eaab4bfcbd4d3ccc6c3c1c4c5c9cfd6d1c6bdb1a79f92867b6e615a50443a3025190d04000000000000000000000000000000000000000000000000000000000000000714202d3946525e687783909dabb5c0cfd8d3c6baaea29891847a6f6a605d5553514b5153545c60686e78828f96a0acb9c2cdd8dfd2c5b8ac9f9285796c605346392d2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1acacacacacacaca4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8acacacacacacaa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000070f161b1f26323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b26262524211d17100900000000000000000000000000000000000000000000000000000000000000000000000916222e3a46515b626566666666666666666666666663605950545b606266676d6e707171706f6e6d676663605c55524c454039312920170f050000000000000000000b1824313e4b5764717e8a99a4afbbc7d2c6b9ada1978a7e71665b50473e342e292423222324292f353e47515b626f7c87939facb9c6d2d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e585f6264646464646464646464646464646464605d554b40352c20170c0008141e29323e485059606364646464646464646464646464646464605c544a3f34281c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfe9dfd7cfcac6c5c6cacfd7cfc6bcb3a9a0969083796d665c50494044505c666d79839096a0a9b3bcc6d0d7cfcac6c5c6cacfd7dfe9dfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000000007131d28313c45505a606d78828f96a1aab4bfcbd7e3ebe4ece2d6cabeb3aaa0958e81756d62594f443b30261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000020b18232f39434f59616d7a85929ea6b0bcc6d0d3c9c1bab6b5b8b9bdc4ccd6cfc2baaea2988f82766c61564c41362a1f160c010000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7a87939facb9c6d1d5c9beb3a99f92867c6f685f58514b47454044464a50565e666d7a84919ea6b0bcc7d3dfd3c6baaea298887b6e6155483b2e2215080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aeb9b9b9b9b9b0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5b9b9b9b9b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000007101921272c2f323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e51443833333331302d28221b12090000000000000000000000000000000000000000000000000000000000000000000006121e29343f4951565859595959595959595959595956544f444a505356555d6062636464636261605c555653514b46413a352f271f170e05000000000000000000020e1b2835414e5b6874818e9babb5c0ccd1c5b8ab9e9285786c60544a3f3528231d18161516181d2429353f47545f6a75828f9ca8b5c2cfdac6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26323c464e53555757575757575757575757575757575753514b43392f231a0e0500020d17202c363e474f54565757575757575757575757575757575753504a42382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfece9e1dbd6d2d1d2d6dbd1c7bdb4aaa19791847a6d675d544a3f343f4a545d676e7a849197a1aab4bdc7d2dbd6d2d1d2d6dbe1e9ebdfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000000071118242f3a434e57616c73808d949fa8b2bcc6d1dcdfded7dfe0dbd0c5bcb1a79e938b7f726b60564c42382e23170f0600000000000000000000000000000000000000000000000000000000000000000000000000000a141d2934404b55606b74818e97a1adb8c1ced7cdc1b7afaaa8abadb2bac4cfd6cabfb4aa9e948a7e71685e52463d31281d12070000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e8b9aa4afbbc8d4d2c6b9ada1978c7f736a5f564e45413a3935383a3f444c545d68707d8a949fabb7c4d0ddd6cabfb4aa978a7d7064574a3d3124170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc6c6c6bdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2c6c6c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000000040f19232b32383b3c404c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144404040403e3d39342d241b1006000000000000000000000000000000000000000000000000000000000000000000010d18232d373f464a4c4c4c4c4c4c4c4c4c4c4c4c4c4948443d3f4446494c51545556585756555453514b4a47454039363029241d150d050000000000000000000003101d2a3643505d697683909ca9b6c3d2cec1b5a89b8e8175665b5042382d2318120c0709070d1218232b37434e5865717e8b98a9b3becad6c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a343c4347494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4745403931271d1108000000050e1a232c353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a46443f3830261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf3ece6e2dfdedfdbd7cbc0b5aba29892857b6e685e554b42382e38424b555e686e7b859298a2abb5c0ccd7dbdfdedfe2e6ecf3ebdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000050f19232935404b555f6a707e8a929ca6b0bac4cfd8d6d3d2cad2d3d7d7cec3b9afa59f92877d6f685e544a3f342821180d0400000000000000000000000000000000000000000000000000000000000000000000000006111c262f3845515c67707d89939da9b3becad3cfc5bbafa59e9b9ea1a8b2bdc9d5d0c6bcb0a69e92857a6d61594f43392f24180c0300000000000000000000000000000000000000000000000000000000020e1b2835414e5b6874818e9bacb6c0ccd8d1c5b8ab9e9285796d60584e443c352f2c292c2e343b424c56616b7683909ca9b6c3d0dbdbd0bfb2a5988c7f7265594c3f3226190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d2cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000a16212b353d4348494c4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e514c4c4c4c4c4b49453e362d22170c0000000000000000000000000000000000000000000000000000000000000000000007111b252d343a3e3f4040404040404040404040403d3c38333338393c414547484a4b4b4a49484745403d3a38342f2a251e18120b03000000000000000000000004101c2834404b556a7784919daab7c4d0cbbeb1a4988b7e7165544a3f2f261c1107000000000107111b26323c4754616e7a8797a1adb9c6d2c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18222a32373b3c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a38352f271f150b000000000008111a232b33383c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a38342e261e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8f7f2eeece5dcd2c9c0bbafa39992867c6f695f564c43393026303a434c565f696f7d869299a4afbbc0c9d3dce6eceef2f7f8ebdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000030c17212b353d45515d676e7c86929fa4aeb8c2ccd6d0cac6c5bdc5c7cbd1d5cbc1bbaea39991857a6e665c50443e332a1f160c0100000000000000000000000000000000000000000000000000000000000000000000000b17222d38424e58606d7984919ea5afbbc5cfd6cabeb3a99e938e9196a1adb9c1ced7cec2b9ada1978e81746b60554b4035291e150b0000000000000000000000000000000000000000000000000000000003101c2936434f5c6976828f9ca9b5c2d2ddcdc1b4a79a8e8174675d51463c322924201d1f2328303a444f5965727e8b98aab4bfcad6d9ccbfb3a6998c807366594d4033261a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000030f1b27323d474f545659595965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e595959595959585650483e34281d11050000000000000000000000000000000000000000000000000000000000000000000009131b23292e3132333333333333333333333333302f2c27282b2d2f35393a3b3d3e3e3d3c3b3a38342f2d2c29231d19130c070100000000000000000000000006131f2c3845515c677885929fabb8c5d2c9bcafa396897c706356493d2d23140a000000000000000a15202d3946525e687885929eabb8c5d1c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101820262b2e2f313131313131313131313131313131312d2c29241d150d0300000000000008111921272c2f30313131313131313131313131313131312d2c28231c150c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8fff9f0e6ddd3cac0b7ada49f92877d706a60574d443a31271e28313b444d57606b707e87939fa4aeb7c1cad4dde7f0fafff8ebdfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000b151e29333d47515b606d79839198a2aeb6c0cad4cec5bebab8b1b9babfc6cfd7cbbfb5aba1979082786d605a50463c31281d130700000000000000000000000000000000000000000000000000000000000000000000040f1c28333f4a545f6a73808d96a0acb7c0cdd6cfc7b9ada2978e8184919ea6b0bcc6d0d5c9beb3a99e93897d70675d51453d30271c120700000000000000000000000000000000000000000000000000000003101c28343f4a546a7784909daab7c3d0d6c9bdb0a3968a7d7063554b40342a2018131012171e28323e4754616e7b8798a2aebac6d3dacdc0b3a79a8d8074675a4d4134271a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2ccbfb2a5998c7f7266594c3f3326190600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000007131f2c38434f59606366666666727f8c98a5b2bfcbd1c4b7aa9e9184776b6666666666666664615a5045392d21150800000000000000000000000000000000000000000000000000000000000000000000010911181e2225252626262626262626262626262322201c1c1f2024292c2d2f303131302f2e2d2c2923201f1c18120d080200000000000000000000000000000713202d3a4653606d798697a2adbac6d3c8bbaea295887b6f6255483c2f2215090000000000000005111e2a36414c566a7784909daab7c3d0c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e151b1f212224242424242424242424242424242424201f1d18120b030000000000000000080f161c20222324242424242424242424242424242424201f1c17110a0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8faf1e7ded4cbc1b8afa59c928b7e716b61584e453b32281f161f29323c454f59616c727f8b929ca5afb8c2cbd5dee8f1fbf8ebdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000007121d27303b454f59636d75818e95a0aab4bec8d1d0c5bcb4aeaba4acaeb4bdc6d1d1c6bdb2a99f948d80736c61584e433a2f241811070000000000000000000000000000000000000000000000000000000000000000040e1a242b3844505b666f7c87929fa8b2bdc9d2d1c7bdb1a79e92857a7e8a939eaab4bfcad6cfc5bbafa59e9184796d60584e42392e23180b02000000000000000000000000000000000000000000000000000006121f2c3844505c667885929eabb8c5d1d4c7bbaea194887b6e6155483b2f22180e0704060c16202d3a46525e697985929facb8c5d2dacdc0b3a79a8d8074675a4d4134271a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2ccc0b3a6998d8073665a4d402d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000915222f3b4854606b6f73737373737f8c98a5b2bfcbd1c4b7aa9e9184777373737373737373716c6156493d3024170a000000000000000000000000000000000000000000000000000000000000000000000000070d12161819191919191919191919191919161613100f1213191d202122232524232221201f1c181413100c0701000000000000000000000000000000000814212e3b4754616e7a8794a9b3becad6c7baaea194877b6e6154483b2e21150800000000000000020e19253043505c6976838f9ca9b6c2cfc6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f131516171717171717171717171717171717171413100c070100000000000000000000050b10131617171717171717171717171717171717171312100c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8f2e9dfd6ccc3b9b0a69d938c7f736c62594f463c332920160d17202a333d46505a626d73808d939ea6b0b9c3ccd6dfe9f3f8ebdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000071018232e39424d57606b727f8c939ea7b1bcc5d0d6cabeb4aaa29f979fa3abb4bfcbd7cfc4bbb0a69d928a7e716a5f554b40352923190e05000000000000000000000000000000000000000000000000000000000000020c16202a36424d57606c78839099a3afbac3ced7cbc0b5ab9f958b7e7175828f98a2aebac3d0d7cdc1b9aca1968d80736a60544a4034281d140a00000000000000000000000000000000000000000000000000000713202d3a4653606d7986939facb9c6d2d3c6b9ada093867a6d6053473a2d20140700000005111e2a36424d576a7784919daab7c4d0d9ccbfb2a6998c7f7366594c403326190d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cdc1b4a79a8e817467544a3f33281c0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000091623303c4956636f7c7f7f7f7f7f828f9ca9b5c2cfd1c5b8ab9e92857f7f7f7f7f7f7f7f7f7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000106090b0c0d0d0d0d0d0d0d0d0d0d0d0d0a0907040306080d111314151718181716151413100c070604000000000000000000000000000000000000000714202d3a4753606d7a8698a2aebac6d3c8bbaea295887b6f6255483c2f2215060000000000000004111d2935414c566a7784909daab7c3d0c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030608090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0706040000000000000000000000000000000407090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf3eae0d7cdc4bab1a79e948e81746d635a50473e342b21180e050e18212b343e48515b606c77818e949fa7b1bac4cdd7e1eaf4ebdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000040e19222834404b545e69707d87929fa5afb9c3ced5cbc3baaea298928a9299a3aebac1ccd6cdc2b8aea49f92867c6e675d51453f352b20170c03000000000000000000000000000000000000000000000000000000000008131e28323a46535e69727f8b959fabb5c0ccd5d3c7bbafa3999083776c6e7b86929fa7b1bdc7d2d5c9bdb2a89f93877c6f665c51443c2f261b1106000000000000000000000000000000000000000000000000000713202d3a4653606d798698a3aebac7d3d3c6b9ada093867a6d6053473a2d20140700000005121e2a36424d576a7784919daab7c4d0d7cbbeb1a4988b7e7165584b3e3225180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cfc3b6a99c908376665b5044382b1f1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001010101010101010105121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c01010101010101010100000000000000000000000d192633404c5966737f8c8c8c8c8c8f949eaab7c3d0d2c6b9ada297928c8c8c8c8c8c8c8c8c8276695d5043362a1d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040607080a0b0b0a0908070604000000000000000000000000000000000000000000000006131f2c3945515d677985929facb8c5d2c9bcafa396897c706356493d2e23170c000000000000000713202c3945525d687885929eabb8c5d1c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecebe1d8cec5bbb2a89f958f82786d605b52483f352c22190f0600060f19222c363f44505b656d78828f95a0a8b2bbc5cfd8e2ebebdfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000020b16202a343c45515c666e7b859299a3afb7c1ccd5cec3b9aea49f92867e87929fa5afbac4cfd4cac0baaea2989183796d605b51473d32291e150b00000000000000000000000000000000000000000000000000000000030d1924303a44505a616e7b86929fa7b1bdc7d1d5c9bdb2a89f92877c6f6569727f8c95a0abb5c0ccd7cec4bbafa4999083786d60574d41382d22170b0200000000000000000000000000000000000000000000000006121f2b3844505c667985929facb8c5d2d4c7bbaea194887b6e6155483b2f24180f0804060c15202d3a46525e697985929facb8c5d2d7cbbfb5ab978a7d7064574a3d3124170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d2c5b8ac9f9285796c6053463a3025190f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070d0d0d0d0d0d0d0d0d0d121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190d0d0d0d0d0d0d0d0d0d0a090704000000000000000d192633404c5966737f8c999999999c9ea6b0bbc7d3d6cabeb3a9a29e9999999999999999908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b556b7784919eaab7c4d1cbbeb1a4988b7e7165544a3f34281c12070000000000061018212d3a4754606d7a86939facb9c6d2c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000105070708090909090808060603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080c0f1212131313131313131313131313130b0a0805000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfece3d9cfc6bcb3a9a0969083796d665c504940362d231a100700000007101a2327333f49535c666d79839096a1a9b3bcc6d0d9e3ebdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000a141d28323c46505a606d78839097a1abb5c0c9d3d0c5bcb1a79d928a7e727f8b939ea8b2bdc6d1d6cabfb4aaa0958e81756d62594f443b30271c12070000000000000000000000000000000000000000000000000000010b151f2935414c56616c75828f98a2aeb9c2cfd8cec6b9ada1968d80736a5f606d78839099a4afbbc4cfd7ccc0b5aba0958c7f72695f53493f33271f140900000000000000000000000000000000000000000000000003101c28343f4a5f6b7885929eabb8c5d1d6c9bdb0a3968a7d7063554b4035292119131012171e28323b4854616e7b8798a2aebac6d3d3c7bbaea399897c6f6256493c2f2316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d3c6baaea298897c6f63564c41362a2118120c07050200000000000000000000000000000000000000000000000000000000000000000000000000000000070c1013131a1a1a1a1a1a1a1a1a1a1a1e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f32251a1a1a1a1a1a1a1a1a1a1a171614100b0500000000000d192633404c5966737f8c99a6a6a6a9aab0b8c2ccd8dbcfc5bbb3adaba6a6a6a6a6a6a69c908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000000000000000105070709090a0b0a09080706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f43505d697683909ca9b6c3cfcec1b5a89b8e8275665c5044392e2318120b0607080a1117222a36424d5764717e8a9aa4afbbc8d4c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000003060709080d1113141516161616151413120f0b060706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13181c1e1f20202020202020202020202020181715110c0600000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfe8dcd1c7bdb4aaa19791847a6d675d544a3f372e241b11080000000000081117222d38414a545d676e7b849197a2aab4bdc7d2dde8dfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000006111c262f3a444e58626c74818d959fa9b3bdc7d1d6cabeb4aaa0958d80746d75818f96a0abb4bfcbd7d0c5bcb1a89e938c7f726b60564d42392e231810060000000000000000000000000000000000000000000000000007121d27313945525d68717e8a949eaab4bfcbd4d0c6bcb0a69e9184796d60585c666f7c87939fa9b2bdc9d5d2c7bdb1a79f92867b6e655b50443b3025190d040000000000000000000000000000000000000000000000000b17232e44505d6a7783909daab6c3d0dacdc1b4a79a8e8174675d51453c3329241f1d1f2328303a44505a65727e8b98aab4bfcad6d2c5b9ac9f92867a6d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d6cabfb4aa9a8d8074685e52463d3328231c1814110e090a090704000000000000000000000000000000000000000000000000000000000000000000030b12181c1f202727272727272727272727272b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f322727272727272727272727272323201c161008000000000d192633404c5966737f8c99a6b2b2b5b7bbc2cad3dee1d7cdc5beb9b8b2b2b2b2b2b2a99c908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000000040607080d111314161617171716151413100c0707050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071c2835424f5b6875828e9ba8b5c1ced2c5b8ab9f9285796d60544a403428231c17151415141b2227343c46535f6975818e9bacb6c0ccd8c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000104060c1012131619191e202122222323222221201f1c17161413100c0705010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710181e24282b2c2d2d2d2d2d2d2d2d2d2d2d2d2d2524211d171009000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfdbd7cbc0b5aba29892857b6e685e554b42382e251c12090000000000000006111b262f39424c555e696e7c859298a3abb5c0ccd7dbdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000060f17222d38424c565f6a717e8b929da7b1bbc5cfd5cbc3baaea2989083796d606d7a849199a3aebac1ccd6cec3baafa59f92877d6f695e544a40342822180d040000000000000000000000000000000000000000000000020b18232f39434f59606d7a85919ea6b0bcc5d0d6cabfb4aa9e948a7d70675d5154606a74808d96a1adb9c1ced7d0c3baaea3989082776c60564d42362a20160c010000000000000000000000000000000000000000000000061b2835424e5b6875818e9ba8b4c1d0dbd1c5b8ab9e92857a6d60584e453d352f2c292c2e343b424c56616c7683909da9b6c3d0dbcfc3b6a99c908376675d5145392c2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dbd0c5b8ab9f92857a6d61594f453d342e2923201e1a1c161613100b05000000000000000000000000000000000000000000000000000000000000030c151d23282c2d343434343434343434343434343845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f34343434343434343434343434302f2c27211a11080000000d192633404c5966737f8c99a6b2bfc2c3c7ccd3dce5e9dfd7cfcac6c5bfbfbfbfbfb6a99c908376695d5043362a1d1000000000000000000000000000000000000000000000000000000003070c10131417191d202122232424242322201f1c181514120e090501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323f4b5865727e8b98a7b1bcc8d3c6baada2978b7e71665c51443e342e282322212123262d333d464f59616e7b86929facb9c5d2ddc6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000001070d1113171c1f202326252a2d2e2e2f30302f2f2e2d2b282223201f1d1813110d08030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000610192229303437393939393939393939393939393931302d29221b12090000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfd2c9c1bbafa39992867c6f695f564c433930261c130a0000000000000000000a141d27303a434d565f6a6f7d869299a4afbbc0c9d3dfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000040d182128333f4a545e686f7c86929fa4aeb9c2cdd6cec3b9aea49f92867b6e675d686f7c87929fa5afbac4cfd5ccc1bbafa39991857b6e665c51443e342a1f160c01000000000000000000000000000000000000000000000a141d2934404b55606b74818e97a1adb8c1ced7d0c7baaea2988f82756c61554b4e58606d7a84919ea6b0bcc6d0d7cbbfb4aa9f948b7e71695e52463e32281e130800000000000000000000000000000000000000000000000c1926333f4c5966727f8c99a9b3becad6d2c6b9ada1978c80736a5f574e45413a3835383a3f444d545e68707d8a959fabb7c4d1d5c9beb3a9998c7f7366554b4035291d11040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfd3c6baaea2988d80736b60574e444039342f2d2a25292322201c160f0700000000000000000000000000000000000000000000000000000000000b151e272e34383a404040404040404040404040404045515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c40404040404040404040404040403d3c38332c231a100500000d192633404c5966737f8c99a6b2bfcccfd2d6dde4edf1e8e1dad5d2d1cacacacac3b6a99c908376695d5043362a1d1000000000000000000000000000000000000000000000000000060b1012181d1f202325292d2e2f30303130302f2d2c292322211e1a14110d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8795a0acb8c7d2cabeb3a99e9184796d605a50444039342e2e2d2e2f2f383f444e58616b75818e99a3aebac7d3d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000040a0f13181d2023282c2d2f333036393a3b3c3c3c3c3b3b3938332d302d2c2924201e19130f0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18222b343b404445464646464646464646464646463e3d39342d241b100600000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d4cac1b7aea49f92877d706a60574d443a31281e150a01000000000000000000020b151e28313b444e58606b717e87939fa4aeb7c1cad4d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000010c161f2a333c44505b666d7a849198a3aeb7c0cbd4d0c5bcb1a79d928a7e71695f56606a727f8b939ea8b2bdc6d1d7cbc0b5aba1979082786d605a50463c31281e130800000000000000000000000000000000000000000006111c262f3845515c67707d89939da9b3becad3d2c7beb1a79f92867b6e615a504345515d67717e8a949eaab4bfcad6d1c6bcb0a69f92857b6e615a50443a2f24190d03000000000000000000000000000000000000000000000916232f3c4956626f7c8997a2adbac6d3d6cabeb3a99f92867c6f696058524c47454044464a50565e666d7a84919ea7b1bcc7d3d2c6b9ada197897c6f6256493c2f24180d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfd6cabeb4aa9f93877d6f696058514a45403b3a363036302f2c272119110700000000000000000000000000000000000000000000000000000007121d2730394045464d4d4d4d4d4d4d4d4d4d4d4d4d4d4d515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a48443d352c21160b00000d192633404c5966737f8c99a6b2bdc1c2c6cbd2dbe4e8dfd6cfc9c6c4bdbdbdbdbdb6a99c908376695d5043362a1d100000000000000000000000000000000000000000000001070c11171c1f24292c2d303035393a3c3c3d3e3d3c3b3a38342f2e2d2a26201e19140f0a030000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a46535e697784909dacb6c0ccd0c5b9aca0968c80736c615a514a443f3c3b3a3b3c3e41495058606a707d88939fabb4bfcbd7d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000050b10151b1d24292c2e34383a3c3f424146474849494949484746443f403d3a38352f2d2a251f1b17110c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e29343d464c5052535353535353535353535353534b49453e362d22170c00000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2cbc2b8afa59c928b7f726b61584e453c32291f160c030000000000000000000000030c161f29323c464f59616c727f8b929da5afb8c2cbd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000007121d28313c45505a606c78828f96a1aab4bfc9d2d6cabeb4aaa0958d80746c61574e58626d75818f96a0abb4bfcbd7d1c7bdb3a99f948d80746c61584e433a2f2419110700000000000000000000000000000000000000000b17222d38424e58606d7984919ea5afbbc4cfd8ccc0b6aca0958c7f72695e53473e414c55616c75828f98a2aebac3d0d8cfc2baada2978f82756c61564c4135291f150b010000000000000000000000000000000000000000000713202d3a4653606d7985929fabb8c2d0d9cfc5baaea29891847b6f6a605d5653514b5053545c60686e78829096a0acb9c2cdd7cbbfb4ab9e9185796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfdbd0c5bbafa49991857b6f6a605c54514b47464243433d3c38332b23190f0500000000000000000000000000000000000000000000000000000c18232e39424b51535a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5e6b7884919eabb7c4d1d8cbbeb2a5988b7f72655a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a56554f473d33271c1004000d192633404c5966737f8c99a6b0b0b4b6bac1c9d2dde1d6cdc4beb9b8b0b0b0b0b0b0a99c908376695d5043362a1d10000000000000000000000000000000000000000000060b12181c23282b2f35383a3d4041464749494a4a4a49484745403f3b3a36312d2a251e1b150e09030000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d576773808d9aa4afbbc7d2c9bdb2a89f93887e706c605c54504a49484748494a4f535b606a6f7c86929aa4afbdc6d1dcd3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000030a0f161c20272b2f35393a3f4446494c4f4c52545555565655555453504a4d494745403a3936302b27221b17110a0300000000000000000000000000000000000000000000000000000000000000000000000000000000000c1824303b464f575d5f60606060606060606060606060585650483e34291d1105000000000000000000000000000000000013202c3946535f6c7986929facb9c5ccc3b9b0a69d938c80736d62594f463d332a20170d0400000000000000000000000000040d17202a343d47505a626d73808d939ea6b0b9c3ccc5b8ac9f9285796c5f5246392c1f1300000000000000000000071118242f39434d57616c73808d949fa8b2bcc6d0d5cbc3baaea2989083796d605a5046515b606d7a849199a3aebac1ccd6cfc4bbb0a69d928a7e716a5f554c41352923190f05000000000000000000000000000000000000040f1c28333f4a545f6a73808d96a0acb7c0cdd6d4c8bbafa49a9083786d60574d42353a43505a616e7b86929fa7b1bdc7d2d6cabeb3a99e938a7e70685d52453d31271d120700000000000000000000000000000000000000000006121f2b3844505c6674818e9aa6b0bdc7d2d6cabfb4aaa19691847c736d6863605d555c6062666d717a8290949fa8b2bdcbd4d3c7baaea3998c7f73665c5044382b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfe2d7ccc0b5aba19791847c736d66605c5554524d4f4f4948443d352b21160b0000000000000000000000000000000000000000000000000004101c2834404b545c6067676767676767676767676767676767676b7884919eabb7c4d1d8cbbeb2a5988b7f7267676767676767676767676767676767676361594f44382c201407000d192633404c5966737f8c99a3a3a3a7a9afb7c1cbd6dacfc4bbb3adaba3a3a3a3a3a3a39c908376695d5043362a1d1000000000000000000000000000000000000000020a11171d24292e34383a4045474a4d4c52545556575757565553514b4c4846423b3936302b26201a140d05000000000000000000000000000000000000000000000000000000000000000000000000020e1a25313c4955626f7c87939fabb5c0cccec4bbafa49a92867e736d66605c545655545456575961656c727c849198a2acb6c0cfd8e2d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000001070c151a21272c32373a4045474a505356595b565e6161626363626261605b54595653514b4746413a37332d28231c150c08020000000000000000000000000000000000000000000000000000000000000000000000000000030f1c2834404c5761696c6c6c6c6c6c6c6c6c6c6c6c6c6c64625a5045392d211508000000000000000000000000000000000013202c3946535f6c7986929facb9c5c4bab1a79f948e81746e635b51473e342b21180e05000000000000000000000000000000050e18222b353e48515b606c77818e949fa7b1bac4c5b8ac9f9285796c5f5246392c1f13000000000000000000050e19232935404b555f69707e88939fa6b0bac4ced7cec3b9aea49f92867b6e675c51483f45525d686f7c87929fa5afbac4cfd6cdc2b8aea49f92867c6f675d51453f352b21170c0300000000000000000000000000000000040e1a242b3844505b666f7c87929fa8b2bdc9d2d5c9beb3a99f93887c6f665c50453b31313e46535e69727f8c95a0abb5c0ccd7d0c5bcafa59e91847a6d60594f43392f23180c02000000000000000000000000000000000000000003101c28343f4a54626f7c89949fabb5c0ccd7d0c6bcb2a9a1969186807a74706d676b666d6f73797e8590949fa6b0bac4ced6cabeb4aa9f92867a6e61544a3f34281c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfe8ddd2c7bdb3a9a19691878078716d6764615e575c5c56544f473d33271c100400000000000000000000000000000000000000000000000006131f2c3845515c666d7373737373737373737373737373737373737884919eabb7c4d1d8cbbeb2a5988b7f737373737373737373737373737373737373706b6155483c2f231609000d192633404c5966737f8c979797979b9da5afbac6d2d5c9beb3a9a19e9797979797979797908376695d5043362a1d10000000000000000000000000000000000000060c141c23282f35383f44464b5153565a565e6162636364636362605c555855534d4746413b37312a251f170f090200000000000000000000000000000000000000000000000000000000000000000000000915212e3b47535f6a75828e99a4afbbc5d0ccc0b6aca29892887f79716d6664636160616264676b70787e869196a1aab4bec7d2e1ead3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000030b121820262b33383d43474b5153545c606266686a686d6e6f6f6f6f6e6e6c66686663605d5554524c46443f38342e261e19140d050000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3744505d69737879797979797979797979797979716c6256493d3024170a000000000000000000000000000000000013202c3946535f6c7986929facb9c5bbb2a8a0958f82786d605c52483f352c22190f060000000000000000000000000000000000060f19232c363f44505b656d79828f95a0a8b2bcc5b8ac9f9285796c5f5246392c1f130000000000000000030c17202b353d45515d676e7b86929aa4afb8c2ccd6d0c5bcb1a79d928a7e71695f554b4035414c56606a727f8b939ea8b2bdc6d1d4cbc0baaea29891847a6d605b51473d33291e150b000000000000000000000000000000020c16202a36424d57606c78839099a3aebac3ced8cfc6b9ada1978e81746b60544a3f33292a36424d57606d78839099a4afbbc4cfd7cec1b9ada1978e81746b60554b4034291e140a0000000000000000000000000000000000000000000b17232e384754606a76828f99a4afbbc5cfd8cec4bbb2a8a198928c85807d7a787778797c80848b91979fa6b0b8c2ccd5ccc3baaea2988e8174685e5242382e23170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfebe3d9d0c4bbb2a8a199928c837e7974716e696a69696360594f44382c2013070000000000000000000000000000000000000000000000000713202d3a4653606d798080808080808080808080808080808080808085929fabb8c5d2dccfc2b6a99c8f828080808080808080808080808080808080807d7063564a3d3023170a000d192633404c5966737f8a8a8a8a8a8e939da9b6c2cfd2c6b9ada197918a8a8a8a8a8a8a8a8a8276695d5043362a1d100000000000000000000000000000000000060f181e262e343940454a5053555d60636769686d6f6f7071706f6e6d676865615f5754524c47433c3630292119140d050000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e58626f7c87939faab4bec7d2c7beb4aaa29a938c847e7975716f6e6d6e6f7174787d838b9298a1a9b2bcc5d0d9e4e0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000060d151d242931373d44484e54555d6064666d6f727577797a7b7c7c7c7c7b7a79777573706d6765615e56535049443f38302a251f170e0600000000000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885868686868686868686868686867e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facb9bcb3a9a1969083796d665c514a40362d231a10070000000000000000000000000000000000000007111a2427333f49535c676d7a839096a1a9b3bdb8ac9f9285796c5f5246392c1f1300000000000000000b151e29333d47515b606d79839098a2acb6c0cad4d6cabeb4aaa0958d80746c61574d43392f3a444e58626d75818f96a0abb4bfcbd7d6cabfb4aaa0968f81756d63594f453b30271d1207000000000000000000000000000008131e28323a46525e69727f8b959fabb5bfccd5d1c6bdb0a69e92857a6d61594f42382e2125313b44505c666f7c87939fa9b2bec9d5d5c9beb2a99f93887d70675c51453c30261c1106000000000000000000000000000000000000000006111c2b38434e58626f7c87939fa9b3bcc6d1d6cdc4bab2aaa39f97928d898685848586898c91969ea1a9b0b9c2cad4ccc3bab0a69f92867b6e61564c4130261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7986929facb8c5d2dfebebe2d6cdc4bab2aba39f95908b85807d7b78777676706b6054483c2f2216090000000000000000000000000000000000000000000000000714202d3a4753606d79868d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d9298a2aebac6d3ddd0c4b7ab9f948f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8c807366594d4033261a0d000815222f3b4855626e7b7d7d7d7d7d818e9ba7b4c1ced1c4b8ab9e91857d7d7d7d7d7d7d7d7d7c6f6356493c30231609000000000000000000000000000000020a1117212a30383f444b51545c6063676d707376787a7c7c7d7d7d7c7b7a7775726e6966615e56534e46423b332a251f170e07000000000000000000000000000000000000000000000000000000000000000000030f1b26323c47535f6a75818e98a2acb6c0ccd0c6bcb4aca49f96918b85817e7c7b7a7b7c7d81848a90959fa3aab2bbc4ced7e2ebe0d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000610181f272f353c43474f55586062676d7175797c7f8283858788888989888887858482807c7976726d6863605b53504a423d3630292017110a030000000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c78859293939393939393939393938b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facb9b4aaa29791847a6e675d544a40382e241b1108000000000000000000000000000000000000000000081217222d38414b555d686e7b849197a2abb4b8ac9f9285796c5f5246392c1f130000000000000007121d27303b454f59626d75818e95a0aab3bec7d2d5cbc3baaea2989083796d605a50453c3128323d46515b606d7a849199a3aebac1ccd6d0c6bcb2a89e938c7f726b60574d42392e23181006000000000000000000000000030c1924303a44505a616e7b86929fa7b1bdc6d1d7cbbfb5ab9f948b7e71685d52473d30261c1f28343f4a54606a74808d97a1adb9c1ced8cfc4bbafa49a9184796d60584e42382e23170b0300000000000000000000000000000000000000000f1b27323d47535f6a74818d97a1aab4bfc7cfd6ccc4bcb4aea9a29e9a9697929192939a999ea0a8adb3bbc2cbd7ccc4bab1a89f948b7e72695e53443b301e140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfe4dcd6d1ceccc4bdb5afa7a09d97928d8a87858482827d706356493d3023160a0000000000000000000000000000000000000000000000000714202d3a4753606d7a86939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9fa2aab3becad6dfd3c7bbb0a69f9c9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a998c807366594d4033261a0d000814212e3a47535f696e70707070727f8c98a5b2bfcbd1c4b7aa9e91847770707070707070706f6b6054483b2f2215090000000000000000000000000000040c141c2328333c424a50555d60666d7075797d8083858788898a8a8a89888684827f7b77736e68625f58524d453f363029201810080000000000000000000000000000000000000000000000000000000000000000000a15202b37434e58616e7b86929aa4afbbc1cacec6beb6afa8a09e97928e8b89888787898a8e91969da0a7aeb4bcc4cdd6e0e9f4e0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000020a1117222a313940454e535961636a6f757a7e8285898c8e9092989495969695959892908f8c8986837f7a76706c65605c544f46413b3228231c150c0400000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929f9f9f9f9f9f9f9f9f9f978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facb5aba39892857c6e685e554b42392e261c1209000000000000000000000000000000000000000000000006111b262f39434c565e696f7c859299a3acb6ac9f9285796c5f5246392c1f13000000000000061018232e39424d57606b727f8c939ea7b1bcc5d0d7cec3b9aea49f92867b6e675c51483e332a202b343f45525d686f7c87929fa5afbac4cfd7cec3baafa59f92877d70695e544b40342822180d0400000000000000000000000b151e2935414c56616c75828f98a2aeb9c2cfd8d3c7bbaea3999082776c60564c41342b1e1517232e38424e58606d7a84919ea6b0bcc6d0d8ccc0b6aca0968d80736a5f544a3f34281f140900000000000000000000000000000000000000000a16202b37434e58616d7a859298a3aeb5bdc5cdd5cfc6bfbab3adaba7a9a29f9e9e9fa4acaaacb2b9bec4cdd1cbc1bab2a8a0958f82776c60574d4232291e0c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfdad2cbc5c2c0c5c7c0bbb1aca9a29f9a979792908f8a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6abaeb3bcc5d0dbe3d8cdc2b8b0aba9a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6998c807366594d4033261a0d0006121e2b37424d575f6264646465727f8c98a5b2bfcbd1c4b7aa9e9184776b646464646464646360594f44382c1f130700000000000000000000000000040d161e262e343f454d545c60676d72787d8286898d8f92979596969796969992918e8b88847f7a756f6a615e575146423b322a221a11080000000000000000000000000000000000000000000000000000000000000000040f1a26313c46535f69707d88939fa5afb8c1cad0c7c0bbb2aca9a29e9b979694939495979a9ea1a8acb1babfc6cfcccfd4dbe2e0d3c6baada093877a6d6054473a2d2114070000000000000000000000000000030b141b2227343c434b51585f626b70767c81868b8f9298999b9d9fa2aaa2a2a2a2aaa39f9d9b999992908b86827d78716d666059524d443e342e261e160d05000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabacacacacacacaca4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facafa49992867d6f6a5f564c433a30271c130a000000000000000000000000000000000000000000000000000a141d27303a444d575f6a707d87929aa4afac9f9285796c5f5246392c1f130000000000040e18222834404b545e69707d87929fa5afb9c3ced7d0c5bcb1a79d928a7e71695f554b40362c2119222935414c56606a727f8b939ea8b2bdc6d1d5ccc1bbafa39992857b6e665c51453e342a20160b0200000000000000000007121d27303945525d68717e8a949eaab4bfcbd4d5c9bdb2a89f92877c6e655b50443a3022190c111c26303d45525d68717e8a949eaab4bfcad6d2c7beb2a89f92877c6f665c50443b31261a0e0500000000000000000000000000000000000000040f1b26323c46525e686f7d86929fa3abb3bbc2c9cfd1cbc5beb9b8b3b3adabaaabacafb6b7b9bdc3c9cfcfc7c0bbb0a8a19691837a6d655b50453b3120170d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfd2c8c0b9b5b4b8b9bec3bcb8b3adaba7a9a19e9d978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b8babec5ced7e1e9ded4cac2bbb7b6b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a6998c807366594d4033261a0d00020e1a26313c454d535557575965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e57575757575756544f473d32271b0f03000000000000000000000000030c161f2830383f4451575f666d72797f848a8f92989a9c9ea1a9a2a3a4a3aba39f9d9b9896918c86817c746e69625b524d443c342c231a110800000000000000000000000000000000000000000000000000000000000000000a15202a36424d57616c737f8c939ea6afbabfc6ccccc4bdb9b3adaba8a4a2a1a0a1a2a4a7abadb2b8bcc3c4c3bec0c3c9d0d9e2d3c6baada093877a6d6054473a2d21140700000000000000000000000000030c151d262d333f464e555d606a6e767d82898e92989c9fa2aaa8aaacaeb4afafafafb4aeacaaa8aba39f9c99928f8a837e78706b615e564f443f3830281f170e050000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8b9b9b9b9b9b1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929faca49f93877e706b60574e443b31281e150b0100000000000000000000000000000000000000000000000000020b151e28323b454e58606b717e88939fa4ac9f9285796c5f5246392c1f1300000000020b16202a343c45515c666e7b859199a3afb7c1cbd5d6cabeb4aaa0958d81746c61574d43392f241a1019242f3a444e58626d75818f96a0abb4bfcbd7d7cbc0b5aba1979083786d605a50463c32281d140a0000000000000000020b18232e39434f59606d7a85919ea6b0bcc5d0d7cec5b9aca1968d80736a5f53493f32281e10070a151e2935414c56616c75828f98a2aebac3d0d9d0c3bbafa3999083786d60574d42362a20170c02000000000000000000000000000000000000000a15202a36414c56606b717e8a9299a2a9b0b9bec4c8cecfcac6c5c0bebab8b7b8b9bbc0c4c5c8ceccc7c1bdb5afa69e9691847b6e685e53493f33291f0e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d6cbc0b6aea9a7abadb3bbc5c5bebab8b4b3adaba4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb9c0c0c0c0c0c0c0c0c0c0c0c0c0c0c5c6cad0d7ddddddddddd4cdc7c4c2c0c0c0c0c0c0c0c0c0c0c0c0c0bfb3a6998c807366594d4033261a0d000009151f2a333c4247484a4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e514a4a4a4a4a4948443d352b21160a000000000000000000000000020b151e283139424a505b62696e787e848c91969b9fa3aaa9abadb3afb0b0b0b5afacaaa8a8a09d99928e87817b726d615e564e463e352c231a110700000000000000000000000000000000000000000000000000000000000000030e1a26313b454f59606c77818f949da5aeb4bbc0c7d0c9c5beb9b8b4b1afaeadaeafb0b4b8b9bdc4c3bcb8b6b2b3b8bfc7d0d9d3c6baada093877a6d6054473a2d211407000000000000000000000000020b151e262f383f4450585f676d737c82898f949b9fa2aaacaeb4b5b6b8babfbbbcbcbbbfbab8b7b5b4aeacaba39f9c95908b837d756e686159504a423a312920170e0400000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5c6c6c6beb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929fa59c928b7f726c61594f453c32291f160c03000000000000000000000000000000000000000000000000000000030c162029333c464f59616c727f8c929da59f9285796c5f5246392c1f13000000000a141d28323c46505a606d78839097a1abb5c0c9d3d5cbc3baaea2989083796d605a50453c31271d1208131e28323d46515b606d7a849199a3aebac1ccd6d1c7bdb3a99f958d80746c61584e443a2f261b1106000000000000000a141d2834404b55606b74818e97a1adb8c1ced7d0c5bcafa59e9184796d60584e41382d20160c00030c19242f3a43505a616e7b86929fa7b1bec7d2d7cbc0b5ab9f958c7f72695f53463e32291e130800000000000000000000000000000000000000040d1925303a444f59616c727f8792979fa6adb3b8bdc3c5c9cfced0cac6c5c4c5c6c8ccd2cec8c7c0bbb9afaba39f948f847b6e695e564c41382d21170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d1c5b9aea49d9a9ea1a9b3bcc4cac6c5c0beb9b1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb9c6cdcdcdcdcdcdcdcdcdcdcdcdcdd0d0d0d0d0d0d0d0d0d0d0d0d0d0cfcdcdcdcdcdcdcdcdcdcdcdcdccbfb3a6998c807366594d4033261a0d0000030e18212a31373a3b3f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e51443d3d3d3d3c3b38322b23190f040000000000000000000000000a141d273039434b545c606d727b838b91979ea1a8acaeb4b6b8b9bebcbdbdbdc0bbb9b7b5b2acaba39f99938e867f766e695f584f473e352c23190f060000000000000000000000000000000000000000000000000000000000000009141f29333e44505b656d79828e939fa2aaafb5bdc1c6cacac6c5c1bebcbbbababcbdc1c4c5c6bfbab1abaaa5a7adb5bfc9ccccc6baada093877a6d6054473a2d2114070000000000000000000000000a141d2630384149505a626a6f7980878f949c9fa6acaeb4b8babfc1c3c5c6cad0c9c9d0cbc7c5c3c2bfbab9b5afaca7a09d959089827a706b605c544b433b322920160d04000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d2cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929f9e938d80736d625a50473d332a20170d040000000000000000000000000000000000000000000000000000000000040d17212a343d47505a636d74808d939e9f9285796c5f5246392c1f1300000006111c262f3a444e58616c74808d959fa9b3bdc7d1cfcec3b9afa59f92867b6e675c51483e332a1f150b010c16202b343f45525d686f7c87929fa5afbac4cfcfcfc5bbb1a79d928b7e716a5f564c41382d22170c03000000000006111c262f3845515c67707d88939fa9b3becacfcfcabfb4aa9e938a7d70675d51463c2f261b0e04000008131e28313e46535e69727f8c95a0acb6c0cccfd1c7bdb1a79f92867b6e615a50443a3025190d050000000000000000000000000000000000000008131e28323d47505a626d727d858f949ea1a9acb2b7b9bdbfc2c4c5c6c8cccac6c5c4c2c0bcb8b5afaca59e99928c827a6e695f574d443a2f261b0f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cec2b5a99d928d9297a1aab2bac2c9cecfc9bdb1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb9c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bfb3a6998c807366594d4033261a0d000000060f181f262b2e323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e514438313131302f2c272119110700000000000000000000000006111c262f39424b555d666d747f8690959ea1a9adb2b8babfc2c5c6c9cfc9cad1cbc7c5c4c1bdb8b5aeaba49f98928b827b6f6a61594f473e352b21180d03000000000000000000000000000000000000000000000000000000000000030d182127333f49535d676d78818b92989fa4abafb8babec2c5c6cad0c9c7c6d1cbc7c5c3bdb9b4aea79f9d989ba3adb8bfbfbfbfbaada093877a6d6054473a2d211407000000000000000000000006111c262f38424a535b606c717c838d92999fa6abb0b8babfc5c6cad0d0d2d2d1cfcececfd1d2d2d0d1cbc7c5c0bbb9b1aca7a09d938f857d746d665d554c443b32281f160b020000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929f948e81776c605b51483e342b21180e0500000000000000000000000000000000000000000000000000000000000000050f18222b353e48515b606c78818f949f9285796c5f5246392c1f130000000b17222d38424c565f6a717e8b929da7b1bbc2c2c2c2c2bcb1a79d928a7e71695f554b40362c21180d0300040d19222935414c56606a727f8b939ea8b2bdc2c2c2c2c2b9aea49f92867c6f685d53493f33271e150b00000000000b17222d38424e58606d7984919aa4afbbc2c2c2c2c2baaea2988e81756b61554b40342a1d140a000000010c161f2a36424d57606d7883909aa4afbbc2c2c2c2c2baaea2988f82766c61564c41362a21160b00000000000000000000000000000000000000020c16202b343e48515b626b707b828a91979da0a8abadb2b2b5b7b8b9bbc0bfbab8b7b6b3b1acaba49f9c938e877f776d685f574d453b32291d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5ccccc0b4a79a8d80859298a1a8b0b9bdc4c8cdbdb1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b3a6998c807366594d4033261a0d00000000060e151a1e26323f4c5965727f8c98a5b2bfcbcdc4b7aa9e9184776b5e5144382b242423221f1b160f07000000000000000000000000050e17222d38424a545d676d78808b92989fa7adb2b9bdc4c7cbd0d1d2d1cfcececfd0d2d2d0cec8c6bfbbb5afaaa29f948f847c706b61594f473d332a1f150b01000000000000000000000000000000000000000000000000000000000000060f17222d38414b555d666d747e868e93999ea5abadb3b6b8babebdbdbebdbdbfbab9b6b2adaaa39f95908b919ba7b2b2b2b2b2b2ada093877a6d6054473a2d21140700000000000000000000081117222d38424a545c656c737e8690959fa3abb0b7bbc2c6cad0d3d1d1cbc7c5c4c3c1c1c3c4c5c7cad0d2d3d1cbc7c3bcb8b1aca59e97928a80786d675e564c443a31281d140a0000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c798692958f82786d655b50493f362c22190f06000000000000000000000000000000000000000000000000000000000000000000061019232c363f44505b666d798290959285796c5f5246392c1f130000030f1c28333f4a545d686f7c86929fa4aeb5b5b5b5b5b5b5b4aaa0958e81746c61574d43392f241a0f06000000071019242f3a444e58626d75818f96a0abb4b5b5b5b5b5b5b5aea29891847a6d655b50443d30271d1207000000030f1c28333f4a545f6a73808c96a0acb6b5b5b5b5b5b5b1a79f92867b6e61594f43392f22180b0200000000040d1a25313b44505c666f7c88939fa9b3b5b5b5b5b5b5b4aa9f948b7e71685e52463e33281c100400000000000000000000000000000000000000050e19222c363f48515960696e767e858b91969a9ea1a8a6a8aaabacafb6b4aeacaba9a6a7a09d99938f89817b726c655d564d453b332920170b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8bfbfbfbeb2a5988b7f7c8691969fa6acb2b8bcc1bdb1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6998c807366594d4033261a0d000000000003090e1926323f4c5965727f8c98a5b2bfc0c0c0b7aa9e9184776b5e5144382b1e171615130f0a04000000000000000000000000020d172028333f4a545c666d79828d929fa2aab1b9bec4c9cfd3d3cfc9c6c5c2c1c1c2c4c5c7cbd0d3d1cbc7c0bbb4aea69f9691867d706b61594f453c31271d12070000000000000000000000000000000000000000000000000000000000000006111b262f39434b545c606c717b81878f939a9fa2a9a9abaeb4b0b0b1b1b0b4aeaca9a9a19e98928c837f8b98a5a6a6a6a6a6a6a6a093877a6d6054473a2d211407000000000000000000050f1a2328333f4a545c666d77808b9298a0a7afb5bdc2c7cdd3d3cdc8c4c3bfbab9b7b6b5b4b6b7b8babfc2c5c7cbd1d3cec8c3bcb8afa9a19e928d82796e685e564c433a2f261c110600000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929083796d665c53493f372d241a1007000000000000000000000000000000000000000000000000000000000000000000000007111a2428333f4a545c676d7a83919285796c5f5246392c1f13000006121f2b3844505b666d7a849198a2a8a8a8a8a8a8a8a8a8a8a2989083796d605a50453c31271d1208000000000008131e28323d46515b606d7a849199a3a8a8a8a8a8a8a8a8a8aaa0968f82776c60594f42392e23180c00000006121f2b3844505b666f7c87929fa8a8a8a8a8a8a8a8a8aba0958b7f72695e52473e31271d0f0600000000000009141f28343f4a54606a74818d97a1a8a8a8a8a8a8a8a8a8a69e92857a6d61594f44382c201407000000000000000000000000000000000000000007101a242d363f474f575f616c71797e84898d919696999b9e9f9fa4a1aaa29f9e9c999795908c87827c756e69605b534c443b332a20170e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb2b2b2b2b2b2a5988b7f727c848f949ea1a8acb1b4b7b1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a86939d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d998c807366594d4033261a0d000000000000000c1926323f4c5965727f8c98a5b2b3b3b3b3b3aa9e9184776b5e5144382b1e1109090703000000000000000000000000000008141f29323b44505b666d78828f949da4aeb4bcc2c9cfd5d0cac6c5beb9b8b6b5b4b5b7b8babfc5c7cbd1d2ccc6bfbab0a8a19892877d706b60574e43392f24180d03000000000000000000000000000000000000000000000000000000000000000a141d283139424a515a62696e757c82888e9297999c9fa2aaa3a4a4a4a3aaa39f9c9996918c867f797d899699999999999999999993877a6d6054473a2d2114070000000000000000020d17212b353d44505b666d78818d929fa3aab1bbc0c7cfd3d0cac6c2bcb8b6b4aeacaba9a8a8a9aaacaeb4b6b9bbc0c7cacfd4cec8c1bbb3ada49d948f837a6e685d554b42382d22170d04000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c798791847b6e675d544b41382d251b120800000000000000000000000000000000000000000000000000000000000000000000000000081217222d38424b555d686e7b859185796c5f5246392c1f130005121e2a36424d57606c78828f969c9c9c9c9c9c9c9c9c9c9c9c9c92867b6e675c51483e332a1f150b000000000000010c16202b343f45525d686f7c87929c9c9c9c9c9c9c9c9c9c9c9c9c948c7f736b60544b4034281c10040004101c2834404b55606c788390999c9c9c9c9c9c9c9c9c9c9c999083786d60574d42352c1f150b00000000000000030c17232e38424e58606d7a85919c9c9c9c9c9c9c9c9c9c9c9c978e81756b6155483c2f23160900000000000000000000000000000000000000000008121b242d353d454d535a61676d71787c8084878a8c8f9192939a94949892918f8d8a87847f7b766f6a625f575049413a322a21180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929fa6a6a6a6a6a6a6a5988b7f726f7a828a91969da0a7a8abaca4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d798690909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090908c807366594d4033261a0d000000000000000c1926323f4c5965727f8c98a5a6a6a6a6a6a6a69e9184776b5e5144382b1e110500000000000000000000000000000000020b1925303b444f59606c78818e949ea6aebabfc6ced5d0cac5bebab8b3adaba9a8a7a9aaacaeb4b9bbc0c7cfd6d0cac2bab2aaa29992867d706a5f554b4035291f150b01000000000000000000000000000000000000000000000000000000000000020b161f283039404450575f616a6f757c8185898c8f9298959697989796959892908d8a847f7a73707d898c8c8c8c8c8c8c8c8c8c8c877a6d6054473a2d211407000000000000000009141f29333d47515b606c78818e939ca4aeb4bcc3cbd1d2ccc6bfbab8b1aba9aba39f9e9c9b9b9c9e9fa2aaa9acafb5b9bec5cbd1d4cdc5beb9aea69e9590837a6d675d544a3f332820160c010000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986857c6f695e554c42392f261b130900000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f39434c565e696f7c8686796c5f5246392c1f13000714212d3a46535f6973808c8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8a7e71695f554b40362c21180d0300000000000000040d19222935414c56606a727f8b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f877d70665c5145382c1f13060006131f2c3845515c67727f8b8f8f8f8f8f8f8f8f8f8f8f8f8f8f877c6f665c50453b30231a0d03000000000000000006111c26303d45525d68717e8a8f8f8f8f8f8f8f8f8f8f8f8f8f8f8a7d7063574a3d3024170a0000000000000000000000000000000000000000000009121b232b333b424650555c60656c6f74787a7d7f8284858687878786858483807d7b77726e69626058534d443f382f2820180f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c798592999999999999999999988b7f72686d777e848b9095989b9ea1a8978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d79838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383837f7265584b3f3225180c000000000000000c1926323f4c5965727f8c989a9a9a9a9a9a9a9a9a9184776b5e5144382b1e1105000000000000000000000000000000000a141d2a36414d56616b73808d939ea6b0b8c0cad0d5cec5bebab3adaba9a19e9c9b9b9c9d9fa3aaacafb5bdc2cad0d6ccc4bcb4aba39892867c6e675d51453d31271d120700000000000000000000000000000000000000000000000000000000000000040d161e272e343f454d53585f626a6f74797d80838587898a8a8b8a8a89888683807d79736d686e7b7f7f7f7f7f7f7f7f7f7f7f7f7f796d6053463a2d20130700000000000000040d1a25303b454f59636d74808e939ea5aebabfc6ced7d0c7c0bbb4aeaca79f9d99999291908e8e90919298989c9fa3abadb3babfc6cfd4cfc9c0b8b0a7a0959083796d665b50443e32281e13080000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000131f2c3946525f6c79857d706a5f574d433a30271d140a01000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d27313a444d575f6a707d85786c5f5245392c1f12000815222e3b4855616e7b828282828282828282828282828282828280736c61574d43392f241a0f06000000000000000000071019242f3a444e58626d73808282828282828282828282828282828281796d6053463a2d201307000713202d3a4653606d79818282828282828282828282828282827f736a60544a3f33291f1108000000000000000000000a151e2935414c56616c74808282828282828282828282828282828074675a4e4134271b0e0100000000000000000000000000000000000000000000091119212a31363e434b51535b606367696e7073757778797a7b7a7979787673716e6965615e57544e47423c332d261d160e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c79868c8c8c8c8c8c8c8c8c8c8c8b7f7265656c71797e83888b8e919696968a7e7164574b3e3124180b00000000000000000000000000000000000000000000000006131f2c3845515d676d77777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777726d62564a3d3124180b000000000000000c1926323f4c5965727f8c8d8d8d8d8d8d8d8d8d8d8d84776b5e5144382b1e110500000000000000000000000000000006111b262f3846525e68707d88939fa5afb8c1cad6d3cbc3bcb3ada9a29f9a97928f8e8e8f9192989c9fa3abb0babfc6ced6cec6bdb4aaa2989083796d60594f43392f23180c0100000000000000000000000000000000000000000000000000000000000000040c151c2328333b42464e53586062666d707376787a7c7d7d7e7e7d7c7b797673706d66615f696e737373737373737373737373736d675c5145382c1f1306000000000000010c161f2a36424d57606b737f8c929da5afb7c0cbd0d4ccc4beb6afaaa29f9995908c888684838281838485878b8f92999ea1a9aeb4bdc2cbd3d5cac2b9b1a79f958f82786c60594f443a2f24190d0400000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000b1724313e4a5764717d716b60584e453b31281e150b020000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151f28323b454e58606b717e7164574a3e3124170b000714212d3a46535f696e7575757575757575757575757575757575736d635a50453c31271d1208000000000000000000000008131e28323d46515b646e7375757575757575757575757575757575746d665c5145382c1f13060006131f2c3845515c676d75757575757575757575757575757575736d63584e42382e21170d0000000000000000000000030c19242f3a44505a646e74757575757575757575757575757575746e64584c4033261a0d000000000000000000000000000000000000000000000000070f181f262a3039404549505356565e616366686b666c6d6e6e6d666b696664615e5754524d47433d373127221b140b0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000d192633404c5966737f7f7f7f7f7f7f7f7f7f7f7f7f7c6f625b60676d72777c7f818487898a8a7e7164574b3e3124180b00000000000000000000000000000000000000000000000004101d2935404b555d606a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a65625b51453a2e221509000000000000000a1623303d495663707d8080808080808080808080807f7266594c3f3326190c000000000000000000000000000000000b17222d38414f59616e7a85929aa4afb7c1cad3d3c9c1b9b1a9a29f97928d88858382818284868a8f92999fa6aeb4bcc5ced7cfc6bcb4aaa0958e81746b60554b4034291d13070000000000000000000000000000000000000000000000000000000000000000030b1218212a31363c43474e54545c60636669686d6f70717171706f6e6d666663605c54575f6166666666666666666666666666605c554b4034281c100400000000000008131e28313a46525e69707d87939fa5afb7c1c9d6d2cac2bab2aca49f98928c87837f7b79787675757677797b7f83868c92979fa3abb1b9c1c9d1d3cbc3b9b1a79f948c80736b61564c41352921160a00000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000a1623303c4955616c716c61594f463c33291f160c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d162029333c464f59616c716c6155493c3023170a0005121e2a36424d575f61696969696969696969696969696969696966635b52483e332a1f150b000000000000000000000000010c16202b343f49525c64676969696969696969696969696969696968605c544b4034281c10040004101c2834404b555c606869696969696969696969696969696966635b51463d30261c0f0500000000000000000000000008131e28323e48525c646769696969696969696969696969696967645c52473c3024170b00000000000000000000000000000000000000000000000000060e141a1e272e34383f4446494d525457595c545b60606161605c545c5a5754534d4746423b37322b261f17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000c1825323e4b57636d737373737373737373737373736f6a6054555c60656a6f7275787b7c7d7e7b6e6155483b2e221508000000000000000000000000000000000000000000000000000c18242f39434b51535d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d585651493f34291d1205000000000000000916222f3b4854606b70737373737373737373737373726d63574b3e3225180c000000000000000000000000000000030f1b27333f4953606b75818e97a1acb6c0c9d3d4cac1b7afa7a097928b85807b7876757476777a7e828790949fa2aab3bcc5cdd7cec5bcb1a79d93897d70675c51453a2f24180d00000000000000000000000000000000000000000000000000000000000000000000070f181f262a31373c43474a51535659565e616263646564636262605c545753504a4d53555959595959595959595959595953514b43392e23180c000000000000010d19242f3a43505a616e7b859299a4afb7c0c9d3d2c9c1b8b0a8a09a938e86807b76726e6c65696868696b696e72767a7f858d92999fa7afb7bfc8d1d5cbc2b9b0a69f93887d70685d52453d32271b0f04000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000814212d3944505a6164615a50473d342a20170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e17212a343d47505a6164615a5045392d21140800020e1a26313b454d53555c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5957524940362c21180d0300000000000000000000000000040d19222d37404a52585a5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b53514b42392e23180c0000000c18232e39434b51535b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5957514940342b1e140a00000000000000000000000000010c16202c36404a52585a5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a58524a41362b1f1408000000000000000000000000000000000000000000000000000003090c151d23282d3337393c4246474a4c4f4a505354545453514b504d4a4846423b3a36302b27201a150b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000a16222f3b46515b63666666666666666666666666666260584e4b5153585f626568696e6f70716e695f53463a2d2114070000000000000000000000000000000000000000000000000007121d273139404547505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050504b4a453f372d23180c01000000000000000713202c38444f59606367676767676767676767676766635b51463a2f22160a00000000000000000000000000000005121f2b3744505b65707d89939ea9b3bec7d2d6ccc2b8afa59e9590857e79736e6a69686869676d71757b828b9298a2aab3bbc5d0d7cec3b9afa59e9184796d60554b4135291c120700000000000000000000000000000000000000000000000000000000000000000000060e141a20262b3237394044464a4d4c5254565757585757565553514b4a46443f4246484c4c4c4c4c4c4c4c4c4c4c4c4c4645403930271d120700000000000004111d2935414c55616c75828f97a1abb5c0c9d2d3c9c1b7afa69f969188817b736e696662605b535b5b5d575e6165686d727a808690959ea5aeb6bfc8d1d4cbc2bbafa49a91857a6d60584e43382c21160b000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000004101c28333e485055575550483e352b22180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f18222b353e485055575550483e33281c1104000009141f29333b4246484f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4b4740372e241a0f0600000000000000000000000000000007101b252e3840474c4d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4645403930271d120700000007121d2730394045464e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c4b4640372e22190c020000000000000000000000000000040d1a242f3840474c4d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4c4741382f241a0e0300000000000000000000000000000000000000000000000000000000030b12181b22272b2d30363a3b3d40423f444647484746454043403e3b3a36312d2a251f1b160e09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000006121e2a35404951575959595959595959595959595956544e464045474e535558575e61636364615f574d42372b1e120500000000000000000000000000000000000000000000000000010b151f272f35383a444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444443f3d3a342d251b1106000000000000000003101b27323d474f54565a5a5a5a5a5a5a5a5a5a5a5a595751493f352a1e12060000000000000000000000000000000613202d394653606c7883909da5afbbc5d0d9d0c4bab0a69e938e837b726d67625f575b5b555d60646a6e777e869298a2a9b3bec7d2d5cbc1b9aca0968c7f72675d5145392e23180c000000000000000000000000000000000000000000000000000000000000000000000003090e151a20272b2e34383a3d40414647494a4a4b4b4a49484645403d3a3834363a3b404040404040404040404040403a38342e271e150b000000000000000613202c3945515d67717e8a949ea9b3bdc7d2d4cbc1b7afa59e9490847c746e69615e57555350494f4e504d5254565e61686d737b838e939ca4aeb6bfcad3d8ccc0b6aca1978d81746a6054483d32271b10030000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000b17222c363e44494a49443e362c231910060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232c363e45494a49453e362c22170c000000030d17212931363a3b4242424242424242424242424242424242403f3b352e251c1208000000000000000000000000000000000009131c262e363c3f4042424242424242424242424242424242413a38342e271e150b00000000000b151e272e34383a42424242424242424242424242424242403e3b352e251c10070000000000000000000000000000000008121d262f363c3f4142424242424242424242424242424241403c362f261d130800000000000000000000000000000000000000000000000000000000000000070c11171b1f20252a2d2e30332d3338393a3b3b3a38342e33312e2d2a25201e1a140f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000020d19232e3740464b4c4c4c4c4c4c4c4c4c4c4c4c4c4947433d34383c4347484c4d525456575755534d453c31261a0e020000000000000000000000000000000000000000000000000000030d151d24292c2d3737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373732312e29231b1209000000000000000000000b16212b353d4448494d4d4d4d4d4d4d4d4d4d4d4d4c4b463f372e23180d0200000000000000000000000000000713202c38444f5964707d8a95a0acb7c1cdd7d2c7bdb2a89f948e81796e69605d55534e4f4e4b5153575f656c717d869297a2acb6c0ccd8d4c8bdb2a89e92857a6d60544a4034281c1004000000000000000000000000000000000000000000000000000000000000000000000000030a0f151b1c23282c2d303036393a3c3d3e3e3e3d3c3b3a38342e2d2c282a2d2e333333333333333333333333332d2c28231d150c0300000000000004111d2935414b55606d7a85919ea6b0bbc5d0d6cdc3b9afa59e938e827a6f6a615e57534d4846443f4242434246484c52565d60696e79818c929ca4aeb8c1cbd5d2c7beb3a99f93877c6f62594f44382c1f15090000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000005101a242c33393c3e3c39332c241a110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a242c33393c3e3c39332c241a100500000000060f171f262a2d2e363636363636363636363636363636363633322f2a241c130a000000000000000000000000000000000000010b141c242b30333436363636363636363636363636363636352d2c28231d150c030000000000030c151d23282c2d3536363636363636363636363636363633322f2a231c130a0000000000000000000000000000000000000b141d242b3033343636363636363636363636363636363433302b241d140b01000000000000000000000000000000000000000000000000000000000000000000060b0f1213191e2021242622282b2d2d2e2e2d2c2823272421211e1a14110e0902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000007121c252e353b3e404040404040404040404040403c3b3732292c31373a3c3f424647494a4b4846423c332a1f140900000000000000000000000000000000000000000000000000000000030b12181d1f202a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2524221d1811090000000000000000000000040f19232b32383b3d4040404040404040404040403f3e3a352e251c12070000000000000000000000000000000915222f3b4854606b7783909da7b1bcc9d3d7ccc0b5aba1969082786d675f57514b474242414045474e535b606b6f7c85929aa4afbbc3ced9cec3b9ada2978c7f72665c5144382c1f13080000000000000000000000000000000000000000000000000000000000000000000000000000040a0f12181c1f2023252a2d2e2f30313231302f2f2d2c2823201f1c1e212226262626262626262626262626201f1c18120b03000000000000000613202c3945515d67737f8c97a1adb8c1cdd7cfc4bbb1a79e938e81786d686058524d46423b3937332d3530363a3b41464c52575f676d77808c929ca6b0b9c3d0d9d0c4bbafa49a8f82766b6054483c31261a0e0000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000008121a22282d3031302d28221a1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a22282d3031302d28221a1208000000000000060d141a1e212229292929292929292929292929292929292625231e19120a0100000000000000000000000000000000000000020b12191f2326272929292929292929292929292929292928201f1c18120b0300000000000000030b12181c1f20282929292929292929292929292929292625221e19120a01000000000000000000000000000000000000020b131a1f2426272929292929292929292929292929292726241f1a130b020000000000000000000000000000000000000000000000000000000000000000000000000305090e1114141719171c1f20212121201f1c181a171514120e0905020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000a131c232a2f32333333333333333333333333332f2e2b27201f262b2e2f30363a3b3c3d3e3b3a37312a21180e03000000000000000000000000000000000000000000000000000000000001070c1013141d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d181815120c060000000000000000000000000007111921272c2f3034343434343434343434343433322f2a231c130a00000000000000000000000000000004111d2935414b55636f7c8995a0acb9c3cedbd4c7bbafa49991847a6d665d554d45403937312f35393c41495059606a707d88939fa7b1bcc8d4d6cabeb3a99e9285796d6053463a3025190d0100000000000000000000000000000000000000000000000000000000000000000000000000000000070c10121317191d20212324242524242322201f1c18131210121415191919191919191919191919191313100c070000000000000000030f1b27333f4953606d7a85929ea9b3becad3d5c9beb3a99f958e81756d665e564e46423b36312d2b272228252a2d30363a41454d555d656c73808c939ea7b1bdc7d2d8ccc0b6ac9f94897d7063574d42372b1c110600000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000810171c21232423211c171008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171c21232423211c171008000000000000000003090e1214151c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a1916130d070000000000000000000000000000000000000000000001080e1317191a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1b1313100c070000000000000000000000070c1013131b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c191816120d0700000000000000000000000000000000000000000001080e13171a1a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1b1a17140e080100000000000000000000000000000000000000000000000000000000000000000000000000000000020507080a060b0f12131415141313100c070b080705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000010a12191e22252626262626262626262626262623221f1b16151b1f2122252a2d2e3030312e2d2b261f180f06000000000000000000000000000000000000000000000000000000000000000000040607111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110c0b090501000000000000000000000000000000070f161b2022232727272727272727272727272625221e18120a010000000000000000000000000000000613202c3945515d6774818e9ba7b1bccbd5d7cbbfb4ab9f93877c6f685e544b433c352f2b2624292c2f383f444f58606b73808d95a0acb8c3ced9cfc5b9ada1978a7d7164564c41362a1d1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000040607080d11131416171718181716151313100c0706030507080d0d0d0d0d0d0d0d0d0d0d0d0d0706040000000000000000000005121f2b3744505b65727f8c97a2adbbc4cfd9d0c7b9ada1979083796d605c544c443c36302a25201f1b171b1a1e20252a2f353b434b535b606c77828f95a0abb5c0ccd7d2c7beb0a69c8f8276695f5347382d22170b00000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000050b101416171614100b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c111417171714110c050000000000000000000000020507080f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0c0a07020000000000000000000000000000000000000000000000000003070b0d0d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0706040000000000000000000000000000000406070f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0c0a060200000000000000000000000000000000000000000000000003070b0d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0d0b080300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606070808070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8cbcabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000070d121618191919191919191919191919191615130f0a0a0f1215151a1e202123242422211e1a140e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b101316161a1a1a1a1a1a1a1a1a1a1a1a191816120d0700000000000000000000000000000000000714212d3a4754606d7a86929facb8c3cddfd3c7baaea3998e81756a60564c42393129241d1a181d1f262d333d464f59606d7983909da7b1bcc8d4d5c9beb3a99c8f8276685e5246392d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707090a0b0b0b0a09080706040000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7884919ea9b3becdd6d2c7beb0a69e91857b6e675d514b423a322a251f1a13120f0b090e1214191e242931394149505b656d79839199a4afbbc6d0d9d0c2b7ab9f94887b6e61544a3f33281c0f03000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000004080a0b0a08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0b0a080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbbebebebdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000002060a0c0d0d0d0d0d0d0d0d0d0d0d0d0d090806030000030608090e1114141617181514120e090300000000000000000000000000000000000000000000000000000000000000030506070708080807070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000307090a0d0d0d0d0d0d0d0d0d0d0d0d0c0c0a06020000000000000000000000000000000000030f1b27333f495364717d8a98a2aebac6d3dfd2c5b9ac9f92867b6e61584e443a30271f18120e0c10141b2227343d45515c67707d8995a0acb8c5cfdacfc5b9ac9f93867a6d6154473a2e211409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f495363707c8996a0acbbc5cfd8ccc0b6ac9f948a7d70695e554b40393028201a140e09050300000205080d13191f272f383f49535d676f7c87939faab4bfcbd6d3c7bbb0a6998d8073665b5044382b1f1206000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030506101313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313130e0d0b07030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aeb1b1b1b1b1b0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000002050708090a0b0807050200000000000000000000000000000000000000000000000000000003060709060b0f12131414151515141312100b060a07060401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b6574818e9baab4bfcad6d4c8bdb1a89a8d8074695f53463d32291e150d070100040a1117222834404b55606b7783909da9b3bec9d5d4c7bbafa4998b7e7164584b3e31261a0e020000000000000000000000000000000000000000000000000000000000000306070708090a0908070706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b6574818e9ba8b2bdcdd7d4c8bbafa49a8f82766b61574d43392f271e160e0902000000000000000001080d151d262d38414b555f6a74818e98a3aebac7d3d8ccc2b8ab9e9184786c605346392d201306000000000000000000000000000000000000000305121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f12131c2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201a1917130e0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1a5a5a5a5a5a5a5a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105060b1012131518171b1f20202121222121201f1c1719161413110d07030000000000000000000000000000000000000000000000000000000000000000000000000000000000030506070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7885929eabb8c5d0dbd1c5b8aca095887c6f62574d42342b20170c030000000000061018232e39434f5964717e8b97a1adb9c6d2d7ccc0b5ab9b8e827568574d42372b1e120500000000000000000000000000000000000000000000000003050608060c101213141516161615141312100c0708060503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7885929eabb8c4ceded2c6b9ac9f93877c6f62594f453b31271d150c05000000000000000000000000030b141b262f3a434e58616e7b86929facb8c3ced9d2c5b9ada196887c6f6255493c2f2216090000000000000000000000000000000000060b0f12131f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1f20292d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2726231f19120b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895989898989898989898978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d1113171c1f20222522272b2d2d2e2e2f2e2d2d2b2823262320201d18130f0b060000000000000000000000000000000000000000000000000000000000000000020507080b060b0f12131413120f0b06080705020000000006060606060606060606060606000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8897a1adb9c6d2ddd0c4b7aa9d9184776a5f53453b3122190e050000000000000007121d27303d4653606d7985929eabb8c5d1ddd2c5b8ab9f928578695f53463a2d21140700000000000000000000000000000000000000000000060b0f12131518171c1f2021222223222221201f1c18181513120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8897a1adb9c6d2d6cabeb3a99b8e81756a6054473e33291f150b030000000000000000000000000000020a141d28313c46525e6973808d9aa8b1bdc8d4d5c9bdb2a8998c7f7266594c3f30251a0e020000000000000000000000000000020a11171b1f201f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b22272b2d363939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393433302b241d140b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b888b8b8b8b8b8b8b8b8b8b8b8a7e7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f13191d2023282b2d2f322d3337393a3a3b3b3b3a3a38342e32302d2c29241f1b17110a020000000000000000000000000000000000000000000000000000000105090e121415181b171b1f2021201f1b17181414110e08060809131313131313131313131313130a0907040000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a9b3bec9d5d7cbbfb4ab998c7f7366584e4333291f10070000000000000000000b151f2c3845515c6675818e9ba8b4c1cfdad3c6baada297887b6e6155483b2e2215080000000000000000000000000000000000000003090e11171b1f20222423282c2d2e2e2f302f2e2e2d2c28232422201f1b17110f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a9b3bec9d5d3c6baada297897d7063584e43352c21170d0300000000000000000000000000000000020b161f2a36424d57626e7b8895a0acb8c5d1dacfc2b6a99c8f827669574d42362a1e1205000000000000000000000000010a0b141b22272b2d2b273945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d33373943464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646413f3c362e261d120800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a7e7e7e7e7e7e7e7e7e7e7e7e7e7b6e6155483b2e221508000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b11171b1f25292d2e34383a3c3f413f444647474848484746443f423f3d3a39352f2b27221b140b0903000000000000000000000000000000000000000000000002080d11141a1e2021252822272b2d2d2d2b27222521201e191413151620202020202020202020202020171614100b05000000000000000000000000000000000000000000010e1a2734414d5a6774808d9aa7b3c0cfdad3c7baaea399887c6f6255493c3122170d0000000000000000000004101c2834404b5465727e8b98a9b3bec9d5d6cabeb3a9978a7e7164574b3e3124180b0000000000000000000000000000000000060b10151a1b22272b2d2e312e34383a3a3b3c3d3c3b3a3a38342e312f2d2b27221b1b15100c07000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546875828e9ba8b5c1cfdad2c5b8ab9f9285796d6053463c32201a0f05000000000000000000000000000000000000040d1a25303b47535f697784919daab7c4d0ddd2c5b8ac9f928579695e52463a2d2014070000000000000000000000010a131c1d262d33373937332d45525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f383f44464f5353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353534d4c4740382e24190e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3945525d686d727272727272727272727272726e695f53463a2d211407000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b22272b3035393a3f4446484b4e49505353545455545453504a4e4c494745403a37332d261d1a140d05000000000000000000000000000000000000000001070c13191d20252a2d2e32352d3337393a3937332d322e2d2a251f1f22222d2d2d2d2d2d2d2d2d2d2d2d2d2423201c1610080000000000000000000000000000000000000000030f1b27333f49536976838f9ca9b6c2cfdcd2c5b9ac9f9286796d6053463a2d20130700000000000000000000000c18232e3b4855626e7b8897a1adb9c6d2dbcfc0b3a69a8d8073675a4d4034271a0d010000000000000000000000000000020a11171c1f262b2d3337393b3e403f444647484949494847464440413e3b3937332d2b261f1c18120b0300000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667784909daab7c3d0dacec1b4a79b8e8174665c5044382c1f1208000000000000000000000000000000000000000009141f2b37424d576673808d99a6b3c0d0dbd3c6baaea298877b6e6154483b2e211508000000000000000000000009131c252e2f383f4446443f3845525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38414950535c6060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605a58524a40362b1f13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c565d6065656565656565656565656565615f574d42362a1e1205000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070b141b22272d33373a4146474a505355585b535b60606161626160605c545b595653514b46443f382f2a251f170f07000000000000000000000000000000000000030b12181e25292d30363a3b3e42433f44464746443f423e3b3936302b2b2e2f39393939393939393939393939302f2c28211a11080000000000000000000000000000000000000005121f2b3744505b657784919eaab7c4d1ddd0c3b6aa9d908377665c5144382c1f120600000000000000000000000714212e3a47535f6a7885919eabb8c4d1dbcec1b5a89b8e8275685b4f4235281c060000000000000000000000000002080c141c23282b3137383f4446484b4d4a50535455555655555453514a4d4b4846443f3837312c28231c150c0802000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facb9c5d2d7cabdb0a4978a7d7164544a3f34281c10030000000000000000000000000000000000000000020e1a26313c4956626f7c8995aab4bfcad6d6cabfb4aa96897d7063564a3d3023170a0000000000000000000009131b252e37404149505350494145525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f49535b60696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c67645c52473c3023170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a444c52545858545c60626362605d55585855534d453b31261a0e02000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d262d33383f44464c5254545c6062656769656c6d6d6e6e6e6d6d666a686563605d55535049413e3630292119100700000000000000000000000000000000070d151d24293035393b4246484b4e50495053545350494f4b4746413b38373b3c464646464646464646464646463d3c38332c231a10050000000000000000000000000000000000000613202d394653606c7986929facb9c5d2dacdc1b4a79a8e817467544a4034281c1004000000000000000000000006121e2b37424e57697683909ca9b6c3cfdcd0c3b6a99d9083766a5d50432d22170b000000000000000000000000040c13191e262e34383c424749505355575a545c6061616263626161605c545a575553504947433c38342e271e19130d050000000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8798a3aebac7d3d6cabfb4aa95887b6e6255483b2e23170c000000000000000000000000000000000000000000000914212d3a4754606d7a8798a2aebac6d3dbd0beb1a5988b7e7265584b3f3225180c00000000000000000009121b252d37404951535b605b534a42525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b656c76797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979746e64584c3f3326190d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323a414550575f61666d6f706f6d67625f585046423b332a1f140900000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d151d23292f383f44495053565e6164666d6f72747677797a7a7b7b7b7a7979777572706d6763605b535046423b332a2219100700000000000000000000000000000710191f272f353a4146474d5254585b5d535b6060605b535b5854524c4644434749535353535353535353535353534a48443e352c21160b0000000000000000000000000000000000000714212e3a4754616d7a8798a3aebac7d3d8ccbfb2a5998c7f7266594c3f2e23180c000000000000000000000000020e1a2631424f5c6875828f9ba8b5c2cedbd1c4b8ab9e9185786b5e493f33271b0f0300000000000000000000060e161e242930383f44464e53535b6061646769666d6d6e6f706f6e6d6d6669676462605b53534e46444039302a251e170e0700000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895aab4bfcbd7d3c6baaea298877a6d6054473a2d211406000000000000000000000000000000000000000000000613202c3945525d687985929facb8c5d2d8ccbfb2a5998c7f7266594c3f3326190c000000000000000008121b242d373f49515b63656c655c544b525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c79828686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323e48505a61696e74797b7c7c7a756e6a625a50483e32281e130800000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810191f272f343d414950535b6063686d7175797c7e81828486868787888787868584817f7c7a75706c65615a524d453c342a22190f05000000000000000000000000081119222b313940454c5254575e616568696a656c6d6c656a6865615e5653504e54556060606060606060606060606057554f473e33281c100400000000000000000000000000000000000815222e3b4855616e7b8894aab4bfcbd7d8cbbeb1a5988b7e7265584b3f3225180700000000000000000000000000091b2834414e5b6774818e9aa7b4c1cddad2c5b8ac9f928579655b5044372b1f1205000000000000000000071018202830353d424a5053575f62656c6e71737678797a7b7c7c7c7b7a79787674716e6c65625f5853514a423d3630292019100700000000000000000000000000000000000000000000000000000000091623303c4956636f7c8996a2afbcd1dcd2c5b8ac9f928579685d5245392c2013060000000000000000000000000000000000000000000004111d2935414c566b7784919eaab7c4d1d9ccc0b3a6998d8073665a4d4033271a0d0000000000000008121a242d363f49515b636d73786d665d554c5f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b656e7a85929a93939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1924303a44505a616c717b818588898886827c716c625a50443a3025190d01000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a222b313940454f535b60656c70757a7e8285888b8e8f91929994949594939892918e8c8986817d78706c615e574e463c342a21170d020000000000000000000008111a232b343c434b51565e6166696e7175767778797a79787775716e6864605b5860626c6c6c6c6c6c6c6c6c6c6c6c6c6361594f44382c20140700000000000000000000000000000000000915222f3c4855626f7b8895a2aebbd1dcd7cabdb1a4978a7e7164574b3e3124180b000000000000000000000000000d1a2733404d5a6673808d99a6b3c0ccd9d3c7baaea29886796c605346392d2013060000000000000000071019222a323a41464e545c60656a6e73787b7e8083858687888889888887868583807e7b78736f6a65605c544f46413a322b221911070000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8a96a3b0bdc9d6d1c4b7aa9e9184776b564c4135291d110400000000000000000000000000000000000000000000010d19242f43505c6976838f9ca9b6c2cfdacdc0b4a79a8d8174675a4e4134271b0e00000000000008111a242c363f48515b626d737f81786d675d565f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f49535e68707d88939fa79f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9a8d8074675a4d4134271a0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414c56616c717e868e92989698928e867e716c61564c41362a1d1105000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a232c343c434b515960656c71787d82868b8f9298989a9c9e9fa3aba1a1a1aaa29f9d9b9898928e89847d756e695f584e463c33291f1409000000000000000000050e1a232c353d464e555d60686d73777b7e818384858687868583827e7a77716c66616a7679797979797979797979797979706b6155483c2f23160900000000000000000000000000000000000916222f3c4955626f7c8895a2afbbc8d5d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd8d6cabfb4aa93867a6d6053473a2d20140700000000000000061019222b343c444c525860666d71767b8084888a8d909298949495969594949892908d8a8885807c77726d666059524c443c342b2319100700000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0bcc9d6d1c4b7aa9e9184776b564c4135291d11050000000000000000000000000000000000000000000000081d2a3643505d697683909ca9b6c3cfdacdc0b3a79a8d8074675a4d4134271a0e000000000007111a232c363e48505a626d727f8c8e82796d685e576c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38414c56616b73808d95a0aab4acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaca79a8d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525d68707e8792989fa2aaa39f99928a7e71685e5246392d201307000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212c353e464e555c606b70787e84898f92999c9fa2aaa7a9aaacaeb4aeaeaeb4aeacaaa8aaa29f9b96918a827b6f6a5f584e453b30251a0e0500000000000000020d17202c353e474f5860676d727a8084878b8e90919292999291908e8b87837e78706c6f7c868686868686868686868686867d7063574a3d3024170a00000000000000000000000000000000000916222f3c4955626f7c8895a2afbbc8d5d6cabdb0a3978a7d7064574a3d3124170a000000000000000000000000000c1926333f4c5966727f8c99a5b2bfccd8d4c7bbafa499867a6d6053473a2d201407000000000000040d18222b343d464e565d616a6f787e83888d9196979a9c9fa2aaa1a2a3a2a1aaa29f9c9a9797928d88837e78706b615e564e463d352b22190e0500000000000000000000000000000000000000000000000000091623303c4956636f7c8996a2afbcd0dbd2c5b9ac9f928679685e5246392d2013070000000000000000000000000000000000000000000005111d2a36414c566b7784919eaab7c4d1d9ccc0b3a6998d8073665a4d4033271a0d00000000071119232c353e48505a626c727f8b91948f837a6e695f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f3b444f59606d79839098a2aebab9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b3a79a8d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a859299a2aaaeb3aeaba39f92857a6d6154473a2e211407000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c28333e474f5860676d737d838a91969b9fa3abacaeb4b4b5b7b9babfbabbbabfbab8b7b4b4aeaca8a09e938f857c6f6a5f574d42362a21160b0000000000000008131e29323e474f59606a6f797f858d9195989b9c9d9e9fa39f9e9d9b9a93908b837d756f7c8893939393939393939393938a7d7063574a3d3024170a00000000000000000000000000000000000815222f3b4855626e7b8895a1aebbd0dbd7cbbeb1a4988b7e7165584b3e3225180b000000000000000000000000000d1a2733404d5a6673808d99a6b3c0ccd9d2c6b9ac9f938679675c5145382c1f13060000000000010c16202a343d474f585f686d747c838b9095999ea1a9a6a9abaeb3aeafafafaeb4aeaba9a7a9a19e9a95908b837d746d6860584f473d342b20170d020000000000000000000000000000000000000000000000000915222f3c4855626f7b8895aab4bfcad6d3c7baaea398877a6d6154473a2e211407000000000000000000000000000000000000000000000713202d3946525e687986929facb9c5d2d8ccbfb2a5998c7f7266594c3f3326190c000000071019232b353e47505a616c717e88939f9f9590837b6e696c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29323e45515c666e7b86929fa5afbac4cfc6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c0b3a79a8d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c5966737f8c97a2abb4babebab4ada2978c7f7366594c403326190d000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c38444f59616a6f79808890959da0a8acafb5b8babfc1c2c4c5c7cbd1c8d0cac6c5c4c1bfbab8b2aca69e9792857c6f695e52463d33271c10020000000000010d1925303a444f59616b707c848c92989da0a7a8a9aaabacafacabaaaca49f9d95908a81797c88959f9f9f9f9f9f9f9f9f968a7d7063574a3d3024170a00000000000000000000000000000000000815212e3b4854616e7b8794aab4bfcad6d8ccbfb2a5998c7f7266594c3f33261908000000000000000000000000010e1b2834414e5b6774818e9aa7b4c1cddad2c5b8ab9f9285786c554b4034291c1004000000000008131e28323c464f59606a6f7a818790959d9fa7abadb2b3b6b8babebbbbbcbbbbbebab8b6b3b3adaba79f9d959189817a6f6a60594f463d32291e13080000000000000000000000000000000000000000000000000815212e3b4854616e7b8798a2aebac6d3d7cbbfb4aa95887b6f6255483c2f24180d010000000000000000000000000000000000000000000714212e3a4754616d7a8798a3aebac7d3d7cbbeb1a4988b7e7165584b3e3225180b0000040f19222b353d474f59616c717e87939aa4a79f9591847b6f6a7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b17202834404b545f69717e8b939ea8b2bdc7d1dcd2d2d2d2d2d2d2d2ddd8d4d2cbcacacacacacacacacacacacacacacacacacacacacacacacacacacacacac0b3a79a8d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2a3743505d6a7683909da9b3bdc6cac6beb3a99d9083766a5d5043372a1d10000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916232f3c4855616b707c838d939aa0a7acb2b9bbc0c5c6cad0cfcac6c5c3c2c1c2c4c5c7cbd0cac7c4bdb9b0a9a29792857b6e61594f44382c1e1308000000000005111e2a36414c56616b707d8691969fa2aaacb1b4b6b7b8b9bbb9b8b6b6afaca7a09d938e837d8a97a3acacacacacacaca3968a7d7063574a3d3024170a00000000000000000000000000000000000714212e3a4754616d7a8798a2aebac6d3d9cdc0b3a69a8d8073675a4d402f24190d01000000000000000000000003101c28343f4a546875828e9ba8b5c1cedbd1c4b8ab9e9185786b5e52452f23180c0000000000010d19242f3a444e58606b6f7c848e939aa0a7abb1b8b9bdc0c3c5c6cad0c8c9c8d0cac6c5c3c0beb9b8b1aba7a09d938e857c706b60584e443a3025190b0200000000000000000000000000000000000000000000000613202d394653606c7885929facb8c5d2dcd1beb1a4978b7e7164554b4035291d10040000000000000000000000000000000000000000030f1b27333f495363707d8996aab4bfcbd7d6cabeb3a996897c6f6356493c3023160900000a16202b343d474f59616b707e879299a4acb1a7a09691857c707885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18232e39424d57626c75818e96a1abb5c0cbd7dfe9dfdfdfebe2d9d2ccc8c6bfbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb3a79a8d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eabb8c5d0d6d0c5b8ab9e9285786b5f5245382c1f12000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8691959fa4acb1b8bdc3c7cbccc7c6c3bfbeb9b8b7b5b4b6b7b9bbbfc6c9cecec9c1bbb3a9a2978e81756b6054483a3025190d01000000030e18212d3946525e68707d869298a1a9aeb3b8bcc1c3c4c5c5c7c5c4c3c0bbb9b1aca59e959086929facb8b9b9b9b9b9b0a3968a7d7063574a3d3024170a00000000000000000000000000000000000713202d3946525d687985929facb8c5d2dacec1b4a79b8e817468564c4135291d1104000000000000000000000006121f2c3844505c667683909da9b6c3d0dcd0c3b6a99d9083766a5d5043372a1d07000000000004111d2935414c565f6a6f7d8691969fa4acb1b8bcc2c5c9cfcfd1cdcbc9c8c8c8c9cbcdd1cfcfc9c6c3bcb8b1aca59e9791867d706a60564c41362a1d140a000000000000000000000000000000000000000000000005121f2b3744505b657783909daab6c3d0dbcec2b5a89b8f8275675d5145392c20150a000000000000000000000000000000000000000005121f2b3744505b6574818d9aa7b4c0d1dcd2c6b9ada197877a6d6154473a2e21140700030f1b27323d464f59606b707d879299a3abb5b9b1a8a19792867d7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303c45505a606d7a849199a3afbbc2cdd7e1ecf7eee4d9d0c7c0bbb9b2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a79a8d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eabb8c5cfd5d0c5b8ab9e9285786b5f5245382c1f12000f1c2936424f5c6975828f9ca8b5c2c6c6c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d79839198a2aeb6bec3c8cdc8c7c0bbb9b6b2b3adabaaa9a8a9aaacaeb5b9bdc4ccd5cdc5bbb3a99e93897d7063564c41362a1d110500000009141f2d39444f59616d7a859298a2aab2babec5c8ced2ccc7c6c2bfbdbcbbbcbfbcb8afa79f989298a3aebac7c6c6c6bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000005111d2935414c566a7784919daab7c4d0dcd0c3b6a99d908376685d5245392c20130600000000000000000000000713202d3a4653606d7986929facb8c5d2dbcec1b4a89b8e8175685b4e4235281b0f02000000040f19232c3945525d686f7c859298a1a8afb6bec3c7cdd2cfc9c5c4c1bebcbcbbbbbcbec0c4c5c9ced2cdc8c3bcb8afa9a19892867c6f685e52463e2f261c110600000000000000000000000000000000000000000000030f1b27333f49536875818e9ba8b4c1ced9d2c5b8ac9f92867a6d6053473e30261c1106000000000000000000000000000000000000060f18202d394653606c7884919eabb8c4d1ded1c5b8ab9e928578685e5246392d2013070006131f2b37434e58606b707d869299a3abb5bdc3bab2a9a19892867d85929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e2a333f45525d686f7c87929fa6b0bbc5cfdae6efe8ddd2c7beb6afaca5a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49a8d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000101d2a3743505d6a7683909da9b3bdc5c9c5bdb3a99d9083766a5d5043372a1d10000f1c2936424f5c6975828f9ca8b5b9b9b9b9b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3945515d676f7c86929fa5afb9c3c7c3bcb8b5afaca9a6a9a29e9d9c9b9c9e9fa3abacb2bac2cad4cdc5bbafa59c8f8376685e5246392d2013070000020e1a26313c4955616c75818e97a1aab4bcc4cad0d4d0c7c0bbb9b5b2b0afafafb2b5b9bbb1aaa39fa3aab4bfcbd6d2c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000010d192430434f5c6976828f9ca9b5c2cfdcd2c5b9ac9f92867a6d6054473a2d22170b00000000000000000000000916222f3c4955626f7c8898a3aebac7d3d9ccc0b3a6998d8073665a4d4033271a0d000000000a16212c38444f59606d7a849197a2aab2bbc0c7d0d4cdc7c4bdb9b7b4b1b0afaeafafb1b4b7b9bdc4c7ccd4cec8c1bbb2aaa29891857a6d615a5042382d22170b00000000000000000000000000000000000000000000000b17222d3f4b5865727e8b98a8b2bdc9d5d3c7baaea3988a7d7164594f42382e23170f0500000000000000000000000000000000040d18212b37434e58626f7c8996a1adb9c5d2dbcec2b5a89b8f827568564c41362a1d1105000815222e3b4754606a6f7d869298a3abb5bdc7ccc4bbb3aaa298928687939facb9c6d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c18212935414c56606a737f8c949fa9b3becad6dde7e4d8ccc0b6aca49f989797979797979797979797979797979797979797979797979797979797979797978d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1926333f4c5966727f8c97a1abb3b9bdb9b4aba1978c7f7266594c3f3326190c000f1c2936424f5c6975828f9ca8adadadadadadaa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b555f6a717e8b939ea7b1bcbbb9b1ababa49f9d99959792908f8e8f9192999ea0a8b0b8c2ccd5cdc1b9ac9f92867a6d6154473a2e211407000005121e2a36424d5764707d8a939ea9b3bcc5ced6d0c9c1bdb5afaca9a5a3a2a2a3a5a9acafb6b4aeacaeb4bcc6d0dcd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000081a2734414d5a6774808d9aa7b3c0cfdad4c7bbafa3998a7d706353493f33271b0f0300000000000000000004101c2834404b5565717e8b98aab4bfcbd6d6cabeb3a9978a7e7164574b3e3124180b000000030f1b27323c4854606b75818e96a1a9b3bcc4ccd2d1cbc2bbb7b2adaba7a5a3a2a2a2a3a4a7aaacb2b7bbc1cbd0d4cdc4bcb4aaa1978f82756c61544a3f33281c0f03000000000000000000000000000000000000000000000615222e3b4855616e7b8896a0acb9c5d2d6cbbfb4aa9c9083766c61544a3f342821170d060000000000000000000000000000040c161f2a333c47545f6a75818e9ba9b2bdc9d5d4c8bcb1a7988b7e7265584b3f3025190d01000916232f3c4956626f7c859298a2aab4bdc6cfd6cdc5bcb4aaa399939399a4afbbc7d4d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19242f3a434e58606c78828f97a1adb9c0cbd5e0e0d4c8bbafa49a938c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a859299a2a9acb2adaaa29992857a6d6054473a2d211407000f1c2936424f5c6975828f9ca0a0a0a0a0a0a0a09d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f39434e58626c74818e95a0aab4afaca7a09d9993908c8986858482818384868c91969fa6b0bac3ced4c7bbafa3998b7e7164584b3e3125180b00000714212d3a46535f697683909ca5afbbc5ced7d0c7beb7afaba49f9c9996959596989c9fa4acb0bab8babfc6ced8e2d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000b1824313e4b5764717e8a97a9b3bec9d5d7cbc0b5ab9a8d8073655b5044372b1f150b01000000000000000006131f2c3845515c6774818e9ba7b4c1d0dcd2c6b9ada197887b6e6155483b2e22150800000007131f2c38444f5963707d89939ea8b2bcc5ced8cfc7c0bbb0aba8a19e9a989695959596989a9ea0a8aab0babfc6ced6cec6bcb3a99e948a7d70665b5044382b1f1207000000000000000000000000000000000000000000000714212d3a46535f697784919eaab7c2cdd8d0c6b7ab9f948a7d70665c50443d33291f170f07010000000000000000000000060e161e28313c454f59626f7c87939facb9c4cfdad1c5b8aca095887b6e6155483b2e22150800000a1724313d4a5764707e869298a1a9b2bac3cbd4d6cec5bcb4aba49f9fa4abb5c0ccd7d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313d44505b666e7b85929ea4aeb9c3ced8dfd2c6b9ac9f93877f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d68707d8792979ea1a8a19e9892877d70685d5245392c201307000f1c2936424f5c6975828f939393939393939393939083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313c46505a606d79839198a2aba39f9b95908b86837f7c7a7877767576777a7f848f949fa8b2bdc8d4cbc0b5ab9b8e8175685b4e4235281b0f00000815222e3b4855616e7b88949fabb7c1cdd7d1c8beb5ada59e99938f8c8a8988898c8f939a9fa6aeb6c0cbd0d8e0ead6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000815222e3b4855616e7b8897a1adb9c6d2dcd1c4b7aa9d9184786c6053463d31271d120700000000000000050e17202d3a4653606d7985929fabb8c5d2ded1c5b8ab9e928578695f53463a2d2114070000000915222f3b4854606b7783909da5afbac4ced7d1c7bdb5afa69f9c96918e8b89898888898b8d91969c9ea6aeb4bcc6d0d7cec4bbb0a69e9184786c605346392f24180c0000000000000000000000000000000000000000000005121e2a36424d576773808d9aa7b1bcc8d4d3c7bcb0a69d9184786d60594f453b31292118120b060000000000000001040a11172028303a434d57616c76828f9aa4afbbc8d6d7cbbfb5ab9d908377695f53463a2d21140700000a1623303c4955616c707d869197a0a8b1b9c2cad3d7cfc6bdb5afacacafb5bdc7d2ddd7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f28333f4a545e69707d8a929da7b1bcc6d0dbd4c8bbafa49a9083797171717171717171717171717171717171717171717171717171717171717171716f6a5f53473b2e2115080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56606b707d858d91969597928d867e716b61564c4135291d1104000f1c2936424f5c69758286868686868686868686868683776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a343f45515d676f7c86929f9f99928e89837e7a76736f6d676a696869686d7279828f96a0acb9c5d2d1c2b6a99c8f8376695c504336291d100004111d2935414c566673808c99a6b0bbc9d3d6ccbfb6ada39b938e87827f7d7c7c7c7f82878f949da4aeb7c1cdd7e1e3d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000613202d394653606c7985929eabb8c5d0dbd1c5b8aca0968a7d7063594f43392f231812090300000000060f17202a36424d5764717d8a97a2adbac6d3d7ccc0b5ab9b8f827568574d42362a1e1205000003101c28343f4a54636f7c8995a0abb7c1ccd6d7cbc0b5aba39f948f8984817e7d7c7b7c7c7e8184888f949fa3aab4bdc7d2d6cdc1b8aca0968a7d7063554b4035291d1004000000000000000000000000000000000000000000020e1a26313c4855626f7b88959fabb8c3ced8cdc2b8aca0958b7f726b60574d433b3329231d17110e0807070607080d11141c2228323a424c555f69707d8a949facb6c0ccd8d3c7bbaea3998b7f7265574d42372b1e120500000814202d3944505a616b707c859196a0a7b0b8c1cad2d8d0c7c0bbb9b9bbc0c7d0d9e3d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17222d38424d57616c74808d95a0aab4bfcad6d8ccc0b6ac9f948c7f736b64646464646464646464646464646464646464646464646464646464646464625f584e43372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a434f59616b707a808487888785807b716c61594f443a2f24190d01000714202d3a4753606d797a7a7a7a7a7a7a7a7a7a7a7a796d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18222935404b555f6a717e8b93948f87817c77716d686662605c555c5b565d60676d7984919eaab7c4d1d0c4b7aa9d9184776a5e5144372b1e11000613202c3945525d687784919eaab7c2cddacfc4baaea49b918b817b7672706f6f7072767c828d929da5afbbc5cfdae6d6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000005121f2b3744505b6574818e9baab4bfcad6d4c8bdb2a89c9083766b60554b403429241a140e0908070c11172129323b46535f6975828f9ca9b3becad6d4c7bbafa4998b7e7164584b3e31261a0e02000006121f2b3844505c6675818e9ba7b1bcc9d3d9d0c7bbafa399928b827c787472706f6f6f707174777c828a9298a3abb5c0ccd7d4c8bdb2a89c8f8275675d5145382c1f1306000000000000000000000000000000000000000000000915212e3a47535f6a7683909da8b2bdc8d4d4c8bdb1a89f92877d6f695e554d453d342f27221b19151413131415191d20262d333c444c545d676e7b85929fa6b0bec7d2d7cbc0b5ab9f92867a6d6154473c31261a0e02000004101c28333e475059606a6f7b8490959fa6afb8c0c9d8d9d2ccc7c6c6c7ccd2d9e2ebd7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f3b454f59606d79839098a2aebac1ccd6d2c7beb0a69f92877d6f685d575757575757575757575757575757575757575757575757575757575755534e463c32261b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313d474f5961686d73787a7b7a79746e69615a50473e32281e1308000006131f2c3845515c676d6d6d6d6d6d6d6d6d6d6d6d6d6d675d5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061018242f39434e58626c75818e8a827b756f6b64615d565653514b4f4e4c52555d6773808d99a6b3c0ccd2c5b8ab9f9285786c5f5245392c1f12000714212d3a4754606d7a86939facb9c6d2d5c9bdb2a89c928b7f756e696663626263656a6f78808d939ea9b3bec9d5e3d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000030f1b27333f495364707d8a98a2aebac7d3d9cec3b7ab9f94897c6f675c51453e362a251f1a161516181c2328333b44505a616e7b87929facb9c5d0dbd2c6b9ac9f93867a6d6154473a2e2114090000000713202d3a4653606d7885929fabb8c3cdddd2c7beafa59f92877e766f6c6565636262626365676a6f757e869299a4afbbc7d1d9cec3b8ac9f9286796d6053473a2d2014070000000000000000000000000000000000000000000006121f2b37434e5864717e8b96a0acb8c3cfd9cec3baaea39992857b6e675f574f454039332d2a2522212020212224292c2f383f444e565d666d79839197a2adb8c2d0d9d4c7bbafa3998e8175685e5246392a1f1409000000000b17222c353e474f585f696e7a8390949ea5afb7c0ccd2d9d7d4d2d2d4d7dde3ebe4d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29333e45515c676e7c86929fa5afbac4cfd9d0c2bbafa39991847a6d605a504a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4847433c342a20150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2b353d474f565e6166686e6f6e6c66615e5750483e352c20160c01000004101c2934404b555c60606060606060606060606060605d554b4035291d10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d28313c46505a606d79827d766e6a63605954524c4a4d4b51535558565e616a74808d9aa7b3c0cdd2c5b8ac9f9285796c5f5246392c1f13000a1623303d495663707c899aa4afbbc8d4d2c5b9ada1968d80736d615e5757565556585f666d77818f97a1adb9c7d1dcd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000b17222d3a4753606d7a86929facb8c3cdd9d3c7bcb0a69d9083796d605a50483f36312a2522212223292e343b454d56616c76828f99a3afbbc7d7d5c9beb3a99c8f8376685e5246392d2013070000000916232f3c4956626f7c8997a2adbac6d5d8ccc0b6ac9d938a7e716d63605b535656555556585860626c717d87939fabb5c0cbd7d3c7baaea398897d7063564a3d3023170a00000000000000000000000000000000000000000000030f1a26313c4653606d7884919ea7b1bdc7d1d7cbbfb4aba1979083796e696059514b443f3836302f2e2d2c2d2f2f35393d424a50575f686d78828f95a0a9b3becad4d6cabfb4aa9f92877b6e61564c41362a180e030000000005101a232c353d464e575f686e7a828f939da5aebbc0c7d0d9e0dfdfe0e3e8eef5e4d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b17202934404b555f6a727e8b939ea8b2bdc7d1d7cbc0b5aba1968f81756d62584e433e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3b37322a22180e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d1a232c353d444c5254565e616261605b54524d453e362c231a0d04000000000c18232f39434b515353535353535353535353535353514b43392f24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2a343f45515d676d76706c625f57544f4d5354575a555d60626467686d727c85929eabb8c5d1d1c4b7ab9e9184786b5e5145382b1e12000c1926323f4c5965727f8c98acb6c0ccd8d1c4b7ab9e9184796d605b534d4a4949494e545c656d7a85929eabb5c0cbd7d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000613202c3945515d6774818e9ba7b1bcc8d4d8cdc2b8aca0958d80746c615a5146423b36302f2e2f2f34383f444d575e68717e8a949eabb5c0cbd7d2c6b9ada1978a7e7164564c41362a1d11050000000c1925323f4c5865727f8b98a9b3becad6d4c8bbafa49a8e81746c625a5350494a494849494b4e545a616b73808d99a3afbbc7d3d6cbbfb4aa998c7f7366594c403326190d00000000000000000000000000000000000000000000000a151f2b3844505c66717e8b95a0abb5c0cbd7d1c6bdb3a9a09590837b6f6b605c55504946413d3c3a39393a3b3d4145474f545b606a6e7a828f949ea8b1bbc5d0d7cec5baaea2988e8174695f53443a3025190600000000000008111a232b343c454d565e686d79818e939ca4afb6bec7cfd8e0e9edf0f4f9f1e4d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18232f39434e58626d75818f96a1abb5c0cbd7d1c7bdb2a89e938b7e716a5f554b403431313131313131313131313131313131313131313131312f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232c323a4146474c5254555453504a46423b332c241a1108000000000007121d2731394045474747474747474747474747474745403931271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18222935404b555d606964615a53535559575e61646669676d6f7174767a7f859297a2adb9c6d2d0c3b6a99d9083766a5d5043372a1d10000e1b2834414e5b6774818e9aa7b4c1d2d6cabeb3a9988c7f72675c5146423d3c3c3d424a535d67737f8c99a3afbbc7d3d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000004111d2935404b55626f7c8995a0acb8c2cdd8d4c8bcb1a79d928a7e716c625b534d46423d3c3b3c3d40454a50575f696e7a85919ea6b0bdc7d1d6cabeb3a99e9185796d6053463a3025190d010000000e1b2734414e5a6774808d9aa7b4c0d0dbd2c6b9ac9f93877b6e615a5046443f3d3c3c3c3d3e43475059616d7a86929facb9c5d2dcd0c1b4a89b8e8175685b4e4235281b0f000000000000000000000000000000000000000000000003101c28343f4a54606d78839099a3afbbc3ced7cfc5bbb1a7a09591857d726d67605b53524c4a4847464547484a4c52545960666c717c848f949ea6b0bac3cdd7d0c5bcb1a79f92867b6e61574d4232291e130800000000000000081119222a333b444c565d676d78818d929fa4acb5bdc6ced7dfe8f0f9fff1e4d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313c46515b606d7a849199a3afbbc2cdd7cfc4baafa59f92867c6f675c51453e332924242424242424242424242424242424242424242422211f1b150e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a20283036393b414647484746443f38363029201a1208000000000000010b151f272f34383a3a3a3a3a3a3a3a3a3a3a3a3a3a38352f271f150b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061018242f39434b51535c575554585f626669696e717376787a7c7e8083868c9297a2a9b3becad6cbbfb5ab9a8e8174675b4e4134281b0e000f1c2935424f5c6875828f9ba8b5c2ced2c6b9ada197887b6e62554b4036312f2f3038414c55616d7a86929facb9c5d2d6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000010d18242f3a4854606a7783909da7b1bcc8d4d9cdc3b9aea49f92867e726d615e57524d4a4948494a4b51545c60696e7b849197a1adb8c2cfd9d0c7b9ada2978c8073665c514538291e130800000000101c2936434f5c6976828f9ca9b5c2cfdccfc3b6a99c908376695e53483f37332d2f2f2f3032373e46525e6876828f9ca9b5c2cfdcd0c3b6a99d9083766a5d5043372a1d100000000000000000000000000000000000000000000000000b17232e3844505c666f7c87929fa7b1bcc5cfd6cdc3b9b1a7a09792877f79716c65615e565755545252545556565d60646b70787e8591969fa6b0b8c1ccd5d6cabeb4aaa0958c7f72695e53453c3120170c020000000000000000071018212a323b434c555c666d74808c939aa3abb4bcc5cdd6dee7f0f8f1e4d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a343f45525d686f7d87929fa6b0bbc5d0d6ccc1baaea2989083796d605a50453b2f261c171717171717171717171717171717171717171515120f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080e161e252a2d3036393b3c3b3938332d2a251f170e080000000000000000030d151d23292c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c29241d150d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f182129313940454e53565e61666a6f7276787b7d80828586888b8d9092999fa2a9b3bbc5cfd3c7bbaea3998b7e7164584b3e3125180b00101d293643505c6976838f9ca9b6c2cfd1c5b8ab9e9285786a5f5343392f252322262f3a46525e687783909daab6c3d0d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000007131d2c38434e5864707d8a959fabb8c0ccd6d5cbc0baaea39892877f756e69615e575755545557555c60666d727b849196a0a9b2becad3d2c7beb2a89e92857a6d60544b403428170c0200000000101d2a3743505d6a7683909da9b6c3d0dacdc0b4a79a8d817467574d42362b272223222223272b36414c566773808d9aa6b3c0cdd9d0c3b7aa9d9084776a5d5144372a1e1100000000000000000000000000000000000000000000000006111c28343f4a54606a74808d95a0a9b3bdc7d0d5cbc3b9b1a9a199928c847e78726e68656362615d5d60626365686d71767d838b9297a0a8b0b8c1cad3d2c9c0baaea2989083786d60574d42332a1f0e0500000000000000000000060f182029313a434b545c606e737f889299a2aab3bbc4ccd5dee6eff1e4d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18222935414c56606b73808c949fa9b3becad6d6cabfb4aaa0958d80746c61574d42382d22170d0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0908060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c13191d20252a2d2e2f2e2d2b28221c1a140d0500000000000000000000030b12181c1f20202020202020202020202020201f1d18120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18212a333b424a50575f62686e73777b7f8285878a8d8f919695979a9c9fa3abadb3bcc5cdd1cabfb4aa9f92867a6d6054473a2d21140700101d2a3743505d6a7683909da9b6c3d0d0c3b7aa9d9084776a584e4331271d16141d2935414c566774808d9aa7b3c0cdd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000010f1b27323d4955616c7683909da5afbac4cfd8d7cbbfb4aaa399938b817b736e6966646261626365676d70787f859196a0a8b2bbc4cfd8ccc0b6aca0968c7f72685d5242392e2318050000000000111e2a3744515d6a7784909daab7c3d0d9ccbfb2a6998c7f7366594c4031231b17161516161b25303f4c5965727f8c98a5b2bfcbd8d1c4b7ab9e9184786b5e5145382b1e12000000000000000000000000000000000000000000000000000b17232e38424e58606d79839097a2abb5bec7d1d5cbc3bbb3aba39f96918a837e7a7672706f6d68686d6e7072767a7e828990959fa2a9b2bac2cad3d2c9c0b7aea49f92867b6e665c50453b3121180e000000000000000000000000060e171f283139424a505c636d727e879298a2a9b2bac3ccd4dde5eee4d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f1924303a444f59606d78829097a2adbac0ccd5d0c6bcb1a79d928a7d70695e544a3f332820160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d1114191e20212221201f1c17110e090200000000000000000000000001070c1013141414141414141414141414141413100c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2a333c454d545c606a6e747b8084888c8f929797999c9ea1a9a4a7a9acafb5babec5cecfc6bfbaaea2988e8174685d5245392c20130700111e2b3744515e6a7784919daab7c4d0cfc2b6a99c8f8376695c50433129150b0b1925303e4b5864717e8b97a4b1becad6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000a16212d3944505a63707d89939da8b2bdc6d1dcd1c6bcb4aba49f938e86807b7672706f6e6f707275797d838b9298a0a8b2bac3cdd6cdc4bbafa49a9184796d60564c4130271d12070000000000101d2a3743505d6a7683909da9b6c3d0d9ccc0b3a6998d807366544a3f34281e1a1716171a1f27333f495366737f8c99a6b2bfccd9d0c4b7aa9d9184776a5e5144372b1e110000000000000000000000000000000000000000000000000006111c26303c45515d676e7b859299a3acb6c0c7cfd5cdc5bdb4aea8a19e95908b87837f7d7b7a79797a7b7d7e82868b8f949da0a7adb3bcc3ccd4d6c9c0b7afa59c928a7e71695f544a3f33291f0f0600000000000000000000000000050d161f2730383f44525b626c717d869297a1a8b2bac2cbd4dce5e4d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323d44505c666e7b85929fa5afb9c3cfd8cec3b9aea49e92857b6e665b50443d32281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105080e111414151413120f0b06000000000000000000000000000000000000040607070707070707070707070707070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313c454d575f666d727b81868c9196999c9ea2a9a6a9abadb2b1b3b6b9bbc0c7cacdc8c3bcb4aea49f92867b6e61564c4135291d110400121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f081724313d4a5764707d8a97a3b0bdcad6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000004101c28333e4854606b74818e96a1abb5bfcbd7d8cfc6bdb5afa59e98928c87837f7d7c7b7c7d7e81858a90959fa2aab2bac3ccd5cec4bbb1a79f93887d70675c51433a2f1e150b0000000000000f1c2936424f5c6975828f9ca8b5c2d2ddcec1b4a89b8e8175665c50443a302a25232323252a313944505b6574818e9aa7b4c1cddacfc3b6a99c908276695d5043362a1d1000000000000000000000000000000000000000000000000000000a141e2935404b555f69707d87929aa4afb5bdc6ced5cfc6bfbab2aca79f9d9a93908c8a888785858788898b8f92999c9fa6acb1babec5ced5d0cabfb7afa59d938d80736c61574d42382e21170d000000000000000000000000000000040d151e262e344049515a616b707d859196a0a8b1b9c2cad3dbe4d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162028343f4a545e69717e8a939da7b1bcc6d1d5cbc0b9ada2979082786c60594f443a2f24190f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080908060603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a434d575f696e787f868e92999ea0a8a9abadb3b3b5b8b9bdbec0c3c5c7cbc9c5c3bcb8b1aaa39f928b7f72695f53443a3024190d0100121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0a1723303d4a5663707d8996a3b0bcc9d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000b17222c38444f59606d7a849199a3aebbc0c8d6d8d0c7c0bbafaaa29f9a93908c8a8887888a8b8e92989da0a7aeb3bcc4ccd5cec5bcb3a99f958d80746b60554b4031281e0c030000000000000e1b2734414e5a6774808d9aabb5c0ccd7d1c4b8ab9e9184796d60554b433b3631302f3031363b434b55606c7884919eabb7c4d1dacec1b4a79b8e8174685b4e4135281b0e0000000000000000000000000000000000000000000000000000020c18242f39434d57616b717e88939fa3abb4bcc3ccd5d1cbc4bdb9b1abaca49f9c989695989292989596989c9fa3ababb0b8bcc3cad0d6cdc5bebaada59d938e81776c605a50453c30261c0f0500000000000000000000000000000000030c141c2328373f485059616a6f7c8491969fa7b0b8c1c9d2dad7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e17232e38424d57616c74818e95a0aab4bfcbd7d6cabeb3a99f948c7f736b60564c41352922180d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030608090d0d0d0d0d0d0d0d0d0d0d0d0d0d0a09070300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c565f696e7b838c92989fa3abacb2b5b8b9bec0c2c4c5c9cfcac7c5c3c0bdb9b7b1aba7a098928b80736d62574d4232281e13080000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f091623303c4956636f7c8996a2afbcc9d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000005101b27323d45525d686f7d87929fa4aeb6c0cbd0d8d2ccc1bcb4aeaca49f9d999795949596989b9fa2aaacb1babec5ced8cdc4bcb3aaa1979083796d60594f43392f1f160c000000000000000b1724313e4a5764717e8a99a4afbbc7d4d2c5b9ada1968a7d70675d554d46423e3d3c3d3e42464d555d67707d8996a1acb9c5d2d3c7bbb0a6988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000007121d27313b454f59626c727f8b9299a2aab2bac0c9ced6cec9c3bcb8b6afaca9a5a3aaa29f9fa2aaa3a5a9acaeb5b7bbc2c8ced6d0cac2bbb3ada39c938e81786c655b50483e332a1e140a000000000000000000000000000000000000020a1117252d363e474f58606a6e7b8490959fa6afb7c0c8d7ddcabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b45505a606d79839198a3aebac1cdd6cfc5bbb0a69f92877d6f685d52453f342a1f150b010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f1315161a1a1a1a1a1a1a1a1a1a1a1a1a1a161613100b04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d686e7b8490959fa3aaaeb4b9bdc2c5c6cacbc7c5c4c2c0bfbab8b6b4b2acaaa79f9d9590867f736e645b51453b3120160c020000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000b16212935414c56606b727f8b929da4aebabfc6ced7d7cec6bfbab6afaca9a5a3a2a1a2a3a5a8acaeb4b8bcc3cad0d2ccc3bbb3aaa29891857b6e675c51473d31271d0d04000000000000000714212e3a4754616d7a86939facb9c2cfd5c9bdb2a99e9184796d675e57534d4b4a494a4b4d53575f676d7984919ea8b2bdc9d5d0c7b7ab9f94877b6e6154483b2e211508000000000000000000000000000000000000000000000000000000010b151f2a333e47505a626d727f879298a0a8afb9bdc4cad0d5cdc8c7c0bbb9b6b2b0b4aeacacaeb4b0b1b5b9bbbfc6c7ccd4d2ccc5bebab0a9a29f918c81786d665b53493f362c21180c02000000000000000000000000000000000000000006131b242c353e464e585f696e7a838f949ea5aeb6bfccd2cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e29333e45515d676f7c86929fa6b0bbc4d0d7cdc2bbafa39991847a6d605a50463c31271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f151b1f222327272727272727272727272727272322201b160f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e58606d7a8491969fa7aeb4babfc6c9cdc7c4c3c0bbb9b7b5b3b4aeaca9a7a8a09e9a95908a837c726d645c52493f33291f0e04000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000040d19242f3a434f59626d74808d929da4aeb4bcc3cbd1d7d0cac7c0bbb9b6b2b0afaeafb0b1b4b8babfc5c8cdd5d0c7c0bbb1a9a19892867c6f695e554b40352b1f150b00000000000000000713202d3946525e6875828f9ba6b0bdc6d1cfc4b9aca0968f82796e69615e575756565657575e61696e79828f96a0acbac4ced2c7bdb1a79c8f8276695e53463a2d21140700000000000000000000000000000000000000000000000000000000030d18212c353f48515b626d727d8691969da5acb2babfc6cacfd3d2ccc8c6c3bfbdbfbab8b8babfbcbec2c5c7cbd1d3d0cbc7c0bbb3ada69f97928a7f746d665c544a41382d241a0f060000000000000000000000000000000000000000000009121b232c343d464e575e686d79828e939da4adbbc0c4c4beb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c17212935404b555f6a727f8b949ea9b2bdc7d2d7cbc0b5aba1968e81756c62584e43392f23180e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101920272b2e2f3434343434343434343434343434302f2c2721191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4754606a74818e96a0a8b1babfc6cbccc7c2bcb7b6b5afacaaa8a6aaa29f9d9a9896918d89837e786f6a625b524a40372d21170d00000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000008131e28313d47515b646e74808d929fa3aab1bbbfc6cbd1d5d2ccc8c6c3bfbdbbbabbbdbec1c5c6cad0d4cfc9c3beb6afa7a09791867c6f6a60574d43392f23190d03000000000000000005111d2935414c5663707d89949fabb4bfcbd5c9bdb2a89e948f827b736e6967646362636466696e737b828f949ea8b2bdccd7ccc0b5ab9f958a7d7064574d42362a1e12050000000000000000000000000000000000000000000000000000000000060f1a232d363f49515b626b707c848e939ea0a8aeb4b9bec5c7cdd2d3d2cfcbd0cac7c5c5c6cad0cbcfd2d3d2cec8c6bfbab5afa9a29f9490857e736d605c544a42382f261b120800000000000000000000000000000000000000000000000009111a222b343c454d565e676d78818d929ca3afb5b7b7b7b1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f18242f39434e58626d75828f96a1abb5c0ccd7d1c7bdb2a89e938b7e716a5f554b40342920170b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19222b32373b3c40404040404040404040404040403d3b38322b23190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b55626f7c87939fa8b2bac2cbd1cac1bbb7b0aba9aba39f9d9c9a979892908d8b8884807c77716d665f58514940382e241b0f0600000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000010c161f2b353f49525c646e74808b9298a0a7aeb5bbc0c7c9cfd2d4d2d0cccac8c7c8c9cbced2d3d2cdc8c4bdb9b2aca49f9590857c6f6a60584e453b31271d1107000000000000000000010d1925303a4854606b76828f99a3aebac0c9cec4bab0a69e949086807b767371706f707173767b808690949ea6b0bac4cecac1bbafa4999083786c6053463b31251a0e0200000000000000000000000000000000000000000000000000000000000008111b242d373f485159616a6f79818a91969fa2aaadb3b7bcc2c5c7cad0cfd1d1d2d2d2d2d1d1cfd1cbc7c5c3bcb8b4aeaba49f97928b827b716c635b504a42382f261d140a0000000000000000000000000000000000000000000000000000081019222a333b444c555d666d77808c919fa4abababababa4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313c46515b616d7a849199a4afbbc2ced7cfc4baafa59f92867c6e675c51453e33291d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202b343d4347494d4d4d4d4d4d4d4d4d4d4d4d4d4d4948443d352b21160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d6775818e9aa4afbac3ccd7c8c0b8b0aaa69f9c999992918f8d8a888583817e7b77746f6b64605c544e463f372e261c12090000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000040d19232d37404a525c646e737e8691959fa3abafb5b9bec4c5c9cecdcfd0d0d1d0cfcfd1cbc7c5c3bcb8b2ada8a09a938d837b6f6a60584e463d33291f150b000000000000000000000008131e2c38444f59626e7b86929fa5afb7c0c9ccc1b8b0a69f98928c8783807e7d7c7d7e8083878d92989fa6b0b8c1cccac0b8afa59f93877c6f655b504437291f1409000000000000000000000000000000000000000000000000000000000000000009121b252d363f474f585f676d747d848c92989ea2a9abb0b5b8babfc0c2c4c5c5c7c7c5c5c4c2c0bfbbb9b6b1acaaa39f99938e857f786e69615a51443f3830261d140b02000000000000000000000000000000000000000000000000000000070f182129323a434b545c656c747f8b93999e9e9e9e9e9e978b7e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a343f46525e68707d87939fa7b1bcc5d0d6ccc1baaea2989083796d60594f453b2f261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27323d464e54565a5a5a5a5a5a5a5a5a5a5a5a5a5a56544f473d32271b1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7985929facb6c0ccd5cfc0b6aea69e9c94908c89868482807e7b797674726e696763605953514a423c342d251c140a000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000007111b252f38414a525c646c717c838c92999fa3abadb3b7b9bdbfc1c2c3c3c4c3c3c2c0c0bbb9b6b1aba9a19e96918880796e6960584e463d342b21170d03000000000000000000000002101c27323d47535f69727f8c939da5aeb9bec4c9c1b8b0aaa29f9993908d8a8989898a8d9093999fa2aab0b8c1cac5bebaafa69e938c7f736a6053493f3327170d0300000000000000000000000000000000000000000000000000000000000000000009131b242d353e464e555d606c70797f868c92979c9fa6a9acaeb4b3b5b7b8b8babab9b8b7b6b4b5aeaca9a7a09d98928d87817a726d665e57504840342e261e150b020000000000000000000000000000000000000000000000000000000000060f172028313a424b535b606d737f8791919191919191918b7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18222a36414c56606b73808d959faab3becad6d6cabfb4aaa0958d80746c61574d42382d22170d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e58606267676767676767676767676767676360594f44382c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000091623303c4956636f7c8998a2aebec7d2d1c7bdaea49d948f88837f7c7a777573716e6d666765625f57585b53504a4239302a221b130a02000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000009121d262f38414a525a626a6f7980868e92999ea1a9aaacb2b2b4b5b6b7b7b7b6b5b4b5afaca9a79f9d96918b847d746d675e574e463d342b22190f05000000000000000000000000000b16212b37424d57626d74818e939da4adb3b9bec4c2bcb4aeaba49f9c9a9796959697999c9fa4abaeb4bcc2c8c0bbb3ada59d938e81776c60584e41382d221705000000000000000000000000000000000000000000000000000000000000000000000109121b232c343c434b515a61676d737a80858b9094999c9fa2aaa7a9aaabacaeaeacabaaa9a7aba39f9c9995918c86817b746d68605c544d453e3628231c150c0300000000000000000000000000000000000000000000000000000000000000050e161f2830394149505b636d727e8484848484848484847e7164574a3e3124170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101925303a444f59606d78839098a2aebac1ccd5d0c6bcb1a79d928a7d70695e544a3f332820160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4754606a6f7373737373737373737373737373706b6054483c31261b0f010000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98aab4bfd0d7cbc0b5ab9d928d827b7673706d6769676462605c5458545b606468605b544a3f332820170c0300000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000b141d262f384048505860666d737b81878d92979a9ea0a8a5a7a9a9aaaaaaa9a8a7aba39f9d9995908b847f796f6b605d554d453d342b221910070000000000000000000000000000050e1a26313c45515b606d78818d929ea1a9adb3bbc4c6bfbab5afaca9a6a4a3a2a3a4a6a9acafb5babfc6cec0b6aea9a29f938e81796d655b50463c2f261b110600000000000000000000000000000000000000000000000000000000000000000000000009111a222a3139404550555c60686d737a7e83888c8f9298989a9c9e9e9fa3a39f9e9e9c9a989992908c88847f7a746e69615e56504a423b332c2417110a03000000000000000000000000000000000000000000000000000000000000000000050d161e272f383f44515b626c71777878787878787878716c6155493c3023160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323d44505c666e7b85929fa5afbac3cfd8cec3b9aea49e92857b6e665b50443d32281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916232f3c4956626f7c80808080808080808080808080807d7063584e43372b1d13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3bfd0d4c7bbafa3998d80756e6a6663605d555a57555351535b60666c71746c665b50443d33291e150a00000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000020b141d262e363e464e545c60696e747b80858a8e919697999a9c9d9d9e9d9c9c9a989992908c88837e79726d666059514b433b332b22191007000000000000000000000000000000000915202a333f44515c666d78808a91979ea1a9b3bec9cac7c0bbb9b6b3b1b0afb0b1b3b6b9bbc0c7cad0c5b9aea49c97928a81786d675c53493f342b1d140a00000000000000000000000000000000000000000000000000000000000000000000000000000810181f282f353e434b51565e61676d72767b7f8286898b8d8f91929298999292918f8d8c898683807c77736e68615f57524c443f383029211a1206000000000000000000000000000000000000000000000000000000000000000000000000040c151d262d334048515a61646b6b6b6b6b6b6b6b6b64615a5044392d2114080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162028343f4a545f69717e8a939da8b2bdc6d1d5cbc0b9ada1978f82786c60594f443a2f24190f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a868d8d8d8d8d8d8d8d8d8d8d8d8d82766a5f53473a2f24180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000010e1a2734414d5a6774808d9aa7b3c0cdd2c5b9ac9f92867a6d625f575653514b4c5254555d60656c70787e81786c60594f453b30261c1106000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000020b141c242d343c424b51575f61696e74797d8184878a8c8e8f90909190908f8d8b898683807c77726d67605c544f4540393129211910070000000000000000000000000000000000030e18212834404a545c666c747d858c9197a1adb9c6d2d2ccc7c6c3c0bdbcbcbcbdc0c3c6c7ccd2d6cec1b5a89c928d857e746d665c554b41382d22190b02000000000000000000000000000000000000000000000000000000000000000000000000000000070d161d2429313940454c52555d6065696e7276797c7f8082848585868686858483817f7d7a76736f6a66615e56534d46413a342e261e170f080000000000000000000000000000000000000000000000000000000000000000000000000000030b141b2227363f485055575e5e5e5e5e5e5e5e5e575550483e33281c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17232e38424d57616c74818e96a0abb4bfcbd7d6cabeb3a99f948c7f736b60564c41352921180c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e6875818e9a9a9a9a9a9a9a9a9a9a9a94887c6f62554b4035291d110400000000000000000000000000000000000000000000000000000000000000000000000000000000010d1a2734404d5a6773808d9aa6b3c0cdd2c5b9ac9f9286796d615f575857585a565d6064676d72787d838b8c7f736b60574d42382e23170f060000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000020a121b222b303940454d53575f61666d7074777b7d7f8182838484848382817f7d7a76736f6a65605c55514b423d352f271f170f0700000000000000000000000000000000000000060f18232e39424a545b606b70797f85919eabb8c4d1d9d4d1d0cac6c5c3c2c3c5c6cad0d1d4d9d9ccc0b3a6998d807a716c605c544b43392f261b10070000000000000000000000000000000000000000000000000000000000000000000000000000000000040c12181f272f343a41464b5153575f6166666d6f7274767778797979797877767472706d6766625f5854524c46423c363028231c140c0500000000000000000000000000000000000000000000000000000000000000000000000000000000020a1117242d363e45494a5151515151515151514a49443e362c22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b45505a606d79849199a3aebac2cdd6cfc5bbb0a69f92877c6f685d52453f332a1e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c56626f7c89959fa6a6a6a6a6a6a6a6a69a8d8074675d5145392c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000c1926333f4c5966727f8c99a5b2bfcfd3c7baaea3998d80756e69666564656668686d7174797e848a909593877d70695e544a3f342821180d0300000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000910191e272e343b42464d53545c606367696e707274767677777776757472706d6866625f5853514b4540393029241d150d0500000000000000000000000000000000000000000007121c273039424a505b656c737d85929fabb8c5d2cec8c5c3bebab8b7b5b7b8babec3c5c8ced5d0c3b6aa9d90837c716c615a50463c30271d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d151d232930363a4045474d5355545c60636567696b6b666d6d666b6b69676563605d5555534e4746413b37312a251e17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121b242c33393c3e4445454545454545453e3c39332c241a10050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e29333e45515d676f7c86929fa6b0bbc4d0d7cdc2bbafa39991847a6d605a50453c30271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925303a4754606a7783909da9b3b3b3b3b3b3b3ab9f92857a6d6053473d32271b0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a9b3bec9d5cbbfb4ab9c928d827b77737171727374767a7d81858b91959da09992857b6e665c50443e332a1f150b01000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000000070c151d232831363c42464a505357575e61646667696a6a6b6a6969676563605d5655534e47454039342e271e18120b030000000000000000000000000000000000000000000008131e28313d47505a606c777f879297a2adbac6cbc3bcb8b7b4aeabaaa9aaabaeb4b7b8bcc3cbd1c4b8ab9f9590867e716c61584e43392e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181e252a2f35393b4246484b515356585a5c5e545c60605c545e5c5a595653514b4847433c3936302b261f19130b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121a22282d303138383838383838383831302d28221a120800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c18212935404b55606a727f8c949fa9b3bec7d2d7cbc0b5aba1968e81756c62574e43392e23180e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2b38434e5864717e8b97a1adb9c0c0c0c0baaea2988b7e7165584e43372b1e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8897a1adb9c7d1d1c6bdaea49c948f8883807e7d7e808183868a8e92979da0a8aba1979082786d605a50453b31271d1207000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000030b12181f262a3137383f44464a4d535457595b5c5d5d5e5d5d5c5a585654524c4847433c38342f28231d150c070100000000000000000000000000000000000000000000010d19242f3a434f59626c74808c9399a2a9b3becabfb9b1acaaaaa29f9d9c9d9fa2aaaaacb1b9bfc8c8bcb1a79f9892877e716a60554b4034281b110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c13191d24292c31363a3b404546494c4d4f514a505353514b51504e4c4a4745403c3b37322d2a251e1a140d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171c2123242b2b2b2b2b2b2b2b2b2423211c171008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18242f3a434e58606c77828f97a1acb6c0ccd8d1c7bdb2a89e938b7e716a5f554b40342820170b0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020f1b27323d4753606d7985929eabb5c0cccdcabeb3aa9d9083776a6054473a2f24190d010000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f697885919eabb5c0cbd7cfc0b6aea69e9c95908d8b8a8b8d8e9092999b9ea2a9acb1b3a99f948d80736c61574d43392f23180c000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000000000000070c141a1f262b2e34383a3d4246484a4c4e4f50515151504f4e4c4a4745413c3a37312c29231d18120b0300000000000000000000000000000000000000000000000004111d2935414c55606b717e8b929fa4abb3bbc5bfb6ada7a09d989892908f909298989da0a7adb6bfc7c3b9b1aaa29992867c6f675c5145382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d13181d20262a2d2e34383a3c3f4143443f44464645404443413f3d3a39352f2e2b26201e19140e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c111417171e1e1e1e1e1e1e1e1e171614100b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d28313c44505b656e7a85919aa4afbbc3ced7cfc4baafa59f92867c6e675c51453e32291d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a161f2c3845515c6773808d99a4afbbc7d4d0c5b8aca095897c6f62564c4135291d110400000000000000000000000000000000000000000000000000000000000000000000000000000006121e2b37424d576773808d99a3afbbc3cdd7c8c0b8b0aaa79f9d99989798999b9c9fa3ababadb3b8bdbbb0a69d928a7e70695f554b4034291c10040000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000003090e141a1c23282c2d31363a3b3d3f4143434444444342413f3d3a39352f2e2b261f1c18120c0700000000000000000000000000000000000000000000000000000613202c3945515d676f7d87929fa4afb5bdc5bfb5ada49c95908b878584828485878b90959ca3adb5bfcbc3bcb4aba3989183796d6053493f33271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d11141a1e2123282c2d303234362e34383a3a38342e363432302d2c2924211f1b15110d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0b1112121212121212120b0a080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f27333f49535e68707d88939fa7b1bcc6d0d6ccc1baaea2989083796d60594f443b2f261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2934404b55616e7b87939facb9c3ced4c8bcb1a79b8e8174685d5245392c20160b000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313c4855616e7b87929fa8b1bbc4ccd2cac1bbb7b1abaaa6a4a4a5a6a7a9acafb5b8b9bec5c8c2b9aea49f92857b6e675c5145382c1f13060000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000003090e11171c1f20252a2d2e313334363737383736363432302d2c2924211f1b15100c0701000000000000000000000000000000000000000000000000000005111d2935414c56606d7a859199a3aebbc0c7c3b9ada39c918c837e7a78777677787a7e838c919ba3adb9c2cec6bdb4aaa0958b7f72655b5044372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104090e1214181c1f202325272923282c2d2d2c28232927262320201d1815120f0a050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000202020202020202020202020202040d17222d38414c56616b73808d95a0aab4bfcad6d6cabfb4aaa0958d80746b61564d42382d22170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f3946535f6975828f9ca8b2bdc8d4cdc3b8ac9f92867a6d6054473d32271b10020000000000000000000000000000000000000000000000000000000000000000000000000000000915212d3a46535f6973808d95a0a9b2bbc0c7d0ccc7c3bcb8b6b3b1b0b1b3b4b6b9bbc0c5c6cac8c5beb9b1aba2979083796d6053473a2d2014070000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c1012131a1e2121242628292a2a2b2a2a2927252321201d1915120f0a0400000000000000000000000000000000000000000000000000000000000713202d3946525e6873808d97a1abb5bfccc8bcb1a79c918c7f78716d686a696a686d71787f8c919ba7b1bcc7d0c6bcb1a79d9184786c605346392d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000205070c10131316191a1c171c1f20201f1c181d1b19171413100d0706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e06111b262f3b444f59606d79839098a2aebac1ccd6d0c6bcb1a79d928a7d70695e544a3f33281f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2a36424d5763707d8996a0acb8c6d0d3c7baaea2988b7f7265594f44382c1e130800000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b37424d57606d79839197a1a8afb5bdc3c6cacdc8c4c3c0bebdbec0c1c3c5c7cbcac6c3bcb8b3ada7a099938d847c6e6255483b2f2215080000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090e12141517191b1c1d1e1e1e1d1c1b19171413110d080603000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a86929fa9b3bdc6d1c4b8ab9f958c7f736d66615e565c565e61666d737f8c959fabb8c4d1cec3b8aca096897d7063544a3f33281c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040607090c0e060c1012131313100c070e0c0a070604010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c111517181b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b141d29323d45515c666e7b86929fa5afbac4cfd8cec3b9aea49e92857b6e665b50443d31281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1a26313b4653606c7884919eaab4bfcad6cabfb4aa9d9184776b6054483a3025190d000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313c45515d676e7b8591969fa4abb1b8babec2c5c6cad0cacacac9d0cac6c5c2bebab8b1aca9a19e95918780796e6a5f53473a2e2114080000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080a0c0e1010111111100f0e0c0a0707040100000000000000000000000000000000000000000000000000000000000000000004111d2935414b5565727f8c98a3aebbc4cfd0c3b6aa9d9083786c605c54524c4f4c52545c606c7883909da9b6c3d0d4c8bdb2a89b8f8275665b5044382b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010000030607070604000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000910171d21242528282828282828282828282828282828282828282834404b545f69717e8b939ea8b2bdc7d1d5cbc0b9ada1978f82786c60584e433a2f24190f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2b3744505b65727f8b98a2aebac6d3d0c6b8aca095897c7063564c41362a1c110600000000000000000000000000000000000000000000000000000000000000000000000000000009141f2935414b555f696e7b848e93999fa7abaeb3b6b8babfbdbdbebdbcbbbebab8b5b3aeaba7a09d97928c837c746d675f584e43372b1f12060000121e2b3845515e6b7884919eabb7c4cacac2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8cac9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d677683909daab4bfcdd6cbbeb1a5988b7e72665b504a46414341464a505b65717e8b97a4b1becad9cec3b8ac9f9285796c605346392d2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121b22282d30313535353535353535353535353535353535353535352e39424d57626c75818e96a0abb5c0cbd7d5c9beb3a99f948c7f726a60564c41352921180c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f4953606d7a86929facb8c2cdd4c8bcb1a79b8e8175685e5246382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000030d18242f3a434d575f696e7a818790959a9fa2aaa9acaeb4b0b1b1b1b0afb3aeaba8aaa29f9c95918b857f796f6a605d554e463c31261a0f020000121e2b3845515e6b7884919eabb7bdbdbdbdb5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbbdbdbdbdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000306070809090a0908070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a86929facb9c5d0d5c8bbaea295887b6f62544a3f38363036383f4953616e7b8894a1aebbc7d4d3c6baaea298887b6e6255483b2f22150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101b242d34393d3e41414141414141414141414141414141414141414141414145505a606d7a849199a3afbbc2cdd7cfc5bbb0a69f92877c6f685d52453f332a1e150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3845525d6874818e9aa6b0bbc7d3cec3b9ac9f92867a6d61544a3f33281c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000007131d28313c454d575f686d747c83898e9298999c9fa2aaa3a4a4a4a3a2aaa29f9c9898928f8a847e79726d676058514b433c342a20150a000000121e2b3845515e6b7884919eabb0b0b0b0b0b0a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afb0b0b0b0b0b0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000020507060b1012131515161616151413120f0b06070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8899a3afbbc7d4d3c7baada094877a6d6154473a2e2a252a2e3a4753606d7a8693a0adb9c6d3d6cabfb4aa96897d7063564a3d3023170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17222d363e45494b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e515d676f7c87929fa6b0bbc5cfd7cdc2bbafa39991847a6d605a50453c30271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b2935414c56626f7c88949fabb7c4cfd3c7baaea3998c7f72665b5044382b1f1409000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2a333c454d565d616a6f787c81858a8d8f9298959797989796959498928f8c8985827d78716d67605c554e454039312a22180e03000000121e2b3845515e6b7884919ea3a3a3a3a3a3a3a39c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2a3a3a3a3a3a3a3a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000104090e121415171c1f2021222323222121201f1b17161313100c0704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8a96abb5c0cbd7d4c7bbaea194887b6e6155483b2f2924282e3b4754616e7a8794a1adbac7d4dbd0bdb1a4978a7e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d28343e485056585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b55606a727f8c949fa9b3bec9d5d7cbc0b5aba1968e81756c62574d43392e23180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d19242f3a47535f6a7683909ca9b2bec9d5cbbfb4ab9e9184786c6053463b30251a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000040d18212a333c444c525860656c7074797d80838587888a8a8b8a8988878685827f7c7975706c65605c55514b433d352f281f180f0600000000121e2b3845515e6b788491979797979797979797978f8275695c4f4236291c0f0916222f3c4955626f7c8895979797979797979797968a7d7063574a3d3024170a00000000000000000000000000000000000001070d10141a1e212223282b2d2e2f2f302f2e2d2d2b272223201f1c1813110d0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0bccfdad6c9bcafa396897c7063554b4038352f34383f4a54626f7c8895a2afbbc8d5d7cabdb0a4978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212d3945505a61646868686868686868686868686868686868686868686868686868686868686c78828f97a1adb9c6d2dcd1c7bdb2a89e938b7e71695f554b40342820170b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2b37434e5864717e8a97a1adb9c7d2d1c6b9aca196897d7063574d42362a1c110600000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a323a41464e535b6063676d707376797a7c7d7e7e7e7d7c7b7a7875726f6d6663605b53514b4540393029241d160d060000000000121e2b3845515e6b78848a8a8a8a8a8a8a8a8a8a8a8a8275695c4f4236291c0f0916222f3c4955626f7c888a8a8a8a8a8a8a8a8a8a8a8a7d7063574a3d3024170a0000000000000000000000000000000000060b12181d20262a2d2e2e34383a3b3c3c3d3c3b3a3937332d302d2c2823201d19130e090200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8894a9b3bec9d5d9ccc0b3a6998d8073675d514a454042404546505c66727f8c99a5b2bfccd8d6cabfb4aa95887c6f6255493c2f22160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4956616c7174747474747474747474747474747474747474747474747474747474747474747a85929eabb8c5d1ded9cfc4baafa59f92867b6e675c51453e32291d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010f1b26313c4653606d7984919eacb6c0ccd5c9bdb2a89b8f8275695e5246382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18202830353d41495053555d606466656c6d6f70717171706f6e6d67696562605c54535049454039342e271e18120c040000000000000a1723303d4a5663707d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6256493c2f2316090714212d3a4754606d7a7d7d7d7d7d7d7d7d7d7d7d7d7d7a6e6154473b2e211408000000000000000000000000000000020a11171d24292c31363a3b3e3f44464848494949484746443f3f3c3a38342e2c29241e19140c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7a8697a1adb9c6d2ded1c4b7ab9e9184796d605c54514b4f4b51535b606d7883919daab7c4d0ddd3c7baaea298877a6d6154473a2e21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e81818181818181818181818181818181818181818181818181818181818181818183909daab7c3d0dde1d6ccc1baaea2989083796d60594f443b2f261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151f2c3844515c66737f8c9aa4afbbc8d4cec4b9ac9f92877b6e61544a3f34281c10030000000000000000000000000000000000000000000000000000000000000000000000000000000000060e161e24292f383f44464b515357535b60616264646564636261605d55595653504a46443f38342f28231d150c0701000000000000000916222f3c4854606b707070707070707070707070706f6a6054473b2e2215080713202c3945525d686d707070707070707070707070706e685e5246392d2014070000000000000000000000000000070b141b22272f35393b4246484b4a5053545556565554545350494c494645403a39352f2a251f18120b03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c677885929eabb8c4cfdad2c5b9ada1968d80746d66605d555b545c60646d727f8c95a0acb8c5d1dfd2c5b8ac9f928579685e5246392d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e9095a0acb8c5d1dee8ded6cabfb4aaa0958d80746b61564d42382d22170d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404a54616e7a86939facb9c6d2d4c7bbafa3998c8073665c5044382c1f1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191d262d3337394045474a49505354555757585756555453514b4c4946443f3937332d29231d18120b030000000000000000000714202c38444f5960636464646464646464646464646260584e43382b1f130604111d2935414c565d6064646464646464646464646464615e564c41362a1e1105000000000000000000000000000710191d262d33394045474d535558545c6061626263626160605b53595653514b4745413a363028231d150c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2934404b556875818e9ba8b2bdc9d5d5c9bdb2a89d928d8078716d676a6869666d70767f88939fa7b1bcc8d4d6cabeb3a99b8f827568564c41362a1d110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9a9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9da0a7b1bcc8d4e0ede7dbd0c6bcb1a79d928a7d70685e544a3f33281f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e5863707d899aa4afbbc8d4d7cbc0b5ab9e9184796d6053463c31261a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080b141b22272b2f35383a3d3f444647494a4b4b4b4a49484745403f3c3a38342e2b27221b18120c07000000000000000000000004101c27333d474f545657575757575757575757575756544e463d32271b0f03010d19242f3a444c52545757575757575757575757575754524c443b3025190d010000000000000000000000030b1218232b2f383f444b5153575f616568666d6e6f6f706f6e6d6c65686563605c5554524c46423b342e271e180f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f3d4a5663707d8996a1adb9c3cfd9cfc4baaea49c928d837e7a7876757678797d828b939aa4afb9c3ced9d0c7b9ada1978a7d7064574a3d3025190d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7aaacb1b9c3ced9e4f0ede2d7cec3b9aea49e92857a6e665b50443d31281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f6a76828f9cacb6c0ccd8dcd1c7b9ada1968a7d7064574d42372b1d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1f24292c2d2d3337393a3c3d3e3e3e3d3c3b3a39352f2f2d2b28231f1b17110c0701000000000000000000000000000b16212b353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4947433d342b20160a000008131e28323a4145474a4a4a4a4a4a4a4a4a4a4a4a4a4746413b32291e14080000000000000000000000040c151c2328353d414950555d6065696e717577797b7b7c7c7c7b7a797875726f6d6765605d56524d454039302a211a11080000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d394653606c7884919ea7b1bdc7d1d6ccc0b6aea49c95908b868583828384868a8f949fa4acb6c0cbd5d2c7beb2a89e9285796d6053463a2d2013080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b7b8bcc3cbd5dfe8e8e8e9e0d5cbc0b9ada1978f82786c60584e433a2f24190f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c56626e7b87939facb9c6d2dde3d5c9bdb2a99c8f8276695f5346392e23180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f12181d1f2022272b2d2e2f31313231302f2e2d2c292423201f1c17120f0b0600000000000000000000000000000000050f1a232b33383c3d3d3d3d3d3d3d3d3d3d3d3d3d3c3b38322b22190f040000010c1620282f35393a3d3d3d3d3d3d3d3d3d3d3d3d3d3b3936302920170d0200000000000000000000040d161e272e3440474f535b60676d72777b7e818486878889898887878684827f7c7976726d68615e56514b433c332c231a1108000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b66737f8c95a0abb5c0cbd7d2c8c0b6aea7a09d979791908e909193999c9fa6afb6bec7d2d7ccc0b6aca0968d8073665c5145382c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4c0c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c3c5c8ced5dbdbdbdbdbdbdbdbd5c9beb3a99f948c7f726a60554c41352921180c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a13202d3946525e6874818e9aa4afbbc8d4e4e6dacfc4b9ac9f93877b6e61554b4034281c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070c101314171b1f2021222424252423222120201d18161312100b06030000000000000000000000000000000000000008111a21272c2f303131313131313131313131312f2e2b272019100700000000040d161e24292c2d313131313131313131313131312e2d2a251e170e0500000000000000000000020b161f2830394044515960656c71797e83888b8e91929995959695949993918e8c8986837e7a746e69605c554e453e352c231a110700000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a54606d79839199a3afbbc0cbd1d1c8c0b9b1acaaa9a19e9d9b9c9e9fa4ababb0bbc0c7d0d2ccc0bbafa49a9184796d60544b4034281c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4c0cdcecececececececececececececececececececececececececececfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc5bbb0a69f92877c6f675d51453e332a1e150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b2934404b55616d7a86929facb6c0ccd8e4ebe0d4c8bbafa49a8d8073675c5145382c1f150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406060b0f12131416171818181716151413100d070706030000000000000000000000000000000000000000000000080f161c20222324242424242424242424242423221f1b160f07000000000000040c13191d20212424242424242424242424242421201e19140d0500000000000000000000000a141d28313a424a515b636b6f787e848b9095989b9d9fa3aba2a3a2aba49f9e9b989992908b86817b736d675f574f473e352c23190d04000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3845515c666f7c87929fa4aebbc0c7cfd6cbc3bcb8b7b3adaba9a8a9abacafb5b7bbc2ccd2d0c7c0bbafa59f93887d70675d5142392e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4c0c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2bbafa39991847a6d605a50453c30271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3845515c6773808c98a3aebec7d2dde8f0e4d8ccc0b6ac9e9285796d6053463c31261b0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003050607090a0b0b0b0a09080706040100000000000000000000000000000000000000000000000000000000050b101416171717171717171717171717171615130f0a04000000000000000001080d111314171717171717171717171717171414110d0802000000000000000000000006111c262f3a434b545c606d737d838b91969d9fa7a8aaacaeb4afafafb5afacaba8aba39f9c98928d8680796e6a61594f473e352b1f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000006111c2834404b54606a73808d929da4afb5bdc3cad0cdc8c4c3beb9b8b6b5b6b7b9bbc0c7c7cdd0cac3bdb5afa59d938d80746b60554b4030271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5aba0968e81756c62574d42392e23180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f4953606d7985929eaab4bfd0d9e4eef4e8ddd2c7b9ada1978a7e7164584e43372b1d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a0a0a0a0a0a0a0a0a0a0a0a0a09080603000000000000000000000000010407070a0a0a0a0a0a0a0a0a0a0a0a0a08070501000000000000000000000000050e17222d38424b555d666d747f8990959ea1a9abb1b5b7b9babfbcbcbbc0bbb9b7b5b4aeacaaa29f98928d837c706b61594f473d31281d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e39424e58606c77808d929fa3abb1babec5c8ced2cfc9c6c4c3c1c3c4c6c7ccd2cec9c6bfbab1aba49f938e81786c60594f43392f1e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a89e938b7e71695f544b4034281c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b65717e8b97a1adbcc6d0e2ebecedeee4d6cabeb3a99c9083766a5f5347392f24180d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b1313131313131313131313131311100e0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d172028333f4a545d676d78818c919d9fa7adb2b8bcc1c4c5c7cbd1c9d2ccc7c6c4c1bfbab9b4aeaaa29f9590867d706b61594f43392f24180d0400000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303d44505b656c74808c9299a0a7aeb4b9bdc3c6c8ccd2cdcfcecfced2ccc8c6c3bdb9b4aea8a099938d81786c665b50473d31281d0c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9a9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c92867b6e665c5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7884919da9b3beced8e2e0dfe0e3e6dacfc5b7ab9f94887c6f62554b4035291d1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c11151718202020202020202020202020201e1d1b17110b0400000000000000000000000000000000000004090c0f0f1313131313131313131313130f0f0c0904000000000000000000000003060809131313131313131313131313130c0c0a060200000000000000000000000008141f29323b44505b666d79828e939ca4abb1b9bdc4c8cdd0d0cbc9c7c6c6c7caccd1d1cbc7c5bfbab4aea7a09892877d706b60554b40352921160a000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e27333f49535b606e747f8790959fa2aaacb2b7b9bbc0c0c1c2c3c2c1c0c0bbb9b7b2acaaa29f95918780776c665b544a3f352b1f160c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f83796d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e5863707d8a95a0acbbc5cfdcd7d4d2d4d7dce1d3c7bcb0a69a8d8074675d5145392c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000910171d2124252d2d2d2d2d2d2d2d2d2d2d2d2d2b2a27221d160e0500000000000000000000000000000002091015191b1c2020202020202020202020201c1b191510090200000000000000040a0f13151620202020202020202020202020191816120d0700000000000000000000020e1925303b44505a606c78828f949ea5adb8bcc3c9cfcec8c5c4bebcbab9bababdc0c4c5c9cfd0cac6bfbab1aaa29992877d70675d51453d32271b0f02000000000000000000000000000000000000000000000000000000000000000000000000000000030c17222d384149505c646d737c838c92989ea0a8aaacafb6b3b4b5b6b5b4b3b6afacaaa8a19e98928d847c736c655b544a42382d23190d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323f4b5865727f82828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282827d7064574a3d3124170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b15212e3b47535f6a76828f9ca7b1bccdd6d1cbc7c5c7cbd1d9d8cdc2b8ab9f9285796d6053473d32271b0f0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121b22292d3031393939393939393939393939393736332e2820170e0400000000000000000000000000030c141b212528292d2d2d2d2d2d2d2d2d2d2d2d292825211b140c030000000000070e151b1f22222d2d2d2d2d2d2d2d2d2d2d2d2d2625221e18110a01000000000000000005111e2a36414d56616c73808d949ea6afb7bfc8cdcec9c3bcb8b7b2afadacadaeb0b3b7b9bdc4c9cfd0cac3bcb4aba3999184796d60594f43382c1f14080000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f383f44525b636a6f787f858b91969a9d9fa4aca6a7a8a9a8a7a6aca49f9d9a96918c8680796f6a605b534a42382f261c1107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313d4a56626d727575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575706c6155493c3023160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2a36424d56626f7c88949fabb9c3cecfc7c0bbb9bbc0c7cfd5d3c6baaea2988b7e7165584e43372b1e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101b242d34393d3e4646464646464646464646464644433f39322920160b000000000000000000000000020c151e262c3134363939393939393939393939393634312c261e150c0200000007101920272b2e2f3939393939393939393939393933322e2a231c130a00000000000000040f19232d3946525e68717e8b929ca6b0b8c1c9d4ccc4bdb9b1acaaa5a2a19fa0a1a3a6abadb2b9bec5cdd6cec6bdb4aba1968d80746b6054483b3025190e02000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d33404951585f666d737a7f84898d90939a98999a9c9c9c9b9a999a93908d8a847f7a736d676058504941382f261d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915222e3a46515b6265696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696964615a5044392d20140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f3a46525e6974818e9ba6b0bbccd1c7bdb5afacafb5bdc3ccd6cabeb3aa9d9083776a6054473a2f24190d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17222d363e45494b53535353535353535353535353514f4b443b32281d1106000000000000000000000009141e2730373d414246464646464646464646464642413d3730271e14090000040e19222b32373b3c464646464646464646464646463f3e3a352e251c11070000000000000a16212c38444f59616e7b85929fa4aeb8c1cad2cac2bab2aca7a09d98969493939497999ea1a8adb3bbc3ccd5cfc6bdb2a89f93877c6f63564d41362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b22273740464e545c60676d72787d8083868a8c8d8e8f908f8e8d8c8a8684817d78726d68605c554e443f382f261d140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121d29343f495156585c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c575550483e33281c10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b55616e7b86929facb9c2cccbc0b5aba39fa3abb2bac3ced0c5b8aba095897c6f62564c4135291d110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d29343e48505658606060606060606060606060605e5b564d44392e22170b0000000000000000000004101b26303942494d4f5353535353535353535353534f4d49423930261b1004000a15202b343c434749535353535353535353535353534c4b463f372e23180d0200000000030f1b27323b4854606b75818e98a2aeb6c0cad3cac2b8b0a8a19e95918b89878687878a8d91969ea1a9b1b9c3ced7cfc4bbafa49a8f8275685e5246392d2014060000000000000000000000000000000000000000000000000000000000000000000000000000000000020a1117252e343c424a51555d60656c7074777a7d7f808182838281807f7d7a7774706d66605d56514b433d332d261d140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232d373f464a4b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a49443e362c22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3945515d6773808d99a3aebbc7d4c7bbafa3999299a0a8b2bdc8d4c8bcb1a79a8e8174685d5245392c20160b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212d3945505a62646c6c6c6c6c6c6c6c6c6c6c6c6c6a675f564b3f33271b0e020000000000000000000915212c37424b545a5c6060606060606060606060605c5a544b42372c211509030f1b27323c464e545560606060606060606060606060595751493f352a1e12060000000007131f2c38434f5963707d89939eaab3bec8d2ccc2b8b0a69f96918a847f7c7a797a7b7d80848a9297a0a7b1bcc5d0d8ccc0b6ac9f92867b6e6154473b2e23170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131c222a303940444b51535b606367686d70727374757675747372706d686763605c54524c4540393127221b140b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b252d343a3d3f42424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242423d3c39332c231a100500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a54606d7985929eabb5bfcbd2c5b9ac9f92869196a0acb9c7d2cdc3b8ac9f92867a6d6054473d32271b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4956626c71797979797979797979797979797771675b4f43362a1d10040000000000000000000c1925313d49545d65696c6c6c6c6c6c6c6c6c6c6c6c69655d54493d3125190c06131f2b37434e5860626c6c6c6c6c6c6c6c6c6c6c6c6c66635b51463a2e22160a000000000915222f3b4854606b7683909da5afbcc5d0cec4bab0a69f948f847d78726f6e6c6d6e7073787e859195a0aab4bfcad6d2c7bbafa3998c7f7266544a3f34281c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a10191e272e343a414549505356565d606465666769696968676664615e565753504a45413a342f271f17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131b23292e3132363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363631302d28221a1108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b66727f8b97a2adbdc6d1c8bcb1a79b8e8184919eacb6c0ccd3c7baaea2988b7f7265594f44382c1e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8686868686868686868686868683776a5e5144372b1e11040000000000000000000f1b2834414d5a6570757979797979797979797979797570655a4d4134281b0f0815222e3b4754606a7679797979797979797979797979726d63574b3e3225180c00000005111e2a36414d56636f7c89959fabb7c1ced5c9bdb2a89f948f827a706c65636160606164666c717a839198a2aebac6d3d7cbc0b5ab9c908376665c5044382b1f12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c151c23282f35383f44464a4c525457595a5b5c5d5c5b5a595754524c4a46443f38352f29231d150d06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181d22242529292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292423201c1710080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7884919ea9b3becfd1c5b8aca095897c7f8c9aa4afbbc8d4cabfb4aa9d9184776b6054483a3025190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b93939393939393939393939184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828686868686868686868686868275695c4f4236291c0f0916222f3c4955626f7c868686868686868686868686867f7266594c3f3326190c0000000714202d3946525e6875828f9ba7b1bcc5c6cac7b9aca0968f82786d68605b5354535454545b60686e7b86929facb8c5d1dcd1c5b8ac9f9285796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d24292d3337393d4145474a4c4d4e4f504f4e4d4c4a4746413d3a38342e29241e18120b03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c121518181c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c171614100b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e5864707d8a96a0acbbc5cfcabfb4aa9d9083777b87939facb9c6d0d0c6b8aca095897c6f63564c41362a1c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b979f9f9f9f9f9f9f9f9f9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f939393939393939393938f8275695c4f4236291c0f0916222f3c4955626f7c8893939393939393939393938c7f7266594c3f3326190c0000000814212e3b4754616e7b87939facafb5b8babebdafa59e91847a6d665e565049474647484a50565e69737f8c99abb5bfcbd7d3c6baaea298887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c13181b22272b2d3035393a3d3f404142434241403f3d3a3936302d2b28231c19130c070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106090b0c0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0a0a080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c15222e3b4754606a7683909ca8b2bdcdd3c7baaea2988b7f727683909caab4bfcbd4c8bcb1a79b8e8175685e5246382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a4acacacacacacacaa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9c9f9f9f9f9f9f9f9f9c8f8275695c4f4236291c0f0916222f3c4955626f7c88959f9f9f9f9f9f9f9f9f998c7f7266594c3f3326190c0000000c1925323f4c5865727f8b999c9fa3ababadb3b5ab9e93897d70685e544c443f3b393a3b3f444d57616e7b8899a3aebbc7d3d6cabfb4aa96897d7063564a3d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d11171b1f2024292c2d31323334363636353433312e2d2a25201f1c17110d08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d2a36424d57626f7c88949fabbac3ced2c5b8ac9f92867a6d717e8b98a3aebac7d3cec3b9ac9f92867a6d61544a3f33281c0f030000000000000000000000000000000000000000040404040404040404040404040404040404040404040b1825313e4b5864717e8b97a4b1b9b9b9b9b9b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8acacacacacaca89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2acacacacacacaca5998c7f7266594c3f3326190c0000000e1b2835414e5b687481888b8f92999b9fa2a9aaa4998e81756b60564c423a332d2d2d2d333b4653606c7986929facb9c5d2dbd0bdb1a4978a7e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f1213191d202124262728292a292827262421201d191312100b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18242f3a46525e6975818e9ba6b0bbccd4c8bcb1a79b8e8174686d7a86929facb8c5cfd3c7baaea3998c7f72665b5044382b1f14090000000000000000000000000000000105090b0b10101010101010101010101010101010101010101010101825313e4b5864717e8b97a4b1bec6c6c6c4b7aa9d9184776a5e5144372b1e11060400000000000000000f1c2936424f5c6975828f9ca8b5b9b9b9b9b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afb9b9b9b9b9b2a5998c7f7266594c3f3326190c0000000e1a2734404d59656f747b7f82868a8e92979a9e9f93877b6e61594f443a3027222021222c3945525d687985929facb8c5d2d7cabdb1a4978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305080d11131417191a1b1c1d1c1b1a19171413110d080603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414b55616e7b86929facb9c2cdd1c5b8aca095897c6f636875828e9ba9b3bec9d5cbbfb4ab9e9184786c6053463b30251a0e0000000000000000000000000000060c111517181d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d25313e4b5864717e8b97a4b1becad2d0c4b7aa9d9184776a5e5144372b1e1413100c070100000000000f1c2936424f5c6975828f9ca8b5c2c6c6c2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc6c6c6bfb2a5998c7f7266594c3f3326190c0000000c1824303c48535d65696e72767a7e8185898d91968f8275695f53473d32281e181c1f222d3a4754606d7a8798a2aebac7d3d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010407070a0c0d0e0f100f0e0d0c0a0707050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d6773808d99a3afbbc7d6cbbfb4aa9d9184776b6063707d8a97a1adb9c6d2d1c6b9aca096897d7063574d42362a1c11060000000000000000000000000911171d2124252a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a313e4b5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b2a201f1d18120b03000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d2ccbfb2a5998c7f7266594c3f3326190c0000000814202c37414b53575f6165686d7175797c8084888a7d7064574d42352b272723282c2d333c4855626e7b8895aab4bfcad6d5c9bdb2a895897c6f6256493c2f2316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a54606d7a85929fabb5c0cbd3c7baaea3988b7f726559606d7985929eabb8c3ced5c9bdb2a89b8f8275695e5246382e23170c000000000000000000000009121b22292e313237373737373737373737373737373737373737373737373737373e4b5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51443737372d2c29241d150d030000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000040f1a252f3941454d5355565d6064666d7073777b7f796d6053463c313334342e34383a3f44505a65727e8b98a5b1bed0dbd2c5b9aca196877a6e6154473b2e2114080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c66727f8b97a2adbdc7d1d2c5b8ac9f92867a6d61545c6674808d9aa7b1bcc8d4cec4b9ac9f92877b6e61544a3f34281c100300000000000000000006111b242d343a3d3e4343434343434343434343434343434343434343434343434343434b5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51444343433a38352f271f150b0100000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000009131d272f333b4246484c5254545c6063676a6e726d675c51453f3f404041414044464a5058616c7683909ca9b6c3cfdcd1c4b7ab9e918478695e52463a2d201407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7884919ea9b3becfd4c8bdb2a89b8e8175685d5254626f7c8895a0acb8c7d2d4c7bbafa3998c8073665c5044382c1f14090000000000000000010c17222d363f454a4b505050505050505050505050505050505050505050505050505050505864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51505050504745403931271d120700000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000010b151d212a31363a3b4145474a505356575f6265605c554b4a4c4c4d4d4e4e4a5153545b606a707d8a949fabb7c4d0d5c9bdb2a99b8e817568564d42362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131f2c38434f5964717e8a96a1acbcc5d0d1c5b8aca096897c6f63564c54606a7784919dabb5c0ccd7cbc0b5ab9e9184796d6053463c31261a0e000000000000000005111d29343f485056585d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5d5d5d5d5d53514b43392f24180c00000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000030b0f181f262a2d2f35393a3f4446494e53555953514f55575859595a5a5b545c6062666c727c86929fa6b0bcc7d3cec5b9ada1968a7d7164574a3e3025190e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c15222f3b4854606b7683909da8b2bdced7cbbfb4ab9d9184776b6054444e5866727f8c99a4afbbc7d4d1c7b9ada1968a7d7064574d42372b1d1207000000000000000915212e3a45505a62656a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a717e8b97a4b1becad7d0c4b7aa9d9184776a6a6a6a6a6a6a605d554b4035291d1004000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000000000060e141a1e2124292c2e34383a3d4247484c464f59616365666667676868666d6f73787f869298a2aeb9c2cdcfc5bcb1a79e9184796d6053463a2d20130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2a36424d57636f7c89959fabbac4ced3c7baaea3998c7f7265594f444854616e7b87939facb9c6d0d5c9bdb2a99c8f8276695f5346392e23180c000000000000000b1724313d4a56626c71767676767676767676767676767676767676767676767676767676767676767e8b97a4b1becad7d0c4b7aa9d918477767676767676766d675d5145382c1f1306000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000003090e1214191d2023282c2d31373a3b3f4855616b707272737374747577797c80848b9298a2aab3becbccc4bcb3aaa0958c7f72665c5044382c1f12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a46535f6975828e9ba7b1bcccd6d2c5b9ac9f92867a6d6154473d46525e6976828f9caab4bfcad6cfc4b9ac9f93877b6e61554b4034281c10040000000000000b1825323e4b5865717e8383838383838383838383838383838383838383838383838383838383838384919eaab7c4d1ddd2c5b8ac9f92868383838383838383796d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000205080d1113171c1f20262b2e303d4a5763707d7f7f80808181828486888d91969fa2aab3bcc5c7c0bbb3aaa2989083786d60544a3f34281c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56616e7b87939facb9c2cdd4c8bdb2a89b8e8175685e524639424d5764717e8b98a2aebac6d3d4c8bbafa49a8d8073675c5145382c1f150a0000000000000d192633404c5966737f8c9090909090909090909090909090909090909090909090909090909090909196a0acb9c5d2ded3c7baaea398929090909090909086796d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000000000104060c1012131a1e293643505c6976828b8c8c8d8d8e8e909299999ea1a8aeb4bcc5c2beb6afa9a19892867c6f665c5042382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3945525d6874808d99a4afbbc7d4d2c5b9aca096897d7063564c41363b4754606d7a86929facb8c4cfd8ccc0b6ac9e9285796d6053463c31261b0f0100000000000d192633404c5966737f8c999d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9ea0a8b2bdc9d5e1d6cbbfb4aaa39f9d9d9d9d9d9d93867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000000000000000000000000000000306090e1d293643505c6976838f99999a9a9b9b9d9fa3ababacb2babfc6c2b8b0aca49f9791867d706a5f544a3f30261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404a54606d7a85929fabb5c0ccd7cbbfb5ab9e9184786c6053463a303945515d6775818e9ba9b2bec9d5d2c7b9ada1978a7e7164584e43372b1d120700000000000d192633404c5966737f8c99a6a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aaacb2bac4ced9e5dcd0c6bcb4aeaca9a9a9a9a9a093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000000101d293643505c6976838f9ca6a6a7a7a8aaacaeb5b7b9bdc4cac5bcb0a69f9a938e857d706b60584e42382e1e150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2c3844515c66727f8c98a2aebdc7d2d3c7bbaea3998c7f72655b5044372935414b5563707d8997a1adb9c6d2d5c9beb3a99c9083766a5f5347392f24180d01000000000d192633404c5966737f8c99a6b2b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b7b9bdc4ccd5e0ebe2d8cec6bfbab8b6b6b6b6ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b3b4b4b5b7b9bbbfc4c5c9cecabeb3aa9f948f87817b6f6b60594f463c30261c0c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7984919eaab4bfd0d9d2c5b9ac9f92867a6d6153493f33272f3a4653606d7984919eabb8c3cdd9cfc5b7ab9f94887c6f62554b4035291d1004000000000d192633404c5966737f8c99a6b2bfc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c5c9ced5dee7f1eae0d8d0cbc7c5c3c3c3b9ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b6c0c1c1c3c5c7cbd1d2d5d3c6baaea2988f827c756e6960594f473d342a1e150a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c38444f5964717e8a96a1adbcc5d0d5c9bdb2a89b8e8275685e5241382d222b3844505c6673808d9aa7b1bcc8d4d3c7bcb0a69a8d8074675d5145392c20150a000000000d192633404c5966737f8c99a6b2bfccd0d0d0d0d0d0d0d0d0d0d0d0cecdcdcdcdcdcdcdcdcdcdcdcdcfd0d3d8dee5eef7f1e9e1dbd6d2d1cdcdc6b9ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b6c2cbccced0d2d3d7dcded2c5b8ab9f92857e77706b605d554c443b32281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16222f3b4854606b7783909da8b2bdced7d2c5b9aca096897d7063564c412f261b28343f4a54626f7c8895a0acb8c7d1d8cdc2b8ab9f9285796d6053473c32271b0f010000000d192633404c5966737f8c99a6b2bfccd9dcdcdcdcdcdcdcd3ccc6c2c1c0c0c0c0c0c0c0c0c0c0c0c0c2c3c7ccd3dce5efe9dfd7cfcac6c5c0c0c0b9ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b6bdbebfc1c3c5c7cbd1d4d3c6baaea298928a837d756d675e564c443a3025190b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2b37424d5763707d8995a0abbac4cfd7cbc0b5ab9e9184786c6053463a302017232e3847535f6a7783909dabb5c0cbd7d3c6baaea2988b7e7165584e43372b1e13080000000d192633404c5966737f8c99a6b2bfccd9e7e9e9e9e9ddd3c9c1bab6b4b3b3b3b3b3b3b3b3b3b3b3b3b5b7bbc2cad3dee9e1d7cdc5beb9b8b3b3b3b3ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000000101d293643505c6976838f9ca9afb0b1b2b4b7b9babfc6c7cccabeb3aaa29f95908981796e685e564c4135291d140a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925303a47535f6975828f9ca7b1bcccd6d3c7bbafa3998c7f72655b5044372b1f121c2b37434e5865727f8c99a3afbbc7d4d6cabeb3aa9d9083776a6054473a2f24190d0100000d192633404c5966737f8c99a6b2bfccd5dfe8f2eee2d7ccc1b7afaaa8a6a6a6a6a6a6a6a6a6a6a6a6a9aab0b8c2ccd8e3dbcfc5bbb3adaba6a6a6a6a6a093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000000000000000003060a0f1d293643505c6976838f9ca2a3a4a4a6a8aaacaeb4b9bbc0c7c5bcb3aea79f9d938e837a6e685e52463e2f261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414c56626e7b87939facb9c3cdd6d2c5b9ac9f92867a6e6153493f33271b0f1b26313c4754616e7b86929facb9c5d0dbd0c5b8aba095887c6f62564c4135291d110400000d192633404c5966737f8c99a7b1bac3cdd6e0e9ebded2c6baafa59e9b9a9a9a9a9a9a9a9a9a9a9a9a9c9ea6b0bbc7d3dfd6cabeb3a9a29e9a9a9a9a9a9a93867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000000000104060c1012131b1f293643505c6976838f9495969798999b9d9fa3abacafb5bdc2c5bebab1aba59e9590837a6d615a5042382d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e6874818d9aa4afbbc8cacac9bdb2a89b8f8275685e5241382d22170b15202d3946525e6876828f9caab4becacacac8bcb1a79a8e8174685d5245392c20160b00000c1926333f4c5966727f8c959fa8b2bbc4ced7e1eadccfc2b6aa9e938e8d8d8d8d8d8d8d8d8d8d8d8d8f949eaab7c3d0dcd2c6b9ada297928d8d8d8d8d8d8d86796d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000205070d1113171c1f20262b2e3643505c697682878788898a8b8c8e9092999b9fa4abb0b8c2cac3bcb8afa7a0958f82756c61544a3f33281c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404b54616d7a86929facb6c0bdbdbdbdb9aca196897d7063564c412f261b1106111e2a36414d5664717e8a98a2aebabdbdbdbdbdb8ac9f92867a6d6054473d32271b0f03000714202d3a4753606d79839096a0a9b3bcc6cfd9e3dbcec1b4a89b8e81808080808080808080808080828f9ca9b5c2cfdcd1c5b8ab9e92858080808080808080796d6053463a2d201307000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000002080e1114181d2023282c2d31373a3c404e5a6670767a7b7c7c7d7e7f8183868a8e93999fa6b0b8c2cdc8c1b9b1a79e948a7e71665b5044382b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c66737f8c98a2aeb0b0b0b0b0b0b5ab9e9184786c6053463b3020140a000e1925303b4753606d7985929fabb0b0b0b0b0b0b0aea2988b7f7265594f44382c2013070006131f2c3945515d676d7a849197a1aab4bdc7d1dcddd0c3b6aa9d90837a73737373737373737373737e8b97a4b1becad7d0c4b7aa9d918477737373737373736d665c5145382c1f1306000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a99c8f8276695c4f4336291c070916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000000000050d14191e2024292c2e34383a3d4347484c46545e66676d6e6f7071717375777a7d818790949fa6b0bbc5cfcbc3b9b0a69e9184786c605346392d2013090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7985919eaaa3a3a3a3a3a3a3a3a3998c7f73665b5044382b1f12020008141f2c3945515d6774818e9ba8a3a3a3a3a3a3a3a3aa9d9184776b6054483b2f2215090004101d2935404b555e686e7b859198a2abb5c0cbd7dbd1c4b8aca0958f82786c6767676767676767717e8b97a4b1becad7d0c4b7aa9d9184776a676767676767605c544b4034281c1004000f1c2936424f5c6975828f9ca8b5c2cfcfc3b6a99c908376695d50432f24180c0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000020b0e171e252a2d2f35393a3f4446494e535559535154555d6061626364656668676d71757c828f949fa9b3becad6cbc1b9aca0968a7d7063574a3d30251a0e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b5564717e8b97979797979797979797979792867b6e61544a3f33281c0f030004101d2935404b5563707d8996979797979797979797979795897c6f6356493c3023160900000c18242f39434c565f696f7c869299a3afbbbfc9d2d4c8bcb1a79e948d80746d62595a5a5a5a64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5a5a5a5a5a53514b42392e23180c00000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a554b4035291d100916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000010b141d20293036393b4045474a505356585f6266605c544b5154545556575859555d60646a6f79828f97a2adbac6d3d5c9bdb2a89b8e817568574d42362a1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d6777838a8a8a8a8a8a8a8a8a8a8a8a8a8a8275695e5242382d22170b0000000c18242f394653606c78848a8a8a8a8a8a8a8a8a8a8a8a8a8a8175685b4e4235281b0f000007121d27313a444d57606a707d87929fa4adb7c0cad3cdc3b9b0a69d928b7f726b61584e4d5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e514d4d4d4d4645403930271d120700000f1c2936424f5c6975828f9ca8b5c2cfd1c4b7aa9e918477675d5145392c1f130616232f3c4956626f7c8995a2afbcc8d5cbbfb2a5988c7f7265594c3f3226190c0000000008131d262f323b4146474b5153545c6063676a6f736d665c5145474849494a4b4c4b5153585f676d7a85929fabb8c5d2d9cec4b7ab9e918478695e52463a2d201407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d797d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7b6e61574d422f261c110600000007121f2b3744505b656f7c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7063574a3d3024170a0000010b151f28323b454e58616b717e8b919ca5afb8c1cbd4cbc1b8aea49f92877d706a5f564c5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51444040403a38342e271e150b0000000f1c2936424f5c6975828f9ca8b5c2cfd2c5b9ac9f92867a6d6053473a2e2317101724303d4a5763707d8a96a3b0bdc9d6cbbeb1a4988b7e7165584b3e3225180b000000030f1a252f3841444c5254555d6064666d7074787c7f786d6053463a3b3c3d3e3e404045474e555d6873808d9aa6b3c0d0dbd2c5b9aca196877b6e6154473b2e2114080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d676d7070707070707070707070707070706e695f53453b301d140a00000000030f1b27333f4953606a6f7070707070707070707070707070706b6155483c2f231609000000030d162029333c464f59626c737f8c939da6b0b9c2ccd3cac0bbafa39992867c6f685e555864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51443734342d2c28231d150c030000000f1c2936424f5c6975828f9ca8b5c2cfd3c7bbafa399897c7063544a3f34281f1c1f262f3e4b5864717e8b97a4b1becad7cabdb0a4978a7d7164574a3e3124170b0000000814202b36414a53565e6165676d7174797c808488897c6f63544a3f342f3031322f35393c434c56626f7c8895aab4bfcad6d5c9bdb2a895897c6f6256493c2f2316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b555d60646464646464646464646464646464615f574d4233291f0b0200000000000b17222d38414e58606264646464646464646464646464646361594f44382c20140700000000050e18212b343e47505a636d74818e949ea7b1bac3cdd7cbc0b5aba29891847a6e675d5364717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b27201f1c18120b03000000000f1c2936424f5c6975828f9ca8b5c2cfd7cbc0b5ab998c7f73665c50443a302b282b2f38414e586774808d9aa7b3c0cdd6c9bdb0a3968a7d7063574a3d3024170a0000000b1824303c48535c64686e71757a7d8185898d91968c8073665c5044392e23242524292c313a4754616d7a8798a2aebac7d3dacebdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f39434b515357575757575757575757575757575755534d453b3120170d00000000000006111b262f3c464e5455575757575757575757575757575757554f473e33281c10040000000000060f19222c353f48515b606d78828f959fa8b2bbc5ced1c7bdb3aaa1969083796d655b64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e1313100c070000000000000f1c2936424f5c6975828f9ca8b5c2cfdcd1c4b7aa9e9184786d60564c423b3734383a404953606a7784919daab7c4d0d5c9bdb2a996897c6f6356493c302316090000000d1a2733404c58646e747a7e82868a8e92979a9e9e9184786d60554b40342d26222122242d3946525e687985929facb8c5d2d7cabdb1a4978a7e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2731394045474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4846423b33291f0e05000000000000000a141d2b343c4347494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443e352c21160b0000000000000007101a232d364044505c666d79839096a0a9b3bcc6cfcfc5bcb2a89f958e81776c6064717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11060400000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd2c5b9aca0968a7e71685e544d46443f44464b515b656f7c8995a0acb8c5d1d2c5b9ada196877a6d6154473a2e2114070000000e1b2834414e5b677480888b8f92989b9ea2a9aba1968a7d71675c51453f382f2f2e2f2f353b4653606c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3124170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f272f35383a3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3b3a36312921180d0000000000000000020b19222b32373b3c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3c38332c231a1005000000000000000008111b2428343f4a545d676d7a849197a1aab4bdc7d1cec4bab1a79e938d80736c64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd5c9bdb2a89e91847a6d665e5753504a5053555d606c77828f9ca7b1bcc8d4d1c4b8ab9e918578685e5246392d2013070000000c1926323f4c5965727f8c9a9c9fa3aaabadb3b2a89e9184796d605a5049413e3c3b3c3c40454d57626e7b8899a3afbbc7d3d7cbbfb4aa96897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d24292c2d3131313131313131313131313131312e2d2a261f180f0600000000000000000007101920272b2e2f3131313131313131313131313131302f2c28211a110800000000000000000000091217232e38424b555e686e7b859298a2abb5c0cbd7ccc2b9afa59c928b7e716b717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd9cec4b9aca1968f82786e6962605b545c6062676d74808d949fabb9c3ced9cfc2b5a89c8f827569564c41362a1e11050000000814212e3b4754616e7b87939facaeb4b8b9beb9aca0968d80736c605b534e4a494848494b51575f6973808c99abb5c0cbd7d3c7baaea398887b6e6155483b2e22150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d1f2024242424242424242424242424242422211e1a140d060000000000000000000000070f151b1f222224242424242424242424242424242423201c16100800000000000000000000000006111c263039434c565f696f7c869299a3afbbbfc9d2cbc1b7aea49f92877d70717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbe0d5c9bdb2a89f948f837b746f6c656a666d6f7379818d929ca6b0bbccd5d4c8bdb2a8998c807366594d403025190d010000000714202d3a46525e6975828f9ca7b1bcc5c6c9bdb2a89c928b7e726c655f585755545556555d60696e7b86929facb8c5d1dcd2c5b9ac9f9286796d6053473a2d201407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013141717171717171717171717171717171514120e090300000000000000000000000000040a0f1315161717171717171717171717171717171614100b0500000000000000000000000000000a141e27313a444d57606a707d87929fa4adb7c0cad3c9bfbbaea39992857b717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbe5dacec4bab0a69f959086807c79777677797c80848d929ca4aeb8c2cdddd1c5b8aca096897c6f6356493c302316080000000005111e2a36424d57636f7c89959fabb8c1cecec4baaea49f92877f776f6a65646261626365676d727b849198a2aebac7d3d9d0c2b5a99c8f8276675d5145382c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070a0a0a0a0a0a0a0a0a0a0a0a0a0a0a080705020000000000000000000000000000000000030608090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09070400000000000000000000000000000000020c151f29323b454e58616b717e8b929ca5afb8c1cbd7cbbfb5aba29791847a7e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbe6ded6ccc2b8b0a79f98928d888584838485888c91979da4aeb6c0cad4d6cbbfb4aa9d9184776b6054483b2f22150900000000020e1a25303b4854606b7683909da5afbcc5d0ccc0bbafa399928c827c7672716f6e6f6f72757a7f869196a1aab4bfcad6d2c7beb0a6988c7f7265554b4035291d10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17202a333d464f59626c73808c939da6b0b9c3ccd1c6bdb3a9a09690827e8b98a4b1becbd7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbdcd4cdc7c4c2b9b1aaa29f9a97929090919298999ea1a9aeb7c0c8d1d7cec6baaea3988c7f7266594f43382c1f1307000000000009141f2c38444f5963707d89939ea9b3becad6cbc0b5aba39f948f88837f7d7c7b7b7c7e81858c9298a1a8b2bcc6d0d8ccc0b6ac9e93887b6e6255483b2f24180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070708090a09080706040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343e47505a636d74818e949ea7b1bac4cdcfc5bbb2a89f949085919eabb8c4d1ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd4cac2bcb7b6b5b7b4aeaca9a29f9d9d9d9fa2aaabadb2bbc0c9d1d7cdc5bcb1a79f92867b6e6154473d32271b0f030000000000020f1b27323d4854606b75818e97a2adbac0cad1c7bdb5afa69e9c95908c8a888788898b8e92989fa2aab2bac4ced8cec6bbafa49a8f82756a5f53473a2e1d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708070c1013141415161616151413110d0709070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c353f48525b606d78828f959fa8b2bbc5cecdc3bab0a69f979197a1adb9c6d2ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfd8cdc2b8b0aba9a8aab0bab8b3adabaaa9aaacaeb4b8b9bec4cdd7d1cbc4bbb3aaa0958c7f72695e52463a2b21160a000000000000000b16212c38444f59616e7a85929fa4aeb8c1cacfc7c0bbb0aaa79f9d989795949596989b9fa2aaaeb4bcc4ccd6d0c6bcb2a89f93877c6f62574e42372b1e0b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090e12141518181c1f2021222223232221201d1819161312100c06030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232d364044505c666d79839096a0a9b3bcc6cfccc2b8b0a9a19ea1a9b2bec9d5ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfd3c7bcb0a69f9c9c9ea6afb5bdbab8b7b6b7b8babfc4c6c9cfd1cbc6bfbbb2a9a2989083786d60564d42362a190f040000000000000004101b27323d46525e68717e8a929ca5afb8c0ccd1cbc1bbb7b1aba9a5a4a2a1a2a2a5a8acaeb4babfc5ced6cec5beb4aaa1968e81756a5f53453c31261a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0f13151a1e21222523292c2d2e2e2f302f2e2d2c29242623201f1c17120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111b2428343f4a545d676d7a849197a1aab4bdc7d1cac2bbb2adabadb2bbc4cfdaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfd0c4b7ab9f94908f949fa4abb1b8bcc2c3c4c5c7cad0cec8c5c4c0bbb5aea8a19792867c6f665c50443b302519070000000000000000000b16212a36414c56616c73808d939ea6aebbc0c7d0ccc7c2bcb8b6b2b0afaeaeafb1b4b8babfc5cad0d0cbc3bcb3aca29891847a6e61584e43332a2015090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f151b1f22262a2d2e312f34383a3a3b3c3d3c3b3a39352f332f2d2c28231f1b17110c070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091217232e38424b555e686e7b859298a2abb5c0cbd7cdc4beb9b8b9bec4cdd6e0ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc3b6a99c9082828c93999fa7abb1b6b9bbc0bdbdbcbbbdb8b7b5afaba39f9691857c6f6a5f544a3f32291f1409000000000000000000040d1925303b44505a606c77818f949da4afb5bdc2c9cecdc8c4c3bfbdbbbabbbcbec1c5c6cad0d0cac6bfbab1a9a29a92867c6f685e52463c3221180e03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f272b2e31363a3b3e40404547474849494948474541433f3c3a38342e2b27221b18120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c263039434c565f696f7c869299a3afbbbfc9d2cfc9c6c4c6c9cfd6dfe8ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f82787f8790959d9fa7a9acafb5b1b1b0afb2acaaaba39f99928d847c6f6a60584e42382e20170d020000000000000000000008141e29323e44505b656d79828d929fa4abb0b9bdc4c8ccd2d0cbcac8c7c8c9cbced0d0cbc7c5bebab4aea7a09792887e716a5f564c41342a200f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090b141c22282b32373b3c4246484b4d4b515354555556565554514b4f4c4946443f3937332d28231d150c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e28313a444d57606a707d87929fa4aeb7c0cad3d5d2d1d2d5dae0e8eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275737d838a9095989c9fa3aba4a4a3a2a8a09d9a99928e86807a6e6a60584e463c30261c0e050000000000000000000000020d172027333f49535d676d78808c93999fa6acb2b9bbc0c3c5c6cad0d1cbc7c5c5c4c2bfbab8b4aeaaa39f9590857e716c61584e443b3022180e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e141a1d262d33383c4347494d5355585a555c60616162636261605d555c595653504a46443f38342e271e18130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c161f29323c454e58616b717f8b929ca5afb8c2cbd4dededfe1e6ebf2eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f82756b70767d83888c8f929996979796959496918d8a86817b746e685f584e463d342a1e150a00000000000000000000000000050e17222d38414b555d666d747f8790949ea0a8acafb6b6b8babebbbcc0bbb9b8b7b6b4aeacaaa29f98928d837b706c615a50463c32291e100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f181f262a2f383f44464e5455575f61646769676d6d6e6f706f6e6d676b696662605c545350494540393029241d160d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333d464f59626d73808c939da6b0b9c3ccd6dfe9eef1f7f7eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f827569636b70767b7f838688898a8a8988878684817d7a756e69615e564e463d342b22180c03000000000000000000000000000006111b262f39434b545c606d727c838a91969c9fa4acaaabaeb4afafb5afacabaaa9aaa39f9c98928d8680796e69615a50483e342a20170d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b1218212a31363e424a505358606266696e717376787a7a7b7c7c7c7b7a797876726f6d6664605b53514b433e352f281f1910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343e47505a636e74818e949ea7b1bac4cdd7e0eaf3fdf7eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695961636a6e72767a7b7c7e7e7d7c7b7a7774706d68615f57524c443c342b22191006000000000000000000000000000000000a141d283139424a505b626a6f767e848b8f939a9a9d9fa2aaa2a2aba39f9e9d9c9998928f8c85807a746d675f5750473e362c22190e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151c2328333b424650545b60646a6f73777b7e80828586878888898988878684827f7c7975706c65605c555045413a312b221911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c353f48525c606d78828f959fa8b2bbc5ced8e1ebf5f7eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c55585f6265676d6e707171706f6e6d676764605d56534d46413b322a221910070000000000000000000000000000000000020b161f2830383f44515860626c71797e83878a8e90929894959594999292918f8c8986837f7a736e68605d554d453e352c241a10070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d151e272e343e454d535a61666c71767c8084888b8d8f91979494959695949892918f8c8985827d78716d67615a514b433d342b23191006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232d364044505c666d79839096a0a9b3bcc6cfd9e3eef9eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4e5355555d6061636464636261605d555754524c46423b36302920180f0700000000000000000000000000000000000000040d161e262e343f464e545a61676d71767b7e81838587888889888786858482807c7976726d68615e56514b433c332c231a12080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161f273039404450575f616c70787d83888d9095979a9c9ea1a9a1a2a3a2aaa39f9e9c9998928f8a847e79716c605d554e463d352b22180f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111b2428343f4a545d676e7a849197a1aab4bdc7d1dce8edeaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4347484b51535556575756555453514b4a4745413a36312a251e170e06000000000000000000000000000000000000000000040c151c2328343c434750555c6064686e717477787a7b7c7c7b7a7978777673706d6766605d56524c454039312a211a11080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d161f283139424a515a61696e767d848a9095999da0a7a6a9abadb2aeafafafb4aeacaba9aaa29f9c96918b857e756d6760584f473d342a21180c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091217232e38424b555e686e7b859298a2abb5c0cbd7dbe4eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f423a3b40454748494b4b4a49484745403d3a39352f2a261f19140d050000000000000000000000000000000000000000000000030a1117222b32373e434b5153565e6164676a686d6e6f6f6e6d6c656a696663605c5554524c46413b352f271f180f080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151f28313a434b545c606c717b828a91969d9fa7aaacb1b3b5b8b9bebbbbbcbcbfbab9b8b5b4aeaba8a09d97918a81796f6a60594f463c332a1e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303a434c565f696f7c869299a3afbbbfc9d2dce5ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f42362f35393a3b3d3e3e3d3c3b3a39352f2d2c29241e1a140d0802000000000000000000000000000000000000000000000000000006101920272b30394045464d5254575b565e616162626160605b535c595653514b4745413a363029241d150d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d27313a434c555d666d747e868f949ea0a8abb1b7b8bcc0c2c4c6c9cfc8c9d1cbc7c5c4c2bebab8b2aca9a19e938e847c6f6b60584e453b30271c12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e28313b444d57606a707e87929fa4aeb7c1cad4ddddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f423624292c2d2e303131302f2e2d2c292421201d19130e09030000000000000000000000000000000000000000000000000000000000070e151b1e272e34383b4146474b4e4c52545555565554535049504d494645403a3935302a251e18120b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f39434c555d676d78808a92989ea6acb2b8bcc2c5c8cecfd1d1cecccbc9c9cacdd0d1d0cac6c3bdb8b3ada59e9691867d6f6a5f574d42392e23180c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c161f29323c454e58616c727f8b929ca5afb8c2cbd5ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291d1f202223242423222120201d181413110d08010000000000000000000000000000000000000000000000000000000000000000040a0c151d23282c3036393b3e41414647484949484746443f43403d3a38342e2c29241e19140c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424b555d676d79828d929fa2aab0b9bdc4c7cdd1d2cfc9c5c4c1c0bebdbdbdc0c3c4c8cdd3cec8c4beb9afa8a09892857c6f695f544a4034281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333d46505a626d73808d939da6b0b9c3ccd1d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c1314151618181716151413110d07070401000000000000000000000000000000000000000000000000000000000000000000000000030b12181c1f252a2d2e313036393a3b3c3c3b3a3937332d33302d2c2823201d19130d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a545c676d79828f949da4aeb4bcc2c9ced4cfc9c6c4bdb9b7b4b3b1b0b0b1b3b6b8bcc2c6ccd4cfc9c1bab2aaa29791857b6e665c51443a3025190d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343e47515b636e74818e949fa7b1bac4c4c4c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f07080a0b0b0a090807060401000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c1014191e202124252a2d2e2e2f2f2e2d2d2b27222623201f1c1813110d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b666d798290949fa6aebabfc6ced5d0cac5beb9b8b2adaba8a6a5a3a3a4a6a9abb1b6bac1cad0d5ccc4bcb3a9a1979183786d60564c41362a1e140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c353f49525c606d78828f95a0a8b2b7b7b7b7b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080e11141418191d20212222232221201f1b171a161313100c0704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c78828e949fa6b0b8c0cad0d7cec5bebab3adaba8a19e9b99989696979a9d9fa7aaafbabec5ced6cec5bcb3a9a0958c7f72685e52463b3025190d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232d374044515c666d79839096a1a9abababababaa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708080d111314151616151413120f0b060a070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d79839097a1aab4bfcbd6d1cbc1bcb4aea9a19e9a96918e8d8b8a8a8a8d90959b9ea5aeb3bcc5ced7cec4bbb1a79f92857a6d61564c41362a1e1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111b242834404a545d676e7a8491979e9e9e9e9e9e9e9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2c7c7c2b5a89c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105070708090908070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d676e7b859198a3aebabfc9c6bfbaafaaa29f97928d898481807e7d7d7e8083888e939fa2aab3bcc5d0d6cdc3baaea2988e8174685e5246392d201408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091218232e39424b555e686e7b859191919191919191919184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5babababab5a89c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b555e696f7c86929fa4adb7c1bcb4aea59e98928c85807c7875737270707173767c818a9298a2aab4bfcad6d6cabeb3aa9f93877a6e6154473b2f24190d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121c27303a434c565f696f7d848484848484848484848276695c504336291d10030000000000000000000f1c2936424f5c6975828f9ca8aeaeaeaeaeaea89c8f8275695c4f4236291c0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f39434d57606a717e8a929ca5afb9b3aaa39f938e857f79736f6c656665636364676a6f757e869298a2aebac2ccd8d0c5bbafa4998b7e7165564c4135291d1104000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e28313b444d57606b6f777878787878787878787670665a4e4135281c0f020000000000000000000f1c2936424f5c6975828f9ca1a1a1a1a1a1a1a19c8f8275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313b454e58616c73808c939ea7b1aaa298928b817a736d6762605b5358575757585f626c707d86929fa6b0bbc7d3d7ccc0b5ab9c8f8276685d5245392c20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c161f29323c454f5960636b6b6b6b6b6b6b6b6b6b69665e54493e3226190d000000000000000000000f1c2936424f5c6975828f949494949494949494948f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f29333d46505a606c77818e959fa8a29892867f756d68605d555350494b4a4a4b4e535a616b717e8a949fabb7c5cfdad2c5b9ac9f92867a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333d464f54565e5e5e5e5e5e5e5e5e5e5c5a544c42382d211509000000000000000000000f1c2936424f5c6975828787878787878787878787878275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17212b343e44505b656d79839096a19792867d726d615e56514b46443f3f3d3d3e43475059616c76828f9ca9b3becad6d3c7bbaea3998a7d7164574a3e3124170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343d43484951515151515151515151504e49423a30261b1005000000000000000000000714212e3a4754616d7a7b7b7b7b7b7b7b7b7b7b7b7b7a6d6154473a2e21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f192227333f49535d676e7a84919892857c6f6b625b524c45403937332d303032373e46505a63707d8a97a1adb9c6d2d7cbbfb5ab988c7f7265594c3f3226190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222b32383b3c4445454545454545454543413e3830281e140a00000000000000000000000713202d3946525e686d6e6e6e6e6e6e6e6e6e6e6e6e6d685e5246392d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071017222d38414b555e686f7c8692867d6f6a60595146413a352f2b27222424262b343e4653606d7985929eabb8c5d1dcd1c0b3a69a8d8073675a4d4034271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101921272c2f30383838383838383838383635322d261e160c03000000000000000000000005111e2a36414c565e61616161616161616161616161615e564c41362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f39434d565f6a717e867f716b60584f473f363029241f1b1717171b222c3844505c6676828f9ca9b5c2cfdbcec1b4a89b8e8175685b4e4235281b0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161b1f22232b2b2b2b2b2b2b2b2b2b292826211b140c04000000000000000000000000010d1925303a444c525454545454545454545454545454524c443a3025190d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d27313b444e58616c717d716c62594f463d352a251e18120f0b060a101c28343f4a546774818d9aa7b4c0cddacfc2b6a99c8f8376695c504336291d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f1315161e1e1e1e1e1e1e1e1e1e1d1c1915100a03000000000000000000000000000008131e29323a4146474848484848484848484848484746413a32291e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151f29323c46505a616b706b625a50473d342b2319130d07030000000c17232e404c5966737f8c99a6b2bfccd9d0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000307090911121212121212121212100f0d090500000000000000000000000000000000020d1720293036393a3b3b3b3b3b3b3b3b3b3b3b3b3a3936302920170d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17202a343e4850596163615950483f36302920170e060000000000061a2633404d596673808c99a6b3bfccd9cfc2b5a99c8f8276695c4f4336291c10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e171e252a2d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d2a251e170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e19222c363e474f5557554f484746413a32292017110a060400030a1a2734404d5a6773808d9aa6b3c0cdd9cec1b4a89b8e8175685b4e4235281b0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d13191e202121212121212121212121212121201e19130d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b12181d2429353e44484a4d535454524c443b3328221c1412100c10141b2a36424d576875828e9ba8b5c1cedacdc0b3a79a8d8074675a4d4134271a0e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d1113141515151515151515151515151413110d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171d23282f353a41454c52575e61615e564d453c332d26201f1c181c1f262d3a46535f697784919eaab7c4d1d9ccbfb2a6998c7f7366594c403326190d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707080808080808080808080808070705010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c22282e343940454c52565e61696e6d685e574e443f382f2d2c2823282b2f38414c56616e7b87939facb9c6d2d5c9bdb2a8978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d333940454b51565d60686e747b7a6e695f58504a423d3a38342e34383b4149525e6873808c9aa4afbbc8d4d2c5b9aca096877b6e6154483b2e2115080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f444b51555d60686d737a8086847b6e6a605b544f48464440433f44464d535b616d7a85929eacb6c0ccd8d1c4b7aa9e918477695e53463a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424a50545c60676d727a80868d9291847c726c6660595553514a504a5053575e656c75818e97a1adbec7d2d5c9beb3a99a8d817467574d42362a1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a545b60666d72797f858d92989f9691867f786f6b6662605c545c545c6063696e77808d939ea9b3bed0d9d2c6b9ada1978a7d7164574a3e31251a0e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b666c71797f858c92979fa2a8a098928c827c77726f6d66696969666d70747b828d929da5afbbc5cfd5c9beb3a99e9285796d6053473a2d201409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c787e848b91979fa2a9aeb2aaa39f949089837f7b797776767677797c81868f939da4aeb7c1cdd6ccc4b9ada1978c7f72675d5145392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c5966737f8b91969ea1a9adb3babcb4aea69f9c95908c8886848383828486898d92989ea5aeb6c0c9d3cec4bab0a69e9285796d60554b4035291d1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a1a8adb3babec5c6bfbab0aba79f9d99999291908f8f9192989a9fa2aaafb8c0c8d2cdc5bcb2a89f948c7f72675d5143392f24180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8898a2aeb9bec4cacfd0cbc2bbb7b1abaaaba39f9d9c9c9c9d9fa3aaacaeb4bcc1cad4cbc3bbb3aaa1969082796d60554b4031271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7985929fabb8c5cfd6dbdcd6cdc7c3bcb8b6b5aeacaaa9a9a9aaacaeb4b8babfc6ceccc8c0b9b1a9a29891847a6d665c5143392f1f150b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b6576838f9ca9b6c2cfdce6e7dad2cac5c1c0c1bfbbb9b7b6b6b5b7b9babfc5c6cacac7c0bbb9afa7a09792867c6f685e544b4031271d0d03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f49536773808d9aa6b3c0d0dbe7dcd2c8c0b9b5b3b4b9bbc0c4c3c2c2c4c5c7cac6c5c2bfbab6afaca59d9590857d706a5f564c42392e1f150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3e4b5764717e8a97aab4bfcad6e2d6cac0b6aea9a6a7acafb5b9bbc0bebebdbcbfbab8b5b4aeaca49f9b938e837b706b61584e443a30271d0d0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615222f3b4855626e7b8898a2aebac6d3e0d1c5b9aea49d9a9a9fa3abacafb5b2b1b0afb4aeaca9aaa29f9a938f8981796e6961594f463c32291e150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7985929facb8c5d2dfcec1b5a99d928d8e92999d9fa4aba5a5a4a3aaa29f9c9998928e87827c746d675f574f473e342a20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667683909da9b6c3d0d9cdc0b3a69a8d8081868c90939997989897969598928f8c8986817b756f6a605c554d453e352c22180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546774818d9aa7b4c0d1dccdc1b4a79a8e81747b7f8386898a8b8b8a89888785827f7c79746e6a626058514b433b332c231a10070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3e4b5865717e8b98aab4bfcbd7d0c3b6a99d9083766e72777a7c7e7f7e7d7c7b7a7976736f6d66625f57544e4540393129211a1108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616222f3c4955626f7c8898a3aebac7d3d2c5b8ac9f9285796c65676d6f71727271706f6e6d666663605c54534e47433d342f271f180f0b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facb9c5d2d3c6baaea298887b6e615d606364656564636261605c545653514b47423c373229232423211c17100800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2c3844515c667783909daab6c3d0d6cabfb4aa978a7d71645753565758585756555453504a494645403937313434343431302d28221a1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404a546774818e9aa7b4c1d1dbd0bfb3a6998c807366594d494b4c4b4a49484746443f40404040404040404040403e3c39332c241a100500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e3f4b5865727e8b98abb5c0cbd7cec2b5a89b8f827568554c4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a49443e362c22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000716232f3c4956626f7c8999a3afbbc7d3d1c4b7aa9e918477675d5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a575550483e33281c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7986929facb9c5d2d2c6b9ac9f93867a6d67676767676767676767676767676767676767676767676764615a5044392d2114080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c677784909daab7c3d0d4c8bbafa49a897c73737373737373737373737373737373737373737373737373716c6155493c3023160a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2934404b556874818e9ba7b4c1d2d8ccc0b6ac9c8f82808080808080808080808080808080808080808080808080807e7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f3f4c5865727f8b98abb5c0ccd7d2c7b7aa9e948f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8174675a4e4134271b0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071623303c4956636f7c8999a4afbbc7d4d3c7bbb0a69e9c9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8d8174675a4e4134271b0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7a86939facb9c6d2d7ccc1b8b0aaa8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69a8d8174675a4e4134271b0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d677784919daab7c4d0ddd3cac1bbb7b5b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a79a8d8174675a4e4134271b0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935404b556875818e9ba8b4c1cedbded3ccc7c3c2c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b4a79a8d8174675a4e4134271b0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18242f3f4c5965727f8c98a5b2bfced1d1d1d1d1d1cfcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdc0b4a79a8d8174675a4e4134271b0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071623303d495663707c8996a8b2bdc4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c0b4a79a8d8174675a4e4134271b0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8796a0acb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b4a79a8d8174675a4e4134271b0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3945525d687784919eaaabababababababababababababababababababababababababababababababa79a8d8174675a4e4134271b0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c566875828e9b9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9a8d8174675a4e4134271b0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3f4c5966727f8c91919191919191919191919191919191919191919191919191919191919191919191918d8174675a4e4134271b0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081623303d495663707d84848484848484848484848484848484848484848484848484848484848484848484848484807366594d4033261a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3b4854606b7078787878787878787878787878787878787878787878787878787878787878787878787878736e63574b3f3226190c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c38444f5960636b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b66635c52473b2f23170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27323d474f54565e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5957524a40352a1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b353d444849515151515151515151515151515151515151515151515151515151515151515151515151514d4b4740382e24190e020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19232b32383b3d45454545454545454545454545454545454545454545454545454545454545454545454545403f3b352e261c12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111921272c2f303838383838383838383838383838383838383838383838383838383838383838383838383833322f2a241c130a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161b2022232b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2626231f19120a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b101316161e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1a1917130e0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a121212121212121212121212121212121212121212121212121212121212121212121212120d0c0a07020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + _typelessdata: 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010406070b0e0f0f0d09080603000000000000000000020507080c0e0f0e0b07070501000000000000000000030608090d0f0f0e0a07060400000000000000000000000000000000000105090b0b1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110d0c0a060200000000000000000000000000000000000000000000000000000000000000000000000000040607070809090a0908080706050300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004060707070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070707060400000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b1313131313131313131313131311110e0b060000000000000000000003090d11121313131313131313131313131313090907030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606070808080707060400000000000000000000000000000000000000000000000000000000000000000000000000000205070813131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313130d0c0a0702000000000000000000000000000000010407071213131313131313131313131313130f0e0c08040000000000000000000000000000000000000000000000000000000000000000000406071213131313131313131313131313130f0e0c080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306070808090a090807070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306070809090a090808070604000000000000000000000000000000000000000000000000000000000000000000000000000001050707121313131313131313131313131313130b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050a0e10111313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312110f0c0701000000000000000000000000000000000000000000000001070d111314181b1c1b191515120f0a04000000000003090e121415191b1c1b181413110d08020000000000040a0f1315161a1b1c1b171313100c070000000000000000000000000000060c111517181d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d191916120d070000000000000000000000000000000000000000000000000000000000010407070a070c10131314151516161615151413120f0b06090706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020608080b070c101313141413100c070a070604000000000000060606060606060606060606060000000000000000000000000000000000000000000000000000000000000000000000020608080b070c101313141413100c070a07060400000000000006060606060606060606060606000000000000000000000000000000060c11151718202020202020202020202020201e1d1b17120b0400000000000000070e15191d1f20202020202020202020202020201615130f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507060b0f121314151515141313100c070706030000000000000000000000000000000000000000000000000000000000000003090e1214151f202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201a1917130e0700000000000000000000000001080d1113141f20202020202020202020202020201b1a18140f09010000000000000000000000000000000000000000000000000000000000070c1013131e20202020202020202020202020201b1a18140f090100000000000000000000000000000000000000000000000000000000000000000000000001040607060c101213151516161615141312100c06080705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606060b101213151516161615141413100c070807050200000000000000000000000000000000000000000000000000000000000002080d1113141f202020202020202020202020202020181715110c060000000000000000000000000000000000000000000000000000000000000000000000000000000000030b11161a1c1d202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201f1e1b18130c05000000000000000000000000000000000000000000040c13181d2021242829282622211f1b150e08020001070c141a1e2121262829282521201d19130b06000003090e151b1f22232628292724201f1c18120b0300000000000000000000000911181d2124252a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2625231e19120a010000000000000000000000000000000000000000000000000406080d1113141719181c1f20212122232323222121201f1b1718151312100c060300000000000000000000000000000000000000000000000000000000000000000000000000000000000206090e121415181b181c1f2021201f1c181a171312100c070407090a1313131313131313131313131307060401000000000000000000000000000000000000000000000000000000000206090e121415181b181c1f2021201f1c181a171312100c070407090a1313131313131313131313131307060401000000000000000000000910171d2124242d2d2d2d2d2d2d2d2d2d2d2d2d2b2a27231d160e0600000000000911192025292c2c2d2d2d2d2d2d2d2d2d2d2d2d2d23221f1b160f070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090e121415171c1f202121222221201f1c18161312100b0604010000000000000000000000000000000000000000000000000000060e141a1e21222c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2626231f19120a01000000000000000000040c13191d20212c2d2d2d2d2d2d2d2d2d2d2d2d2d2d282724201a130b030000000000000000000000000000000000000000000000000000030b12181c1f202b2d2d2d2d2d2d2d2d2d2d2d2d2d2d282724201a130b0300000000000000000000000000000000000000000000000000000000000000000205070d11131417171c1f2021222223232221201f1c17181514120e090603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f121316171c1f2021222323232221201f1d18171414110e0905020000000000000000000000000000000000000000000000000000050c13191d20212c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2423211d171008000000000000000000000000000000000000000000000000000000000000000000000000000000050d151c2226292a2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2b2a28231e170f0600000000000000000000000000000000000000090d161d24292c2d31343535332f2e2b262019140d050b12181f252a2d2e32353534322e2d2a251e17110a060e151a20272b2e2f33353534312d2c28231d150c0800000000000000000009121b22292e313237373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373733322f2a231c130a00000000000000000000000000000000000000000004070c101314191d2021242623282c2d2e2e2f2f302f2f2e2d2d2b27222422201f1c17120f0b060000000000000000000000000000000000000000000000000000000000000000000000000003090e12151a1e2122252823282c2d2d2d2c29232723201f1c181210131616202020202020202020202020201413110d080100000000000000000000000000000000000000000000000003090e12151a1e2122252823282c2d2d2d2c29232723201f1c181210131616202020202020202020202020201413110d08010000000000000009121a22282d3031393939393939393939393939393836332e2820180e0400000007111b232b3136383939393939393939393939393939302f2c2721191007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f13151a1e212122282b2d2d2e2f2e2e2d2c282323201f1c1713100d07010000000000000000000000000000000000000000000000060f181f262b2d2e393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393933322f2a241c130a0000000000000000040d161e24292c2d3939393939393939393939393939393534312c251d150b00000000000000000000000000000000000000000000000000030c151d23282c2d3839393939393939393939393939393534312c251d150b01000000000000000000000000000000000000000000000000000000000003090e1214181d20212423282c2d2e2f2f302f2f2e2d2c28232422211e1a15130f0a050100000000000000000000000000000000000000000000000000000000000000000000000000000000000003090f11171c1f202223282b2d2e2f2f302f2f2e2d2c29242421201e1914120e09030000000000000000000000000000000000000000000000050e161e252a2d2e3939393939393939393939393939393931302d28221a120800000000000000000000000000000000000000000000000000000000000000000000000000030d171f272d323637393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393837342f2921180f0500000000000000000000000000000000020b121b1f282f35393a3e414242403c3a37312a251f170e151d232931363a3b3f4142413e3a39363028231c140f1820262b32373b3c404242413d3a38342e271e1a120a0100000000000006111b242d343a3d3e444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444403e3b352e251c1207000000000000000000000000000000000000070c1013181d1f2024292c2d30332e34383a3a3b3c3c3d3c3b3b3a3937332d312f2d2c28231f1c17110e08020000000000000000000000000000000000000000000000000000000000000000040a0f151a1e21262b2d2e32342e34383a3a3a38342f34302d2c28231f1c2022232d2d2d2d2d2d2d2d2d2d2d2d2d2d201d19130c04000000000000000000000000000000000000000000040a0f151a1e21262b2d2e32342e34383a3a3a38342f34302d2c28231f1c2022232d2d2d2d2d2d2d2d2d2d2d2d2d2d201d19130c04000000000006101a242c34393d3e4646464646464646464646464644433f39322a20160b0000030e19232d353c424546464646464646464646464646463c3b38322b22190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f151b1f22252a2d2e2d3338393a3b3b3b3a3a38342e302d2b2823201d18120c07010000000000000000000000000000000000000000030e18212a31373a3b4646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646403f3b352e251c1207000000000000010c1620282f35393a45464646464646464646464646464642403c372f271d0f060000000000000000000000000000000000000000000000000b151e272e34383a45464646464646464646464646464642403c372f271d1309000000000000000000000000000000000000000000000000000000060b10141a1e2024292c2d302e34383a3b3b3c3d3c3b3a3a38342e312e2d2b26221f1b15110d08020000000000000000000000000000000000000000000000000000000000000000000000000000040a0f151a1c22282b2d2f2e34383a3b3c3c3d3c3b3b3a39352f302e2d2a25211e1a140f0a040000000000000000000000000000000000000000020c1620283036393a454646464646464646464646464646463e3d39342c241a0d040000000000000000000000000000000000000000000000000000000000000000000000000b151f2931383e4244464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464544403a332a21170c010000000000000000000000000000000b141d242d313a4145474b4e4f4e4c4847433c36302920181f272f343b4246484c4e4f4e4b4746413a342e261e19212a31373d4347494d4e4f4e4a46454039302c241c130a0000000000010c18222d363f454a4b5050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050504c4b4640372e23190d02000000000000000000000000000002080d12181c1f24292c2d2f35393a3d3f4140454647484849494948484746443f403e3c3a38342e2b28221c19140c07000000000000000000000000000000000000000000000000000000000002080d151b20262b2e31373a3b3e41434045464747454043413d3a38342e2c282c2f3039393939393939393939393939392c29241e160d0400000000000000000000000000000000000002080d151b20262b2e31373a3b3e41434045464747454043413d3a38342e2c282c2f3039393939393939393939393939392c29241e160d04000000000c17222c363e45494b53535353535353535353535353514f4b443c32281d1206000915202b353f474e5253535353535353535353535353534948433d342b21160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f161b20272b2e31363a3b3f3f44464748484847464540403c3a38342e2c29241d18120c070000000000000000000000000000000000000009141f2a333c42464852535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353534d4b4740372e24190e02000000000008131e28323a4145475253535353535353535353535353534e4d4841392f21180e030000000000000000000000000000000000000000000007121d2730394045465153535353535353535353535353534e4d4841392f251a0f04000000000000000000000000000000000000000000000001070c11171c1f252a2d2f35393a3d403f44464848494949484746443f403e3b3a37312e2b27201e19130d08020000000000000000000000000000000000000000000000000000000000000000000002080d151b20262b2d3338393c3f3f444648484949494847474540403d3b3a36302d2a261f1b160e090300000000000000000000000000000000000008131e28323a414647525353535353535353535353535353534b49453e362c1f160c010000000000000000000000000000000000000000000000000000000000000000000005111c27313b434a4f505353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535352504c453c33291e1307000000000000000000000000000009131d262f363f434b5154575b5c5b5955534e46413b322a2128313940454d5354595b5c5b5854524c443f383027232b333c42474e5456595b5c5a5753514b433e362e251c12080000000005111d29343f485056585d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5957514940352a1e120600000000000000000000000002080e13191d23282c2f35383a3d4145474a4c4e4b51535454555656565554545350494d4b4846443f3938332d2a251e18120b030000000000000000000000000000000000000000000000000000050c131920272b31373a3c4247484b4e504b51535453514b504d4a4644403a3834383c3d464646464646464646464646464639352f281f160c0100000000000000000000000000000000050c131920272b31373a3c4247484b4e504b51535453514b504d4a4644403a3834383c3d464646464646464646464646464639352f281f160c01000005111d28343e48505557606060606060606060606060605e5c564e44392e23170b000d1925313c4751595e5f6060606060606060606060606056544f473d32271b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c151b21272c32373b3c4246484b4a5053545455555453514b4d4946443f3a39352f29231d18120b0300000000000000000000000000000000020e1a26313c454d53555f606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605957524a40352a1f130700000000010d19242f3a444c52545f60606060606060606060606060605b59534b41332a201509000000000000000000000000000000000000000000000c18232e39434b51535e60606060606060606060606060605b59534b41372c20140800000000000000000000000000000000000000000000030b12181c23282b30363a3b4145474a4d4a50535455555656555453504a4d4b4846423c3b37322d2a251e19130d070100000000000000000000000000000000000000000000000000000000000000040c131920272b3137383f4446494c4a50535455565656555453514b4c4a4746423b3a36312c27211a140b0600000000000000000000000000000000010d1925303a444c52545f606060606060606060606060606060575550483e31281d1207000000000000000000000000000000000000000000000000000000000000000000000a16222d38434d555b5d606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605e5c574f453a2f23180c00000000000000000000000000040d1b252f38404850555d606467686866625f58524d443c332a313a434b51575e616568686765615e56504a4239302b353d454d535860626668686764605c55504840372e241a0c030000000915212e3a45505a62656a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a66635b51463b2f23160a0000000000000000000001070c14191e252a2e34383a4045474a4c525457595b545c60616162626362626160605b535a575553504a46443f38363028231c150c06000000000000000000000000000000000000000000000000080e161e252a32373c4247484d5355585b5d545c6060605c555c5a5653514a464440444849535353535353535353535353535345413a31281e1308000000000000000000000000000000080e161e252a32373c4247484d5355585b5d545c6060605c555c5a5653514a464440444849535353535353535353535353535345413a31281e130800000815212d3945505a61646c6c6c6c6c6c6c6c6c6c6c6c6c6b6760564b3f33271b0e00111d2936424e59636a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6360594f43382c1f1307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b121820262b32383d4347494d535458545b606061626161605c555a5653504a47454039342f28231c150c0700000000000000000000000000000005121e2b37424d575f616c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0000000004111d2935414c565d606c6c6c6c6c6c6c6c6c6c6c6c6c6c6c68655d53453c31261a0e03000000000000000000000000000000000000000004101c2834404b555c606b6c6c6c6c6c6c6c6c6c6c6c6c6c6c68655d53483c3124180c000000000000000000000000000000000000000003090d151d23292e34383b4246484b5154575a545c6061626263626261605c545a5755534d4947433d39363029251e18130c040000000000000000000000000000000000000000000000000000000000080e161e252932373c43474a50535559545c6061626263626261605d55595754524d4846423b38322a261f17110a02000000000000000000000000000005111d2a36414c565e616c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5043392f24180d030000000000000000000000000000000000000000000000000000000000000000010e1a26323e4a555f666a6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6b6861574c4034281b0f000000000000000000000000010c161f2d37404a525a62676d71747575736f6a615e564d453c313a434b555c60696e72747574716d68605c544a4239333d474f575f626a6f73757574706d67615a514940362c1e150b0000000b1724313d4a56626c71777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777736d63574b3e3225190c000000000000000000030b12181f252a3036394045464b515357565d6063666769666d6d6e6f6f706f6e6e6d6c6569676462605c5453504a46413b342e271e17110a020000000000000000000000000000000000000000010a111a202830363c43474d5355575f616567696b666d6d6d676b696763605c5453514a4f5456606060606060606060606060605f524c433a2f24190d01000000000000000000000000010a111a202830363c43474d5355575f616567696b666d6d6d676b696763605c5453514a4f5456606060606060606060606060605f524c433a2f24190d01000a1724303d4955616c71797979797979797979797979797772675c4f43362a1d1100121f2c3845525e6a7579797979797979797979797979796f6b6054483b2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c151d232832373d43484e5456575e616568666c6d6e6e6e6d6d67696663605c5453514b454039342e271e18100700000000000000000000000000000714212d3a46535f696e7979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979736e63574b3f3226190c000000000713202c3945525d686d787979797979797979797979797979756f65574d42372b20150900000000000000000000000000000000000000010c161f2c3845515c676d787979797979797979797979797979756f65594d4034271a0e00000000000000000000000000000000000000060d141a1f272f34383f44464d5254555d60636669666d6e6e6f706f6e6d6d66696764615f5756544e4746413a353029241d160d070100000000000000000000000000000000000000000000000000010a111a202830353d43474e53545b60626568666d6e6f6f706f6e6e6d67686663615e5655534d48433d363127221b140b04000000000000000000000000000713202d3946525e686d78797979797979797979797979797979716c61554b4035291f1409000000000000000000000000000000000000000000000000000000000000000003101c2936424f5b667177797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797873685c5044372a1e1100000000000000000000000008131e28313f49525c646d717a7e8182817f7c756e685f574d4339414b555d676d747b7f8182817e7a736d665c544a403b454f5960696e767c808182817d79716c635b51483e30271d120700000b1825323e4b5865717e8383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383837f7366594c403326190d0000000000000001080d151d242930363a41464b5153555d606467686d7072747678797a7b7b7c7c7c7b7b7a79787673716f6d6663605b54524c4440393027221b140b02000000000000000000000000000000000000020b131c232c323a41464e54575f6266696e7174767879797a7a79787674706d6663605c545960636c6c6c6c6c6c6c6c6c6c6c6c6c6c5d564c4135291d11040000000000000000000000020b131c232c323a41464e54575f6266696e7174767879797a7a79787674706d6663605c545960636c6c6c6c6c6c6c6c6c6c6c6c6c6c5d564c4135291d1104000b1824313e4b5764717e8686868686868686868686868684776b5e5144382b1e110013202c3946535f6c7987868686868686868686868686867c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e171e272e343c43474f5458606266696e727577797a7b7b7b7a797876736f6d6664605d55514b444039302a2218120b030000000000000000000000000815222e3b4855616e7b8686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686807366594d4033261a0d000000000714212d3a4754606d7a8586868686868686868686868686868175695f53473c31261a0e0305050505050505050505050505050505050008131e2935404b55606d798486868686868686868686868686868175685b4e4235281b0f000000000000000000000000000000000001070f181f262a313940454a5053575e6166676d70737577797b7b7c7c7c7b7a79787673716e696762605854524c46413a352f281f18120b030000000000000000000000000000000000000000000000020a131c232b323a41464e54585f62666c6f727577797b7b7c7c7c7b7a7a787573706e6966615f57544e46423b332d261d160d050000000000000000000000000714212e3a4754616d7a858686868686868686868686868686867e71675d51453b31261a0c030000000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a77838686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868685786b5e5245382b1f120000000000000000000000010d19242f3a43515b646e747e858a8e8f8e8c88827a6e695f554b4045515d676d7980868c8e8f8e8b8680786d665c5144424d57606b707b82898c8e8f8d8a847e736d635a5043392e23180c00000d192633404c5966737f8c909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090908e8174675b4e4134281b0e000000000000040c13191f272f353b41464c52545c6064676d7074777a7d7f81838486878788898989888787868582807e7b7974706c66615e56514a423d332d261d140b0200000000000000000000000000000000020b141d252e353e444c52586062696e73787b7e81838586868786868582807d7974706d6661606b707979797979797979797979797976685d5245392c20130600000000000000000000020b141d252e353e444c52586062696e73787b7e81838586868786868582807d7974706d6661606b707979797979797979797979797976685d5245392c201306000b1824313e4b5764717e8a93939393939393939393939184776b5e5144382b1e110013202c3946535f6c7986929393939393939393939393897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000811192029303940454e535960636a6f73777b7e8284868787888887868483807c7975716d67605c55514a423c3428231d150c0300000000000000000000000714212d3a46535f69717e8b93939393939393939393939393939393939393939393939393939393939393939393939393939393939393938c807366594d4033261a0d000000000713202c3945525d68727f8c96939393939393939393939392877b6e62574d42372b2015091212121212121212121212121212121212120d19242f3945515d67727f8b96939393939393939393939392867b6e6155483b2e22150800000000000000000000000000000000030b1218212931363e434b51545c6064696e72767a7d8082848687888889898887868583807e7b78746f6a66615e56524c45403a3129231d150d06000000000000000000000000000000000000000000010a141c252e353d444c525860626a6e73787c7f828486878889898988878684827f7d7b77736e69626058534d443f382f281f170e0500000000000000000000000713202d3946525e68727f8b959393939393939393939393939184796d60574d42362a1e150b0000000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a77839093939393939393939393939393939393939393939393939393939393939393939393939393939393939393939185786b5e5245382b1f12000000000000000000000004111d2935414c56626d74808b92979a9b9b99938f847b6e675d51454f59606d79838d92999b9b9a98928c82786d60584e46535e69707d869094999b9b9a96918a7f736c61554b4034281c1004000d192633404c5966737f8c999d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9a8e8174675b4e4134281b0e0000000000070d161e2429313940454d52565e61666d7075797d8184868a8c8e8f91939a949595969595949993928f8d8a8885817d78736e68605c544f443f382f261d140a000000000000000000000000000000000a141d262f3740474f565e616a6f757b8084888b8e90919299939992918f8d8985817d79706c63707d868686868686868686868686867a6d6054473a2d211407000000000000000000000a141d262f3740474f565e616a6f757b8084888b8e90919299939992918f8d8985817d79706c63707d868686868686868686868686867a6d6054473a2d211407000b1824313e4b5764717e8a979f9f9f9f9f9f9f9f9f9e9184776b5e5144382b1e110013202c3946535f6c7986929f9f9f9f9f9f9f9f9f9f96897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a232b333b424b51585f626b6f767c8083878b8f9092989495949a93918f8d8985817e79726d67605c544e463e342e271e150d030000000000000000000005121e2b37424d57626c75818e96a19f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f998c807366594d4033261a0d0000000004111d2935414c56606d7984919ea89f9f9f9f9f9f9f9fa3998e8175695f53473c31261a1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1f1d2935414c56606d7985919ea89f9f9f9f9f9f9f9fa2988d8074695f53463a2d211407000000000000000000000000000000050d151d2329333b424650555c60666d71767b7f83868a8d8f9192999595969595949792908d8a8885807c77736d68615e56514b433d342f271f180f0700000000000000000000000000000000000000000a131c262e373f474f565e616a6f757b8084888c8f91929995959695959496918f8c8a87837f7b756f6a615f5750494139312920170d040000000000000000000005111d2a36414c56606c7883909aa49f9f9f9f9f9f9f9f9fa1968d8073695f53463d30271c120700000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909d9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9e9185786b5e5245382b1f1200000000000000000000000613202c3945525d68727f8b929ea1a9a8a8a59e969184796d60534755606b75828f959fa3aba8aaa29f948d80746a5f534c56616e7b8592989fa6a8a8a8a19e918a7e71675c5145382c1f1306000d192633404c5966737f8c99a6aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa79a8e8174675b4e4134281b0e000000000910181f282f353e434b51565e61686d73797d81858a8d909399999a9c9e9fa4a1a2a2a3a2a1a1a49f9e9c9a9797928e8984807a726d666059504941382f261b1106000000000000000000000000000008121c262f384149515961686d757c82888d9196989a9c9e9fa3a0a39f9e9c9a97928e8a847d766f707c899393939393939393939393877a6d6054473a2d21140700000000000000000008121c262f384149515961686d757c82888d9196989a9c9e9fa3a0a39f9e9c9a97928e8a847d766f707c899393939393939393939393877a6d6054473a2d211407000b1824313e4b5764717e8a97a4acacacacacacacaa9e9184776b5e5144382b1e110013202c3946535f6c7986929facacacacacacacaca296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111a242c353d454d545c606a6f757c82898c9095989b9d9fa3aaa1a1a49f9e9c9997928e8a857f79726d665f585045403930271f150b02000000000000000000020e1a26313c45505a606d7a849199a4afacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaca6998c807366594d4033261a0d00000000010d19242f3a45515d67727e8b96a0acacacacacacacb5ab9f93877b6e62574e42372b2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c3945525d68727f8c97a1adacacacacacacb3a99f92867a6d61574d42362a1e12050000000000000000000000000000060e161f272f343e454d535a61676d72787e83878c909299999c9d9fa3aba2a3a2a1a9a29f9c9a9797918d8984807a736d68605d554f45403931292119100800000000000000000000000000000000000008111c262e384049515960686d747c82878d9196989b9d9fa3aba2a3a2a1a8a19e9b999695908c87827c756e69605b534b433b32291f160c02000000000000000000010d1925303a44505b666f7c87939fa9b3acacacacacacb2a89f92867b6e61594f42392e23180c02000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daaacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacab9e9185786b5e5245382b1f1200000000000000000000000714212d3a4754606d7a85929fa4adb3b5b4afa9a0968c7f7266564c5663707d89939ea7afb5b5b4aea69f93877c6e6255525e6875818e97a2aab0b4b5b2ada39e9184796d6053463a2d201307000d192633404c5966737f8c99a6b2b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b4a79a8e8174675b4e4134281b0e00000009121b222a313a41454f555d60686e747a7f858a8e92989a9d9fa4aba7a9abacafb6aeafafafaeb5afacaba9a6a9a29f9a96918d857f78706b605b534941382d22170f05000000000000000000000000050f1a242e38414a525b636b707a81888f93999ea1a8a7a9abacaeb5aeacaba9a9a29f9b96918a827c707c89969f9f9f9f9f9f9f9f9f93877a6d6054473a2d2114070000000000000000050f1a242e38414a525b636b707a81888f93999ea1a8a7a9abacaeb5aeacaba9a9a29f9b96918a827c707c89969f9f9f9f9f9f9f9f9f93877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1b9b9b9b9b9b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9b9b9b9b9b9afa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19232c363e474f575e666d747c82898f94999da0a7a8aaacaeb4aeb6afacaba9a9a19e9b97928c847e786f6a625a514b423931271d140a0000000000000000000009141f2a333f45525d68707d87939fa7b1bcb9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b3a6998c807366594d4033261a0d000000000008131e2935404b55606d7884919ea7b1bcb9b9b9b9bbafa4998e81756a5f53473c313838383838383838383838383838383838383838383835414c56606d7a85929ea9b3beb9b9b9b9b9ada1978c8073685e52453b31261a0e0200000000000000000000000000060f1720283139404550575f616c70797f848a90939a9d9fa3aba8aaacaeb5afafafaeb3adaba9a6a9a19e9a96918c86807a736d676059514b433b332b221a110800000000000000000000000000000000050f1a232e38404a525b636b707a81878f939a9ea1a8a8aaacaeb5afafafaeb2acaba8a6a7a09d9a938f89827b726c655d554d443b31281e140a0000000000000000000008131e28333f4a54606a74818e97a2adbab9b9b9b9b9baaea3988f82756b60544a4034281e1408000000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b8ab9e9185786b5e5245382b1f1200000000000000000000000b1825313e4b5864717e8b97a2adb9bec2c1bbb2a89d918477685d525b6875818e9ba6b0bbc0c2bfbaafa4998d8073665a54616d7a86929fa9b3bcc1c2bdb9ada1968a7d7063574a3d3024170a000d192633404c5966737f8c99a6b2bfc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c1b4a79a8e8174675b4e4134281b0e000006101b242d343c434c525961676d737b81868c91979b9fa2aaaaacafb5b4b6b7b9bbc0bbbcbcbcbbc0bbb9b8b5b3b3adaba8a19e98928c847d736c655b53493f332721170d0200000000000000000000030c17212c36404a525c646d737d858e939b9ea6abacb2b4b6b8b9bbbfbbb9b8b6b3adaba8a09e948f867d7d8996a3acacacacacacaca093877a6d6054473a2d21140700000000000000030c17212c36404a525c646d737d858e939b9ea6abacb2b4b6b8b9bbbfbbb9b8b6b3adaba8a09e948f867d7d8996a3acacacacacacaca093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdc6c6c6c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5c6c6c6bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b353e48505960696e7881878f949c9fa6aaacb1b5b7b9babfbbc0bbb9b7b6b3adaba9a19e96918b847c716c605c544b43392f261c1106000000000000000000030e18212935414c56606b73808d959faab4bfcac6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6bfb3a6998c807366594d4033261a0d0000000000010c18242f3944505c66717e8a95a0acb8c2cdc6ccc0b5ab9f93877b6e62574e4245454545454545454545454545454545454545454545454546525e6873808c97a2adbbc4cfc6c9bdb2a89e92857a6d60564c4133291f140900000000000000000000000000050f172129323a434b515a61696e767d848b91969c9fa4acacafb5b5b7b9bbbfbbbcbcbbbebab8b6b3b2adaba8a09e98928d8580796f6b605c554d453c342c231a12080000000000000000000000000000030c17212c35404a525c646d727d858e939a9fa4acadb2b5b7b9bbbfbcbcbcbbbdb9b7b5b2b1acaca49f9b948f867f776d675e564d433a30261c1106000000000000000000020b17222d38424e58616d7a85929fa7b1bec7d2c6cbbfb4aa9e93897d70665c51443b3025190b020000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c4b8ab9e9185786b5e5245382b1f1200000000000000000000000e1b2734414e5a6774818d9aa9b3becacfcdc3b8aca096877a6d60545e6b7884919eabb7c1cbd0cac0b5ab9c8f8376695c5763707d8a99a3afbcc5cecfc9bdb2a8998d8073665a4d4033271a0d000d192633404c5966737f8c99a6b2bfcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbc1b4a79a8e8174675b4e4134281b0e00000c17222d363e464e565d606b70797f868d92989ea1a9acaeb4b7b9bbc0c1c2c4c6c8ccd2c8c9c8d2ccc7c6c5c2c0bebab8b2adaaa29f96918880776c655b50443e33291f1409000000000000000000000a151e29333e48525c646e747f8892979ea5aab0b7b9bdc1c3c4c5c7cbc7c5c4c2bebab8b2aca69f989286808d9aa6b3b9b9b9b9b9ada093877a6d6054473a2d211407000000000000000a151e29333e48525c646e747f8892979ea5aab0b7b9bdc1c3c4c5c7cbc7c5c4c2bebab8b2aca69f989286808d9aa6b3b9b9b9b9b9ada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad2d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d2c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a333d47505a616b6f7b838d939a9ea6abb0b7b8bcc2c3c5c7cbd1ccc8c6c4c2beb9b8b3ada8a19e9691867e746d665d554b42382d22171007000000000000000000060f1924303a444f59606d78839098a2aebac1ccd6d2d2d2d2d2d2d5cec8c5c3c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2bfb3a6998c807366594d4033261a0d00000000000007121d28343f4a54606c7883909da6b0bbc7d3d2c7bbafa4998e81756a5f53525252525252525252525252525252525252525252525252524d56616d7a85929fa9b3becdd6d2c5b9ada1968c7f72675d51443a3021170d03000000000000000000000000050e172129333b444c555c606c717b828a91969ea0a8acafb6b9bbc0c2c4c5c7cbd1c9c8d0cac6c5c3c0beb9b8b2acaaa29f98928c847d736d675f574e463d352c241a1107000000000000000000000000000b151e29333e47525c646e737f8792979fa4acafb6b9bdc2c4c5c7cbd1c9c8cec9c5c4c2bfbcb8b6afaca69e98928c81796e695e554b42382e23170b0300000000000000000006111c262f3d46525e68727f8b95a0acb6c0ccd8d1c6bcafa59d9184786d60564c41362a1d140a0000000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0d2d2d2d2d2d2d2d2d2dbd6d3d2cbcacacacacacacacacacacacacacacacacacacacacac4b8ab9e9185786b5e5245382b1f1200000000000000000000000f1c2835424f5b6875828e9ba8b5c1cfdad4c8bcb1a794887b6e61555f6c7985929facb8c5d2dbd2c3b7aa9d9084776a5d5864717e8b97aab4bfcbd7d9d0c1b4a79a8e8174675b4e4134281b0e000d192633404c5966737f8c99a6b2bebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebebeb4a79a8e8174675b4e4134281b0e0005111d28343e4850585f686d747d848c92989fa2aaadb3b8babfc3c6c7ccd2cfd1d2d1cfcecdcccdcecfd1d2d1cfd0cac6c4bdb9b4aea8a09a938c81776c605a50453b30251a0e03000000000000000006111c26303b45505a646e74808c939aa1a9afb6bbc1c5c9cecfd2ccc7c6c4c3c4c5c6c6c3bdb8b0aaa298928d929da9b5c1c6c6c6baada093877a6d6054473a2d21140700000000000006111c26303b45505a646e74808c939aa1a9afb6bbc1c5c9cecfd2ccc7c6c4c3c4c5c6c6c3bdb8b0aaa298928d929da9b5c1c6c6c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323c454f59616c717d8590959fa4acb0b7bbc2c5c8c9c6c4c2c1c0c1c2c4c5c8cac6c5beb9b2ada8a098928b80786d675d544a3f332822190b0200000000000000000008131e28323d44515c666e7b86929fa5afbac4d0d9e3dfdfdfd5cbc3bcb8b7b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b3a6998c807366594d4033261a0d000000000000010c17232e3844505b65707d89949fabb7c1cfd7ccc0b5ab9f93877b6e62575f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5e6873808d98a2aebbc5cfd4c8bcb1a79e9184796d60554c4132291e0f06000000000000000000000000030c172029333b454d565e676d757e868f949ea1a8acb2b9bbc0c5c7cbd1d0d2d2d0cfcececfd0d2d2cfcfc9c6c3bdb8b4aeaaa29f96918780796e6960584f473e362c23190f06000000000000000000000007121d27303b454f59636e73808c9399a1a9afb6bbc0c7c9cfd2ccc8c6c5c3c4c5c6cad0cecdc8c7c0bbb9b0aaa29f938f837b6e675d544a3f34281f1409000000000000000000000a141d2a36414c56606d7883909aa4afbbc5d0d8cfc1b8aca0958c7f72685e52463d2f261b110600000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0dddfdfdfdfdfe9e0d7d0cac6c5bebdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb8ab9e9185786b5e5245382b1f1200000000000000000000000e1b2734414e5a6774808d9aa9b3bec9cfccc3b8aca095877a6d60545e6b7884919eabb7c1cacfcabfb4ab9c8f8376695c5663707d8998a3aebac4cdd0c7bdb2a8998d8073665a4d4033271a0d000d192633404c5966737f8c99a6b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a79a8e8174675b4e4134281b0e000815212d3945505a616a6f7a818a91969fa2aaaeb4b9bec4c6cad0d2d4d2d1cfc9c6c5c2c1c0c0c0c1c2c4c5c9cfd2d4d3cfc9c5bebab2aca49f938d80746c61574d42362a20150900000000000000000c17232e38424d57616c73808d929fa4acb3bbc1c6ccd2ccc8c6c2c0bbb9b8b7b7b8babec0c4c2bcb4aaa39f9a9da4aeb9c5d1d2c6baada093877a6d6054473a2d2114070000000000000c17232e38424d57616c73808d929fa4acb3bbc1c6ccd2ccc8c6c2c0bbb9b8b7b7b8babec0c4c2bcb4aaa39f9a9da4aeb9c5d1d2c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c1925303a444d57606b717e8791979fa7afb6bec1c7cac6c4beb9b8b6b4b3b4b5b7b8bdc3c5c8c9c4bdb9b2aaa39f928d82796d665b50443f342b1d140a000000000000000000020c16202834404a545f69717e8b939ea8b2bdc7d2dde8e4d9cec3b9b1acaaa8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a6998c807366594d4033261a0d0000000000000006111c27333f4953606b76828f9ca5afbdc7d1d2c7bbafa4998e81756a6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6e7b86929faab4becdd7d1c5b8aca0958b7e71675c51433a2f20170d000000000000000000000000000b151e29323b454d575f686d79818b92989fa6acb2b9bdc4c8ccd2d3d2d0cac6c5c4c2c1c1c2c4c6c7ccd2d2d2cec8c6bfbab4aea8a099938d837b6f6a615950483e352b21180e05000000000000000000000c18232e39424d57616b73808c929fa4abb3bbc0c7ccd1cbc7c5c0bbb9b8b7b7b8babec2c6c8ccd2ccc8c1bcb4aea59e959083796d665c50443c31261a0e05000000000000000000020b1925303a44505c666f7c87939fa9b3becad6d4c8bdb1a89f92857a6e61584e41382d22170b01000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0dde9ececf8ede2d7cec6bfbab8b2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0ab9e9185786b5e5245382b1f1200000000000000000000000b1824313e4b5764717e8a97a1adb9bdc1c0bbb1a79d908377675d515b6874818e9ba5afbabfc1beb9aea3998c8073665954606d7a86929fa9b3bbc1c1bdb5aba096897d7063564a3d3023170a000d192633404c5966737f8c99a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59a8e8174675b4e4134281b0e000a1724303d4956616c717c848e939ea1a8aeb4babfc6c9cfd3d5d2cfcac6c5c1beb9b8b6b4b4b3b3b4b5b7b9bdc2c6c8ccd2d5d0cac3beb6afa59d928a7e71695e52463c31261a0e0000000000000003101c28343f4a545e69707e8a929da4afb6bec5cdd2d0c7c0bbb9b6b5afacabaaaaabaeb3b3b7b8bdbcb4aeaca6a9aeb6c0cad6d3c6baada093877a6d6054473a2d211407000000000003101c28343f4a545e69707e8a929da4afb6bec5cdd2d0c7c0bbb9b6b5afacabaaaaabaeb3b3b7b8bdbcb4aeaca6a9aeb6c0cad6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302316090404040302020100000000000000000000000000000000000000000000000000000000000000000000000000000a141e2a36414c565f69707d879299a1a9b1bbc0c7cbc5bebab8b3adaba9a8a6a7a8aaacb1b7b8bdc3c9c9c3bcb4aea49d948f81786c605b51463d2f261b1106000000000000000000040e18232e39424d57626c75818e96a1abb5c0ccd7e0e0d4c8bcb1a7a09d9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c998c807366594d4033261a0d00000000000000000b17222d38414f59626f7c89939eabb5c0cbd7ccc0b5ab9f93877c787878787878787878787878787878787878787878787878787878787878808d98a2aebcc5d0d4c8bcb1a79d9184786d60554b4031281e0e0500000000000000000000000007121d27303a444d575f696e7a838e939fa2aab0b9bdc4c9ced4d1cbc7c5c2bfbab8b7b6b4b5b6b7b9bbc0c5c6cacfd4d0cac5bebab2aba49f9590857c706b615a50473d332a20170d02000000000000000004101c2834404b545e69707d88939fa4afb5bdc5ccd2cfc6bfbab9b6afacabaaaaabaeb3b5b9bbc0c7d0d4cec6bfbaafa7a0958f82786d60574d42372b21160b0000000000000000000008131e28343f4a54606a74818e97a2adbac3d0d9cec3baaea2988e81746a6053493f33271d1307000000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3d0dde7f0f7f2e7dbd0c6bcb4aeaca5a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49e9185786b5e5245382b1f1200000000000000000000000714202d3a4753606d7985919ea4adb2b5b5afa8a0958b7f7265554c56636f7c89939ea6aeb4b5b3ada59f92867b6e6155525d6874818e97a1a9afb4b4b1aba4999184786d6053463a2d201307000d192633404c5966737f8c989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898989898988e8174675b4e4134281b0e000b1825313e4b5864717e8691969da5adb2babfc6cad0d5d3cfc9c6c4beb9b8b4b3adaba9a8a7a6a7a7a8abadb2b5b9bbc0c7d0d4d6d0c7c0bbaea49f92867b6e61574d42372b1c110600000000000006121f2c3844505c666e7b85929fa4aebbc0c7d0d1cbc2beb6afaca9aba49f9e9d9e9fa2aaa6aaacb2b8bcbab8b3b5b9c0c8d2dcd3c6baada093877a6d6054473a2d211407000000000006121f2c3844505c666e7b85929fa4aebbc0c7d0d1cbc2beb6afaca9aba49f9e9d9e9fa2aaa6aaacb2b8bcbab8b3b5b9c0c8d2dcd3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231611111111100f0e0d0c0b090706030000000000000000000000000000000000000000000000000000000000000006111c26303846525e686e7b859299a3abb3bbc2ccc7c0bbb3adaba9a19e9c9b9a9a9c9da0a8aaacb2b9bec5cdc6bfbaaea69e938d80746d62584e41382d22170b0100000000000000000007121c27303c45505a616d7a849199a4afbbc3ced7ded1c5b8aca095908f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8c807366594d4033261a0d000000000000000006111b262f3d4754606a75828f99a3afbbc6d1d2c7bbafa499928685858585858585858585858585858585858585858585858585858585858587939faab4bfced7d0c7b8ab9f958a7d70665c5043392e1f160c000000000000000000000000050e18232e39434c565e696e7b8490959ea5aeb4bcc2c9ced5cfc9c6bfbab9b5b4aeacaaa9a8a8a9aaacafb5b8b9bec5c8ced5d0cac4bdb5afa7a09792867d716c61594f453c32291e1408000000000000000006131f2c3845515c666e7b85929aa4afbbc0c7d0d0cac1bdb4aeacaca49f9e9d9d9fa2aaa8acafb6bec2ccd2d0cac1b9b1a79e948d8073695f53463d33271c1003000000000000000000020b17232e38424e58616d7a85929fa7b1bec7d2d6cabeb3aa9f93877c6f655b50443a2f24180d030000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909daab6c3ced5dee5eeefe2d6cabfb4aaa29f98979797979797979797979797979797979797979797979797979185786b5e5245382b1f1200000000000000000000000613202c3945515d67717e8a929ea1a8a8aba49f969083786d60534654606b74818e949fa2aaa8a9a29e938c8073695f534c56616e7a8591979ea5a7a8a8a09993877d70665c5044382c1f1206000d192633404c5966737f8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8174675b4e4134281b0e000e1b2834414e5b6774818e96a0a8afb9bdc4cad0d6d4ccc7c4beb9b8b3adaba7a9a19e9c9b9a999a9b9c9ea1a8a9acafb6bec2cad1d9d2ccc0baaea2988e8174695f5347382d22170b000000000004101d2935404b55606d78839097a2adb6c0ccd2cfc6bfbab0aca49f9c989993919091929896999da0a8acb1b9c0c0c1c5cad2dae4d3c6baada093877a6d6054473a2d2114070000000004101d2935404b55606d78839097a2adb6c0ccd2cfc6bfbab0aca49f9c989993919091929896999da0a8acb1b9c0c0c1c5cad2dae4d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231e1e1e1e1e1d1c1b1a1918161312100c0606040000000000000000000000000000000000000000000000000000000b17232e38424f59616d7a849197a2abb4bdc4cdc5bdb5afa9a29f9997918f8e8d8e8f9195989da0a8adb3bbc3cbcbc0b8afa59d928b7f726a6053493f33271d1207000000000000000000000b151e2a333f46525d68707d87939fa7b1bcc6d0dbd0c3b7aa9d908382828282828282828282828282828282828282828282827e7164574b3e3124180b0000000000000000000a141d2b37434e58626e7b87929faab4bfcbd7ccc0b5aba298929292929292929292929292929292929292929292929292929292929292929399a4afbcc6d0d2c7beb0a69d9083766c61544a3f30271d0d040000000000000000000000020d17202834404b555e686e7b8491969fa7afbabec5ced5d0cac4bdb9b4aeaca8aaa29f9d9c9b9b9c9d9fa4ababadb3b8bcc3c9cfd6d0c7c0bbb1a9a19892877e716b60574e443b3025190f0500000000000004101c2934404b55606d79839097a2acb6c0ccd2cec6bfbaafaba39f9b9a939290919298979c9fa4acb0bbc0c7d0d6cbc3b9b0a69f92867b6e61594f44382c1f14090000000000000000000006111c26303d46525e68727f8b95a0acb6c0ccd8d0c5bbafa49a9083786c60554b4135291f15090000000000000000000000000000000000000000000000000004111d2a3744505d6a7783909dabb3bcc3ccd3dce7ecdfd3c6baaea298928b8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a85786b5e5245382b1f12000000000000000000000004101d2935404b55616c737f8a91969a9b9a99938e847b6e665c51444f59606d79828c92989a9b9a97928b81786c60574d46525e686f7c858f93999a9b999591877f726b60544a3f34281c1003000916232f3c4956626f7c7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7d7063564a3d3023170a000714202d3a4753606d79849199a3afbbc3ced6d2ccc8c2bbb7b3adaba9a29e9b9797928f8e8d8d8d8e8f9196979c9fa4acb0b8c0c8d1ddd6cabeb4aa9f93877b6e62544a3f33281c0f030000000006131f2c3845515d67727f8c959fa9b3bec8d8cdc5bdb4aea69f9a938f8b88868584848586898d91969da0a7afb7bfc7d1d6dce4e0d3c6baada093877a6d6054473a2d2114070000000006131f2c3845515d67727f8c959fa9b3bec8d8cdc5bdb4aea69f9a938f8b88868584848586898d91969da0a7afb7bfc7d1d6dce4e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302a2a2a2a2a2a2a292827262523201f1c171313100c0700000000000000000000000000000000000000000000000003101c28343f4a54606b75828f96a0a9b3bdc6cdc4bbb3aba39f97928d8985838180818284888b91969ea1a9b1b9c2cacac1b8aea49f93877c6f655b5044392f24180c00000000000000000000030c18212935414c56606b73808d959faab4bfcad6d0c4b7aa9d91847975757575757575757575757575757575757575757575716c6155493d3024170a000000000000000000020b1b27323d47535f6a74818e98a3aebac5d0d2c7bdb4aaa29f9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9fa4abb5c0ced8ccc0b6ac9f94897d70635a5042382e1e150b00000000000000000000000009141f29333b45515c676d7a849196a0a8b1b9c1cad0d4cec5bfbab2adaba39f9c989892918f8e8e8f9193999a9ea2a9acb1b9bec4cdd7d2ccc3bbb3aaa29992877d6f6a5f564c41362a21170d03000000000006131f2c3845515c67727f8c959fa9b3bec7d2cfc6bcb4aea59e99928e8a8685848485878b8f939a9fa6afb6bec7d2d5cbc2baaea3998f82756b6054483b31251a0e02000000000000000000000a141e2a36414c56606d7883909aa4afbbc5d0d8ccc0b6ac9f958b7e71675d51453c31261a0c0300000000000000000000000000000000000000000000000004111d2a3744505d6a77839099a2aab2bac2cad6dce2dfd2c5b8ac9f92857f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7063574a3d3024170a0000000000000000000000010d18242f3943505a636d737e848a8d8e8e8b87817a6e695e544a4045515c676d7880868b8d8e8d8a857f756c665b5045414c565f6a6f7b82888c8e8e8d89847d726d62594f42382e23170c00000815222e3b4754606a6f727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272727272706b6054483c2f221609000613202c3945515d676f7c87929fa7b1bcc6ccc7c0bbb9b0aaa9a19e9a97928e8a87858381818080818284878b8f939a9fa6aeb6c0c8d2dbd0c5bbafa49a8d8074665b5044382b1f120600000003101c28343f4a54606d7985929ea7b1bbc5d0d0c5bbb3aba39f948f87827f7b79787777787a7c80848a91959da5adb5bfc9d2dee7e0d3c6baada093877a6d6054473a2d21140700000003101c28343f4a54606d7985929ea7b1bbc5d0d0c5bbb3aba39f948f87827f7b79787777787a7c80848a91959da5adb5bfc9d2dee7e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c373737373737373635353433322f2d2c2823201f1c18120d080200000000000000000000000000000000000000000006121f2b3844505c66707d89949ea8b2bbc5cfc4bbb3a9a299928d85807c797675737475777b7f848b9297a0a7b0b8c2cccac0bbafa4999083786c60554b4035291c110600000000000000000000060f1924303a444f59606d78839098a2aebac1ccd1c5b8aca0958e81746c696969696969696969696969696969696969696964615a5045392d211508000000000000000000000a16202b37434e58616e7b86929faab4becad6d0c6bcb4aeacababababababababababababababababababababababababababababababacafb5bdc7d2d4c8bbafa49a8f82766b6054483e30261c0c030000000000000000000000020b1a25303b45505a606d79839096a0a8b2bac2cbd6d7cac2bcb4aea8a19e99928f8b878584838182838486898d92979da0a7adb3bbc1cbd1d7cdc5bcb4aba39992857c6e685e52463f33291f14090000000004101c2834404a54606d7985919ea7b1bbc5d0d1c7bdb4aaa29f938e86817d7a787777787a7e82878f949fa4acb6c0ccd8d7cbbfb4ab9e94897d7063574d42362a1e120500000000000000000000020c1925303a44505c666f7c87939fa9b3becad6d2c7beb1a79e91857a6d60574d42372b1e150b000000000000000000000000000000000000000000000000000c1926323f4c5965727f879298a0a8b0b8c0cbd0d8dfd3c6baaea29891857d72717171717171717171717171717171717171717171717171706b6155483c2f23160900000000000000000000000007121d28313e48525b636c71797d8082817f7b746d685e574d4239404b555c666d737a7e8182807e7a726d605b544a3f3b444e585f696e757b7f8181807d78706b625b51473d30261c1106000006131f2b37434e5860626565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656565656360594f44382c2013070004111d2935404b55606b73808d95a0aab4bfc0bbb6afaca69f9c97918d8985817d7a7876757473747475787a7e82878f949ca4aeb6c0ccd6d8ccc0b6ac9e9285796c605346392d20130600000006121f2b3844505c66727f8b97a1adb9c2cdd2c7bdb3a9a299928b827c76726e6d666a6b676d7073787e838e939ca3adb7c0ccd5dfe0d3c6baada093877a6d6054473a2d21140700000006121f2b3844505c66727f8b97a1adb9c2cdd2c7bdb3a9a299928b827c76726e6d666a6b676d7073787e838e939ca3adb7c0ccd5dfe0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356494444444444444444434241403f3e3c3a38342e2d2c28231d19130e090300000000000000000000000000000000000004101d2935404b55606d7883909da6b0bac4cdc6bdb3a9a1979287807a736f6c6568676769696e72787f8590959fa6b0bac4cfccc0b5ab9f958a7e71675d5145382d22170b000000000000000000000008131e28323d44515c666e7b86929fa5afbac4d0c8bdb1a89d928a7e70695e545c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c575550483e34281d110500000000000000000000040f1a26313c46535e6973808d98a2aebac5cfd7cec6bfbab8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b9bbc0c7d0d7cbc0b5ab9f93877c6f62594f44362c1e140a0000000000000000000000000a141d2a36424d57626c74818e959fa8b2bac3ccd4d2ccc0b8b0aaa29f96918b86827e7a797776757576777a7d80858a91959ea1a9afbbc0c7cfd6cec5bdb4aba29791847a6e615a50453b31251a0e0200000006121f2c3844515c66727f8b97a1adb9c2cdd7cbc0b5aba298928b817b74706d676a6a686e71757c828c939aa4afbbc0cdd6d1c6bdb0a69c8f8276695e53463a2d211406000000000000000000000008131e28343f4a54606b74818e97a2adbac3d0d9d0c2b9ada1978d8073695f53473e30271d12070000000000000000000000000000000000000000000000000b1825313e4a56626d727d8691969fa6aebabfc6ced6d6cabfb4aaa19791877f756d676464646464646464646464646464646464646464646361594f44382c201407000000000000000000000000010c161f2c364049525a61676d70737574726e69605d564d453b3039434b545c60686d71747574716d67625b504a4238323c464e575e616a6e72747573706d66605951493f352c1e150a000000030f1b27323d464e545658585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585858585856544f473d33271c100400010d18242f3a434f59606d78839098a3aebab6afaca49f9b948f8985817d7974706e6969686766676869686d71767c828d929ca4aebac4cfdad2c7b9ada197897c6f6256493c2f2316090000000713202d3a4653606d7884919ea9b3becbd7ccc0b5aba29792877e766f6a6561605c54555d6063666c7179818c919ca5afb9c3ced9e5d3c6baada093877a6d6054473a2d2114070000000713202d3a4653606d7884919ea9b3becbd7ccc0b5aba29792877e766f6a6561605c54555d6063666c7179818c919ca5afb9c3ced9e5d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356515151515151515151504f4e4d4c4b4946443f3c3a38342e29241e1a140c07000000000000000000000000000000000006131f2c3945515d67727e8b95a0acb8c1cccbbfb5aba19791857d736d6862605b535a5b575f61666d727b838f949fa8b2bdc6d1c7bdb1a79e9184796d60544a3f33281c0f0300000000000000000000020c16202834404a545f69717e8b939ea8b2bdc7cec3baafa59e92857b6e665b504f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4b49453e362c22170c0000000000000000000000000915202a36424d57616d7a85929fa9b3bec9d5d7d0cac6c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c6c7ccd2d9d3c7bbafa3998e81756a5f54473d32241a0c02000000000000000000000006111b262f3846525e69717e8b939da7b1bac3ccd5d0c7c0bbaea69f98928c847e7a75716d686a69686869686d7074797e848b91979ea5afb5bdc5ced7cfc6bdb3a9a0968f82766c62574d42362a1e12050000000713202d3a4653606d7984919ea9b3becbd4d3c7bbafa39992867e746e6964605d55565e61646a6f777f88939fa4aebbc4cfd8cfc1b9ac9f93877b6e6154483b2d22170b0000000000000000000000020b17232e38424f59616d7a85929fa7b1bec7d2d5c9beb3a99f92877b6e62594f42392e23180c0200000000000000000000000000000000000000000000000916222e3a46515b626b707c848f949da4aeb4bcc4ccd4d0c6bcb3a9a199928b81796e69615957575757575757575757575757575757575757554f473e33281c100400000000000000000000000000040d1a242e37404850555c606367686765615f57524c443b33293139424a50565e616567686764605d5551443f382f2a343c454d52585f626667686663605c544f473f372d231a0c03000000000a16202b343d4347494c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4a48443d352b21160b00000007131d28313d44515c666e7c86929fa6b0aca49f9a938f89827d7874706d6664615e565b5a5a5a5b565e61646a6f78808d929da8b2bdc9d5d6cabeb3a9998c7f7266594c3f3326190c0000000b1824313e4b5764717e8a96a0acbbc5cfd4c7bbafa49992857d716c625f585553504a4b5153545b60666d747f8c939da7b1bcc8d4e0d3c6baada093877a6d6054473a2d2114070000000b1824313e4b5764717e8a96a0acbbc5cfd4c7bbafa49992857d716c625f585553504a4b5153545b60666d747f8c939da7b1bcc8d4e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635d5d5d5d5d5d5d5d5d5d5d5c5b5a59585653504a494645403935302a251f18120b030000000000000000000000000000000714202d3a4753606d7985929ea7b1bccad3c7bbaea39991857b706b615e565350494d4e4d53545c60696e79828f96a0abb4bfcbd0c2b9ada1968c7f73665b5044382b1f12060000000000000000000000040e18232e39424d57626c75818f96a1abb5c0ccccc0b9ada2978f82786c60584e4342424242424242424242424242423e3d39342c241b1006000000000000000000000000030e1a25313b46525e68737f8c97a1adb9c4cedadbd6d3d2d1d1d1d1d1d1cfc9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9d1d1d1d1d1d1d1d2d4d7ddd6cabfb4aa9f92877b6e61584e43352b2111080000000000000000000000000b17222d3841505a616e7b86929fa5afb9c3ccd5d2c7bdb5afa49d948f867f79716d6765615e565c5b5b565d6063676d71787e858f939fa3abb4bcc5cecec8c5bbb2a89f948b7e71695e53463a2d2114070000000b1724313e4a5764717d8a96a1acbbc4cfd3c7bcb0a69f92877d716c615e5753514b4c5254585f656c737f8b929da9b2bdc9d5d4c8bbafa49a8b7f726553493f33271b0f03000000000000000000000006111c26303d46525e68727f8b95a0acb6c0ccd8cfc4bbaea3998f82756b61544b4034281f1409000000000000000000000000000000000000000000000006121e29353f495159616a6e7a828d929fa3aab2bac2cbd7cec4bbb3aba39f938e837b706b605b534c4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443e352c21160b00000000000000000000000000000008121c252e363e434b5153575a5b5b5855534d45413a3229212730383f444c5254585a5b5a5754514b433f332d26222a333b42464e5355595b5b5a5653504a423d352d251b11080000000000040f19222b32373b3c3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3f3d3c38332b23190f05000000010c161f2834404a545f6a727f8b949fa8a19a938e87827c76706c6663605c5454524d4e4e4d4d4e4c52545860666c74808d96a1adb9c5d2dacfc1b4a79b8e8174685b4e4135281b0e000006121f2b37434e586875818e9ba8b2bdcdd5c9bdb2a89f93877d706b615a534e4846443f4045474a50545c606d74818e95a0acb8c3ced9d3c6baada093877a6d6054473a2d211407000006121f2b37434e586875818e9ba8b2bdcdd5c9bdb2a89f93877d706b615a534e4846443f4045474a50545c606d74818e95a0acb8c3ced9d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6a6a6a6a6a6a6a6a6a6a6a69686867666562605c545653514b46413a363128231d150c060000000000000000000000000005111d2935414c5664717e8b97a1adb9c3cec9bdb2a89f92877d6f696059524c46443f404142464a50575e676d7a849199a3aebac6d0c9bdb2a89e9184786c605346392d20130900000000000000000000000007121c27303c45505a616d7a849199a4afbbc3cecabeb3a99f948c7f726a60554b403536363636363636363636363631302d28221b1209000000000000000000000000000009141f2a36414c56606d7985929ea8b2bdc9d5dfe2dfdfdeded4ccc7c3c2bcbcbcbcbcbcbcbcbcbcbcbcbcbcbcbcc5c6c9cfd7dededfe0e3dfd3c7baaea2988d8174695f53463c3223190f000000000000000000000000030f1b27333f4953616c75828f98a2aeb7c0cbd4d7ccc0b5aba49f928d827a736d67605d5554524c504e4f4c5254555c60666d717a818b9299a2aab4bcc6c3bcb8b4aeaca69f92867b6e6154483b2e211508000006121e2b37424d576774818e9aa8b2bdcdd6d0c4b7ab9f948b7e726b615a534d4745404146474e535b606d74808d96a1adb9c6d1d8ccc0b6ac9c8f8275655b5044372b1f12050000000000000000000000000a141e2a36414c56606d7883909aa4afbbc5d0d7cbbfb5ab9e948a7d70665c51453b3025190b0200000000000000000000000000000000000000000000010d18232d373f474f585f686d78808a9298a1a8b1b9c0cbd1cdc4bdb5afa59e9590857d736c655d564e463e3e3e3e3e3e3e3e3e3e3e3e3e3d3c38332c231a1005000000000000000000000000000000000a131c242c30394045464a4d4f4e4c4846423b352f2820171e262e343a4146474b4e4f4d4b4745413a3128221c19212930363c4347484c4e4e4d4a46443f38302b231b13090000000000000007101920272b2e2f323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232323232302f2c27211911080000000000040d18232e39424e58606c77828f979d969188817c756f6a63605b5453504a47464242414041414146474e545b606d7984919eabb7c4d1dcd0c3b6a99d9083766a5d5043372a1d1000000815212e3a47535f6a7885929eabb8c4ced2c5b9ada1968c80736b60595047433c3a383435383a3f444b515b606d7983919da8b2bdc8d4d3c6baada093877a6d6054473a2d21140700000815212e3a47535f6a7885929eabb8c4ced2c5b9ada1968c80736b60595047433c3a383435383a3f444b515b606d7983919da8b2bdc8d4d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897d7777777777777777777777777675747372716f6d666663605c54524c46423b342e271e180f070000000000000000000000000713202d3946525d6876838f9ca9b3becbd2c5b9aca0968c7f726b60574f46413a37332d3136383f444d555d686f7c86929faab4bfcacfc4b9ada196897d7063564a3d31251a0e020000000000000000000000000b151e2a333f46525d68707d87939fa7b1bcc6cfc5bbb0a69f92877c6f675d51453e3329292929292929292929292424211d171009000000000000000000000000000000030d1925303a45515d67727f8b96a1acb9c3ced9e4ecebded4cac2bbb7b5afafafafafafafafafafafafafafafafb8b9bec5cdd7e1ecebe0d6cabeb3a99f92867b6e61574d42342a20110700000000000000000000000005121f2b3744505b65707d8a939eaab4bec9d2d4cbc2bbafa499938b80786e68605d55514c4746414342424145474b51545c60686d757f879298a2aab4bab8b1acaba39f9b96918c8276695c4f4336291c1003000814212e3a47535f697884919eabb7c4ced5c9bdb2a89c9083766d62595046423b393536393c4149505b606d7984919eabb5bfcbd7d2c5b8ac9f9285796c605346392d201306000000000000000000000000020c1925303a44505c666f7c87939fa9b3becad6d1c6bdb0a69e9184796d60564d42362a1d140a000000000000000000000000000000000000000000000007111b252d353e464e565d666d737e8691969fa7afbbc0c7cfcfc7c0bbafa7a097928880776d685f5850443f382f313131313131313131302f2c28211a11080000000000000000000000000000000000010a121a1e272e34383a3d4042413f3b3a363129241e160d151c23283036393a3e4142413e3a39352f281f17110f171f252a31373a3b3f4142403d3a38342e261e191109000000000000000000070f161b1f22232525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252525252322201c160f080000000000000007121c27303c44505b656e7b8592928e847d756f6a62605853504a46443f3b3a36303433343036393c424a515c6673808c99a6b3bfccd9d0c4b7aa9d9184776a5e5144372b1e1100000915222f3c4855626f7b8897a1adb9c6d6cabfb4aa9e9184796d60594f473e37322d2b28292c2d33394045515c67717e8a96a0acb9c5d2d3c6baada093877a6d6054473a2d21140700000915222f3c4855626f7b8897a1adb9c6d6cabfb4aa9e9184796d60594f473e37322d2b28292c2d33394045515c67717e8a96a0acb9c5d2d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2ddd1c4b7aa9e9184848484848484848484848484838281807f7e7c7976736f6d66615d56534d454039302a2119110800000000000000000000000714212e3a4754616d7a86939facb9c5cfcabfb4aa9e9184786d60594f453d35302b2722262a2e343b434c565f6a74808d98a2aebac7d3c9bdb2a89a8e817467574d42362a1e1205000000000000000000000000030c18212935414c56606b73808d959faab4bfcacdc2bbafa3999184796d605a50453b30261c1c1c1c1c1c1c1c1c181715110c06000000000000000000000000000000000008131e2935404b55606d7984919ea7b1bcc8d4dee9e3d8ccc2b8b0aba9a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2abadb3bbc5cfdae6e6dacfc6baada2978d8073695e52453c3122190e000000000000000000000000000613202d394653606c7883909da5afbcc5d0d8cec2b8afa59f93877f746d665e56514b45413a393630352f35393a40454a50565e616d727d869298a2aaaeaca7a09d99928e8984807b6e6154483b2e21150800000815222f3b4855626e7b8896a1adb9c5d6d2c5b9aca196897c6f635b51473e36312c292a2d2f383f45515d67717e8b99a3aebbc7d3d3c6baaea298877b6e6154483b2e2115080000000000000000000000000008131e28343f4a54606b74818e97a2adbac3cdd8cfc1b9aca0968c7f72695e52463d2f261c1106000000000000000000000000000000000000000000000009131b232c333c444c545c606c717c8490959da5afb5bdc5cdd1cbc1b9b1a9a29a938c827a6f6a615a504a42393028242424242424242423201c1610080000000000000000000000000000000000000000080c151d23282c2d30343534322e2d2a261f19130c040a11171e252a2d2e32343534312d2c29241d160d06050d141a20262b2e2f33343533302d2b28231c140c080000000000000000000000040a0f131516191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919171613100b050000000000000000000b151e27333f49535e69717e8a898179706b625f58544e46443f3a38342e2d2a25272727252a2d2f38404a5464717d8a97a4b0bdcad7d1c4b8ab9e9185786b5e5245382b1f1200000c1925323f4c5865727f8b98a9b3bec9d3c6baaea2988b7f72665c51473d352b26201f1c1d1f22282e34404b55606d7884919eaab7c4d1dcc6baada093877a6d6054473a2d21140700000c1925323f4c5865727f8b98a9b3bec9d3c6baaea2988b7f72665c51473d352b26201f1c1d1f22282e34404b55606d7884919eaab7c4d1dcc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd2c5b9aca09691909090909090909090909090908f8e8d8c8b8985827f7c79736d68615e57514b423c332b23191108000000000000000000000b1724313e4a5764717d8a99a4afbbc7d3c6baaea2988b7e71665c50473d3329251f1b171a1c2328313a444e58616e7b86929facb8c5d2cfc4b7ab9e918478695e53463a2d21140700000000000000000000000000060f1924303a444f59606d78839098a2aebac1cccbc0b5aba0968e81746c61574d42382e23170d0f0f0f0f0f0f0b0a080500000000000000000000000000000000000000020d18242f3a45515c66717e8b95a0acb8c2cdd8e4dfd3c7bbb0a69f9c969696969696969696969696969696969ea1a9b3bec9d5e2e1d5c9beb2a99f92857a6d60564d42332a1f100700000000000000000000000007131f2c38434f5964717e8a95a0acb8c1ced7d0c6bcb0a69d938b7f726d605c544c454039352f2d2a252824292c2e34383f444c525b626b707d869298a3a29f9a95918c86827d78736e695e53463a2d21140700000c1925323f4c5865727f8b98a8b2bdc9d5d1c4b7ab9e9184786b6054483f352a25201d1e20262d35404b55606d7a86929facb9c5d2d6cabfb4aa96897d7063564a3d3023170a00000000000000000000000000020b17232e38424f59616d7a85929fa7b1bcc8d4d4c8bdb2a89f92867b6e61584e42382d22170b01000000000000000000000000000000000000000000000109111a212a323a424a505a616a6f7a838e939fa3abb3bbc3cbd7cbc3bbb3aca49f948f847c716c605b544b433a3129201717171717171614100b0500000000000000000000000000000000000000000000030b12181c1f20242728282522211e1a140d08010000060c13191d2021252728272421201d18130c04000003090e151a1f21222628282723201f1c17110a020000000000000000000000000000030608090c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0a0907040000000000000000000000030c17222d38414d57616c74807d746d676059534e47433d38332d2c2823202222272b2d2e34383a40454e5865727e8b98a5b1becbd8d1c5b8ab9e9285786b5f5245382c1f1200020f1c2835424f5b6875828e9ba8b5c1cfd2c5b8ac9f9286796d60544b40352c231b1312101013171d232f3944505c6673808c99abb5bfcbd7c6baada093877a6d6054473a2d21140700020f1c2835424f5b6875828e9ba8b5c1cfd2c5b8ac9f9286796d60544b40352c231b1312101013171d232f3944505c6673808c99abb5bfcbd7c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd5c9bdb2a8a09e9d9d9d9d9d9d9d9d9d9d9d9d9c9b9b9a999898928f8c89857f7a746e69605c544d453d352b231910070000000000000000010e1b2734414e5a6774818d9aabb5c0ccd2c5b8ac9f9285796d60544a3f342b2119130f0b0e11171f28323c46525e6875818e9bacb6c0ccd2c5b9aca196877b6e6154483b2e211508000000000000000000000000000008131e28323d44515c666e7b86929fa5afbac4d0c7bdb2a89d938a7e71695e544a3f34281f160c010303030300000000000000000000000000000000000000000000000007131d2834404b54606c7883909da6b0bcc7d3e2ddd0c3b7ab9f948f898989898989898989898989898989899297a1adb9c6d2dfddd2c6b9ada1978c7f72685d52443b3021180e000000000000000000000000000915222f3b4854606b7783909da7b1bccad3d6cabfb4aa9f948e81746d625b504a423b352f2924201e191b191d2023282e343a41465159616b707d86929c98928e89847f7a75706c66615e574d42362a1e120500000e1b2734414e5a6774818d9aa7b4c0cfdacdc0b3a79a8d807467594f43362d231a141111141b242f3945525d6876828f9ca9b5c2cfdbd0beb1a4988b7e7165584b3e3225180b000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7cec3baaea2988e81746a60544a3f33281e1308000000000000000000000000000000000000000000000000080f18202830383f44505860686e79818b9299a1a9b1b9c1cbd1cdc5beb6afa69e9691867e746c665c554b433a32292118100b0b0a0907040000000000000000000000000000000000000000000000000000070c101313171a1c1b191514120e0903000000000002080d111314181b1c1a181413110d0701000000000003090f121415191b1b1a171312100b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f3b45505a646e74706b605d554f47433c37322b282222282b2d2f2d3337393b3f44464b51585f6a74818e9ba7b4c1cedad0c4b7aa9d9184776a5e5144372b1e110004101d2a3743505d6a7683909da9b6c3d0cfc2b5a89c8f8275675d5142392e231a110a060304060b121d28343f4a5463707d8999a3aebbc7d3c6baada093877a6d6054473a2d2114070004101d2a3743505d6a7683909da9b6c3d0cfc2b5a89c8f8275675d5142392e231a110a060304060b121d28343f4a5463707d8999a3aebbc7d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd9cec4bab2acaaaaaaaaaaaaaaaaaaaaaaaaaaa9a8a7a6a5aaa29f9c9997928c86807b736d665f574f473d352b22190e040000000000000003101c28343f4a546976838f9ca9b6c2d2cec2b5a89b8f8275665c5142382e22190f08030000060d16202a36414d5664717e8a9aa4afbbc8d4c9bdb2a8968a7d7063574a3d3024170a0000000000000000000000000000020c16202834404a545f69717e8b939ea8b2bec7cfc4baafa59f92857b6e665c50443d31281e130800000000000000000000000000000000000000000000000000000000010c18232e3944505b66707d8a949fabb7c1d0d9dccfc2b5a99c8f827d7c7c7c7c7c7c7c7c7c7c7c7c7c7c7d85929eabb8c5d1ded4c8bdb2a89e9184796d60564c4132291f0f0600000000000000000000000004101d2935404b55636f7c8995a0acb9c3cedcd3c7baaea2989082786d605b51443f383029241d1913110d080d1113181c232830363f474f59606b717e8b908b85817c77726d6863605b54534d453b31251a0e0200000f1c2835424f5b6875828e9ba8b5c1ced8cbbeb1a5988b7e7265584b3f32251b110904050a121d2935414c566774808d9aa7b3c0cdd8cbbfb2a5988c7f7265594c3f3226190c0000000000000000000000000000000a141e2a36414c56606d7883909da5afbcc5d0d6cabfb4aa9f93877c6f665b50443a2f24190d03000000000000000000000000000000000000000000000000060d161e262e343e464e565e676d747f879297a0a7afbbc0c7cfd0c7c0bbb0a8a098928a80786d675d554c443b332a22180f0500000000000000000000000000000000000000000000000000000000000000000406070a0d0f0e0c08070502000000000000000000010507070b0e0f0e0b07060401000000000000000000020608080c0e0f0d0a0706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29333e48525c6467636159514b433d37312b282b2d2f2d3338393b3e3f4446484a5053555c606a6f7c87929facb9c5d2dcd0c3b6a99d9083766a5d5043372a1d100004101c2834404b546b7784919eaab7c4d1cbbfb2a5988c7f7265554b4030271d11080000000000010b17232e3a4753606d7a86929facb9c5d2c6baada093877a6d6054473a2d2114070004101c2834404b546b7784919eaab7c4d1cbbfb2a5988c7f7265554b4030271d11080000000000010b17232e3a4753606d7a86929facb9c5d2c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfe0d6ccc4bdb9b7b7b7b7b7b7b7b7b7b7b7b7b7b6b5b4b3b2b4aeaca9a9a19e98928d8780796e6960594f473d342b20160c0200000000000006121f2c3844505c667885919eabb8c4d1cbbeb1a5988b7e7265544b4030261c10070000000000040e1925303b4754616d7a86939facb9c6d2cebfb2a5988c7f7265594c3f3226190c000000000000000000000000000000040e18232e39424d57626c75818f96a1acb6c0ccccc1baada2979082786d60594f433a2f24190f060000000000000000000000000000000000000000000000000000000007121d28333f4a54616b7683909ca6b0bec7d2ddd2c5b9ac9f92867a6f6f6f6f6f6f6f6f6f6f6f6f6f717e8a97a1adb9c6d2dcd2c5b8aca0968b7e72675d51443a3020170d0000000000000000000000000006131f2c3945515d6774818e9aa7b1bccbd5d6cabeb3a99f92867b6e665c51493f342e261e18120d080501000104070c11171e252a353e464f59626c7481837e7a746f6a65615e5653504a46423b33291f1409000000101d2a3643505d697683909ca9b6c3cfd6cabdb0a3978a7d7064574a3d3124170a000000010d19242f3f4c5966727f8c99a5b2bfccd8ccbfb2a6998c7f7366594c403326190d000000000000000000000000000000020c1925303a44505c666f7c89939ea9b3becad6d0c5bbafa49a9083786c60564c41352920150a00000000000000000000000000000000000000000000000000040c141c2328343d444c555c606d727d8590959ea5afb5bdc5cdd2ccc1bab2aaa29f928d81796d675e564d453c342a21170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b17212c36404a52585a56554f45403a312b2e2e34383a3c3e3f4446484b49505355545c6063676d727c849199a3afbbc7d3dbcec2b5a89b8f8275685c4f4235291c0f0006131f2c3845515c667885929fabb8c5d2c9bcb0a396897d7063564a3d2f23150b0000000000000006131f2c3845515d677885919eabb8c4d1c6baada093877a6d6054473a2d2114070006131f2c3845515c667885929fabb8c5d2c9bcb0a396897d7063564a3d2f23150b0000000000000006131f2c3845515d677885919eabb8c4d1c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfe8ded6cec9c5c4c3c3c3c3c3c3c3c3c3c3c3c3c3c2c1c0bfbfbab8b5b3adaaa29f99928c837b706b60594f463d32281e13080000000000000713202d3a4653606d798697a1adb9c6d2c9bcb0a396897d7063564a3d2e23150a000000000000000814202d3946525e687885929eabb8c5d1cdc0b3a79a8d8074675a4d4134271a0e0000000000000000000000000000000007121c27303c45505a616d7a84919aa4afbbc3cecabeb3a99f948c7f736b60564c41352921180c03000000000000000000000000000000000000000000000000000000000b17222d38424f59636f7c89949eacb6c0ccd8d3c7baaea3988d807368636363636363636363636c7883909da9b3bec9d5d4c8bcb1a79e9184786d60554b4032281e0e05000000000000000000000000000714202d3a4753606d7985929facb8c3cedfd2c6b9ada1978d8073695e544b403728231c150c07010000000000000000060b1319232c343d47505a646f7476716d6762605854524c46443f3836312921170d03000000111e2b3744515e6a7784919daab7c4d0d6cabdb0a3978a7d7064574a3d3124140a00000000081926333f4c5966727f8c99a5b2bfccd8ccbfb2a6998c7f7366594c403326190d0000000000000000000000000000000008131e28343f4a54606b74818e97a2adbac3ced8ccc0b6ac9f958b7e71685d52453c31261a0d0300000000000000000000000000000000000000000000000000020a1117222b323b434b515b626b707b838e939fa3abb3bbc3cbd7ccc4bcb4aea49d938e82796d685f574e463c332920170c03000000000000000000000000000000000000000000000000050a0d0f101212121212121212121212120d0c0a070200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070809090908070604010000000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a242f3840474c4d4a48443d352f31373a3c3f4446484b4a50535557535b606164666d6f73797f859196a0abb5c0cbd7d6cabfb4aa998c7f7366594c403326190d000713202d3a4653606d798698a2aebac6d3c8bbafa295887c6f6255493c2f2216090000000000000004101d2935404b556a7784909daab7c3d0c6baada093877a6d6054473a2d211407000713202d3a4653606d798698a2aebac6d3c8bbafa295887c6f6255493c2f2216090000000000000004101d2935404b556a7784909daab7c3d0c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfece4ddd6d2cfcdcccccccccccccccccccccccccccccdcdd0cac6c5c2beb9b4aeaba39f9590857d706b60584e443a3025190d0400000000000714212d3a4754606d7a8793a9b3bec9d5c8bbafa295887c6f6255493c2f2216090000000000000005111d2935414c566a7784909daab7c3d0cec1b4a79b8e8174685b4e4135281b0e00000000000000000000000000000000000b151e2a333f46525e68707d88939fa7b1bcc6d0c5bcb0a69f92877d6f685d52453e332a1e150a0000000000000000000000000000000000000000000000000000000006111c262f3e4854606b75828f9aa4afbbc6d1d7cbbfb4aa9f92867a6d61565656565656565b65717d8a95a0acbbc5cfdad1c4b8aba0958a7e71665c5043392f20160c00000000000000000000000000000a1724303d4a5763707d8a98a2aebac6d3d7cbc0b5ab9e92857a6d60574d42392e2517110a0300000000000000000000000208111a222b353f48535d64686965605d55544e4746413a38332d2a251f170f0500000000121f2c3845525f6b7885929eabb8c5d1d8cbbeb1a5988b7e7265584b3f2f261b110904050a111d2935414c566774818d9aa7b4c0cdd8cbbeb1a5988b7e7265584b3f3225180c00000000000000000000000000000000020b17232e38424f59616e7a85929fa7b1bcc8d4d2c7beb1a79e92857a6d60584e43372b1f150b010000000000000000000000000000000000000000000000000000061019202930394045515960696e79818c9299a2a9b1b9c1ccd2cec6bfbaaea59e948f837a6e695f584e453b32291e150b00000000000000000000000000000000000000000000030a1016191c1d1f1f1f1f1f1f1f1f1f1f1f1f191916130d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707070c10131414151616151413110d080a0706040000000000000000000000000000000000000000000000000000000000000000000000000009121d262f363c3f413d3c3833373a3c4347484a50535558545b60626467656c6e7174797c80848b9297a0a8b2bdc7d1dcd3c7baaea2988a7d7063574a3d3024170a000814212e3b4754616e7a8794aab3becad6c7baaea194877b6e6154483b2e21150800000000000000000c18242f43505c6976838f9ca9b6c2cfc6baada093877a6d6054473a2d211407000814212e3b4754616e7a8794aab3becad6c7baaea194877b6e6154483b2e21150800000000000000000c18242f43505c6976838f9ca9b6c2cfc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfe4dbd2cbc6c2c1bfbfbfbfbfbfbfbfbfbfbfbfbfbfc0c1c3c5c8cecfc9c6bfbab5afa7a09792867d706a60564c41352920150a00000000000815212e3b4854616e7b8794a1aebacfdac7baaea194877b6e6154483b2e21150800000000000000010d19253043505c6976838f9ca9b6c2cfcec1b5a89b8e8275685b4f4235281c0f0000000000000000000000000000000000030c18212935414c56606b73808d95a0aab4bfcacec2bbafa39991847a6d605a50453b30261c1106000000000000000000000000000000000000000000000000000000000a141d2c38444f59626f7c87939fabb5bfcbd7d1c6baaea2988d8073685d524949494953606c7883909da7b1bccdd7d3c7bbb0a69d9083786c60544a3f31271d0e040000000000000000000000000004101d2935404b556774808d9aaab4bfcad6d4c7bbafa3998c7f72685d52453b30271d1306000000000000000000000000000000081019232d36414b53595b5d5853514b47433d3936302b28221c1a140d050000000000121f2c3845525f6b7885929eabb8c5d1dacdc0b4a79a8d817467594f41382d221a141111141c222d3946525d6876838f9ca9b6c2cfd6cabdb0a3978a7d7064574a3d3124170a000000000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7d0c3b9ada1978d80736a5f53473e31271d1207000000000000000000000000000000000000000000000000000000070e171e272e343f474f575e676d757f879297a0a7afbbc0c7d0d0cac0b7afa69f9590847b6f6a5f574d443a30271d12070000000000000000000000000000000000000000040d151b212628292c2c2c2c2c2c2c2c2c2c2c2c2625231e19120a0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080d11131417181d1f20212223232221201d1919161413100c070400000000000000000000000000000000000000000000000000000000000000000000000b141d242b3033342d33373c4347484e5355545c60626467666c6e717376797b7e8185898d91969fa2a9b2bac4cfd9d8cfc5b8ac9f92867a6d6054473a2d211407000714212d3a4754606d7a8799a3aebbc7d3c8bbaea195887b6e6255483b2f2215080000000000000000071d2a3743505d6a7683909da9b6c3d0c6baada093877a6d6054473a2d211407000714212d3a4754606d7a8799a3aebbc7d3c8bbaea195887b6e6255483b2f2215080000000000000000071d2a3743505d6a7683909da9b6c3d0c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfddd2c9c0bab6b4b2b2b2b2b2b2b2b2b2b2b2b2b2b3b3b5b7b8bcc3c7cbd0cac7c0bbb1a9a29892867c6f685e52463c32271b0f05000000000714212e3a4754616d7a8794aab4becad6c8bbaea295887b6f6255483c2f2215070000000000000004101c2834404b556a7783909daab6c3d0cec1b4a89b8e8175685b4e4235281b0f000000000000000000000000000000000000060f1925303a444f59606d79839098a2aebac1cdcbc0b5aba1968e81756c61574d42382e23170e04000000000000000000000000000000000000000000000000000000020b1b27323d47535f6a75818e99a3aebbc6d0d6cabfb4aa9f92857a6d60554b41444f5964707d8a95a0acb9c3ced9cfc7b7ab9f94897d70655b5042382e1f150b000000000000000000000000000006131f2c3945515d677784909daab7c3d0dbd2c5b9ac9f92867a6d61564c4133291e150b000000000000000000000000000000000008111b242f3941484c4e504b4745403a38322d2a251f1c17110e0903000000000000111e2b3844515e6b7784919eaab7c4d1ddd1c4b7ab9e9184786b6053493f332a25201d1e20262d35414b55616d7a86929facb9c5d2d7cbbfb5ab96897d6f6356493c302316090000000000000000000000000000000000000a141e2a36414c56606d7883909da5afbcc5d0d5c9beb3a99f92877c6e625a5043392f23180c03000000000000000000000000000000000000000000000000000000050c151d2328353d454d555d606d727d8590959ea5afb5bdc5cdd6c9c1b8b0a7a09691857c6f695e564c43392e23180f05000000000000000000000000000000000000030d161f262d32353639393939393939393939393933322f2a241c130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013191d20212424292c2d2e2f302f2e2d2c29242623201f1d1812100c0700000000000000000000000000000000000000000000000000000000000000000000060e171e252a2f383f44464e5355585f6266666d6f717476797b7e808385888a8e92979a9ea1a8adb3bcc4ccd6dcd1c6bdb0a69b8e8175675d5145392c201306000713202c3945525d687986929facb9c5d2c9bcafa296897c6f6356493c302316090000000000000006121f2b37434e586b7784919eaab7c4d1c6baada093877a6d6054473a2d211407000713202c3945525d687986929facb9c5d2c9bcafa296897c6f6356493c302316090000000000000006121f2b37434e586b7784919eaab7c4d1c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd6cbc0b7afa9a7a6a6a6a6a6a6a6a6a6a6a6a6a6a6a7a8aaacb1b9babfc6cfd1cbc3bbb3aaa29891847a6d61584e43372b21160b000000000713202d3a4653606d798698a2aebac6d3c9bcafa396897c706356493d2e23180c0000000000000006131f2c3845515c677885919eabb8c4d1cdc0b4a79a8d8174675a4e4134271b0e0000000000000000000000030709090a0a0a0a08131e28323d45515c666e7b86929fa5afbbc4d0c7bdb2a89e938b7e71695f544a3f342820160c020000000000000000000000000000000000000000000000000000000a16212b37434e58616e7b86929faab4bfcad6d0c6baaea2988c7f73675d51454855616b7783909da7b1bccbd5d1c7bdafa59c8f82766b6053493f30261c0d0300000000000000000000000000000714202d3a4753606d7a86939facb9c6d2dccfc2b6a99c8f8376685e52433a2f20170c0300000000000000000000000000000000000009121d272f373c4041433e3a39352f2b27201d19130f0b06000000000000000000111e2a3744515d6a7783909daab7c3d0ddd2c5b9ada196897d70655b50443e36312c292a2d2f383f45515d67727f8b99a3afbbc7d3d3c7bbaea399887b6e6255483b2f221508000000000000000000000000000000000000020c1925303b44505c666f7d89939eaab3becad6cfc5bbafa3998f82766c61554b4034291f140900000000000000000000000000000000000000000000000000000000030b1218232b333b434b515b626b707b838e939fa4abb3bbc3ccd3cac2b9b1a8a09791857b6e685e554b40342821170d0200000000000000000000000000000000000a151f2831383e4243454545454545454545454545403e3b352e251c1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0f12181d1f252a2d2e302f35383a3b3c3c3c3b3a39352f33302d2c29241f1c18120d08020000000000000000000000000000000000000000000000000000000000020a1117202930363e41495053585f62676a6f7276797b7e808385888a8d8f9297979b9ea2a9abadb2babec5ced6dbd6cbbfb4ab9f94897d7063554c4135291d11040004111d2935414c566b7885919eabb8c4d1cabdb0a3978a7d7064574a3d3025190b020000000000000815212e3a47535f6a7985929facb8c5d2c6baada093877a6d6054473a2d2114070004111d2935414c566b7885919eabb8c4d1cabdb0a3978a7d7064574a3d3025190b020000000000000815212e3a47535f6a7985929facb8c5d2c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd2c6baafa59d9a99999999999999999999999999999a9b9da0a7acaeb4bcc3cbd7cdc5bcb4aaa1968e81756a6054473d33271c100100000006131f2c3845515c677885929fabb8c5d2cbbeb1a4988b7e7165544a4034281c11060000000000030c15202d3a4653606d7986929facb9c5d2ccbfb3a6998c807366594d4033261a0d000000000000000000040a0f13151617171717171716202834404b545f69717e8b939ea9b2bec7cfc4baafa59f92867b6e665c50443d32281e1308000000000000000000000000000000000000000000000000000000040f1b26323c46535f6974808d98a2aebac5cfd6cabeb4aa9f92857a6d60554b4f5963707d8a95a0acb9c3cdd7cbc0b5ab9e93897c6f62594f41382d1e150a0000000000000000000000000000000916222f3c4955626f7c889aa4afbbc8d4d7cbbfb5ab988b7f7265564c4131281e0e0500000000000000000000000000000000000000000b151d252b30333536322d2c29241d1b16110d080300000000000000000000000f1c2935424f5c6875828f9ba8b5c2cedbd5c9bdb2a89d9083786c60595046423b393536393c424a505b606d7a85919eabb5c0cbd7d2c5b9ac9f9286796d6053473a2d2014070000000000000000000000000000000000000008141e28343f4a54606b74818e98a2aebac3ced7cbc0b5ab9f948a7d70675c51453b30251a0c020000000000000000000000000000000000000000000000000000000000071119212931394045515960696e79818c9399a2a9b1bac2cad3cbc3bab2a9a19791847a6d675c51453e33291f14090000000000000000000000000000000005101b26313a42494e505252525252525252525252524c4b4640372e24190d0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d151a1d24292c3036393a3d40404547474849494847454143403d3a39352f2c28231c19130b06000000000000000000000000000000000000000000000000000000020b141b2227323b414650535b60636a6f74777b7f8385888b8d909298979a9c9fa2a9a7abadb3b7b9bdc4cad0d7d8d0cac0baaea3998f82766b6054433a2f24190d0100010d19242f44515d6a7784909daab7c3d0ccc0b3a6998d807366564d42362a1d140a0200000000060f18222f3c4855626f7b8898a2aebac6d3c6baada093877a6d6054473a2d21140700010d19242f44515d6a7784909daab7c3d0ccc0b3a6998d807366564d42362a1d140a0200000000060f18222f3c4855626f7b8898a2aebac6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfcfc2b6a99d938e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8d8e9095999fa3aab1b9c2cbd4cfc6bcb2a89f93877c6f62594f44382c1d120700000004101c2834404b556a7783909daab6c3d0cec1b5a89b8e8275665c5144382e23170f07010000040b151e2935404b5563707d8999a3afbbc7d3cabeb3a9978a7d7164574a3e3124170b0000000000000000070f161b1f22232424242424242424232e39424d57626d75828f96a1acb6c0ccccc1baaea2989083786d60594f443a3024190f060000000000000000000000000000000000000000000000000000000a15202a36424d57616e7a86929fa9b3becad6d0c5baada2978c7f72675d5155616b7683909da7b1bccbd5d4c7bbafa3998f82756a6054473d2f261b0c030000000000000000000000000000000b1824313e4b5764717e8a97acb6c0ccd8d3c7bbaea399887b6e6155483b3022160c000000000000000000000000000000000000000000020b131a202427282a2520201d18130f0a0501000000000000000000000000000d1a2733404d5a6673808d99a6b3c0cedadacfc4b8ab9f958b7f726b625a534d4745414146474e545b606d74808d97a1adbdc7d1dccfc3b6a99c908376675d5145392c20130600000000000000000000000000000000000000020b17232e38424f59616e7a85929fa7b1bcc8d4d1c7bdb0a69e9184796d60574d42362a1e140a000000000000000000000000000000000000000000000000000000000000070f171f272f353f474f575f676d757f879297a0a8b0b8c1c9d2ccc3bbb2a9a0969083796d605a50453b30251a0e050000000000000000000000000000000a16212d38424c545a5c5f5f5f5f5f5f5f5f5f5f5f5f5957524940352a1e13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c131920262b2f35393a4146474a4d4b5153545556565554524c4f4c494745403a38342e29251e17110a02000000000000000000000000000000000000000000000000020b141d262d333e444c525a61656c70767c8084888c909298979a9c9fa2aaa6a9abadb3b4b8b9bec4c5c9cfd6d8d4cec6bfbaaea49f92867c6f62594f4431281e1308000000081d293643505c6976838f9ca9b6c2d1d0c3b6a99d908376695e52463a2f261b140e0909070c1117222b37434e5865727f8b98aab4bfcad6c6baada093877a6d6054473a2d2114070000081d293643505c6976838f9ca9b6c2d1d0c3b6a99d908376695e52463a2f261b140e0909070c1117222b37434e5865727f8b98aab4bfcad6c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dacdc1b4a79a8e817f7f7f7f7f7f7f7f7f7f7f7f7f80808284888d92989fa7b0b8c2cdd7cec4bbafa49a8f82766b605448392f24180c000000000c18232e414e5b6874818e9ba7b4c1ced2c5b8ab9f9285796d60544a3f34282118130e090c10151d26303845515d6774808d9aabb5c0cbd2c6b9ada297887b6f6255483c2f2215090000000000000007101921272c2f3030303030303030303030303c45505a616d7a84919aa4afbbc3cecabeb4aa9f958d80736b60564c41352921180c030000000000000000000000000000000000000000000000000000040e1a26313b46525e6873808c97a2adb9c4cfd6cabeb3a99e9285796d60555963707d89959fabb9c3cdd7cbbfb4aa9f92877b6e62584e43352b1d140a000000000000000000000000000000000d192633404c5966737f8c99a6b2bfd2ddd2c5b9ac9f9286796c605346392d2013060000000000000000000000000000000000000000000001090f14181a1b1d181413110d0701000000000000000000000000000000000b1825313e4b5864717e8b97a8b2bdc9d5e0d4c8bcb1a79f92877d716c615e5754514b4d52545860666c737f8b929da9b3becfd9d6cabeb3a9998c7f7366554b4035291d1004000000000000000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7cfc2b9aca0968c7f73695e52463d30261c1106000000000000000000000000000000000000000000000000000000000000050d151d2429353d454d555d606d727d8591959fa6afb7c0c8d1cdc4bbb2a89f958d80746c61574d42362a21160b0000000000000000000000000000000d1926323e49545e66696c6c6c6c6c6c6c6c6c6c6c6c66635b52463b2f23160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11171e24293137394045474c52545759555d606162636261605d565c595653514b46444039353028231c140c0600000000000000000000000000000000000000000000000a141d262f383f4450565e616c71787d82888d9196999c9fa2aaa7a9acaeb4b3b6b8babec1c5c6cacfd2d5d6d3cdc8c2bcb4aea49d928b7f726a5f53473d331f160c010000010d1a2734404d5a6773808d9aabb5c0cbd2c5b9ac9f92867b6e61564c41382d251e1a171617181c2328343c4754606a76828f9ca9b6c2d0dbc6baada093877a6d6054473a2d21140700010d1a2734404d5a6773808d9aabb5c0cbd2c5b9ac9f92867b6e61564c41382d251e1a171617181c2328343c4754606a76828f9ca9b6c2d0dbc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c73737373737373737373737373737475777b808690959fa6b0bbc5cfd8ccc0b6ac9f94897d7063554b4035291d1004000000071825323e4b5865717e8b98a7b1bcc8d3c6baada2978a7e71665c50443d3329241d1a18181c1f272f38424c56606d7985919eabb8c4d1d1c5b8ab9e9285796c605346392d201306000000000000040f19222b32383b3c3d3d3d3d3d3d3d3d3d3d3d3d3f46525e68707d88939fa7b1bcc6d0c5bcb1a79f93877d70685d52463f332a1e150b00000000000000000000000000000000000000000000000000000009141f2a36414c56606d7a85929ea8b2bdc9d5cfc5b9ada1978c7f72675c606b7683909da7b1bccbd5d3c7baaea3988e81746a5f53463d32231a0b02000000000000000000000000000000000d1a2734404d5a6773808d9aa6b3c0cdd9d1c4b7ab9e918478655b5044372b1f120500000000000000000000000000000000000000000000000003080b0e0e100b070604010000000000000000000000000000000000000815222f3b4855626e7b8896a1acb9c5d2ded8cdc2bbafa39992867e756e6964605d55565e61656a6f788088939fa4aebbc4cfdfd2c6b9ada297897c6f6256493c2f24180d010000000000000000000000000000000000000000000a141e2a36414c56606d7883909da5afbcc5d0d5c9bdb2a89f92867b6e61594f42382e23170b02000000000000000000000000000000000000000000000000000000000000030b1218232b333b434b515b636b707b8390949ea5aeb6bfc7d1cdc3bab1a79d928a7e71695e52463d33271c100400000000000000000000000000000f1c2835424e5a667076787878787878787878787878736d63574b3e3225190c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c151c232830353c43474b5153565e61636669676d6e6f6f6f6e6d686b696663605d5553514a46413a342e261e18100600000000000000000000000000000000000000000006111b262f384149505a62686e757e848a8f949a9ea0a8a9acaeb4b3b6b8babfc0c2c5c6cad0d1d2d6d6d3d0cac6c3bcb8b0aaa29f928d80746d62584e43352b210d04000000000a1724303d4a5763707d8a99a3afbbc7d4c7bbafa3998d8073685e53493f36302a2524232324292e343d46505a626f7c88949fabb7c3d0d3c6baada093877a6d6054473a2d21140700000a1724303d4a5763707d8a99a3afbbc7d4c7bbafa3998d8073685e53493f36302a2524232324292e343d46505a626f7c88949fabb7c3d0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f666666666666666666666666666768696e737b8390949fa9b3becad6d2c7beb0a69c8f8276675d5145392c1f13060000000815222e3b4855616e7b8895a0acb8c6d0cabeb3a99e9184786d60584e453d352f2a252523292c3139414a545e68727f8c97a1adb9c6d2cabeb3aa9b8e8275665b5044382b1f12060000000000000a16212b343d4348494a4a4a4a4a4a4a4a4a4a4a4a4a4a4c56606b73808d95a0aab4bfcacec2bbafa49991847a6d615a50453c30271d12070000000000000000000000000000000000000000000000000000030e1925303b45525d68727f8c96a1adb9c3ced5c9beb3a99e9184796d6063707d89959fabb9c2cdd6cabeb3aa9f92867b6e61584e43342b20110800000000000000000000000000000000000e1b2834414e5b6774818e9aa7b4c1cddad0c3b6a99d9083766a53493f33271b0f0300000000000000000000000000000000000000000000000000000001020300000000000000000000000000000000000000000000000814212e3a47535f697884919eabb7c3ced9dfd7cbc0b5aba398928b817b74706d676a6b686e71757c828c939aa4afb6c0cdd6d6cabeb4aa9e9285786c605346392d20130700000000000000000000000000000000000000000000020c1925303b44505c666f7d89939eaab3becad6cec4baaea2988e81756b60544a3f34281e13080000000000000000000000000000000000000000000000000000000000000001071119212931394045515961696e7a828e939da4adb5bfc8d1ccc2b9aea49f92867b6e61594f44382c21160a0000000000000000000000000000101d293643505c6976828585858585858585858585857f7366594c403326190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e171e262e343a41464e53555d6064686d707375787a7a7b7c7c7b7a79787673706d6764605c54524c443f38302a2217110a02000000000000000000000000000000000000030c17222d384149535b606c717a828a91969c9fa6aaacb2b6b8babfc0c3c5c6cad0cfd2d3d6d6d3d2d0cac6c5bfbab8b1aba69f98928b80746e645b51463c3123190f00000000000714212d3a4754606d7a86929facb9c5d1cbc0b5ab9f92867a6d655b5046413b36303130302f35383f444f58616c75828f9ba6b0bbc7d3d3c6baada093877a6d6054473a2d21140700000714212d3a4754606d7a86929facb9c5d1cbc0b5ab9f92867a6d655b5046413b36303130302f35383f444f58616c75828f9ba6b0bbc7d3d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635959595959595959595959595a575f61696e79829097a2adb9c5cfd9d0c2b8ac9f92867a6d6053473a2d2014070000000714212d3a46535f697784909daab4bfcbd0c5b8aca0968b7f726a60574f45403a3631322f34383d434b535c666d7a85929ea9b3bec9d3c6baaea2988a7e7164544a3f33281c0f030000000000030f1b27323d464f54565757575757575757575757575757575759606d79839098a2aebac3ceccc0b5aba1968f81756c62574d42392e23180e05000000000000000000000000000000000000000000000000000008141e2935414c56606d7984919ea8b2bdc8d4cfc5b9ada1978b7f72666b7683909ca7b1bccbd4d3c6baaea2988d8073695e52463c3122190f0000000000000000000000000000000000000f1b2835424e5b6875818e9ba8b4c1cedbcec2b5a89b8f8275685c4f422d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121e2b37424d576774818e9aa8b2bdc8d4e0dcd1c7bdb4aaa39f938e86817d7a787777797a7e82888f949fa4acb6c0c8d2d9d0c7baaea2988d8073665b5044382b1f1206000000000000000000000000000000000000000000000008141e28343f4a54606b75818e98a2aebac3ced6cabfb4aa9e93897d6f665c50443a3024190d040000000000000000000000000000000000000000000000000000000000000000080f171f282f353f474f575f686d79818d929ca3adb6bfc9d3cbc0baaea2988e81756b6054483d32271b0f0200000000000000000000000000111d2a3744505d6a778390929292929292929292928d8073665a4d4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019202930383f444c52585f62676d71767a7d808285868788898988878685827f7c7a76716d66615e56504a423c3428221c140b0200000000000000000000000000000000000b151e27333f49535b656c747e858f939da0a8abb0b7b9bdc3c5c6cad0cfd2d3d6d6d3d2cfcfcac6c5c2bebab8b4aeaca79f9d948f867e736e645c52493f342a20110700000000000613202c3945515d677683909dabb5c0cbd1c7baaea2988f82776c605b524c46423e3d3c3d3e40454a5059606a717e8a939eaab8c2ccd8d3c6baada093877a6d6054473a2d21140700000613202c3945515d677683909dabb5c0cbd1c7baaea2988f82776c605b524c46423e3d3c3d3e40454a5059606a717e8a939eaab8c2ccd8d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f63564c4c4c4c4c4c4c4c4c4c4d4d4d53575f676e7a85929ea9b3bec9d5d3c7baaea3988a7d7063574a3d3024170700000005121e2a36424d5765727f8c98a3aebac4cfc8bdb2a89f92877c6f696059514b4642403f3f4045474f555d656d78828f97a2adbbc4cfcabfb4aa9f9285796d6053473a2d22170b00000000000007131f2c38434f596063636363636363636363636363636363636363666e7c86929fa8b2bdc8d2c7bdb2a89e938b7e71695f544b40342820170c0200000000000000000000000000000000000000000000000000020d19242f3a45515c67717e8b96a0acb8c3cdd5c9beb2a99e9184796d707d89949fabb9c2cdd5c9beb3a99f92857a6d61574d42332a2010070000000000000000000000000000000000000f1b2835424e5b6875818e9ba8b4c1cedbcfc2b5a89c8f8275695c4f422e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313d495663707d8996a0acb8c4cfdae3d9cfc6bcb4aea59e99928e8a8785848485878b8f949c9fa6afb6bec7d2ddd2c7beb3a99f92857a6d61544a3f33281c0f030000000000000000000000000000000000000000000000020c17232e38424f59616e7a85929fa7b1bcc8d4d0c6bcafa59d9083786d60564c41352920150a000000000000000000000000000000000000000000000000000000020507080b0e0f0d161d2429353d454d565d676d78808c919ca4aeb7c1cdd6cabeb4aa9e93897d7063594f43382c1e130800000000000000000000000000111d2a3744505d6a7783909d9f9f9f9f9f9f9f9f998d8073665a4d4033271a0d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071119222b333b424a50565d616a6e74797e82868a8c8f929794959695949992918f8c8986827d79736d68605c544e463f332d261d140c0200000000000000000000000000000007121d27303944505b656c77808b92979ea5acb2b7bbc2c5c9ced2d3d6d6d3d2cfd0cac6c5c2c0bebab8b5b3adabaaa29f9a95908a827c716c645c524a41372d22180e00000000000004111d2935414c556673808c99a3afbbc7d4cabfb4aa9e948c7f736d615e56524d4b4a494a4b4b51545c606b6f7c86929fa5afbbcad4ded3c6baada093877a6d6054473a2d211407000004111d2935414c556673808c99a3afbbc7d4cabfb4aa9e948c7f736d615e56524d4b4a494a4b4b51545c606b6f7c86929fa5afbbcad4ded3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635649404040404040404040404142474d555e68717e8b97a1adb9c6d2d6cbbfb4aa9a8d8174675a4e412f24180d010000020e1a26313b4754616d7a86929fa9b3bec9cec3baaea39991857b6f6b605d55534d4d4b4c4b51535960676d77808d949fa9b3becdd3c6baaea2988d8174675d5145382c1c11060000000000000915222f3b4854606b6f7070707070707070707070707070707070707070727e8b96a0acb9c5d2d0c4baafa59f92867b6e665c51453d32291e1308000000000000000000000000000000000000000000000000000008131e2934404b55606d7884919da7b1bcc8d4cfc4b9aca1968b7e7176828f9ca6b0bccbd4d2c6b9ada1978c7f73685e52453b3021180e000000000000000000000000000000000000000e1b2734414e5a6774818d9aa7b4c0cddad0c3b6aa9d9083776a544a4034281c10040000000000000000000000000000000000000000000000000001050707070604010000000000000000000000000000000000000000000913202d394653606c7884919ea9b2bec9d5e1e1d8cec6bfbaafaba39f9b97979291919298989c9ea6abb0bbc0c7d0d9d7ccc0b6aca2978c8073685e5242382d22170b0000000000000000000000000000000000000000000000000006111c26303d46525e68727f8b95a0acb8c1ced7cec1b8aca0958b7e72685d52463c31261b0d0300000000000000000000000000000000000000000000020608090e121415181b1c1b181218232c333c444c555c666c747f8c929ca5afbbc5cfd0c5bcafa59d9083776b6054483a3025190d01000000000000000000000000111d2a3744505d6a7783909daaababababababa6998d8073665a4d4033271a0d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071019232b343d454d545c60686d747c81858a8f9299999c9ea1a9a2a2a2aba39f9e9c9999928f8a84807a726d665f5850443f382f261e140a0000000000000000000000000000000c18232e39424f59606c77818d929fa2a9afb8bdc3c7ccd2d5d7d3d2d0cbc7c5c3c0bebab8b6b3b3adaba9a9a29f9b98928e88837d766e6a625a524a41382f251b1006000000000000010d19242f3b4855616e7b87929facb9c2cfd0c5bcb0a69c918c7f756e68615e575857565658555d60666d727d859298a2aeb7c1ccdce6d3c6baada093877a6d6054473a2d2114070000010d19242f3b4855616e7b87929facb9c2cfd0c5bcb0a69c918c7f756e68615e575857565658555d60666d727d859298a2aeb7c1ccdce6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c33333333333333333331373b434c56606d7985929eabb8c5d1dcd0c4b7aa9d9184776a554b4135291d11040000000914202d3946525e6873808d97a1adb9c3cecbbfb4aba19791857d736d67615e57595859555c60636b7079818d929da6b0bbc5cfc9bdb2a89f92867b6e61554b4035291d0a00000000000000091623303c4956636f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d84919eaab7c4d1d6ccc1baaea2989083796d60594f443a302519100600000000000000000000000000000000000000000000000000010c18232f3944505c66717e8a959fabb8c2ccd5c9bdb2a89e9184787d89949fabb8c2cdd5c9bdb2a89e9285796d60564c4133291f0f06000000000000000000000000000000000000000d1a2733404d5a6673808d99a6b3c0ccd9d1c5b8ab9e928578665c5144382c1f1206000000000000000000000000000000000000000000000002080d1113141413100d07010000000000000000000000000000000000000005121f2b3744505b65727f8c97a1adb9c2cfd9e3e0d8d0cbc1bdb4aeaca7a9a29f9d9e9fa2aaa8aab0b7bbc2ccd2d9d1cbc1bbafa49a92857a6d60564c412f261c110600000000000000000000000000000000000000000000000000000a151e2a36414c56606d7883909da5afbcc5d0d4c8bcb1a79e92857a6d61584e43372b1f150b010000000000000000000000000000000000020608090e1214151a1e21222528282725201a1a212a323a434b545b606d73808d939ea9b3bec9d5cec1b8aba095897c6f63564c41362a1d1105000000000000000000000000111d2a3744505d6a7783909daab6b8b8b8b8b3a6998d8073665a4d4033271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e19222b353d464e575e666d727a80878e92989c9fa3aba8abadb3aeafafb5afacaba9aba39f9c97918c857f786f6a625a504a423830261c11060000000000000000000000000004101c2834404b54606b737f8c939da4adb3bbc1c8ced3d7d3d1cbc7c5c2bfbab8b6b3b3adaba9a6a9a29f9c9997928e8b86817c77716c625f58504840382f261d120900000000000000000814212d3a46535f6975818e9ba6b0bcc6d1cec1b8ada39c918c817a736e6966656463636466676d71787f869297a1aab4bfc9d3dde0d3c6baada093877a6d6054473a2d2114070000000814212d3a46535f6975818e9ba6b0bcc6d1cec1b8ada39c918c817a736e6966656463636466676d71787f869297a1aab4bfc9d3dde0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c302626262626262626262b313b45515c6774808d9aa7b3c0cddad2c5b8ac9f928579675d5145392c20130600000005111e2a36414c56606d7a85919ea7b1bcc5cfc6bdb2a9a19792878079726e696766656667676d70757d838f939da4aeb8c2cdcac2b9aca0968c7f72685e5243392f24180c00000000000003101d2a3643505d6976828a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a9196a0acb9c5d2ded6cabfb4aaa0958d80736b60564c41362a22180d030000000000000000000000000000000000000000000000000007121d28343f4a54616c7783909da6b0bbc7d3cec4b9aca0968a7e828f9ca6b0bbcad4d2c5b9aca0968b7f72675d51443a3021170d00000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfd0dbd2c6b9ac9f9386796d6053463a2d20130a00000000000000000000000000000000000000000000040c13191d202120201d18120f0a050100000000000000000000000000000000030f1b27333f4953606d7a84919ea6b0bdc7d1dce8e2dcd6cfc6bfbab9b4b3adabaaaaacaeb4b5b7bbc1c7cdd8d5cfc7c0bbafa59f93887e71685d52443a301d140a000000000000000000000000000000000000000000000000000000030c1925303b44505c666f7d89939eaab4becad6cdc3b9ada1978d80746a5f53473e31271d120700000000000000000000000000000105090f1214151a1e2122262a2d2e32353534312c251e1820283139424a505b606c77818f97a1adb9c4cfd4c8bcb1a79b8e8275685e5246392d201307000000000000000000000000111d2a3744505d6a7783909daab6c3c5c5c0b3a6998d8073665a4d4033271a0d0000040607070706040000000000000000000000000000000000000000000000000000000000000000000000000000020b17202b343d474f5860696e787f858d92999fa2aaacafb5b5b8b9bebbbcbcc0bbb9b8b5b5aeaca9a19e97928b837c716c605b544a42382e2317110800000000000000000000000006131f2c3845515c66707d88939fa5aebabec5cdd4d9d1cbc7c5bfbab9b5b4aeaca9a6a9a29f9c999797928f8c8985827e7a746f6a64615a534e463f362e261d140b00000000000000000005121e2a36424d57626f7c88949eaab4bfcbd7cabfb5ada39c938e86807b777371706f70717275797e848b9298a1a9b3bcc6d0dbe5e0d3c6baada093877a6d6054473a2d21140700000005121e2a36424d57626f7c88949eaab4bfcbd7cabfb5ada39c938e86807b777371706f70717275797e848b9298a1a9b3bcc6d0dbe5e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231919191919191a1a1f2834404b5564717d8a97a4b0bdcad7d3c7baaea298877a6d6054473a2d211407000000010d1925303a45515d67717e8b95a0aab3bdc7cfc4bbb2a9a199928c857f7b77747372727475797d828990959ea5aeb6c0cacbc2b8afa59e9184796d60564d4131271d120700000000000003101d2a3643505d697683909696969696969696969696969696969696969696969ea0a8b2bdc8d4e1dbd0c6bcb1a79f93887d70685e52463f342a1f150b01000000000000000000000000000000000000000000000000010b17232e3842505a63707d89949fabb7c1cfd5c9bdb2a89e92858f949fabb8c2cdd4c8bcb1a79e9184796d60554b4032281e0f0500000000000000000000000000000000000000000a1724303d4a5763707d8a96aab4bfcad6d4c8bbafa49a897c6f6356493c31261b0f040000000000000000000000000000000000000000040e161e24292d2e2d2c29241d1b16110d08030000000000000000000000000000000b17222d3845515d67717e8a949fabb5c0cbd7e2ebe7e1d8d1cbc7c5c1bebab8b7b7b8babfc2c3c7ccd3d4cfc9c4bdb5afa69e938c7f736c61564c4132281e0b020000000000000000000000000000000000000000000000000000000008141e28343f4a54606b75818e98a2aebac3ced6cabeb3a99f92877c6f625a5043392f24180c03000000000000000000000002080d11151a1f2122262b2e2f31363a3b3e4142403d372f271e161f272f383f44505b656d7a85929ea9b2bdc9d5cdc3b9ac9f92867a6d6154473a2e211407000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d4033271a0d070c101313141413100c070c09070603000000000000000000000000000000000000000000000000000000000000000a141d29323d464f59606a6f7b838b92979fa3abaeb4b9bbc0c2c5c6c9cfc9d1cbc7c5c4c2bfbbb9b2ada9a29f9590867e746c665c544a3f3428231a100500000000000000000000000713202d3a4653606d7984919aa4afb7c0cacfd7d3cfc7c0bbb9b4aeaca9aaa39f9c9a9797928f8d8a8885827f7c7975716d68626058555047433c332d241c140b02000000000000000000020e1a26313b47535f6a76828f98a3aebac1ccd1c7bfb6ada59e98928c8783807e7d7c7d7e7f82868a91969fa3aab3bbc5ced7dfe6e0d3c6baada093877a6d6054473a2d211407000000020e1a26313b47535f6a76828f98a3aebac1ccd1c7bfb6ada59e98928c8783807e7d7c7d7e7f82868a91969fa3aab3bbc5ced7dfe6e0d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160d0d0d0d0d090d18232e3b4855626e7b8895a1aebbc8d4d6cabfb4aa94887b6e6155483b2e2215080000000008131e2935414b55606c78839098a2abb5c0cbcdc4bbb3aba39f97918c878381807e7f8082858a8f949da0a7afb7c0c8ccc3b9b0a69d938a7e70675c51443b301f150b0100000000000003101d2a3643505d697683909ca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3aaacb2bac3ced9e5e2d8cec3bbafa49a91857a6d615b51463c31271d12070000000000000000000000000000000000000000000000000006111c26303e4854606b76828f9ca5afbdc7d1cec4b9ada19792979fa6b0bbcad4d1c5b8aca0958a7e71665c51433a2f20160c0000000000000000000000000000000000000000000815222e3b4855616e7b8898a2aebac7d3d8ccc0b6ac9a8d807367584e43372b20150a00000000000000000000000000000000000000030c1620283035393a3a39352f2b27201d19130f0b060000000000000000000000000006111b2935414b55616c76829099a3afbbc4d0d9e4eeeae2dcd7d3d2cfcac6c5c4c4c5c6cad0d0d2d0cec8c4bdb9b3aba39f948e81776c605a50443a2f20160c0000000000000000000000000000000000000000000000000000000000020c17232e38424f59616e7b86929fa7b1bcc8d4cfc5bbafa3998f82766c61554b4035291f140900000000000000000000050c13191d20262b2e2f31373a3b3e4246484b4e4f4d4841392f2017151d262d333f49535e68717e8b96a1adb9c5d2d4c7bbafa3998a7d7164574a3e31241707000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d4033271a161a181c1f2021201f1d181b19161312100b060300000000000000000000000000000000000000000000000000000006111c262f3b444e58606b6f7d8590959ea2a9afb5babfc5c7cbc8c5c4c2c1c0c0c1c2c5c6cacbc7c4beb9b3ada7a098928b80786d665c50443f352c21160b0000000000000000000007131f2c38434f5965727f8b96a0acb6c0c9d6dbd1c9c1bdb5afacaba39f9c989892908d8a888583807d7b7876736f6d6665605d56544e49443e37312a211b120b02000000000000000000000009141f2b37434e58626f7c86929fa5afbac4cdd1c8bfb7afaaa29f9995908d8b8a89898b8c8f92989ea0a8aeb4bcc3c4c8cdd5dde6d3c6baada093877a6d6054473a2d2114070000000009141f2b37434e58626f7c86929fa5afbac4cdd1c8bfb7afaaa29f9995908d8b8a89898b8c8f92989ea0a8aeb4bcc3c4c8cdd5dde6d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160900000000000714212d3a4754606d7a8793a0adbac6d3dbd0bcafa296897c6f6356493c3023160900000000020d18242f3a44505b666f7c869299a3afbbbfc6cdc5bdb4aea9a19e9895908e8c8b8c8d8f92989c9ea6acb1b9c1c9cbc2bab1a79f948e81746c61554b4032291f0d030000000000000003101d2a3643505d697683909ca9b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b7b9bdc3ccd5e0e3eae0d8ccc0b6aca1978f82756d62584e43392f23180e05000000000000000000000000000000000000000000000000000a141e2c38444f59626f7c88939eabb5c0cbd5c9beb3a9a19ea1a9b0b8c2ccd3c7bcb0a69d9083786c60544b4031281d0e050000000000000000000000000000000000000000000713202d3a4653606d7985929facb8c5d2ddd2c4b7aa9e9184776a5f53473c31261b0f060000000000000000000000000000000000000b151e28323a4146474745403937322d29251f1b17110e090300000000000000000000000d18242f3a43505a626f7c87929fa8b2bec7d2dde8f3ede7e3e0dfd8d1cbc7c5c6c8ccd0cac6c5c3c0bcb8b2ada9a199928c82796d655b50483e32281e0e0400000000000000000000000000000000000000000000000000000000000006111c26303d46525e68727f8c95a0acb8c1ced7cbc0b5ab9f948a7e71675d51453b31251a0c030000000000000000050e161e252a2d31373a3b3f4247484b4d5355585b5b59534b4132291f14141c222d38414c56606d7984919eabb8c4d1d7cbc0b5ab9a8d8174675a4e412f24180d010000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d40332720232723282c2d2d2d2c2924282623201f1c17120f0b06000000000000000000000000000000000000000000000000000b17222d38424c56606a6f7d8692979fa7adb3bbc0c7cac7c5c2bdb9b7b5b4b3b3b4b6b8babec4c5c8c9c5bebab1aaa39f928d81786d605b51473e33281c10040000000000000000000915222f3b4854606b7784919da8b2bec7d2dbd1c7bfb7afaba39f9b99928f8b888683807e7b797673716e69696662605c5454524c47433c39332b2620180f0900000000000000000000000000030f1b26313c47535f6a727f8b939ea8b2bbc4ccd7c9c1bcb4aeaca7a09d999897969697999c9fa3aaacb2babcb8b6b8bcc3cbd5dfd3c6baada093877a6d6054473a2d21140700000000030f1b26313c47535f6a727f8b939ea8b2bbc4ccd7c9c1bcb4aeaca7a09d999897969697999c9fa3aaacb2babcb8b6b8bcc3cbd5dfd3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160900000000000714202d3a4753606d7a8693a0adb9c6d3d6c9bcafa396897d706356493d3023160a000000000007131d28333f4a545f6a707d87929fa4aeb5bdc4cdc6bfbab3adaba7a09d9a9998999a9c9fa2aaaab0b8bcc3cbcac0b9b0a8a0958f82786d605a5043392e20170d000000000000000003101d2a3643505d697683909ca9b6bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdc4c5c8ced5d6d6d6d6d6ddd2c7beb3a99e948b7f726a5f554b40342920170b02000000000000000000000000000000000000000000000000020c1c27333d4754606a75818e99a3afbbc6d0cfc5bbb3adabadb3bbc2cad4d0c7b7ab9f948a7d70665b5042392e1f160c0000000000000000000000000000000000000000000006121f2b3844505c6676828f9ca9b5c2ced9d2c5b9aca096887c6f62584e43372b21180d040000000000000000000000000000000007121d27303a444c525453514b47433d3935302b27221b1a14100b0500000000000000000007131d28313e47535f6a74808d96a1acb6c0ccd8e1eaf4f3ede3d8cfc6bfbbb9b9bbc0babfbab8b6b3b1aca8a19e9791877f776d675d53493f362c20160c00000000000000000000000000000000000000000000000000000000000000000a151e2a36414d56606d7883909da5afbcc5d0d1c7bdb0a69e9184796d60574d42362a1e150a00000000000000020c1620283036393c4347484b4d535558575f61656868655d53443b3025190e111b262f3a45515c6674818d9aa7b4c0cddcd1c4b7aa9d9184776a554b4035291d10040000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d40332b2d30342e34383a3a3a38352f35332f2d2b28231f1b17110b0600000000000000000000000000000000000000000000030f1c28333f4a545e686f7c869298a1a9b1b9bec5cbc6bfbab9b5b2acaaa9a8a6a7a8a9abadb3b7b8bdc3c8cac3bcb4aea49d938e81746d63594f44382c201407000000000000000000091623303c4956636f7c8995a0acbac3d0d9d3cabfb5ada59e99928e8a86827f7c797673716e6c656664615f57595653504a4745413a37322d28221a150e060000000000000000000000000000000a15202b37434e58626d75818f96a1a9b2bac2cbd1cec6bfbab8b1acaaa6a4a3a2a3a4a5a8acaeb4b8bdb9b1abaaabb1b9c3cdd9d3c6baada093877a6d6054473a2d21140700000000000a15202b37434e58626d75818f96a1a9b2bac2cbd1cec6bfbab8b1acaaa6a4a3a2a3a4a5a8acaeb4b8bdb9b1abaaabb1b9c3cdd9d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160901010000040b15222e3b4855616e7b8894a1aebbc7d4d7cbbfb4aa95887b6f6255483c2f2215090000000000010b17222d38424e58606b717e8b929fa3abb3bbc2c9cbc4beb9b8b1acaaa7a6a5a5a7a8acaeb4b7bbc1c8cbc6bfbaaea69f969083796d665c50483e30271d0e05000000000000000003101d2a3643505d697683909ca9b6c3c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9cacacacacacacacacacacacad0c4bbb0a69f92867c6f675c51453e32291d140a000000000000000000000000000000000000000000000000000b16212b37434e58626e7b87929faab4bfcbd6cdc5beb9b8b9bec5cdd4d2c7bdb0a69c9083766b61544a3f30271d0d040000000000000000000000000000000000000000000003101c28343f4a5466727f8c99a8b2bdc8d4d4c8bdb2a89b8e81746a5f53473e332a1f160c0500000000000000000000000000020a1118232e39424c565d61605d55544e4746413a37332d2a251f1c1710080000000000000000010c161f2b37434e58606d7a84919aa4afbbc3cfd8e3edf3e7dcd1c6bdb5aeacacafb6adb4aeaca9a6a7a09d96918c857d726c655d554b41382d241a0d040000000000000000000000000000000001010101010101010101010101010101030c1925303b44505c66707d89939eaab4becad6cfc2b9aca1968c8073695e53463d30261c110600000000000008131e28323a4146474e535558575f626568696e7174756f65564d42362a1e130a141d2834404b5464717e8a97a4b1bdcad7d2c5b8ac9f928579675d5145392c2013060000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d4034383a3d40434045464747454043423f3c3a38342e2b27221b17110a0200000000000000000000000000000000000000010b151f2b3844505b666e7a849198a2aab3bbc2cac7c0bbb4aeaca8a8a09e9c9b9a9a9b9c9fa2a9aaacb1b8bdc3ccc6bfbaaea59e938c7f726b6155483c2f2316090000000000000000000d192633404c5966737f8c99a8b1bdccd5d8ccc2b8ada39c938e87817d7a76726f6d66676461605b535755534d4c4946443f3a3a3f3e3d39342d241b0f0600000000000000000000000000000000040f1b26323c46515b606d7a849197a1a8b0babfc6cfd0cac6c3bcb8b6b3b1b0afb0b1b2b5b8babfc0b6aea7a09da0a7b1bcc8d4d3c6baada093877a6d6054473a2d2114070000000000040f1b26323c46515b606d7a849197a1a8b0babfc6cfd0cac6c3bcb8b6b3b1b0afb0b1b2b5b8babfc0b6aea7a09da0a7b1bcc8d4d3c6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3023160d0d0d070c10151c28333f4a5463707d8996a3b0bcc9d6d3c7baaea398877a6d6154473a2e21140700000000000006111c262f3c464f59626c73808b9299a1a9b1b9bdc4c9c9c6c3bcb8b6b4b3b1b2b3b5b8babfc6c7ccc7c0bbb4aea49d9490847b6e675d544a3f362c1e150b00000000000000000003101d2a3643505d697683909ca9b6bdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbaaea3989083796d60594f443b2f261b1106000000000000000000000000000000000000000000000000050f1b27323c47535f6974818e98a3aebac5d0d6cfc9c6c5c6c9cfd6d7ccc0b5ab9e94897c6f63594f42382d1e150b0000000000000000000000000000000000000000000000000b17232e3c4955626f7c8896a0acb9c7d1d9cec3b9ac9f93877c6f62594f453c31281e170e070000000000000000000000050c141c232834404b545d686d6d6762605854524c46443f3836302d28221a12080000000000000000040d1b26313c45525d68707d88939fa7b1bdc6d1dce7efe3d7cbbfb5aba39f9fa4aca1aaa29f9d9a9795908b847f79706b605b534b43392f261b120800000000000000000000000000030608090d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d0d08141f28343f4a54606b75818e98a2aebac3ced5c9bdb2a89f92867b6e61594f42382e23170c0200000000010d1925303a444c5254585f626568696e7175787b7e818175695e52463a3024190c0b18232e3d495663707c8996a3afbcc9d6d3c7baaea298867a6d6053473a2d2014070000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d403f4446494d4f4b51535453514b504e4c4946443f3937332d27221b140b0600000000000000000000000000000000000007121d2a36414c56606c78829096a1aab4bcc5cdc4bdb5afaba39f9b9796918f8e8d8d8e8f9297999da0a8acb2bac1c4beb9b1aba59f93877d7063574a3d3024170a000000000000000003101c2936434f5c6976828f9ca9b5c2cedcd3c7bbb0a69c918c817b75716d676562605c5457555350494a484642403c3a383f44464c4b49453e362d22180d03000000000000000000000000000000000a15202a343f45525d686e7c8591969fa6aeb4bcc1c6cad0cdc8c4c3c0bebdbcbcbebfc2c5c3bcb8aea49d959095a0abb8c4d1d3c6baada093877a6d6054473a2d2114070000000000000a15202a343f45525d686e7c8591969fa6aeb4bcc1c6cad0cdc8c4c3c0bebdbcbcbebfc2c5c3bcb8aea49d959095a0abb8c4ccccc6baada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c30231a1a1a1a1a181c1f272e3844505b6673808d9aa6b3c0cdd9d2c5b9ac9f928679685d5246392d201307000000000000000a141d2a343d47505a636e737f8791979fa7adb2b9bec5c7cbc8c4c3c1bfbebfc0c2c5c6cac8c7c0bbb5afaaa29f928d827a6e695e554c42382e241a0c0300000000000000000003101d2a3643505d697683909ca9b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b4aaa0958d80746b61564c41382d22170b000000000000000000000000000000000000000000000000000a15202b37424d57616e7b86929fa9b3becad6dad5d2d1d2d5dae0d4c7bbafa4998f82756b6054473e2f261c0c030000000000000000000000000000000000000000000000000615222e3b47545f6a7784919eabb5c0cbd7d4c7bbafa4998f82756b61574d433a30292018120b0502000000000000040a0e171e262e343f45515c666d7a7a746f6a65615e5653504946423b39332c241a100500000000000000000a15202935414c56606b74808d95a0abb5bfcbd7e0eae0d3c7bbaea39992939a9494939892908d8a87837e79726d6760595049413931271d140a000000000000000000000000040a0f1315161a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a1a17232e38424f59616e7b86929fa7b1bcc8d4cec4baaea3988e81756b60544a3f34281e13080000000005111d2a36414c565e61686a6e7275787b7e8184888b8e877b6e61564c4135291e150c15222f3c4855626f7b8895a2aebbc8d5d6cabfb4aa94887b6e6155483b2e2215080000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4d484a5053565a5c545c6060605d555d5b595653504a46443f38332d261d17110a02000000000000000000000000000000000c18242f3946525e68717e8b949fa8b2bcc5ccc3bbb2aba39f99928f8a878482818080818385888c91959ea0a8afbbbab3ada7a09d938e867f7265594c3f3226190c000000000000000004101c2834404a546b7884919eabb7c4d1ded0c3b7aa9e948c7f756e6964605d555553514a4b4846443f3e3b3a3631353c424a505359585650483e342a1f150b01000000000000000000000000000000040e18222935414c565f6a6e7c8490949fa3aaafb8babfc4c5c9cfcccccbcac9cec8c5c3bdb9b1aca49d928d83909daab6c3d0d3c6baada093877a6d6054473a2d211407000000000000040e18222935414c565f6a6e7c8490949fa3aaafb8babfc4c5c9cfcccccbcac9cec8c5c3bdb9b1aca49d928d83909daab6bfbfbfbfbaada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c3027272727272723282c3039414c55606c7884919eaab7c4d1ddd1c4b7ab9e9184786b564c4135291d110500000000000000020b18222b353f48525c636d727d8590959ea1a8adb3b9bbbfc4c5c9cfcacbcad0cac6c5c2bdb8b6afaba39f98928a80786e685e574d433a30261c12080000000000000000000003101d2a3643505d697683909ca3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a79d928a7d70685e53493f33271b0f03000000000000000000000000000000000000000000000000040e1a26313c46525e6973808d97a2adbac4cfdae1dfdedfe1e2d7cbbfb4ab9f93877c6f62594f43352c1d140a0000000000000000000000000000000000000000000000000006131f2b37434e5866727f8c99a3afbbc7d2d7ccc0b5ab9e948a7d70695f554c433a3228231c15110e09080707070c10151b202930383f44515b606d788385817c77726d6863605b53524d49443e362c22170b0000000000000000040d19242f3a434f59606d79839199a3aebbc2ced8e2dfd2c5b9ac9f92878788888787868583807d7a77716d66605d554f443f382f271f150b020000000000000000000000070f151b1f222327272727272727272727272727272727272727272726303d46525e68727f8c95a0acb8c1ced6cbbfb4aa9e93897d70665c50443a3025190d040000000713202d3946525e686d75787b7e8185888b8e9196989a8c8073685d52463b30271e181c222f3c4855626f7b8895a2aebbc8d5d6cabfb4aa94887b6e6155483b2e2215080000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a4f55545c606367696b666d6d6d676b6a686662605c54535049443f382f27221b140b04000000000000000000000000000004101d2935404b55616d7a85929ea6b0bac4cec3b9b1a9a199928e86827d7a77767573747576797b7f848a91969ea5aeaea9a19e959089817b726d62574a3e3125180b000000000000000006121f2c3844515c667885929fabb8c5d2dccfc2b5a99c8f82766d615e5754514b494644403e3b3937332d2e30363a41454e545c606564625a50463c31271d12070000000000000000000000000000000006101924303a444e585f6a6e7a828c92989ea5acaeb4b7b9bdbebfbfc0c0bfbebcb8b7b2aca7a09d928d807d8996a3b0bcc9d3c6baada093877a6d6054473a2d2114070000000000000006101924303a444e585f6a6e7a828c92989ea5acaeb4b7b9bdbebfbfc0c0bfbebcb8b7b2aca7a09d928d807d8996a3b0b2b2b2b2b2ada093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356493c343434343434342e34383c424a515d67717e8a96a0acb9c5d2d7cbc0b5ab9b8e8275685b4f423024190d01000000000000000006101a232d36404a525b626b6f7b838b91969ea1a9acaeb5b8b9bdbdbdbebdbdbfbab8b6b2acaca49f99928e867e746d665e564d453b31281e150a000000000000000000000003101d2a3643505d6976839097979797979797979797979797979797979797979797979797979797979797979797979797979797979792857a6e655b5044372b1f1205000000000000000000000000000000000000000000000000000915202a36424d57616d7a85929fa9b3bec9d5e0ebebece7dbd0c7baaea3998e81756a5f53473d32231a0b0200000000000000000000000000000000000000000000000000030f1b26323c4754616e7b87929fabb5c0ccd7d2c7bdb0a69f92857b6e675d554c443c342e27201e1a1615141415181c1f272b323a424a505b636d74808d928e89837f7a75706c65615e575550483e33281c1004000000000000000008131e28313d45515c676f7c87929fa7b1bcc6d0dbded2c5b8ab9f92857b7b7b7a7a79797673706e6864605c54514b433d332d261d150d03000000000000000000000007101920272b2e2f343434343434343434343434343434343434343434343436414d56606d7883909da5afbcc5d0d0c6bcafa59d9083786d60564c41362a20150a0000000714212e3a4754616d7a8185888b8e9197989b9ea1a89f92857a6d61564d4239302924282b333d4a5663707d8996a3b0bcc9d6d3c6baaea298867a6d6053473a2d2014070000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665a596163666d7073767879797a7a79787675726f6d6663605b535049413c332d261d160d040000000000000000000000000006131f2c3945515d6773808d97a2adb8c2ccc6bcb1a7a0979187817b75716d686968676768656c6e72787d848e939fa3a39f97918b837c756e69625b51463a2e22160900000000000000000713202d3a4653606d798698a2aebac6d3d7cabdb1a4978a7e71645b534d4745413c3a38342e2e2d2b2d31373b41464b515860666d72716c62584e43392f24180f050000000000000000000000000000000008131e28323c464e585f686e787f868f939b9fa2aaabadb2b1b2b3b3b3b2b1b1acaaa8a19e95908980747d8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000008131e28323c464e585f686e787f868f939b9fa2aaabadb2b1b2b3b3b3b2b1b1acaaa8a19e95908980747d8996a3a6a6a6a6a6a6a6a093877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f6356494040404040404040414044464e545c606d7a84919ea8b2bdc8d4d4c7bbafa3998a7e7164574b3e312418080000000000000000000008111b242e384049515960696e787e848b92979c9fa3ababadb2b0b1b1b1b0b4aeaca9a8a09e9a938e87817b716c605c544d443b33291f160c03000000000000000000000003101d2a3643505d6976828a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a82786c605346392d20130600000000000000000000000000000000000000000000000000030e1a25303b46525d68727f8c97a1adb9c4ced9e5f1efe2d6cabfb4aa9f92867b6e61584e43352b2111080000000000000000000000000000000000000000000000000000000a15202d3a46525e6975818e99a4afbbc6d0d9d0c1baada2979183796d675e564e444039302d2a25232220212223282c32373e444c545c606d737f8c929f9a95908b86817d78736e6964615a5044392d2114080000000000000000010c161f2934404b55606a737f8c959faab4bfcad6ded3c6baada2979083786e6e6d6c666a6764615e5653514b45413a3127221b140b030000000000000000000000040f19222b32373b3c4040404040404040404040404040404040404040404040404044505c66707d89939eaab4becad6cec1b8aca0958b7f72685e52463c32261b0f0000000613202d394653606c79849197989b9ea1a9a8abadaea2988d8073695e544a423a352f34383d454f5965727f8c98a5b2bfcbd8d2c5b8ac9f928579675d5145392c2013060000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073665f626b7074797c80828486868786868583817f7c7974706c65605b534e443f382f281f160d040000000000000000000000000714202d3a4753606d7985929ea9b3becacbbfb4aaa09591857c746e6964615e565b5a5a535b6062656c7179818b929999928d857e786f6b615e5751493f352920180f06000000000000000713202d3a4653606d798698a2aebac6d3d5c8bcafa295897c6f625649423b39352f2f2e2f302d3337393c42474c52555d606a6f787f7e716a5f554b40352921170c03000000000000000000000000000000020c16202a343c464e565e666d737b82888e92989b9ea1a8a4a5a6a7a6a6a5a7a09d9996918b837d74707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000020c16202a343c464e565e666d737b82888e92989b9ea1a8a4a5a6a7a6a6a5a7a09d9996918b837d74707c899699999999999999999993877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f63564d4d4d4d4d4d4d4d4d4d4a5153585f666d75818e96a0acbac3ced9d2c5b9ac9f92867a6d6154473a2e211407000000000000000000000009121c262e373f474f575e666d71797f858b8f92999b9ea1a9a3a4a4a4a3aaa29f9c9896918d87817b746e69615a514a423b322921170d0400000000000000000000000000091623303c4956636f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7a6d6054473a2d211407000000000000000000000000000000000000000000000000000009141f2935414c56606d7985919ea8b2bdc9d5dfeae8ded3c6baaea2988d8074695f53463c3123190f0000000000000000000000000000000000000000000000000000000005111e2a36424d56626e7b87939faab4bfcad6d6cabeb3a9a0958f82796d685f58514a423e3a3630302e2d2d2e2e34383d434750565e666d747f8c919ca4a7a09d98928e89847f7b76716c6155493c3023160a000000000000000000040d18232f39434e58606d78839098a2aebac1ccd5d6cabeb3a99f958d80736c60605b545a5754524c46454039352f281f17110a020000000000000000000000000a15202b343d4347494d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a54606b75818e98a2aebac3ced4c8bcb1a79f92857a6d61584e43372b1c1106000005121f2b3744505b6573808d99a4a8abadb2b4b7b9b3aa9f92867b6e665c544b4540413f44464e57606b7683909da9b6c3d0dcd1c4b7aa9e9184776b554b4035291d11040000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d8073666a6f767d8185898d8f91929993999392908e8c8985817c78716c655f585049413a31281f160d030000000000000000000004111d2935414c5565727e8b97a2adbbc5cfc7baaea39891837b6f6a615e5654524c4e4d4d495053535b60676d747e87928f86807a716c666059524d453f3a37312a22180e0300000000000006121f2b3844505c667985929facb8c5d2d7cabdb1a4978a7e716459504745413e3d3c3b3c3d3e3f4446494d53565e61676d747c838c867c6e675d51453e33291e150a00000000000000000000000000000000040e18222a333c444c545c60696e757c81868a8e9196969899999a9999989695908c88847e786f6b707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000000040e18222a333c444c545c60696e757c81868a8e9196969899999a9999989695908c88847e786f6b707d898c8c8c8c8c8c8c8c8c8c8c877a6d6054473a2d211407000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f635a5a5a5a5a5a5a5a5a5a5a545c60636a6f78818e939ea8b2bdccd5d4c8bdb2a89c8f8376685d5246392d2013070000000000000000000000000a141c252d353d454d545c60676d72797f82868a8e91969596979897979698928f8c8884807c756e69615e5750444039302920170f0500000000000000000000000000000915222f3b4854606b6f707070707070707070707070707070707070707070707070707070707070707070707070707070707070707070706d685d5245392c2013060000000000000000000000000000000000000000000000000000020d1924303a45515d67727f8b96a0acb9c3cdd9e4e0d6cabeb3a99f92867a6e61574d42342a20100700000000000000000000000000000000000000000000000000000000020e1925303b47535f6a75818e98a2aebac3ced7cfc5bbb1a79e948f827a6f6a605c54504746423e3c3b3a3a3b3c4045464e545a61686d78808c919ca3adb1acaaa39f9b96918c87827e7164574a3e3124170b0000000000000000000007121d27313c44505c666e7b86929fa5afbac3cfd8cfc5bbb1a79d928a7d70695e544a4d4a4746413b38342e29241d160d0600000000000000000000000000030f1b27323d464e54565a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a59616e7b86929fa7b1bcc8d4cec3baada2978d81746a5f5347382e23170b0000030f1b27333f4953626e7b87939facb6b9bec1c4c5baaea2989082786d665d55514b4e4a5053586069707d89959fabb8c4d1d7cbbfb5ab9b8e8174685b4e412f24180d010000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d80736d747c83898e92979a9c9e9fa3a0a49f9e9d9b9997928e89837d786f6a605b534b433a31281f150b010000000000000000000613202c3945515d6776828f9ca9b3becdcabeb3aa9f92867c6e696058524d4c4c4c4c4c4c4c4c4c4950555d606c717e86827b736d67605b544f4c4c4c4847433c342a20150a00000000000003101c28343f4a546b7885919eabb8c4d1dbcec1b5a89b8e82756b625a54524c4a494848494a4b49505356575f62686e737a808790959083796d605a50453b30261c110600000000000000000000000000000000060f18212a323b424a51575f626a6f757a7e818487898b8c8c8d8d8c8b898784807c78726d6663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000060f18212a323b424a51575f626a6f757a7e818487898b8c8c8d8d8c8b898784807c78726d66616e7b7f7f7f7f7f7f7f7f7f7f7f7f7f796d6053463a2d201307000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c6f67676767676767676767676768666d70747c828e939ea5afbac4ced8cec6b8aca0968b7e7165564c4135291d1105000000000000000000000000020a131b232b333b424a50555c60676d72767a7d818587888a8a8b8a8a898785837f7b77736f6a625f57534d453e342e271e170e0500000000000000000000000000000007131f2c38444f59606364646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464605d564c4135291d110400000000000000000000000000000000000000000000000000000008131e2935404b55606d7984919ea7b1bcc8d4dedacfc6b9ada1978c8073685e52453b3122180e00000000000000000000000000000000000000000000000000000000000009141f2b37434e58616e7b86929fa7b1bcc5d0d7cdc3b9b0a69e9490847c726d66615a54524d4b4948474748494b51535860626c707a828d929ca3adb6bcb8b4aeaca8a19e99938d8174675a4e4134271b0e01000000000000000000010b151f28343f4a545f69717e8b939ea8b2bdc6d1d7cdc2b9aea49f92857b6e665c51443e3b3936302c28231d18130c04000000000000000000000000000006131f2b37434e58606267676767676767676767676767676767676767676767676767676767676769727f8c95a0acb8c5d1d6cabeb3a99f93877c6f62544a3f34281c100300000b17222d3847535f6975818e9aa4afbbc5cfd1cabfb4aa9f948e81786d67605d555a545c60636a6f7b84919ea7b1bcc8d4d3c7bbaea3998a7d7164574a3e31241707000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d807379808790949a9ea1a9a9abacaeb5afacaba9a8a9a29f9a95908a837c736c655d554c433a31271d12070000000000000000000714212d3a4754606d7a86929facb9c5cfc6baaea2988c7f726a5f57595959595959595959595959595959595a626c707b756e69605d5559595959595955534e463c31261a0f020000000000000b17232e43505c6976828f9ca9b6c2d0dbcfc3b6aa9e938a7d716c64605d5657565554555758535b606266696e747a80858d9399a0958d80746c61574d42382e23170e0500000000000000000000000000000000060f182029303940444d53585f62676d7174787a7c7e7f8080807f7e7c7a77736f6a65605c63707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000060f182029303940444d53585f62676d7174787a7c7e7f8080807f7e7c7a77736f6a65605c5f696e737373737373737373737373736d675c5145382c1f1306000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2d5c9bcafa296897c737373737373737373737373747576797d818790949ea5afb7c1ccd6d0c6bcb0a69d9184786d6053463a3024190d010000000000000000000000000001091119202930383f444b51555d6065676d7174787a7c7d7e7e7e7d7c7b7976726e6967625f58534d46423b3328231c150c0500000000000000000000000000000000030f1b27323d474f54565757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575754524c433a2f24190d01000000000000000000000000000000000000000000000000000000020d18242f3944515c66717e8a95a0acb8c2cdd8d5c9bdb2a89e92857a6d60564c4133291f1006000000000000000000000000000000000000000000000000000000000000020f1a26313c46535e69727f8c959fa9b3bec7d2d5ccc1b8b0a69f9691857f79706c65615e5757565553545556545c60646a6f767d858f949da4adb5bfc8c6bfbab9b2aca4999184796d6053473a2d2014070000000000000000000000030d17232e38424d57626c75818e96a0abb4bfcbd7d4cbc0baada2979083786d605a50453b302a251f1c18120d07010000000000000000000000000000000815222e3b4754606a6f73737373737373737373737373737373737373737373737373737373737373737984919daab7c4d0dbcfc5bbafa499908376665c5044382b1f1206000006111b2b37424d57626f7c87939fa9b3becad6d0c5bcb0a69d938e8279726d67686769666d70757c849196a1adb9c2cdd9d0c5b9ac9f92867a6d6054473a2d211407000000000000000000000000111d2a3744505d6a7783909daab6c3d0ccc0b3a6998d807a828d93999fa6abadb3b5b7b9bbbfbbb9b8b6b4b3adaba7a09d9590877f776d675d564c43392f23180f0500000000000000000b1724313e4a5764717d8a99a3aebbc7d2c5b8ab9f9285796d66666666666666666666666666666666666666666666696e696666666666666666666666625f584e43372b1f1206000000000000061a2734404d5a6773808d9aaab4bfcad6d2c6baafa59f92877e76716d68666463626162636566656c6f73767b81868c92979fa4a79d928a7e71695e544a3f342820170d0200000000000000000000000000000000060e171e272e343c42474e53555d606468686e6f71727374737372706e6966625f58535663707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000000000000060e171e272e343c42474e53555d606468686e6f71727374737372706e6966625f585350575f6166666666666666666666666666605c554b4034281c1004000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dbcec1b4a89b8e8180808080808080808080808080828385898e92999fa6afb7c1c9d3d2c7bdb4aa9f948a7d70665c504438281e130800000000000000000000000000000000070e171e262e343940454b5153555d606468676d6f7071717170706e6c6565625f5755534e47423c3631292118120b030000000000000000000000000000000000000a16212b353d4448494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4745413a31281e1308000000000000000000000000000000000000000000000000000000000007121d2834404a54606c7883909da6b0bbc7d3d2c5b9ada1968c7f72675d51443b3021170d00000000000000000000000000000000000000000000000000000000000000000915202a36424d57606d78839097a2acb6c0ccd8d3cac1b8b0a8a098928b847d76726e69666463616060616365666d71767c828a92979ea6aeb6bfc7d4d1cbc2b9b0a69f93877d6f675d5145392c20130600000000000000000000000006111c26303c45505a606d79849199a3aebac1ccd6d6cabeb3a99f958d80746c61574d42392e2318100c070000000000000000000000000000000000000916232f3c4956626f7c808080808080808080808080808080808080808080808080808080808080808080828f9ca9b6c2cfdcd7ccc0b5ab9f9486796d6053463a2d2013070000000e1a26313c47535f6a75818e97a1adb9c1cbd5cec2b8afa59d948f857f797775747577797d81889196a1a9b2bdcbd4d2c7beb0a69c8f8276675d5145392c201306000000000000000000000000111d2a3744505d6a7783909daab6c3d0cdc0b4a79a8d808390959fa4abb0b8b9bec2c4c5c7cbc7c6c5c3c1bebab8b1aca79f99928c82796d685d554b40342921170d03000000000000000d1a2633404d596673808c99abb5bfcbcec1b4a79b8e8174727272727272727272727272727272727272727272727272727272727272727272727272726e6a5f53473a2e2114080000000000000a1724313d4a5764707d8a98a2aebac7d2d7ccc1bbaea399928b837d7a767371706f6e6f70717375787c7f83878e92989fa2a9afaea49f92857b6e665c50443d32291e13080000000000000000000000000000000000050c151c232831373c43474b515357565e61636566666766666563615e5655534e495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000050c151c232831373c43474b515357565e61636566666766666563615e5655534e46444d53555959595959595959595959595953514b43392e23180c00000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfcfc2b6aa9e938e8d8d8d8d8d8d8d8d8d8d8d8d8d8e9092979b9fa3abb0b8c1c9d2d1cbc0b5aba2989082766c61544a3f3428160c020000000000000000000000000000000000050c141c23282e343a4045474c515457555d606263646564646361605b5355534d4847433c37312a251f170f070000000000000000000000000000000000000000040f19232b32383b3c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a39352f281f160c010000000000000000000000000000000000000000000000000000000000010c18232e3944505b65707d8a949fabb7c1d0c8bcb1a79e9184796d60554c4132291e0f060000000000000000000000000000000000000000000000000000000000000000030e1a25313b44505c666e7b85929aa4afbbc0c9d7d3cbc2bab2aaa29f96918a837f7b7673716f6e6d6d6e6f7275797d82898f949ea1a9b0b8c0c8d1d4ccc3bab1a79e948d80736b60554b4035291d1004000000000000000000000000000a141e2a333f45515d676f7c86929fa5afbac4cfd9d0c5bbb1a79d928a7e70695e544b40342821170c030000000000000000000000000000000000000b1825323e4b5865717e8b8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8f949fabb7c3d0ddddd2c7bdb0a69386796d6053463a2d2013070000000915202b37434e58616d7a85929ea6b0b9c3cdd4cbc0b7afa69e97918c85838181828485898e939aa1a8b2bbc4cfd8ccc0b6ac9e94897c6f63554c4135291d1104000000000000000000000000111d2a3744505d6a7783909daab6c3d0d2c6b9ac9f938790959fa7afb5bdc2c6c5c4c3c2c3c4c5c7cad0d0cac6c3bcb8b1aba39f948f837a6d675c51453e33291f1409000000000000020f1c2935424f5c6875828f9ba8b5c2d1cec1b5a89b8e817f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7c6e6255483b2f2215080000000000000714202d3a4753606d7985929fabb5c0ccd7d7cbbfb5aba39f95908a8683807d7c7b7b7c7d7e7f8185898c9093999fa3aaadb3bbbaada2979083786d60594f443a3025190d010000000000000000000000000000000000030b121820262b32373a4045474b4d5254565859595a5a59585654524d494743495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000000000030b121820262b32373a4045474b4d5254565859595a5a59585654524d4947433c3b4246484c4c4c4c4c4c4c4c4c4c4c4c4c4645403930271d120700000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd2c6baafa59e9b9a9a9a9a9a9a9a9a9a9a9a9a9a9b9c9fa2a9acafb5bdc2cad2cfc6bfbbafa49992867c6f625a5042382e23170400000000000000000000000000000000000000020a11171d23282f35393a4145474a4b515455575758575756545350494847423c3a37312b261f1a140d050000000000000000000000000000000000000000000007111921272c2f30313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131312d2c29241e160d040000000000000000000000000000000000000000000000000000000000000007121c27333f4953616b7683909ca6b0bdc7c5b8aca0958b7e71675c51433a2f20170d0000000000000000000000000000000000000000000000000000000000000000000009141f28343f4a545f69707d88939fa4aeb7c0cbd1d4ccc4bcb3aea8a09d95908b87837f7e7c7b7a7a7b7c7f82858a8f949c9fa6adb3bbc2cad2d7cbc2bab2a89f958f82786d60594f43392f24180d0100000000000000000000000000020c18212935414b555f6a727f8b939ea8b2bdc7d1d7cdc2b9aea49f92857b6e665c51453e33291e150b0000000000000000000000000000000000000b1825323e4b5865717e8b989a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9c9fa6b0bbc7d3dfe3d9d0b9aca09386796d6053463a2d201307000000030f1b26313c46525e68717e8b949ea7b1bbc4ced2c9c0b8b0a9a19e9892908e8d8f9092989b9fa4acb2bac4cdd5ccc3bbafa49a8f82756b6054433a2f24190d01000000000000000000000000111d2a3744505d6a7783909daab6c3d0d4c7bbafa49993999fa7b1bbc0c5bfbab9b7b6b5b6b7b8babfc4c5c8cecec8c2bdb5afa69e959083796d605a50453b31251a0e04000000000003101c28343f4a546b7784919eaab7c4d1cfc3b6aa9e938e8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8b7e7165584b3e3225180b00000000000006131f2c3845515d6774818e99a4afbbc4cfd9d1c6bdb5aea79f9d9992908c8a898887888a8b8c8e9297999d9fa4abaeb4babec5beb3a99f958d80736b60564c41362a1e110500000000000000000000000000000000000000070c151a20262b2f35393a3e414647494b4c4d4d4d4c4b494746423c3b3d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000070c151a20262b2f35393a3e414647494b4c4d4d4d4c4b494746423c3b373231363a3b404040404040404040404040403a38342e271e150b0000000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfd7ccc1b7afaaa8a6a6a6a6a6a6a6a6a6a6a6a6a7a8a9abadb3b9bbc0c7cfd4ccc4bdb5aea49f93877e706a5f53473e30261c1106000000000000000000000000000000000000000000060b12181d24292c2f35393a3e414547494a4b4b4b4a494746443f3b3a37312e2b26201a150e0903000000000000000000000000000000000000000000000000070f161b1f22232424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242421201d19130c040000000000000000000000000000000000000000000000000000000000000000000b17222d38414f59636f7c89949eabb5c0bcb1a79d9184786d60554b4031281e0e0500000000000000000000000000000000000000000000000000000000000000000000030b17232e38424d57616c737f8c929da5aebbc0c7cfd6cec5bebab2aca79f9d9a93908c8a8988868788898b8e92979c9ea6abb0b9bec5cdd3d1cbc1b9b1a8a0969083796d665c50473d31281d1207000000000000000000000000000000060f18242f3a434e58626d75818f96a1abb5c0cbd7d4cbc0baada2979083786d605a50453b30271d120700000000000000000000000000000000000b1825323e4b5865717e8b98a4a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a9abb0b8c2ccd8e3ebd3c6b9aca09386796d6053463a2d201307000000000a15202a36414c56616c75828f95a0a9b3bcc4ccd8cac1bbb3adaaa29f9d9b9a9c9d9fa2aaacafb6bec4ccd7cbc3bab0a69f93877c6f62594f4331281e130800000000000000000000000000111d2a3744505d6a7783909daab6c3d0d7ccc0b5aba49fa4abb1b9beb9b8b4aeacabaaa9a9aaacaeb4b7b9bdc3c9cfcfc7c0bbb0a79f958d80746c61574d42362a20160a000000000006121f2c3844505c667985929facb8c5d2d2c6baafa59e9b999999999999999999999999999999999999999999999999999999999999999999999999988b7f7265584c3f3225190c00000000000004101d2935404b55626e7c87939fa9b3bdc7d0d8cfc6bfbbb1ababa39f9d9997969594959698999b9ea1a9a9acafb5babfc6cacfc5bbb1a79f93887d70685e5246392d201307000000000000000000000000000000000000000003090e151b1d24292c2d3036393b3c3e3f404140403f3d3b3a3630303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000003090e151b1d24292c2d3036393b3c3e3f404140403f3d3b3a36302e2b26262a2d2e333333333333333333333333332d2c28231d150c030000000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2dfddd3c9c1bab6b4b3b3b3b3b3b3b3b3b3b3b3b3b3b5b6b8babec5c7cbd1ccc8c1bab2aba39f928c7f726c61584e43352c1e150a000000000000000000000000000000000000000000000000070c13181d2024292c2d2f35393a3c3d3e3e3e3d3d3b3937332d2e2b26211f1b150e0903000000000000000000000000000000000000000000000000000000040a0f131516171717171717171717171717171717171717171717171717171717171717171717171717171717171717171717171413110d08010000000000000000000000000000000000000000000000000000000000000000000006111b262f3e4854606b75828f99a4afbbb8ab9f958a7d70665c5043392f1f160c00000000000000000000000000000000000000000000000000000000000000000000000006111c26303c454f59636d74808d939ca4afb5bdc4cdd5d0cac3bdb8b1abaca49f9d9997969493939496989b9ea2a9aab0b7bbc2c9cfd7cfc7c0bbafa79f9691847a6d675d544a3f352b1f160c010000000000000000000000000000000007131d28313c46515b606d7a849199a3afbbc2cdd6d6cabeb3a99f958d80746c61574d42392e23180f06000000000000000000000000000000000b1825323e4b5865717e8b98a4b1b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b6b7bbc2cad4deeadfd3c6b9aca09386796d6053463a2d20130700000000040d1925303a44505a606d79839097a1aab2bac2ccd2cdc4beb9b4aeacaaa8a7a8aaabaeb4b9bbc0c7d0d2ccc1b9b1a89e948d80736a5f53463d321f160c0100000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd2c7bdb5afacafb5bdbab3adababa39f9e9d9c9d9e9fa2aaaaacb2b9bec4cdd1cbc1b9b1a79d928a7e71695e53463d32271b0f03000000000713202d3a4653606d798698a3aebac7d3d7ccc1b7afaaa8a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5998c7f7266594c3f3326190c000000000000000c18242f3947535f6a75818e97a1abb5bec6cfd7d1cbc2bcb8b5afaca9a6a4a3a2a1a2a3a4a6a8abadb3b6b9bbc0c7cbd1d6d1cbc2bbafa49a91857a6d6154473a2e21140700000000000000000000000000000000000000000000040a0f13181d2020252a2d2e3032333334333332302e2d2a25303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000040a0f13181d2020252a2d2e3032333334333332302e2d2a25211f1b1a1e212226262626262626262626262626201f1c18120b03000000000b1824313e4b5764717e8a97a4b1bdcad7d1c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d2ddddddd3ccc6c2c1c0c0c0c0c0c0c0c0c0c0c0c0c0c1c3c5c6cad0d1cbc7c0bbb9afa8a199928c80746d625a50463c32231a0c030000000000000000000000000000000000000000000000000001070d1113191d202124292c2d2f3031323131302e2d2b2722211e1a15120f0a0400000000000000000000000000000000000000000000000000000000000000030709090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a07060401000000000000000000000000000000000000000000000000000000000000000000000000000a141d2c38434f59626f7c87939fabb4b0a69d9083766c61544a3f31271d0d04000000000000000000000000000000000000000000000000000000000000000000000000000a141e2a333e47525b606c77818d929fa3abb2bbc1c9ced6cec8c2bcb8b6afaca9a6a4a2a1a0a0a1a2a5a8abadb3b7bbc2c7ccd5d1cbc3bdb5afa59e9590847b6e685e554b42382e23190d040000000000000000000000000000000000010c161f2a343f45525d686f7c87929fa6b0bbc4d0d9d0c5bbb1a79d928a7e70695f544b40342821180c030000000000000000000000000000000b1825323e4b5865717e8b98a4b1bec0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c2c3c7ccd4dedededed3c6b9aca09386796d6053463a2d201307000000000008131e29323e45515d676e7b859198a1a8b1bbc0c7d0cfc9c6bfbab8b6b4b4b5b7b8babec5c8ccd2ccc7c0bbafa7a0958f82786c60584e43342b210d040000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd9d0c7c0bbb9bbbcb4aea9a19e9a999291908f90919298999ea0a8adb2bbc2cad7cbc2b9aea49f92857b6e61584e43372b201509000000000714212d3a4754606d7a8793aab4bfcbd6ddd3c9c1bab6b5b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a6998c807366594d4033261a0d0000000000000007121d2b37434e58616d7a859199a3acb4bdc4cbd1d6cdc8c7c0bbb9b6b3b0afaeaeafb0b1b2b4b8b9bec3c6c7ccd2d6d2ccc7c0bbb2ada59e978f8276695c4f4336291c1003000000000000000000000000000000000000000000000001070d111314191e202123252626272726252321201e23303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000001070d111314191e202123252626272726252321201e1915130f0e121415191919191919191919191919191313100c070000000000000b1824313e4b5764717e8a97a4b1bdcad0d0c4b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c5d0d0d0d0d0d0d0d0cecdcdcdcdcdcdcdcdcdcdcdcdcdcececdcec8c5c3c0bbb6afaca59e9691877f746e645b51483e342a201108000000000000000000000000000000000000000000000000000000000104080d111314181d20212224242524242321201f1b1714120e09060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b1b27323d47535f6a74818e99a3aeac9f94897d70635a5042382e1f150b0000000000000000000000000000000000000000000000000000000000000000000000000000020c18212c354044505b656c77808b9299a1a9afb9bdc4cad0d4cdc7c7c0bbb9b6b2b1afaeadadaeafb2b5b8b9bec5c7ccd3d2ccc7c0bbb1aba39f938f837a6e695f564c433930261c110700000000000000000000000000000000000000040d19222935414c56606b727f8c949fa9b3bdc7d2d7cdc2b9aea49f92857b6e665c51453e33291e150b0000000000000000000000000000000b1825323e4b5865717e8b98a4b1becbcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcfd1d1d1d1d1d1d1d1d1c6b9aca09386796d6053463a2d2013070000000000020d17202935414b555e696f7c8691969fa7afb6bec2c9ced0cac6c5c3c1c0c2c3c5c6cad0d2ccc7c0bbb5afa59e959083796d665b50463c3222190f000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde2d9d2ccc7c2bab2aaa29f97928d8986848382838485898d91969ea1a9b0b8c1c9d3cbc0baada2978f82766a6054473c31261a0f000000000815212e3b4854616e7b8794a1aebad0dce7dbd3ccc6c3c1bababababababababababababababababababababababababfbfbfbfbfbfbfbfbfbfb3a69a8d8073675a4d4034271a0d00000000000000010f1a26313c46525e68707d87929aa3abb2bbc0c7cbd0d4d1cbc7c5c3bfbdbcbbbabbbdbebfc1c5c6c9cfd2d4d3d0cac7c0bbb5afa9a19e938e857e7064574a3d3124170a0000000000000000000000000000000000000000000000000000010406080e1114141618191a1a1a19181614141623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000010406080e1114141618191a1a1a1918161414110e090603020507080d0d0d0d0d0d0d0d0d0d0d0d0d07060400000000000000000b1824313e4b5764717e8a97a4b1bdc3c3c3c3b7aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb9c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c2c2c0bfbcb8b7b5afaca49f9b938f847c726d645c52493f362c22180e0000000000000000000000000000000000000000000000000000000000000000010406070d111314161718181817161413120f0b0606020000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080b0e0f10100e0c080705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16212b37434e58616e7b86929faaa49a8f82766b6054483e30261c0d03000000000000000000000000000000000000000000000000000000000000000000000000000000060f1a2327333f49535b656c737f8791969ea5acb2babfc5c9cfd3d2ccc8c6c3bfbdbcbbb9babbbcbec1c5c6cacfd3d2ccc7c0bbb5afa7a099928c81796d685f574d443a31271e140a00000000000000000000000000000000000000000007101924303a444f59606c77828f97a1abb5c0ccd7d4cbc0baada2979083786d605a50453b30271d120700000000000000000000000000000b1825323e4b5865717e8b98a4b1bec4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4b9aca09386796d6053463a2d201307000000000000050e18242f3a434d57606a6f7c8490959fa4acb1b9bdc4c6cacfcfd0cecdcfcfcecfcac6c5c0bbb6afaba49f938f837b6e675d544a3f342a201007000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddebe2d6cdc2b9b1a8a098928c85807d797877767677797c80848b91979fa6afb7c1cbd6cabeb3a99f94897c6f62584e43372b1b11060000000714212e3a4754616d7a8794aab4bfcbd6ded4cac2bbb7b6adadadadadadadadadadadadadadadadadadadadadadadadb6b7bbc2caccccccccc0b4a79a8d8174675a4e4134271b0e00000000000000000a15202a36414c56606b717e889299a1a8afb5babfc6c8ced2d3d2d0cccac9c8c7c8c9cbccced1d2d3d2d1cbc7c5bfbab6afaba39f96918a817a706c6155493c3023160a00000000000000000000000000000000000000000000000000000000000002050708090b0c0d0e0d0d0c0a080a1623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000002050708090b0c0d0e0d0d0c0a08070502000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4b1b6b6b6b6b6b6aa9e9184776b5e5144382b1e110013202c3946535f6c7986929facb6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b5b5b3b2b1acaaaba39f9a938f89827a6f6a625b524a41372d241a100600000000000000000000000000000000000000000000000000000000000000000000000001040607090a0b0b0b0a0a080605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080e111414181b1c1d1c1b191514120e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1b26313c46535e6974808d98a29f93877c6f62594f44362c1e140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000081117222d384149535b606d727d848f939ea1a8aeb4b9bec5c7cbd1d2d2d0cccac9c7c6c6c7c9cbced1d2d2cdc8c7c0bbb5afaba39f95918780786d675e564d453b32291f150c020000000000000000000000000000000000000000000008131e28323d44505b656d7a859199a4afbbc2cdd1d1cabeb3a99f958d80746c61574d42392e23180e05000000000000000000000000000b1825323e4b5865717e8b98a4b1b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7aca09386796d6053463a2d2013070000000000000007131d28313b454e58606a6f7a838e939a9fa7acb2b8b9bec0c2c3c4c4c3c3c2c0bebab8b6afaca49f99938c81796e695e554c42382d22180e00000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde4d9d0c4bbb1a79f9691867f7a74706d676a696a666c6f73797e848f949ea5afb9c2ced0c5bbb0a69b8f82756a5f5347382d22170b0000000713202d3a4653606d798698a3aebac7d3d8cdc2b8b0aba9a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a9abb0b8c2ccd8d8cdc0b3a69a8d8073675a4d4034271a0d0000000000000000030d1925303a444f59626c717e8791969fa3abaeb4b8bdc2c5c6cad0cdcdcecfcfcfcfcececdd1cbc7c5c3bfbbb9b4aeaca49f99928d847d756d68615a5044392d20140800000000000000000000000000000000000000000000000000000000000000000000000000000100000000000a1623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313e4b5764717e8a97a4aaaaaaaaaaaaaaaa9e9184776b5e5144382b1e110013202c3946535f6c7986929faaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9a9a8a7a5a7a09d9a99928e87827c756d686058514941382f251b1108000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f14191e20212528292a29282521211e1a140f0b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a36424d57616d7a86929f998e81756a5f54473d32241a0c0200000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f384149505b626b707a828a91969fa2aaadb3b9bbc0c4c5c9cfcdcfcfd0d1d0cfcecdd0cac6c5c2bcb8b5afaba49f99928d837c736c665d554c443b332920170d030000000000000000000000000000000000000000000000020c162027333f49535e68707d87939fa6b0bbc4c4c4c4c4bbb1a79d928a7e70695f544b40342820170d020000000000000000000000000b1825323e4b5865717e8b98a4abababababababababababababababababababababababababababababababababababababababababababa09386796d6053463a2d20130700000000000000010c161f29333c464e585f686e79818790959ea1a8abadb3b3b5b6b7b7b7b6b5b3b3adabaca49f9a938e877f776d675e574d433a2f261c100600000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddddd2c7beb2a99f9590847b736d6763605c555c545b6063666d717a828e939ea7b1bcc5d0cdc2b9ac9f93877b6e6253493f33271b0f03000006121f2c3844515c667985929facb8c5d2d3c7bbb0a69f9c9393939393939393939393939393939393939393939393939c9fa6b0bbc7d3d8ccbfb2a5998c7f7266594c3f3326190c00000000000000000008131e28323d47505a626c717d848d92999fa3aaacb2b5b8babebec0c1c1c2c2c3c2c2c1c0bfc0bbb9b6b5aeacaaa29f9a938e87817a706b615d5650483e33281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d3c6baada093877a6d6054473a2d211407000000000001060b0f11121313131313131313131313130d0c0a07020000000000000000000002060a0c0d131313131313131313131313130a0907040000000000000000000000000000000b1824313e4b5764717e8a979d9d9d9d9d9d9d9d9d9d9184776b5e5144382b1e110013202c3946535f6c7986929d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9c9c9b9a989795908d8a86817c756f6a615d564e463f372f261d130900000000000000000000000000000002050708121313131313131313131313131313131006050300000000000000000000000002070b0d0d131313131313131313131313131313130b0a08050000000000000000000000000000000001070c151b1e252a2d2e323436373635322e2d2a251f1b160d070100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e1a25313b46525e6873808c9792877b6e61584e43352b21110800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262f383f44515960686d757e848c92989ea1a9acafb5b7b9bdbfc0c2c3c3c4c3c2c2c1c0bebab8b6b1acaba49f99938e8780796f6a605b544b433a322921180e0500000000000000000000000000000000000000000000000000040e17222d38414c56606b73808c949fa9b3b7b7b7b7b7b7b7aea49f92857b6e665c51453e32291e13080000000000000000000000000b1825323e4b5865717e8b989e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9386796d6053463a2d2013070000000000000000040d17212b343c464e565e676d747c838a91969b9ea2a9a7a9a9aaaaaaa9a8a7a9a29f9b9a938f87817c736c655d554d453b31281d140a0000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd8ccc0b6aca19790827a6e69605d5553514b4f4a5053545c60686d78818e959faab3becad4c8bbafa49a8e8174655b5044372b1f1205000004101c2834404a546b7884919eabb7c4d1d0c4b7ab9f94908787878787878787878787878787878787878787878787878f949fabb7c3d0d8ccc0b6ac978b7e7164584b3e3125180b000000000000000000020c16202c353e48505a616b6f7a81878d92989da0a8a8abadb3b1b3b4b4b5b6b6b5b5b4b3b2b5afacaaaba39f9c98928d87817b746d686159524c443e362c22170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc6c6c6baada093877a6d6054473a2d21140700000000040c12171b1d1e2020202020202020202020201a1917130e080000000000000000070d1216181920202020202020202020202020171614100b05000000000000000000000000000b1824313e4b5764717e8a90909090909090909090909084776b5e5144382b1e110013202c3946535f6c79869090909090909090909090909090909090909090909090909090908f8f8d8c8a8784807d7a756f6a626058524c443d342d251d140b010000000000000000000000000003090e1214151f2020202020202020202020202020201c13120f0b06000000000000000000080e1317191a20202020202020202020202020202020171714110c0500000000000000000000000000030b121820272b3036393b3e41424343413f3b3a36312c272118130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36414c56606d7a85928d8174695f53463c3223190f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141d262d333f474f565e616c717980868c92979c9fa3ababadb2b2b4b5b6b6b7b7b6b5b4b3b3aeaba9a7a09d99938e87817b736d676058504a4239312820180f0600000000000000000000000000000000000000000000000000000006111b262f3a444f59606d78829097a1ababababababababababa2979083786d605a50443a3025190d0100000000000000000000000b1825323e4b5865717e8b919191919191919191919191919191919191919191919191919191919191919191919191919191919191919191919186796d6053463a2d201307000000000000000000050f19222b343c444c555d606a6f787e84898e9297989a9c9d9d9e9d9c9b9a9897928e8b87827c756e6a605b534b433b33291f160b020000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd4c8bbafa49a91857a6e685f57514b464540433f44464a50565d666d78839098a2aebac6d0ccc0b6ac9e9285786c605346392d2013060000000c18232e424f5c6975828f9ca8b5c2d1cfc3b6a99c90827a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a828f9ca9b6c2cfd4c8bbafa49a897c6f6256493c2f23160900000000000000000000050e1a232d363e48505960676d747b80868c9196989c9fa2a9a4a6a7a8a8a9a9a9a8a8a7a5aba39f9d9a99928f8b85817b756e69605d564f46413a322c241a10050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afb9b9b9b9b9ada093877a6d6054473a2d211407000000060e161d23272a2b2d2d2d2d2d2d2d2d2d2d2d2d2726231f19120a0200000000010a12191e2225262d2d2d2d2d2d2d2d2d2d2d2d2d2423201c1610080000000000000000000000000a1724303d4a5763707d838383838383838383838383838275685c4f4235291c0f00101d2a3743505d6a76838383838383838383838383838383838383838383838383838383838282807f7d7a7774706d67625f58544e46413a322b221b130b0200000000000000000000000000060d141a1e21222c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d29201f1b17110a020000000000020a12191f2326272d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2423211c1710080000000000000000000000050d151d232932373b4146474b4e4f504f4e4c4846423b383229241d160d05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d1925303a45515d67727f8c867b6e61574d42342a20110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b2227353d444c525a61676d737a7f858a8f92999b9ea1a8a5a7a8a9aaaaaaa9a8a7a6aaa29f9c9995908c87817b756e69605c554e443f382f271f160e0600000000000000000000000000000000000000000000000000000000000a141d29323d44505c666e7b85929e9e9e9e9e9e9e9e9e9e9e9e9e958d80746c61564c41362a1e110500000000000000000000000b1724313e4a5764717e84848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484848484786d6053463a2d20130700000000000000000000071019222a323b434b515860656c71787d8185898b8d8f90919190908f8d8b8985827e7b756f6a625f585049413a312921170d04000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd2c6b9ac9f93887d6f685e564d45403a38342e3338393f444c545c666e7b85929faab4bfcbd2c7b9ada197887c6f6255483c2f221507000000071a2733404d5a6673808d99abb5c0cbd2c5b8ab9f9285796d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d7985929fabb8c5d2d2c6b9ac9f93867a6d6053473a2d201407000000000000000000000008111b242d363e474f555d60696e747a8084888b8f929796989a9a9b9c9c9c9c9b9b9a98979992908d8a86827e7a746e6a625f57524c443e353028201a1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3adadadadadadada093877a6d6054473a2d2114070000040e1820282e33373839393939393939393939393933322f2a241c140a000000000a131c232a2f323339393939393939393939393939302f2c28211a110800000000000000000000000916232f3c4855616b7077777777777777777777777777756f65594d4134281b0e00101c2936424e5b66717677777777777777777777777777777777777777777777777777777676757472706e686763605d55534e47433d353028201910090100000000000000000000000000060f181f262a2d2e39393939393939393939393939393939362d2b27221b140b02000000000a141c242a2f33343939393939393939393939393939393931302d28221a1208000000000000000000050e171f272f343d43474c5254585b5c5d5c5b5854534d48443d352f281f170f0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2935414b55606d79848073695e52453c3122190e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a1117232b323a414650555d60686d73797e82868b8e919696989a9c9c9d9e9d9c9b9a999798928f8c88837f7b756e6a625f57514b433c332d261d150d05000000000000000000000000000000000000000000000000000000000000020b172028343f4a545e69707d8a9191919191919191919191919191918a7e71685e5246392d20130700000000000000000000000a1723303d4955616c71787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878787878786d665c5044382b1f120600000000000000000000000710182029313940454e535b60666c7075797c7e8082838484848382807f7c7975716e69625f58534e443f382f281f170f0500000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d4c8bcb1a79b8f82756b60564c443c352f2c2823282b2e343a424b545e6973808d98a3aebac7d3c9beb3a9988b7f7265584c3f2f24180d0100000b1724313e4a5764717d8a99a3afbbc7d3c6baada2978a7d706360606060606060606060606060606060606065707d8a97a2adbac6d3d0c4b7aa9d918477675d5145392c20130600000000000000000000000009121b242d353d434c51575e61686d73777b7f828587898b8d8e8e8f8f908f8f8e8d8c8a888683817e7a76726d67625f58534d45413a3229241e160e0800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a0a0a0a0a0a0a0a0a093877a6d6054473a2d21140700010c16202a323a3f4345464646464646464646464646403f3b352e261c1208000007121c252e353b3e40464646464646464646464646463d3c38332c231a1005000000000000000000000714202c38444f5961636a6a6a6a6a6a6a6a6a6a6a6a6a68655d54493d3125190c000d1a26323e4a555f666a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a696968676564615e565754514c47433c373229241e160e070000000000000000000000000000030d18212931363a3b45464646464646464646464646464646433937332d261d140a00000007111c262e363b3f40464646464646464646464646464646463e3c39332c241a100500000000000000040d172029313940454e54565e616567696a696865615e57544f45403a312921170d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18242f3a45515c67707d7a6d60564d42332a1f10070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061119202830353e434b51565d60676d71757a7e8184878a8c8d8f909091908f8f8e8d8a888583807b77726e69625f57534d4540393128221c140b030000000000000000000000000000000000000000000000000000000000000000050e17232e38424d57616b738084848484848484848484848484848484837a6d6154473a2e21140700000000000000000000000814212d3945505a61646b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b605c544a3f34281c1003000000000000000000000000060e171f272f353d414950545b6063666c6f72747676777777767574726f6c6665615e57534e47433c332d261d160d050000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d1c5b8aca095897c6f62594f443b3229241f1c181c1f23283039424d57616d7a86929facb8c5d2cfc2b5a89c8f827569554b4135291d110400000714212d3a4754606d7a86929facb9c5d0cabeb3a99c9083766d6259545454545454545454545454545459606c7883909da9b3becad5c9bdb2a89a8d807367554b4035291d11040000000000000000000000000009121b232b313a41454d53565e6166696e7275787a7c7e808181828383828281807f7d7c7a7774716d6865605d55534e47423c352f282019130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c899393939393939393939393877a6d6054473a2d2114070006121d28323c444b50515353535353535353535353534d4b4740382e24190e02020d19232e3740464b4c535353535353535353535353534a48443e352c21160b0000000000000000000004101c28333e474f55575d5d5d5d5d5d5d5d5d5d5d5d5d5c59544b42372c211509000a16222d38434d555b5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5c5c5a595754524c4a4745413a37312b272019130c0400000000000000000000000000000009141f29333b424648525353535353535353535353535353534f46443f382f261b110600040d19232e3840474b4d535353535353535353535353535353534a49453e362c22170c000000000000010c161f29323b434b51586062686e717475767674726e69636059514b433b332920160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d2834404b55616c706d685d52443b3021180e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e161e2529313940454c52555d6064686d7174787b7d7f818283838484838281807e7b7976736e6a65615e57534e47423c342f271f17110a020000000000000000000000000000000000000000000000000000000000000000000006111c26303b454f59636e7378787878787878787878787878787878776d685e5246392d201307000000000000000000000005111d28333e485055575e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e53504a42382e23170b0000000000000000000000000000050d151d24292f383f444a5053545b60626567696a6a6b6a6968676562605b5454524d47433c373127221b140b04000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d0c3b7aa9d9084776a6054473d3229201813100c0f12171e27303b46525e6875828e9ba8b5c1d2d2c5b8ab9f928578675d5145392c20130600000713202c3945525d6876838f9ca9b3becad0c5b7ab9f948b7f726b615a524d47474747474747474b5159606b727f8b959fabbbc5cfd2c5b9ada196897d706356493d2f24180d0100000000000000000000000000000910191f282f353b42464c5254575f616569686d6f717374757576767675757472706f6d676764605d5654514c47433c373129241e160d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707d868686868686868686868686867a6d6054473a2d211407000b17232e3a444e565c5e6060606060606060606060605a58524a40352a1f130706121e2a3540495157596060606060606060606060606057554f473e33281c1004000000000000000000000b16212c353e44484a505050505050505050505050504f4d49423930261b10040005111c27313a434a4e505050505050505050505050505050505050505050505050505050504f4f4d4c4a4746413d3a39352f2b26201b150d0802000000000000000000000000000000020e1a26313b454d53555f6060606060606060606060606060605c53504941382d22170c030c161f2b35404a52585a60606060606060606060606060606060575550483e33281c1105000000000007131d28313b444d555c606a6f767a7e81828382817f7b766f6b605d554d453b32281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232e3943505a6164605d564c4132291f0f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191f272f353a41454b5153565e616568696e707274757677777776757473716e6c6566625f5854524d47423c373129231d150d06000000000000000000000000000000000000000000000000000000000000000000000000000a141e29333e47525c63666b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6a615e564c41362a1e11050000000000000000000000000c17222c363e45494a5151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515151515146443f3830261c1106000000000000000000000000000000030b12181d262d33383f44464a505356585a5c5d5e5e5d5d5c5a585653504a4846423b37312b262017110a0200000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0cdc0b3a69a8d807367584e43352b20170e07040003060c151e2a36414c5665727e8b98acb6c0ccd3c6baaea298877a6d6054473a2d211407000004111d2935414c5665727f8b97a2adbac5cfc7bbb0a69f92867d716c615e5653514b4d4d4d4d52555d606b707d86929fa7b1bccdd6cabfb4aa9e9184796d6053463a2d20130700000000000000000000000000000000070d161e242931363a4146474d535558565e61636567676869696969686867656462605d555754524c4745413a37312b261f19130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d787a7a7a7a7a7a7a7a7a7a7a7a7976685d5245392c201306000f1b27333f4b5660686b6c6c6c6c6c6c6c6c6c6c6c6c66635c52473b2f23170a0a16222f3b46515b63666c6c6c6c6c6c6c6c6c6c6c6c6c6361594f44382c2014070000000000000000000005101a232c33383c3d4444444444444444444444444442413d3730271e14090000000a151f2831383e42434444444444444444444444444444444444444444444444444444434342413f3d3b3936302d2c29241e1b150f0a04000000000000000000000000000000000005121e2a36424d575f616c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c69605b53493f33271e150b131d28313d47525c64676c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5045392d21140800000000010d18242f3a434d565e676d747c82878b8e8f908f8e8b87837d756d675e574d443a2f24190d05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303e4850555754524c443a3020170d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d151d24293035394045474c525458575e6163656769696a6b6a696867666462605b5355534e4846423b37312b261f18120b030000000000000000000000000000000000000000000000000000000000000000000000000000020c17212c35404a52585a5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5d54524c443a3025190d0100000000000000000000000005101a242c33393d3e454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545454545453a38342e261e140a000000000000000000000000000000000001070b141b22272d3338393f4446494b4d4f50515151504f4d4c4946443f3b3a36302b26201a150b06000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c9bdb0a3968a7d7063574a3d3224190e050000000000030c1925303b4855626e7b889aa4afbbc8d4cabeb3aa94887b6e6155483b2e2215080000010d1924303a4753606d7a85929fa9b3becacdc2baaea29892867e756e6863605d555a595a575e61676d737d869298a3aeb9c2cdd0c7baaea2988c7f73665c5044382b1f12060000000000000000000000000000000000040c13191f252a3036393b4246484b4c525456585a5b5b5c5c5d5c5c5b5a59575553514b4b4745413a39352f2b26201a150d08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c666d6d6d6d6d6d6d6d6d6d6d6d6d6d675d564c4135291d110400111d2a3743505c687278797979797979797979797979736e63584b3f3226190c0c1825323e4b57636d7379797979797979797979797979706b6155483c2f231609000000000000000000000008111a21282c2f30373737373737373737373737373534312c261e150c02000000030d161f272d32363737373737373737373737373737373737373737373737373737373636353432312e2d2a2521201d19130f0a03000000000000000000000000000000000000000714212d3a46535f696e78797979797979797979797979797979766c655b50443c30271d1218242f3a434f59646e7379797979797979797979797979797979716c6155493c3023170a0000000004111d2935414b555e696e7981898f939a9a9c9d9c9b9894908981796e695e564c41352921160b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e2c363e44494a4745413a32281e0e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181e24292f35383a4146474b4d535457595a5c5d5d5e5d5c5c5b5a57555350494847433c3a36302b26201a150c070100000000000000000000000000000000000000000000000000000000000000000000000000000000050f1a232e3840474b4d51515151515151515151515151515151514746413a32291e1308000000000000000000000000000008121a22282d3031383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838382d2b28231c140c0200000000000000000000000000000000000000020a11171c22282b2d3338393c3f4143434444444342413f3c3938332d2d2a251f1b150f0a0300000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c8bbaea195887b6e6255483b2f221508000000000000000813202d3a4653606d7986939facb9c6d2d0bcafa295897c6f6256493c2f2316090000000813202c3945515d6773808d97a2adbac2cccabfb4aaa298928a817b75706d676867666768696e727980879298a2aab4bfcbd2c7beb2a89f92867a6e61544a3f34281c100300000000000000000000000000000000000001080d141a1e252a2d31363a3b3f414647494b4d4e4e4f50504f4f4e4d4c4a494745403e3a39352f2c29241e1a150e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a545c60606060606060606060606060605d554c433a2f24190d0100121e2b3845515e6b78848686868686868686868686868073665a4d4033271a0d0d192633404c5966737f868686868686868686868686867d7063574a3d3024170a0000000000000000000000000810161c2023242a2a2a2a2a2a2a2a2a2a2a2a2a292825211b140c030000000000040d151c2226292a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a292927262421201e191413110d08010000000000000000000000000000000000000000000815222e3b4855616e7b8586868686868686868686868686868682776c60584e42392e2318202935414b55606b7380868686868686868686868686868686867e7164574a3e3124170b000000040e19222c3945515d676e7b838e939c9fa4aca8a9a9a7a69f9c938e837b6e685d52453e33281c10030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c1a242c33393c3d3a3935302820160c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c13191d24292c3036393a3e4246484a4c4e4f50505151504f4e4d4b4846443f3b3a37312d2a251f1a150e09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111c262e353b3f4045454545454545454545454545454545443a3936302920170d020000000000000000000000000000000810171d2123242b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b201f1c17110a0200000000000000000000000000000000000000000000060b11171c1f22282b2d2f32343637373837363534322f2d2b2822201e1a140f0a04000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c7baada094877a6d6154473a2e2114070000000000000006121f2c3844505c667885929fabb8c5d2c9bdb0a3968a7d7063574a3d3024170a00000004111d2935404b55616d7a85929fa6b0bac4cec6bcb4aaa39f938e86817d7a767574737475777b7f858c9399a2aab4bcc6d0ccc0b6aca1968c8073685e5242382e23170b00000000000000000000000000000000000000000003090e13191e20262a2d2e3036393a3c3e404142424343434242413f3d3c3a39352f2d2c2924201d19130f09030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e38424a505353535353535353535353535353514b433a31281e13080000121e2b3845515e6b788491939393939393939393938d8073665a4d4033271a0d0d192633404c5966737f8c93939393939393939393938a7d7063574a3d3024170a00000000000000000000000000050b101416171d1d1d1d1d1d1d1d1d1d1d1d1d1c1b191510090200000000000000030a11161a1c1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1c1c1a19171414110d0806040100000000000000000000000000000000000000000000000714212d3a46535f69707e8a92939393939393939393939393948b7f726a5f544b4034282028323a45515d676f7d8793939393939393939393939393958d80746c6155493c3023170a0000000a15202c38444f59606d798390959da5acafb6b5b4b5b4b0aba59e9590837a6d60594f44382c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a22282d30312d2c29241e160e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d12181d1f252a2d2e31363a3b3d3f414243444444434241403e3b3937332d2e2b26201e1a140e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141c242a2f323338383838383838383838383838383838372e2d2a251e170e050000000000000000000000000000000000050c111417171e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1312100b060000000000000000000000000000000000000000000000000000060b0f12171c1f20232527292a2b2b2a2a29272523201f1c1714120e09030000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c6b9aca09386796d6053463a2d2013070000000000000003101c28343f4a546b7784919eaab7c4d1cabeb1a4978b7e7164584b3e3125180b000000010d18242f3a46525e68727e8b949fa8b2bcc5cec6bcb4aea59e99928e898683818080808184878c91979fa4abb4bcc5cecbc2bbafa49a9184796d60564c4130261c1106000000000000000000000000000000000000000000000002080d11141a1e2122252a2d2e30323434353636363635353432312f2d2c292421201d1913110d0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c2630383f44464747474747474747474747474745403931281f160c010000121e2b3845515e6b7884919e9f9f9f9f9f9f9f9f998d8073665a4d4033271a0d0d192633404c5966737f8c999f9f9f9f9f9f9f9f9f968a7d7063574a3d3024170a0000000000000000000000000000000407090a111111111111111111111111110f0e0c09040000000000000000000000050a0d1010111111111111111111111111111111111111111111111111111110100f0e0c0a0807050100000000000000000000000000000000000000000000000000000005121e2a36424d57616c73808d949fa99f9f9f9f9f9f9f9fa69f92867c6f665c51453d3228303a444f59606d79849199a49f9f9f9f9f9f9f9f9fa1979083786d605a5045392d2114080000030f1b26323c4855616b75828f95a0a7afb5afaca9a7a9acaeb5afa7a0958f82756b6155483c31261b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171c20232421201d19130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013191d2021252a2d2e303234363637383736353433312f2d2b2722211f1a15120e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a12191f2326272b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2a21201e19130d05000000000000000000000000000000000000000005080a0b1212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121212121207060300000000000000000000000000000000000000000000000000000000000003060b0f121316181a1c1d1e1e1e1d1c1a191613120f0b06050200000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c6b9ada093867a6d6053473a2d2014070000000000000005121f2b3744505b657885919eabb8c4d1cabdb0a4978a7e7164574a3e3124170b0000000007131d2a36414c56606c77829096a1aab4bcc4cdc6bfbaafaba39f9b9992908e8d8c8d8e9095989ea1a9afb5bdc5ceccc2b9b0a69f93887d70675d51443b301e140a00000000000000000000000000000000000000000000000000000105090e121415191e2021232527282829292a29292827262422201f1d181413110d08040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e262e34383a3a3a3a3a3a3a3a3a3a3a3a3a3a39352f281f160d04000000121e2b3845515e6b7884919eabacacacacacaca6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6acacacacacacaca3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b45505a606d78829097a1abb5acacacacacacaea3989083796d60594f443a3035414c56616b74818e96a0abb5acacacacacacafa49a92857b6e665c51483e33281c1105000006131f2b37434e5863707d8a949ea7b1b2aba49f9c9a9c9fa3abb2b1a79e948a7d7063584e43372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050b101416171413110d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080d1113141a1e2121242627292a2a2b2a292928272422201f1b1714120f0a050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080e1317191a1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1413110d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606090c0e1010111111100f0e0c090606030000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c7baaea194877b6e6154483b2e211506000000000000000613202d394653606c7986929facb9c5d2c9bcafa396897d706356493d3023160a00000000010d1925303a44505b656e7a849198a2aab3bbc2cacbc1bdb4aeacaba39f9d9b9a999a9b9da0a7abadb3bbc0c7d0c7c0bbb0a79e948d80746b60554b4032291e0c020000000000000000000000000000000000000000000000000000000000020507080d11131416181a1b1b1c1d1d1c1c1b1a1917161413100c070704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c141c23282b2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c29241d160d0400000000121e2b3845515e6b7884919eabb7b9b9b9b9b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2b9b9b9b9b9b0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000003060708090a0b0c0d0e0e0d0c0b0a0907060400000000000000000000000000000000000000000000000000000000000000000000000000010507080c0e0f0e0c080705020000000000000000000000000000000000000009141f29333e44505c666e7b859299a4afbbb9b9b9b9bfb4aaa0958d80736b60564c41353b46525e68707d8a939da8b2bdb9b9b9b9bbb0a69f93887d70695e544a40362c22170c0000000815222e3b47545f6a7784919da6b0b2a8a19993908e8f9299a0a8b2b0a69d9083776a5f53473a2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0a07070401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010507090e12141517191b1c1d1d1e1e1d1c1b1a181513120f0b060602000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070a0c0d12121212121212121212121212121212110707050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0c8bbafa295887c6f6255493c2e23170c000000000000000714212e3a4754616d7a8799a3aebbc7d3ccc0b6ac95887c6f6255483c2f221509000000000008131e27333f49535e686f7c869298a1a9b0b9bec5cbc6bfbab9b5aeaca9a8a7a6a7a8aaacb1b8b9bec4ccccc4beb6afa69f958f82786d60594f433a2f20170d0000000000000000000000000000000000000000000000000000000000000000000001050707090b0d0e0f0f1010100f0f0e0c0a090706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f2020202020202020202020202020201d18120c040000000000121e2b3845515e6b7884919eabb7c4c6c6c0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfc6c6c6bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000010507060c10121315161718191a1b1b1a191817161413100c0707040100000000000000000000000000000000000000000000000000000000000002080d111414181b1c1b191514120e09030000000000000000000000000000000000030d182128343f4a545e69707d87939fa6b0bbc4cfd0c6bcb1a79f93887d70685d52453e45505a616d7a85919ea5afbac4d0d1c7bdb2a99f948c80736b61574d42392e241a10050000000916222f3c4955626f7c8895a0acb9ada1969187838182879196a0acb8aca095887c6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080a0c0e0f10111111100f0e0d0b08060503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002070a0c0d1313131313131313131313131313131313090806030000000000000000000000000000000000000000000000000000000000000000000000000003050608080808080808080808080808070604010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0cbbeb1a4988b7e7165544a3f34281c1108010000000309101c2834404b5564717d8a97abb5bfcbd4c8bbafa49a877a6e6154473b2e2114080000000000020b17222d38414c56606a6f7d8691979fa6adb3bbbfc6cac7c5bfbbb9b6b4b3b3b3b4b7b8bcc3c6c9cbc7c0bbb2aca49f948f83796d665c50473d31281d0e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b1012131414141414141414141414141413100d0701000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd2c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000306080d111314171c1f2022232425262627272726252423201f1d181413110d0801000000000000000000000000000000000000000000000000000000060b14191e2021252829282621211e1a140d070100000000000000000000000000000000060f17232e38424d57606b73808c949fa9b2bdc7d1cec3bbafa49a91847a6d605a50454d57616c75818e97a1adb7c0ccd7cbc0b5aba1968f82786c60594f453b30271c1208000000000d1a2633404d596673808c99a7b1b3a99e91847c7674767c84919ea9b3b1a7998c7f7366594c403326190d000000000003090d111213131313131313131313131313130b0a080400000000000000000000000000000000000000000000000000000000000000000005080a0b131313131313131313131313131312100c080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d1316191a202020202020202020202020202020201f1515120f0a03000000000000000000000000000000000000000000000000000000000000000000060b0f1213151515151515151515151515151413110d0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0cec1b4a89b8e8175665c5044382d2219130e090a0a0f141a252c3845515c6774818d9aa7b4c0d1d2c6b9ac9f9386786d6053463a2d20130700000000000006111b262f3b444e58606b6f7c8590949ea2a9aeb5babfc5c7cbc7c5c3c1c0bfc0c1c3c5c8cec9c6bfbab6afa8a19a938d82796d675d544a3f352b1f160c00000000000000000000000000000000000000000000000000000000000001060b0f1112131313131313131313131313130c0b090601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030607070707070707070707070707070604010000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000040a0f1215191d202123282c2d2f30313132333434333231312f2d2c292421201d19130f0a040000000000000000000000000000000000000000000000020a11171e252a2d2e32353635322e2d2a251f18120c040000000000000000000000000000000006111c26303b454f59606c78828f97a1abb5c0cbd7ccc0b6aca1968e81756c61574d535e69717e8a939ea9b3bec9d2ccc4bbafa39991847a6d665b50473d33291e150b00000000000f1c2935424f5c6875828f9ba8b5ada197897d706a676a707d8997a2adb4a89b8e8175685b4e4235281b0f00000000070e15191d1f2020202020202020202020202020171614100b050000000000000000000000000000000000000000000000000000000000050c11141717202020202020202020202020201f1e1c19140d060000000000000000000002070a0c0d13131313131313131313131313131313130b0a08050000000000000000000000000000000000000000000000000106090b0c13131313131313131313131313131313130b0a0805000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a131313131313131313131313131312100c08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010a12191e2325262d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c22211f1a150e06000000000000000000000000000000000000000000000000000000000000020a11171b1f202222222222222222222222222220201d18130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d1c5b8ab9e9285796d60544a3f3329241e1a1817181b1f252a35404b55606d7984919eabb8c4d1d0c3b7aa9d908477665c5044382c1f1206000000000000000a141d29323d464f59606a6f7b838b92979fa3abaeb4b9bbc0c2c5c6cad0c9d1cbc7c5c4c1bdb9b4aeaca49f96918880796d675d554b42382e231a0d040000000000000000000000000000000000000000000000000000000000040c12171b1d1e20202020202020202020202020191816120d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000070c10151b1f2124292d2e2e34383a3b3c3d3e3f404141403f3e3d3c3a39352f2d2c29241e1b15100b050000000000000000000000000000000000000000030c141c23283036393b3f4142413f3b3a363129241d160d04000000000000000000000000000000000a151e29333d44505b666d7a859199a3afbbc1ccd2c7beb2a89e938b7e71695e545b656e7b85929fa5afbbc4cfcec4baafa59f92877d6f685e544a3f352c21170c030000000000101d2a3743505d6a7683909da9b6ab9e9285786b6058606b7885929fabb6a99c8f8376695c504336291d100000000911192025292c2c2d2d2d2d2d2d2d2d2d2d2d2d2d2423211c1710080000000000000000000000000000000000000000000000000000000810171d2123242d2d2d2d2d2d2d2d2d2d2d2d2d2c2b29241f1810080000000000000000080e1317191a2020202020202020202020202020202020181715110c06000000000000000000000000000000000000000000070d121618192020202020202020202020202020202020181715110c06000000000000000000000000000000000000000000000000000000000000000000000000050b10131616202020202020202020202020201f1e1c19140d06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a131c242a2f323339393939393939393939393939393939392f2e2b262018100600000000000000000000000000000000000000000000000000000000020b141b22272b2d2f2f2f2f2f2f2f2f2f2f2f2f2f2d2c29241d160d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d2c6b9ada1978b7e71665b50443e352f2a25252425262b31364045515d67727e8b97a1adb9c6d2ccc0b5ab9a8d807467544a3f34281c100300000000000000020b17202b343d474f5860696e787f858d92999fa2aaacafb5b5b8babebcbdbcc0bbb9b7b4b2acaaa39f9a938e847d736d675d554b433a30261c11080000000000000000000000000000000000000000000000000000000000060e161d23272a2b2d2d2d2d2d2d2d2d2d2d2d2d2d2525221e181109010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040607080909090a0908070706040000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000070c12181c1f262b2e3035393a3d3f444648494a4b4c4d4e4e4d4c4b4a494745403d3a39352f2b26201c160d08010000000000000000000000000000000000030c151e262e343b4146474b4e4f4e4c4846423b352f281f160e04000000000000000000000000000000030c172128333f4a545e686f7d87929fa6b0bac4cfd0c4baafa59f92857b6e665c606c77828f97a2adb7c1cdd0c6bcb2a89e938c7f726b60564c42382d231a0f05000000000000111d2a3744505d6a7783909daab6ab9e9184786a5f565f6a7885929eabb6a99c908376695d5043362a1d10000007111b232b313638393939393939393939393939393931302d28221a12080000000000000000000000000000000000000000000000000008121a22282d303139393939393939393939393939393835302a221a10060000000000020a12191f2326272d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2424211d171009000000000000000000000000000000000000010911181e2225252d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2424211d17100900000000000000000000000000000000000000000000000000000000000000000000070f161c2022232d2d2d2d2d2d2d2d2d2d2d2d2d2c2b29241f181008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121c252e353b3f4046464646464646464646464646464646463c3a37312a22180d030000000000000000000000000000000000000000000000000000000a141d262d3337393b3b3b3b3b3b3b3b3b3b3b3b3b3a39352f281f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d5c9beb3a99d9184786c60595045413a363032313231373b4246525b606d7984919ea9b2bec9d4c7bbafa4998a7d7064574a3d2e23170c000000000000000000050e19222b353d464e565e666d727a80868e92989c9fa3aba9abadb3afb0afb5afacaba8a8a09e98928e87817a706b605c554b433a31281e140a0000000000000000000000000000000000000000000000000000000000040e1820282e3337383939393939393939393939393932312e29231b1309000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708070d10131415161616161615141312100c07000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000030b12181d23282c31373a3c4146474a4a50535556575859595a5a5a5958575653514b4a4745413a37322c272119130c04000000000000000000000000000000000b151e2730383f444c5254585b5c5b5954534d454039312820160c02000000000000000000000000000000050f17222d38424c56606b727f8c949ea8b2bdc6d1ccc1baaea2989082786d6069727f8b949fa9b3bec9d6cbbfb4aaa0968f81756d62594f443a2f261c1108000000000000000f1c2935424f5c6875828f9ba8b5ada196887c6f6864686f7c8897a1adb5a89b8e8175685b4f4235281c0f00030e19232d353c424546464646464646464646464646463e3c39332c241a1005000000000000000000000000000000000000000000000005101a242c33393d3e464646464646464646464646464644413b342c22180d02000000000a141c242a2f3233393939393939393939393939393939393931302d28221b1209000000000000000000000000000000000009131b23292e3132393939393939393939393939393939393931302d28221b1209000000000000000000000000000000000000000000000000000000000000000007111921272c2f3039393939393939393939393939393835302a221a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d19242e3740474b4d53535353535353535353535353535353524847433c342a1f150b010000000000000000000000000000000000000000000000000006111b262f383f4446484848484848484848484848484745403a31281d1307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dacfc5b8aca0968c7f736b615a514c46423f3e3d3e3f43474d535b636d74818e96a1acbbc4cfd2c6b9ac9f93867a6d6054473a2d21140600000000000000000000071019232b343d444d545c60686d747b81858a8f9299999c9fa2a9a2a3a3aba39f9e9b9896918d86817b756d686059514b433a31281f160c0200000000000000000000000000000000000000000000000000000000010c16202a323a3f4345464646464646464646464646463f3e3a342d251b1107000000000000000000000000000000000000000000000000000000000000000000000000000003090e12141518181d20202222232323222221201f1c1812110c06000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000002080c151d23282e34383c4347484c525457545c6062636464656667676665646462605d555754524c47433c383329241e160d07000000000000000000000000000007121c273039424a50565e616568696865615e57514b433a32281e13080000000000000000000000000000000006111c262f3a444f59606c77828f96a1abb4bfcbd6cabeb3aa9f948c7f726a6e7b86929fa6b0bbc5d0cbc3baaea39891847a6d605b51473d32291d140a00000000000000000d1a2734404d5a6773808d9aa9b2b2a89d90837a7371737a83909da9b3b2a8998d8073665a4d4033271a0d000915202b353f474e5253535353535353535353535353534a49443e362c22170b00000000000000000000000000000000000000000000000c17222c363e45494a5353535353535353535353535352514d463e342a1f140800000008121c262e353b3f4046464646464646464646464646464646463e3d39342c241b0f0600000000000000000000000000000007101b252d343a3e3f46464646464646464646464646464646463e3d39342c241b1006000000000000000000000000000000000000000000000000000000000000050f19232b33383c3d464646464646464646464646464644413b342c22180d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131e2a354049525759606060606060606060606060606060605f55534e463c31271d1207000000000000000000000000000000000000000000000000000b17222d38414950535555555555555555555555555553514b433a2f24180d020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd4c8bdb2a89f93877d716c605d55524d4c4b4a4b4c4e53575e616d737f8b939ea8b2bdcdd5c9bdb2a89d908376685d5245392c2013070000000000000000000000071019222b323b424a50565d60696e747a7e82868a8d8f929794959696959992918e8b8784807a746e6a605d564f45403930281f160d04000000000000000000000000000000000000000000000000000000000006121d28323c444b5051535353535353535353535353534c4a463f372d23180d010000000000000000000000000000000000000000000000000000000000000000000000040a0f141a1e21212524292c2d2e2f2f30302f2e2e2d2c28231c1d1710090000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000040c13191e272e34394045464e5355565d616366666d6e6f707172737474737271706f6d676763605d56534e48443d352f281f191009000000000000000000000000000c18232e39424a545c60686e72747574726e69605d554c443a3024190d05000000000000000000000000000000000a141d29323d44505b656d7a849199a3aebac1ccd0c5bcb0a69f92877c6f78839098a2aeb8c2cdcec3b9afa59f92867c6f685d52493f352b20170b0200000000000000000a1623303d495663707c8996a1adb8aca0959085807e808490959fabb9ada196897c6f6256493c2f231609000d1925313c4751595e5f60606060606060606060606060575550483e33281c100400000000000000000000000000000000000000000005111d28333e48505557606060606060606060606060605f5d5850463b3024190c0000020e19242e3840474b4d53535353535353535353535353535353534b49453e362c21180d0300000000000000000000000000040e19222d373f464a4c53535353535353535353535353535353534b49453e362c22170c0000000000000000000000000000000000000000000000000000000000000b16212b353d4448495353535353535353535353535352514d463e342a1f140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16232f3b47525b63666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c625f584e43392f24180f060000000000000000000000000000000000000000000000030f1b27333f49535b6062626262626262626262626262605d554b4035291e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd9cec3bbafa49992867e736d67615e575958575859585f62696e75808b919ba5afbac4ced2c5b9ada1968b7e7164564c4135291d1104000000000000000000000000071019202930383f444c52575f62676d71767a7d8082858788898a8988878684817e7b77736e68625f57524c443d342e271e160d040000000000000000000000000000000000000000000000000000000000000b17232e3a444e565c5e60606060606060606060606060585651493f34291e120600000000000000000000000000000000000000000000000000000000000000000000060b161b1f252a2d2e312f35393a3b3c3c3c3d3c3b3a3a38342e2d29221b120900000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000070e161e2429303940454b5153585f6266686d707376797b7c7d7e7f808181807f7e7d7c7a7673706d68625f58544f45413a312b221b1209000000000000000000000004101c2834404a545c666d737a7e8182817f7b746d675d564c41352922170b00000000000000000000000000000000020b172027333f49535d686f7c87929fa5afbac3cecec2bbafa3999184797f8c959faab4bfcad0c5bcb1a79e938b7e716a5f564c41372d23190e050000000000000000000613202d394653606c7884919ea7b1b1a7a097928d8b8c91969fa7b1b1a79e9184776c605346392d20130600111d2936424e59636a6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5044392d2114080000000000000000000002000000000000000000000814212d3945505a61646c6c6c6c6c6c6c6c6c6c6c6c6c6c6962584d4135291c10000007131f2a35404a52585a6060606060606060606060606060606060575550483e332a1f150b010000000000000000000000020b16202b343f495156586060606060606060606060606060606060575550483e34281d11050000000000000000000000000000000000000000000000000000000004101c27333d474f5456606060606060606060606060605f5d5850463b3024190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4b57636d7379797979797979797979797979797979796f6a5f554b40352921170c030000000000000000000000000000000000000000000005121f2b3744505b656c6e6e6e6e6e6e6e6e6e6e6e6e6e6d675d51453a3025190d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dddfd7ccc0b5aba298928a807a726e69676665646566676a6f737b818c929ba3adb7c1ccd6cabeb3a99e9184796d6053463a2f24190d0100000000000000000000000000070e171e262e343a41454d53555d6064686e707376797a7b7c7d7c7b7a797875716e6966615e56534e45413a3228231d150c04000000000000000000000000000000000000000000000000000000000000020f1b27333f4b5660686b6c6c6c6c6c6c6c6c6c6c6c6c6c65625b51463a2e2216090000000000000000000000000000000000000000000000000000000000000000020a111721272c31363a3b3e4140454748494949494948474644403939342d241b1006000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000071019202830353e424b51545c60656a6f73777a7d80838588898a8b8c8c8d8d8d8c8b8a898683807d7a746f6a636059514c433c342d241b12090000000000000000000006121f2c3844515c666d7880868b8e8f8e8c8781796d685d52463e33281c100400000000000000000000000000000000050e17222d38414c56606a727f8b939ea8b2bcc6d0cbc0b5aba0968f8287929fa7b1bcc6d0cabeb4aaa0958e81746c62584e433a2f251b10070000000000000000000006121f2b3844505b66717e8b959fa9b2b1a9a19e9a97999ea1a8b1b3a9a0958b7e71655b5044372b1f120500121f2c3845525e6a757979797979797979797979797979716c6155493c3023160a000000000000010507070f070704010000000000000a1723303d4955616c71797979797979797979797979797974695d5144382b1e1200000a17232f3b47525c63666c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a50453c31271d120700000000000000000000000a141d28323d46515b62656c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5045392d211508000000000000000000000000000000000000000000000000000000000713202c38444f5960636c6c6c6c6c6c6c6c6c6c6c6c6c6c6962584d4135291c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2633404d5966738086868686868686868686868686868686867c6f675d51453e33291e150b000000000000000000000000000000000000000000000613202d394653606c777b7b7b7b7b7b7b7b7b7b7b7b7b796d60564c41362a1e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde8ddd2c7bdb4aaa29f928d857f7b7774727170717274777b80868f939ca4adb5bec9d2ccc4baada2978c7f72665c514538281e1308000000000000000000000000000000050c151c232830353c42474b5153565e616466656c6d6e6f70706e6d6c656865615e5754524c47423c3530282018120b030000000000000000000000000000000000000000000000000000000000000004111d2a3743505c68727879797979797979797979797979726d62564a3e3125180b00000000000000000000000000000000000000000000000000000000000000030c141c232832383b4246484b4e4b5153555556565655555453514a49453e362d22170c000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000040f19222b323a41464f545c60666d71777c8084868a8d8f929896979798999a9a999897979992908d8a86817c76706b605d554e463f362d241b1108000000000000000006121f2b37434e58606d78828c92989b9c9b99928e837a6d615a5044392d201408000000000000000000000000000000000006111b262f3a444e58626d75818e96a0aab4bfcad1c7bdb2a89e948f9299a3aeb9c2cecbc2baaea2989083796d605a50463c31281e13090000000000000000000000030f1c28333f4a54606c78839097a1a9b0b3adaba6a4a6abadb2b1a9a1979083786c6053493f33271b0f030013202c3946535f6c7986868686868686868686868686867e7164574a3e3124170b0000000002080d1113141c1413110d0801000000000b1724313e4a5764717e8686868686868686868686868686796c5f5246392c1f1300000c1926323f4b58636e737979797979797979797979797979797979716c61574e43392f24180f0600000000000000000006111b262f3a444e58626d727979797979797979797979797979797979716c6155493d3024170a000000000000000000000000000000000000000000000000000000000916222f3c4854606b70797979797979797979797979797974695d5144382b1e1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c78828f97939393939393939393939393989083796d605a50453b30271c120700000000000000000000000000000000000000000005121f2b3744505b6576828888888888888888888888888074685e52463a2f24190d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dde8e0d9d0c6bcb4aea49d97928c8784817f7e7d7e7f8184888d92989ea5adb6bec7d0cfc4baafa59f9285796d60544b403428160c0100000000000000000000000000000000030a11171e24293137394045474c525457535b6061616263636261605b535854534d4746413b373129241e160e0700000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884868686868686868686868686867f7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000030c151e262e343d43484d5354585b555d606162626363626161605c545650483e34291d11050000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000a16212b343d444c525961666d72797e83888d91939a999c9fa2aaa3a4a5a6a7a7a6a5a4aba39f9d9a99928e88827d756d67605850483f362d231a0f05000000000000000814212e3a47535f6a74808d949fa2aaa8aba39f958f82766c6155493c3023160a0000000000000000000000000000000000000a141d28323d46515b606d79849198a2aebac0cbcfc3bab0a69e9c9fa3abb4bfcbcdc2b9aea49f92867b6e675d51483f342a1f160c010000000000000000000000000b17222d3844505b666e7b8591979fa6acb2b6b3b1b3b6b2ada7a09792857b6e665b5041382d22170b000013202c3946535f6c79869293939393939393939393938a7d7164574a3e3124170b000000050c13191d20212921201d19130c040000000b1724313e4a5764717d8a93939393939393939393939286796c5f5246392c1f1300000d1a2733404d5a66738086868686868686868686868686868686867e716a5f554b40352922180d0400000000000000040e17222d38414c56606a727f86868686868686868686868686868686867e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000a1623303d495663707d8686868686868686868686868686796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b666e7a859299a49f9f9f9f9f9f9f9f9f9fa0958e81746c61574d42392e23180e050000000000000000000000000000000000000000030f1b27333f495363707d899595959595959595959592867a6d61564c4135291d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dddfd6cfc9c5c4bfbaaea9a29e9995918d8c8b8a8b8c8d91969a9fa3aaafb7bfc8d0cfc7bdb2a89e938b7f72675d5142392e23180400000000000000000000000000000000000000060c13191f262b2f35393b4146474a495053545556575655545350494b4846423b3936302b262019130c040000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b78849193939393939393939393938b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000000000b151e2730383f444e54575e6164676a676d6e6f6f6f706f6e6d6d6664625a5045392d2115080000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000030f1b27323d464f565d616b70797f848b9095999d9fa4aca9acaeb4b0b1b2b3b4b4b3b2b1b5aeaca9aba39f9b948f89817a6f6a625a50483f352c21170d030000000000000815222f3b4855626e7b87929fa6aeb4b5b5afa79f948a7d7064574a3d3124170a000000000000000000000000000000000000020b16202b343f45515d676f7c86929fa5afb9c3ceccc1b8b0aaa8acaeb4bdc6d0c5bbb1a79d928a7e71695f554b40362d22180d040000000000000000000000000006111c28333f4a545e696f7c8590949ea0a8a9aaabaaa9a8a19e9590857c6f695f544a3f2f261b1106000013202c3946535f6c7986929f9f9f9f9f9f9f9f9f9f978a7d7164574a3e3124170b0000050e161e252a2d2e352d2c29241e160d0400000b1724313e4a5764717d8a979f9f9f9f9f9f9f9f9f9f9285796c5f5246392c1f1300000713202d3a4653606d78828f969393939393939393939393939392867c6e675d51453e342a1f160c010000000000020b162027333f49535d686f7c879293939393939393939393939393958d80746c6155493d3024170a000000000000000000000000000000000000000000000000000000000a1623303d495663707c8993939393939393939393939285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a545e68707d87939fa6b0acacacacacacacb1a79d928a7e71695f544a40342820170b0200000000000000000000000000000000000000000b17222d384854606b7783909da8a1a1a1a1a1a1a2988d8073685d5245392f24180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0ddd6ccc4bdb9b8b9bdbbb3adaba8a09d9a99989798999a9ea0a8acaeb4bcc1c9d1cfc6bdb5aba1968f81756d62554b4030271d1207000000000000000000000000000000000000000002080d151a1d24292c3036393b3d3f44464748494a49484746443f3e3b3a36312d2a251e1a150d0802000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919e9f9f9f9f9f9f9f9f9f988b7f7265584c3f3225190c000000000000000000000000000000000000000000000000000000000007121c273039424a50586062696e717477787a7b7c7c7c7c7c7b7a7979716c6256493d3024170a0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000007131f2c38434f5960686d757d848c91969da0a7aaacafb6b6b8babfbdbebfbfc0c0c0bfbebfbbb9b6b5aeaca69f9c938e847c716c625a50473d33291f14090000000000000d1a2733404d5a6673808d99a3afbabfc2c0bbb0a69b8f8275685c4f4235291c0f02000000000000000000000000000000000000040e19222935414b555f6a717e8b939da7b1bcc5d0cac1bbb7b5b9babfc6cfc7beb3a99f958d80746c61574d43392f241b10070000000000000000000000000000000b17222d38424d575f6a6f7a828a9196999c9d9e9e9c9a96918b837b6f6a60574d42382d1d140a00000013202c3946535f6c7986929facacacacacacacaca4978a7d7164574a3e3124170b00030c1620283036393a423a39352f2820160c03000b1724313e4a5764717d8a97a4acacacacacacacac9f9285796c5f5246392c1f13000006121f2b3844505c666d7a849199a39f9f9f9f9f9f9f9f9f9fa2989083796d605a50463c31281d120700000000000a141d28323a44505b656d7a849199a39f9f9f9f9f9f9f9f9f9fa1979083786d605a5045392d211508000000000000000000000000000000000000000000000000000000000a1623303d495663707c89969f9f9f9f9f9f9f9f9f9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424c56606b73808c949fa9b3beb9b9b9b9b9b9afa59f92857b6e665c51443d32291d140a000000000000000000000000000000000000000006111b2c38444f5964717d8a95a0acaeaeaeaeb4aa9f92857a6d60554b4035291c12070000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0dacfc4bab2adabadb2babeb9b8b1acaaa7a5a4a3a4a5a7aaacb2b9babfc6cfd4ccc4bcb4aba39991847a6d605b51433a2f1e150b000000000000000000000000000000000000000000000003090e12181d20252a2d2e2d3337393a3b3c3d3d3b3a3937332d2e2d2a25201e19140e09030000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabacacacacacacaca5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000c18232e39424a545c606a6f757b7e81848586888889898988888786867e7164584b3e3125180b0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000915222f3b4854606b6f7a818a91969ea1a9acb1b7b9bbc0c2c5c6cad0cbc7c5c5c5c7cbd0cbc7c5c3bfbbb9b0aba59e9691877e716c62594f453b30251a0e040000000000101d293643505c6976838f9cabb5c0cad0cbc2b8ab9e9185786b5e5245382b1f120500000000000000000000000000000000000000071018242f3a434e58626c74818e95a0aab4becad6ccc7c3c2c5c7cbd1ccc0b6aca1979083786d605a50453c31271d12090000000000000000000000000000000006111c262f3b454e585f686e787e84898d8f919291908d89847e786e6960584e453b2f261c0b0200000013202c3946535f6c7986929facb9b9b9b9b9b9b0a4978a7d7164574a3e3124170b020b151e28323a4146474f4745413a32281e150b000b1724313e4a5764717d8a97a4b0b9b9b9b9b9b8ac9f9285796c5f5246392c1f13000003101c28343f4a545e686f7c87929fa5afacacacacacacacb4aaa0958e81746c62584e43392f2418100600000006111b262f3a444f59606c77828f96a1abb5acacacacacacacafa39992857b6e665c51483e34281d1105000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3acacacacacacacac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f3b444f59606d78829097a1acb6c0ccc6c6cbc0baada2979083786d60594f443b2f261c11060000000000000000000000000000000000000000101c27333d4653606c7884919da8b2bdbbbbbaaea2988c7f72675d5145392e23180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3d0d5c9bdb2a8a19ea1a8adbabfc3bdb8b7b4b2b1b0b1b2b4b7b9bdc4c7cbd1cdc8c1bab2aaa39992877d6f685d52493f31281d0c030000000000000000000000000000000000000000000000000001070d1014191e202122272b2d2e2e2f30302f2e2d2b272221211e1a14110e080200000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7b9b9b9b9b9b2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000004101c2834404a545c666d747c82878b8e9092979495959696959494988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000091623303c4956636f7c848f939ea0a8adb2b8bcc3c6c8c8c6c3c0bdbbbfbab9b8b8babfbdc1c5c6cacbc7c2bbb7afa8a09992887f716b61574d42362a20150a0000000000111e2a3744515d6a7784909daab7c3d1dbd2c5b9ac9f9286796c5f5346392c201306000000000000000000000000000000000000000007131d28313c46505a606d79839098a2aebac0ced8d3d0cfd2d3d7d4c8bbafa49a92857b6e665c51483e332a1f150b0000000000000000000000000000000000000a141d29333c464e565e666c71787c808384858483807d79716d665e574e463d33291d140a0000000013202c3946535f6c7986929facb9c5c6c6c6bdb0a4978a7d7164574a3e3124170b0a141d27303a444c52545c54524c443a30271c12070b1724313e4a5764717d8a97a4b0bdc6c6c6c5b8ac9f9285796c5f5246392c1f130000000b17232e38424c56606a727e8b939da7b1bbb9b9b9b9b9bcb1a79d938b7e716a5f554b40352922180d0400050e17222d38414c56606b727f8c949ea8b2bdb9b9b9b9b9baafa59f92877d70695e544b40362c22170c00000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afb9b9b9b9b9b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29323d44505c666e7b85929aa4afbbc2cdd7d6cabeb3a99f958d80736b61564d42382d22170e04000000000000000000000000000000000000000b161f2b3844505b66717e8b96a1acb9c5cabeb3aa9e9285796d60544a4034281c110600000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6c3ccccc5b9ada19691969ca3aeb4bcc1c5c4c0bfbebdbebfc0c4c5c9ced2ccc7c3bcb8afa8a19892877e716b60564c41372d1f160c000000000000000000000000000000000000000000000000000000000104080d111414171b1f2021222324232221201f1b171514120e090502000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4c6c6c6beb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000006121f2c3844515c666d7880898f93999a9d9fa2a9a2a2a2a3a2a1aa988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000916222f3c4955626f7c86929fa5acb2b9bdc4c8c7c7c0bbb9b7b3b0aeb4aeacabacaeb4b0b4b8b9bec5c9ccc7c1bab2aba39a93877d70695e52463c31261b0f0400000000101d293643505c6976828f9cabb4bfcad0cbc2b8ab9e9185786b5e5245382b1f12050000000000000000000000000000000000000000010c161f2a343f45515d676e7b86929fa4aebcc6d0dbdcdbdfe0d3c7bbb0a69f93887d70695e544b40362c21180d03000000000000000000000000000000000000020b17212a343c444d545b60666d6f73767778777674706d66605c544d453d342b21170b020000000013202c3946535f6c7986929facb9c5d2d2cabdb0a4978a7d7164574a3e31241706111b262f39434c565e6168605d564c42392e2318120b1724313e4a5764717d8a97a4b0bdcad2d2c5b8ac9f9285796c5f5246392c1f1300000006111c26303a444e58626d74818e95a0a9b3bdc7d2c6cec3b9afa59f92867c6e675d51453f342a1f160c020b172027333f49535e686f7d87929fa6b0bac4cfc6d0c6bcb2a89e938c7f726b60574d42392e241b100600000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc6c6c6c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b172028343f4a545e69707d88939fa6b0bbc5d0d9d0c5bcb1a79f93887d70685e544a3f332820160c02000000000000000000000000000000000000030f1c28333f4a54606d7984919ea9b3bec9c5b9ada1978b7f72665c5144382d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab6bfbfbfbfb8ab9e91848c919fa3aaafb9babfc5c7cbd0cbccccccd0cac6c5c0bbb9b1aca59e9691867e716c61594f443a30251b0d0400000000000000000000000000000000000000000000000000000000000000010507060b0f12131415161716151413120f0b06070502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000006121e2b37424e57606d78828d929b9fa4abaaabadb3afafafafafaea5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000815212e3b47535f6a737f8c959faab4bfc9c7c2bbb7b6afacaaa6a3a2aba39f9e9fa3aaa4a7abadb3b9bec4cdccc4bdb4aca49992857b6e61584e43372b20160a000000000d1a2633404d596673808c99a3aebabec1bfbaafa59b8e8275685b4f4235281c0f02000000000000000000000000000000000000000000040d18222935404b555f69717e8a929daab4bfcad6e2e8ecddd0c4b7ab9f948c80736b61574d42392e241a0f060000000000000000000000000000000000000000050f18222a323b424a50545c606366696a6b6b696763605c54504a423b332b22190f06000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3124171117222d38414b555e686d756d685d544a403428241a111724313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000a141e29323d46515b606d79839097a2abb5c0ccd7d5cbc0baaea2989183796d605a50463c31281d130a141d29323a44505b656d7a849199a3afb8c1ccd6d6cabfb4aaa0968f81756d63594f453b30271d12090000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d2d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17232e38424d56616b73808d949fa9b3bec7d2d7cec2bbafa49a92857a6e665b50443d32281e1308000000000000000000000000000000000000000b17222d3844515c66727f8b97a1adb9c5c9beb3a99e9184796d60544a3f33281c0f03000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909daab2b2b2b2b2b2a6998d807f8b92989ea5acaeb4b8babfbfbfc0c0bfbebebab8b5afaca7a09d938e847c716c615a50473d32281e1309000000000000000000000000000000000000000000000000000000000000000000000000000305060708090a0a08070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000814212e3a47535f6a737f8c949da4acafb5b7b8babebbbcbcbcbbb1a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000006131f2b37434e58606d78839098a2aebabfbab9b0abaca49f9d9a979594999292929895979b9ea2a9adb3bbc1c9cfc6beb5aba1978e81756a5f53473d32271b0f030000000815222e3b4855616e7b86929fa5adb3b5b4aea69e93897d7063564a3d3023170a0000000000000000000000000000000000000000000000061018242f39434d57616c74808d98a2aebac7d3e0ece9dccfc2b6a99c8f82786c60594f453b30271d12080000000000000000000000000000000000000000000006101820292f383f444a5053565a5c5e5f5e5d5a5653514a443f3830292119100700000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312417192327333f49535c676d7a827a6d665c514440362c23191724313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000020c17202b343f45515c676e7b859299a4afbbc1ccd6d6cabfb4aaa0958e81746c62584e433a2f2418111b262f3a444f59606c77828f96a1abb5c0cad3d4cbc2baaea29891847a6d605b51473d33291e150b000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b444f59606d78829097a1acb6c0ccd8d8ccc0b6aca1978f82786c60594f443a302419100600000000000000000000000000000000000006111c2834404a54606d7985929ea9b3becac5b9ada1968b7e71665b5044382b1f160b000000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a7783909da6a6a6a6a6a6a6a6998d80737f868e939c9fa3abacaeb4b2b3b3b3b2b1b3adababa49f9c95908a817a6f6a615a50483e342b20160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000000815222f3b4855626e7b86929fa6aeb9bbc0c3c5c6cad0c8c9c9beb1a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000030f1b26323c44505c666e7b86929fa6b0b4aeaca69f9c9a93908d8a88878686858587888a8e92979ea1a9afb7c1cad0c7bdb3a99f93877c6f62584e43372b1f13060000000714212d3a46535f6973808c939fa2a9a8aaa39f948e81756b6054483c2f22160900000000000000000000000000000000000000000000000007131d28313c46505a606d7a85929facb8c5d2dfebe2d5c8bbafa295887c6f665c50443e332a1f160c010000000000000000000000000000000000000000000000060e171d262d33383f4446494d50515251504d4946444039342e261e170f070000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312418222b353d44505b656d79828f82786d605b51483e352b211824313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000050e19222934404b555f69707d87939fa6b0bac4ced8d0c6bcb1a79e938b7e716a5f554b4035292217222d38414c56606b727f8c949ea8b2bdc7d1d6cdc2b9aea49f92867c6f675d51493f352b20170c03000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e29323d44505c666e7b85929aa4afbbc2cdd7d2c7beb3a99f948c7f726b60564c41352922180d040000000000000000000000000000000000000c18232e3945515d67727f8c97a2adbac6c9bdb2a89d9184786c6053463e33281c10040000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a778390999999999999999999998d8073727b81898f92999b9fa3aaa5a6a7a6a6a5a9a29f9c99938f8a837d756d68605850483e362c22190e0400000000000000000000000003080d1012131313131313131313131313130c0b090601000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000000000000000005121e2a36424d576673808d99a3aeb8c0c7ccd2d2d3d0cac7c5c1beb1a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ccc0b3a6998d8073665a4d4033271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000a152028343f4a545f69727f8b949fa9aba39f9b948f8a8783807d7b7b7a7978797a7b7d81858b91979ea5afb8c1cdd0c5bbafa49a8f82756a6054473b2e22150900000005121e2a36424d57606c78818b92979a9b9a98928d82796d60594f44382c2013070000000000000000000000000000000000000000000000071018242f3a434e58616c74818e98a2aebac7d3e0ece9dccfc3b6a99c9082786d605a50453c31281d1207000000000000000000000000000000000000000000000000050b141c22282e34383a3c404344454443413d3a38342e28231c150c05000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3124202a343d47505a606c77818e948e81746d635a50473d332a2024313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000071018232f39434d57616b737f8c949ea8b2bcc6d0d8cec3b9afa59f92867c6f675d51453f342a2027333f49535e686f7d87929fa6b0bac4cfd9cfc4bbb0a69d928a7e716a5f554c41372d23190e0500000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c172028343f4a545e69707d88939fa7b1bbc5cfd9d0c5bbb0a69f92877d6f685d52453f342a1f160c01000000000000000000000000000000000007121c2935404b55606d7a85929faab4bfcac4b8aca0968a7e7164594f44382c21160a0000000000000000000000000000000000000000000000000000000000000000000000000000111d2a3744505d6a77838c8c8c8c8c8c8c8c8c8c8c8c8073696e757c82868a8f92989798999a9999989697928f8b87827d78706b615e564e463e362c241a1007000000000000000000000000070e14191d1f1f202020202020202020202020191816120d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000714212d3a46535e697784919dabb4bfcad4d7ddd4cec6bfbab8b4b1b0a5988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cdc0b3a69a8d8073675a4d4034271a0d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a00000000000000040b17232e38424d57606c77828f97a29e99928e88827e7a7773706f6e6d676b686d6f7174797e858f939ea6b0bbc5cfccc0b6ac9e93897c6f6256493c31251a0e020000020e1a26313b44505b666c777f858a8d8e8d8b8680786d675d51473d33271c100400000000000000000000000000000000000000000000040d19222935404b555f6a717e8b939daab4bfcad6e2e6ebddd0c4b7ab9f948d80736c61574d43392f24181007000000000000000000000000000000000000000000000000020a11171c23282b2d3033363738383634302d2c28231c17110a0300000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312429323c464f59626c73808c939d938c7f736c61594f453c322824313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000007121d27313b454f59606c77828f96a0aab4bfcad6d5cbc1baaea2989183796d605a50463c3129323a44505b656d7a849199a3afb8c1ccd6d1c7bdb3a99f948d80746c61584e433a2f251c11070000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17232e38424d57616b73808d959fa9b3becad6d6cdc2bbafa39991847a6d605b51463c31281d12070000000000000000000000000000000000000c18242f3945525d6873808d98a2aebac6c8bdb2a89d9083776b6155483d32271b0f04000000000000000000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e7f7f7f7f7f7f7f7f7f7f7f7f7d7063616a6f757a7e8286888a8c8c8d8d8c8b898885827f7b76706c656159524c443d342c241a12080000000000000000000000000811191f25292b2c2d2d2d2d2d2d2d2d2d2d2d2d2525221e18110901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000815212e3b4854616e7b8795a0acbdc6d1dcdfd4cbc2bcb4aeaca8a5a3a3988b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cdc0b4a79a8d8174675a4e4134271b080d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a000000000000000006111c26303c44505b656e7b85929e938e86817c76716d6867646261605d565d616264666d717a818f949ea9b3bec9d2c7beb0a69a8d807467574d42362a1e120500000009141f28333f4a545b656c727a7e8082817e7a736d665d554b40352b21160b00000000000000000000000000000000000000000000010c16202b343c45515d676f7c86929fa5afbcc6d0dbdad9dedfd3c7bcb0a69d928a7e71695f554b40352922190e0500000000000000000000000000000000000000000000000000060b11171c1f202327292b2c2b2a2723201f1c18120c06000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3127313b444e58606b717e8b929ca59c918a7e716b60574d443a3027313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000010b151f29333d44505b656d7a849198a2aebac0cbd4d6cabfb4aaa0958e81756c62584e433a2f3a444f59606c77828f96a1abb5c0cad3d7cbc0b5aba1979082786d605a50463c31281e130a000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b454f59606d78839097a2adb9c0cbd4d7cbc0b5aba1968f81756d62584e43392f24180e05000000000000000000000000000000000007121d2935414c56616d7a86929fabb5bfcbc3b8aca0958a7d7063594f44382c20150a000000000000000000000000000000000000000000000000000000000000000000000000000b1724313d4a56626c71737373737373737373737373706b60586062686d7175797b7e7f8080807f7e7d7b7975726e6964605b534f46413a322b221a120800000000000000000000000007111a232a3135383939393939393939393939393932312e29231b1309000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000000000091623303c4956636f7c8996a8b1bdcfd8e0d6ccc2b9b1aaa29f9b989796978b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cec1b4a79b8e8174685b4e413025190d0d192633404c5966737f8c99a6b2bfccd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000a141e27333f49535e69717e8a928a817b746f6a64615e5657555453514c525455545c60686d78828f97a1adb9c6d0d0c1b7aa9d918477695e53463a2d211407000000030b17222d38424a535b60676d71747574716d68605c544b43392f23190f050000000000000000000000000000000000000000000008131e28323c46515b606d79839198a2aeb7c0ced8d0cdccd1d2d5cdc2b8aea49f92867b6e675d51453f342b20160b020000000000000000000000000000000000000000000000000000060b101213161a1d1e1f1e1d1a161312100c070000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e312f39434c565f6a707d87929fa4ada39f92867d6f695f564c43392f313e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000030d172127333f49535d686f7c86929fa4aeb9c2cdd6d0c6bcb1a89e938b7e716a5f554b4038424c56606b737f8c949fa8b2bdc7d1d5ccc3bbafa39991857b6e665c51483e342a1f160c01000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c151e29333e44505c666e7b85929ea4aeb9c2cdd7d1c7bdb2a89e938b7f726a5f554b40352920160c0200000000000000000000000000000000010d19242f3a46525e6874808d99a3aebbc7c8bcb1a79c9083766b6054483c32261b0f030000000000000000000000000000000000000000000000000000000000000000000000000915212e3a45505a62656666666666666666666666666360594f54565d6064676d6f71727374737372706e6c6665615e57535049413e36302920191008000000000000000000000000030e19232c353c4145464646464646464646464646463f3e3a342d251b11070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a4b0bdced7dacfc4bab1a79f98928e8b8a8a8a8b7e7265584b3f3225180c0000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1cec2b5a89b8f827568564c41362a1d110d1a2633404d596673808c99a6b3bfccd6c9bcb0a396897d7063564a3d3023170a000000000000000000020c17222d38414d57616c7581857e756e69625f5854525153545555555453504a4a50565d666d7985929eaab4bfcbd1c5b8aca096877b6e6154483b2e2115080000000006111c262f38414950555d606467686765615e56514b423931281d110800000000000000000000000000000000000000000000071019242f3a444e58626d75818e95a0aab4bfc9d1cac4c1c0c5c6c9cfcac0baaea2989083796d605b51463d32281d140a00000000000000000000000000000000000000000000000000000000030607090d10111211100e0a07060400000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e2d38424b555e686e7c859299a3aebaaea39892857b6e685e554b41382d3e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000060f17222d38414c565f6a717e8b929da7b1bbc5cfd8cec3baafa59f92867c6f675d51453f4a545e68707d87929fa6b0bac4cfd7cec3baafa59f92877d70695e544a40362c22180d0400000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b11171c1f262b343f4a545e69707d8a929da7b1bbc5d0d9cfc4baafa59f92867c6f675d51453e32281e1308000000000000000000000000000000000008131e2a36414c56616e7b86929fabb5c0ccc3b7ab9f94897c6f63584e43372b20150900000000000000000000000000000000000000000000000000000000000000000000000005111d29343f4850565859595959595959595959595956544f47474c5254555c6062646566676666656361605b5454524d46443f382f2a251e170e070000000000000000000000000008141f2a353e464d51525353535353535353535353534c4a463f372d23180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1825323f4b5865727e8b98a5b1becbd8d5c9bdb2a89f959086817e7d7d7d7e7c6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d0c4b7aa9d918477685e5246392d201510152734414e5a6774818d9aa7b4c0cdd5c8bcafa295897c6f6256493c2f2316090000000000000000000006111b262f3b45505a616d7a7a716c615e5654575a545c606161626161605c545a5754545d67727e8b98a3aebac7d3c8bdb2a8988b7e7165584b3e3225180b00000000000a141d262f383f444c5154575a5b5a5854524c45403930281f160c00000000000000000000000000000000000000000000050e19232935414c56606a727f8b939ea8b1bcc6d0c8c0b9b4b3b8b9bec5cdcabeb4aaa0958e81756d62584e443a2f261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e333f4a545d676e7a849197a2abb5bfb4aaa29791847a6d675c53493f333e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000006111b262f3a444e58616c74808d959fa9b3bdc7d1d5ccc1baaea3989184796d605b5144505b666d7a859199a3afb8c2ccd6d0c5bcb2a89e938c7f726b60564d42392e241a10060000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c23282c32373b3c424d57616c73808d959fa9b3becad6d6ccc1baaea3989184796d60594f443a3025190f0500000000000000000000000000000000010d1925303a46535e6974818e99a4afbbc7c7bcb0a69c8f82756a5f54473c31261a0e030000000000000000000000000000000000000000000000000000000000000000000000010c18222d363f454a4b4c4c4c4c4c4c4c4c4c4c4c4c4948443d3a4145474b5153555759595a5a5958565553504a4746423b37332d261d19130d0500000000000000000000000000000d1925313c4650585d5f606060606060606060606060585651493f34291e120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd8d2c5b9ada19690827b7572707071716f6a5f53473a2e2115080000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d1c5b8aca096877a6d6154473c30261d1c1f2a36424d576875828e9ba8b5c1ced5c8bbaea295887c6f6255483c2f22150900000000000000000000000a141d29333e46525d686d6d68615a565e61646769666d6d6e6f6e6d6d666a6764615e56606d7a86929facb8c5d2cec1b4a79b8e8174685b4e4135281b060000000000020b141d262d333a4145474b4d4f4e4b4746413a342e271e160d04000000000000000000000000000000000000000000020b17202b353d45525d686f7c86929fa5afbac3cecac0b6aea8a6abadb3bbc5cfc5bcb1a79e938b7f726a60564c42382d22170f05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3e44505b666d79839096a1a9b3bdc6bcb3a9a0969082796d655b50443f3e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000a141d28323c46505a606d78839097a1abb5c0cbd7d6cbbfb4aaa0968e81756d62584f59606c78828f97a1abb5c0cad4d6cabfb4aaa0968e81756d62594f443b30271c1208000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b141b22272e34383c43474949505359606d78839097a2adbac1cbd7d7cbbfb4aaa0968e81746b61564c41362a21170b020000000000000000000000000000000008131e2a36424d57626e7b87939facb9c2ccc2b7aa9e94887c6f62574d42372b1f140900000000000000000000000000000000000000000000000000000000000000000000000006111b242d343a3d3e4040404040404040404040403d3c38332f35393a404546484b4c4d4d4d4c4b4a4846443f3b3a36302b27221b140b0802000000000000000000000000000000101d2935414d58626a6c6c6c6c6c6c6c6c6c6c6c6c6c65625b51463a2e22160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd8d1c4b8ab9e91847a6e696564636465625f584e43372b1f12060000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d4c8bdb2a8978a7d7064584e42382f2b292c303946525e697784919daab7c4d0d5c9beb3a994877b6e6154483b2e2115080000000000000000000000020b17202935414c565d61615e5d6065686d70737678797a7b7b7b7a79787673716e6863606775828f9ca8b5c2cfcfc2b5a99c8f8276695c4f432d22170b000000000000020b141b22272f35393a3e4142413e3a39363028231d150c04000000000000000000000000000000000000000000000a141d29323d47515b606d7a849198a3aeb7c1cccdc2b8aea49c999ea1a9b3bec9cec3b9afa59f92877c6f685e544a3f332821170c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e47515b606c78818f959fa8b2bcc5cfc5bbb2a89f948e81776c605a50473e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000020b16202a343e45515c666e7b859299a3afbbc1ccd5d0c6bcb2a89e938b7e726a5f56606b737f8c949fa9b2bdc7d1d4cac2baaea2989184796d605b51473d32291e150b00000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810181d262d33383f44464e5455535b606162666e7b85929fa5afbac6d2dcd1c6bcb2a89d938a7d70685e52463e33291d140a00000000000000000000000000000000020e1a25313b47535f6a75828e9ba6b0bbc7c7bbb0a69b8e8175695f53473b31251a0e0200000000000000000000000000000000000000000000000000000000000000000000000009121b22292e3132333333333333333333333333302f2c2724292c2e34383a3c3e3f404140403f3d3b3938332d2d2a251f1b17110a020000000000000000000000000000000000121f2b3845515d6a7479797979797979797979797979726d62564a3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd6cabfb4aa998c7f73685e575757575855534e463c31261b0f030000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d9cec2b5a89c8f82756a5f544a413a3734383b424c56616e7b8796a0acb8c5d1d2c6b9ada197877a6d6054473a2d21140700000000000000000000020b141b2227343d444c52555d60676d72767a7d808284868788888887868583807d7a75706c6573808d9aa6b3c0cdd0c3b7aa9d9084776a53493f33271b0f03000000000000020a11171e24292c2d31343534322e2d2a251e18120b030000000000000000000000000000000000000000000006111c262f3a444f59626d75828f96a0aab4bfc9cfc5bbb0a69c928d9297a1adb9c1cccbc1baaea39991847a6d665b50443e33291e150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a464f59626d73808d939ea7b1bac4ced7cdc3bab0a69e938d80736c62594f464a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000040e18222834404b545e69707d87929fa5afbac3ced7cec3baafa59f92867c6f675e68707d87939fa6b0bbc4cfd6cdc2b8aea49f92867c6e675d51493f352b20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000109111a222a2f383f444a5053585f6266656c6e6f7070707d8a939ea9b6c2cfdbd8cfc3baafa59e91857a6d615a50453b2f261b11060000000000000000000000000000000009141f2b37424e57626f7c88949fabb7c2ccc1b9ac9f93877b6e62574d42362a1e1308000000000000000000000000000000000000000000000000000000000000000000000000000911181d2124252626262626262626262626262322201c191d2023282c2d2f31323334333332302e2d2b2822201e1a140f0b0600000000000000000000000000000000000000131f2c3946525f6c79868686868686868686868686867f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd3c7baaea298887c6f62564d4a4a4a4b4847433c342a20150a000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded2c6b9ac9f93877c6f665c514b46424045474d545d68737f8c99a8b2bdc8d4d1c5b8ab9e928578685d5245392c201306000000000000000000000a141d262d333f464e555c60676d727a7e83868a8d8f9192999495949a9392908d8a86827d7870727f8c98a5b2bfcbd1c4b8ab9e918578655b5044372b1f12050000000000000000060b13191d2021242728272521201e19130c070000000000000000000000000000000000000000000000050e17222d38424c56606b727f8c939ea8b2bcc6d1cabeb3a99f948d8085929ea5afbac4d0cbbfb4aba1968f82786c60594f453b30271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574a4e58616b727f8b929da5afb9c2ccd6dfd5ccc2b8afa59c928b7e716b60584e4a5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000061018232e39424d57606b727f8c939ea8b1bcc5d0d5ccc1baaea39891847a6d666e7a859199a4afb8c2cdd6cfc4bbb0a69d928a7e716a5f554b41372d23190e050000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a131b232c343c414950545c60656a6f7376797a7c7d7d7d7c818e9ba7b4c1cedae1d5ccc0b9ada1978f81756c61574d41382d22170b03000000000000000000000000000000030e1a26313c4754606a76828f9ca7b1bcc7c7bbafa4998e8174695e53463a3025190d0100000000000000000000000000000000000000000000000000000000000000000000000000060c11151718191919191919191919191919161613100d1113181c1f2022242626272726252322201f1c1714110e0903000000000000000000000000000000000000000000131f2c3946525f6c798592939393939393939393938b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd2c5b8ac9f9285796c6053463d3d3e3e3c3a37312a22180e03000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded4c8bbafa49a9082786d605d55534d4b5153575e666d7a85929fabb8c3ced9cfc2b5a99c8f827669564c4135291d110400000000000000000006111b262f383f44515860676d72797f858b8f93999a9c9e9fa3aba2aca49f9f9d9a99938f89847d747e8a97a4b1bdcad2c5b9ac9f9286796c605346392d20130600000000000000000001080d111314181a1c1b181413110d08020000000000000000000000000000000000000000000000030c172028333f4a545e686f7d87929fa6b0bac4cfccc4b9ada2978f82787e8a939da8b2bdc7d1c6bdb2a89f948c80736b61574d43392e23181006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164574d575f6a707d87929fa4aeb7c1cbd4dee7ded4cbc1b7aea49f92877d706a5f564c5764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000007121d27303b454f59636d75818e95a0aab4bfcad6d7cbbfb4aaa0968e81756d78828f97a1abb5c0cad4d1c7bdb3a99f948d80746c61584e433a2f251b1107000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141c252d353e464e535b60666d72777c8083858789898a8a888e939ea9b6c2cfdbe7ded5c9beb3a99e938b7e71695e53493f33271f1409000000000000000000000000000000000915202b37434e5863707d89959fabb7c3ccc0b5ab9f92867b6e61564c41362a1e130800000000000000000000000000000000000000000000000000000000000000000000000000000105090b0b0d0d0d0d0d0d0d0d0d0d0d0d0a0907040104070c1013131518191a1a1a1918171513120f0b0605020000000000000000000000000000000000000000000000131f2c3946525f6c7985929f9f9f9f9f9f9f9f9f988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b8ab9e918578655b5044373031322f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded8ccc0b6ac9f948d80756d67615f57555c6063696e78828f97a2adbac6d5d7cbbfb5ab998d8073665a4d402f24190d010000000000000000071017222d384149505b626a6f797f858c92979c9fa4aba9abacafb5aeb6afacaba9aba49f9c969189817e8a97a4b0bdcad3c7bbaea399877a6d6054473a2d2114070000000000000000000000010406070b0e0f0e0b07070501000000000000000000000000000000000000000000000000000a151e29333b44505b666d7a849199a3afb8c1cccfc4baafa59e92857b6e74818e96a1abb5c0cccfc4bab0a69f93887d70695e554b40342822180d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d716457555e696f7c869299a3afb6c0c9d3dde6e2e6ddd3c9c0bbafa39992857c6f685e555764717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000b151e29333d47515b606d79839198a2aebac0cad4d1c6bcb2a89e938b7f73808c949fa9b3bdc7d2d7cbc0b5aba1979082786d605a50463c31281d130a00000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c1f13060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121c262e373f474f585f656c71787e84888c8f929895969696959b9ea5afbac6d2deeae6dacfc4bbafa59f92857b6e655b50443b30251a0d03000000000000000000000000000000030f1b27323c4854606b7683909da7b1bcc8c7bbaea3998d8074685e52463a2f24190d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040607090b0c0d0e0d0d0c0a08060603000000000000000000000000000000000000000000000000000000131f2c3946525f6c7985929facacacacacacaca5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e493f3327242522211f1b150e060000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1deddd2c7beb0a69d928d817a736e696a6a676d6f747b828f949fa9b3becad6d3c7bbaea3998a7e7164574b3e312418080000000000000000040e182227333f49535b606d727c848c92979ea2a9acafb5b6b7b9bbc0bbc0bbb9b8b6b5afaca8a09d938e86929facb8c5d2d7cbbfb5a093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b454f59606c78828f96a1abb5c0cad1c7bdb2a89d938a7e71696d7a849199a4afbbc3cfccc2bbafa49a92857b6e675c51453e342a1f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164545d676e7b849198a2abb5c0c8d2dbdfded6dedfdbd7cbc0b5aba29791847a6e675d5464717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000030c17202b353f45515d676e7c86929fa4aeb8c2cdd6cfc3baafa59f92867f87939fa6b0bbc4d0d5ccc3bbafa39991857a6e665c50483e342a1f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f5246392c160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101b242e3840495159616a6f787e848b9196999c9fa2aaa3a3a3a2a7a9afb7c1cbd7e2eeebe1d6cdc1baaea2988f82776c60574d42362a1f150b010000000000000000000000000000000a15202c38444f5963707d8a95a0acb8c4cbbfb5ab9f92867a6d61564c4135291d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000131f2c3946525f6c7985929facb8b9b9b9b9b2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e51442d2217181515120f0a03000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1dee4d9d0c2b8aea49d938e857f7b78777777797c81868f949fa6b0bbc5cfdbd2c5b9ac9f92867a6d6154473a2e21140700000000000000020c16202a343c44505b656c737f8791969ea1a9adb3b9bbc0c2c4c5c7cbd1ccc8c6c5c3c0bbb9b2aca59d989298a2aebac7d3dcd1baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f17232e38424d57606b73808c949fa8b2bdc7d1cbc0b5aba0968e81746c6167707d87939fa7b1bdc6d1ccc0b6aca2979083796d605a50463c31281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d71645c666d79839096a1aab4bdc7d1dad5d2d1c9d1d2d5dad1c7bdb3a9a1969083796d665b64717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000050e19232935414b555f6a717e8a929da6b0bbc4cfd5ccc1baaea398928c9399a4afb8c2cdd6cec3b9afa59f92877d6f685e544a3f362c22180d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5f524631281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18222d36404a525b626b707c838a91969ea0a8a9acaeb4b0b0b0afb4b6bac1c9d2dde8f3f2e8dfd6cabeb3aa9f948b7f72695e52463e31271d120700000000000000000000000000000004101b27323d4855616b7783909da8b2bdc9c6baaea2988d8073685d5245392f24180c000000000000000000000000000000000000000000000000000000000000000000000000000002060808131313131313131313131313130b0a080500000000000000000000000004090c0f0f13131313131313131313131311100e0a05000000000000000000000000131f2c3946525f6c7985929facb8c5c6c6beb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e06090806030000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1dee5e2d4cac0b6aea59e97928c888583838486898d92989fa6b0b8c2cdd7d5c9bdb2a89b8f8275685e5246392d2013070000000000000008131e28323c46505a606c77808b9299a0a8adb3b9bec5c7cbc7c5c2bfbdbcbbbcbdbfc2c5c7c3bdb8afaaa29fa2aab4bfcad6d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c182128343f4a545e69707d87939fa6b0bac4cfcec6bbafa3999184796d605a606b73808d95a0abb4bfcbd2c7beb3a99f958d80746c61584e433a2f24191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7164606d78828f95a0a8b2bcc5cfd6cfc9c6c4bcc5c6c9cfd6cfc5bcb2a89f958f81786c6064717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000071118242f3a434e58616c73808d949fa9b2bdc6d1d7cbbfb4aaa39f989fa4abb5c0cad4d0c5bcb1a79e938c7f726b60564d42382e241a0f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313d495663707c8996a3afbcc9d6d2c5b8ac9f9285796c5a50433a2f24190c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a343e48525c636d727d8690959ea0a8acb2b6b8babfbcbdbdbbc1c2c6cbd2dbe4edf1f6f1e6dbd0c5bcb0a69f92867b6e61594f43392f23180c010000000000000000000000000000000b16212c38444f5964717e8a96a0acb9c4cabfb4aa9f92857a6d60554b4035291c1207000000000000000000000000000000000000000000000000000000000000000000000003090e12141520202020202020202020202020171714110c05000000000000000002091015191b1c2020202020202020202020201d1c1a16110b0300000000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1dedbd3ccc6c3c0b7afa9a19e99979190909192999a9fa2aab0b8c2cad4d5ccc4b9aca1968a7d7063564c41362a1d1105000000000000010d1925303a444e58616c73808d929fa3abb2b9bec5cac9c6bfbab8b5b2b0afaeafb0b2b5b9babfc6c0bcb4aeacaeb4bcc6d0dbd3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e29333b44505c666e7b859299a4afb8c2ccd0c6bcb1a79f92877d6f675d5159606d79839099a3aebac2ced0c5bbb1a79d928b7e716a5f554c41352923190e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d71646d74808d949ea7b1bac4ced6cdc4beb9b8afb8b9bec5cdd6cec4bab1a79e938d80746d64717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000007131d28313c46505a606d78828f96a1abb5bfcbd7d1c6bcb4aeaca5acafb5bdc7d2d6cabeb4aaa0958e81756d62594f443b30261c1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b18242f39434f5963707d8996a3b0bcc9d6d2c5b8ac9f9285796c61564c4135291e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323c46505a636e737f8792989fa7acb2b8bdc2c5c6cad0c9c9c8ced1d2d4d8dddee1e5eaf1ece1d7cec2baaea2988e81756b61554b4034291d120700000000000000000000000000000004101c28333e4653606d7884919ea9b2bdc9c6baada2978c7f72675d5145392e23180c00000000000000000000000000000000000000000000000000000000000000000000060e151a1e21222d2d2d2d2d2d2d2d2d2d2d2d2d2423211d171008000000000000030c141b212528292d2d2d2d2d2d2d2d2d2d2d2d2a2926221c150d05000000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1ded3c9c1bab6b5b7b8b3adaba9a19e9d9d9e9fa3abacaeb4bcc2cad4d6ccc3baafa59e9184786d6053463a3025190d0100000000000005111d2935414c565f6a717e8a929ca4aeb5bdc4c9ccc4bdb9b4aeaca9a5a4a3a2a2a3a5a9acaeb4b9bec4bfbab8babfc6ced8e2d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303b45505a606d78829097a1abb5c0cad6cabfb4aa9f958c80736b60554b515c676f7c86929fa6b0bcc5d0cdc3b9aea49f92867c6f675d51453f352b20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d716c727f8c929da6b0b9c3ccd6cec4bbb2adaba3abadb3bbc5ced6ccc3b9afa59d928b7f726b717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000010c161f2a333e44505c666e7a849199a3aebbc1cbd5cfc6bfbab9b2b9bbc0c7d0d4cac2baaea2989183796d605b51473d32291e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d2935404b55606b74818e9ba7b4c1cedad3c6baaea2988a7d70685d52453d30271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000010d1924303a444e58616c73808b9299a2aab1b9bdc3c8ced2d2d1d0cac6c5c4c5c6c8ccd2d2d4d9e0e6ebe9e0d6cabfb4aa9e938a7d70675c5145392f24180c000000000000000000000000000000000b161f2b3844505c66717e8b96a1adb9c5cabeb3a99e9285796d60544a4034281c11060000000000000000000000000000000000000000000000000000000000000000060f1820262b2e2f3939393939393939393939393931302d28221a120800000000020c151e262c3134363939393939393939393939393736322d271f170d030000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4d1d7ccc1b7afaaa8aaacb1b9b8b3adabaaaaaaacafb5b8babfc5ced6d0cac3bab2a89e938a7d70665c504438281e1308000000000000030d17212d3946525e686f7c86929fa4aebbbfc6cfc7c0bbb2acaaa39f9c999796959697989c9fa3abadb3bbc0c7c5c7cad0d8e0ead3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18232e39434d57616c73808d949fa9b3bdc7d2cdc4baaea2989083786d60594f434b555f6a727f8c949faab4bfcad6cbc0baaea29891847a6d605b51473d32291e150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d71707e87939fa4aeb8c1cbd5cfc5bcb2a9a19e969ea1a9b3bcc6cfd4cbc1b8aea49f92877d70717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000040d182128343f4a545e686f7d87929fa5afb9c3cdd7d1cbc7c5bfc6c7ccd2d6cdc2b8aea49f92867c6e675d51493f352b20170c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f3845515d67707d89939da9b6c2cfdbd6cabfb4aa9e91847a6d60594f43392e23180b0200000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414c565f6a717e8b929fa3abb4bcc3c8ced4cfcac6c5c0bebab8b7b8b9bbc0c4c5c8ced5dae0e8e7dbd0c6bcafa59e9184796d60554b4035291d100400000000000000000000000000000003101c28343f4a54606d7984919ea9b3becac5b9ada1978b7f72665c5144382d22170b00000000000000000000000000000000000000000000000000000000000000030e18212a31373a3b464646464646464646464646463e3d39332c241a100500000009141e2730373d414246464646464646464646464644423e3831291f150b0000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7c4ccccc6baafa59e9b9da0a7afb9bdb9b8b6b6b7b9bbc0c5c6cad0d0cbc5bebab1a8a0968e81756b61544a3f3428160c0200000000000009141f2a36424d57616d7a849198a2aeb6c0cbcec5bdb5afa8a19e98928f8c8a8988898a8c8f92999ea1a9aebabfc6ced6dbe2eae0d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18212834404b555f69707e8a929da6b0bbc5d0cfc4bbb0a69f92867b6e665c50473d434e58606c78829098a2aebac1cdcacabfb4aaa0968f81756d62594f443b30261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d717c869299a4afb6c0cad3d1c6bdb4aaa19791899297a1aab4bdc7d1d3cac0bbafa39992867c717d8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000060f17232e38424c56606b727f8b939ea7b1bbc5d0d9d7d3d2cbd2d4d7d8cfc4bbb0a69d928a7e716a5f554b40372d23190e05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424e58606d7984919ea5afbac6d2dedbd0c6b9ada1968d81746b60554b4034281d140a0000000000000000000000000000000000000000000000000000000000000000000000000000030d17212d3946525d686f7c86929fa4afb5bdc5ced4d0cbc5beb9b8b3b3aeabaaabacafb6b7b8bdc3c9cfd6dfe6e2d7cec1b9aca0968c8073675d5145392c1f1409000000000000000000000000000000000b17232e3845515c67727f8c97a2adb9c5c9beb3a99e9184796d60544a3f33281c0f030000000000000000000000000000000000000000000000000000000000000915202a333c424748535353535353535353535353534a49453e362c22170c000004101b26303942494d4f535353535353535353535353504f4a433b31271c110500000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb7bfbfbfbfb6aa9e938e90959ea5acb2b9bdc3c3c4c5c7cbd1ccc8c6c3bfbab3aea79f9691847a6d61594f42382e231705000000000000020e1a25313a46525e6973808d96a1aab4bfc8cfc5bcb3aba49f96918b86827f7d7c7b7c7d7f82868b91979ca4aeb4bcc6cfd9e3eee0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000915202a333c45515c676e7b85929fa4aeb8bdbdbdbdbeb3a99e938b7e71695f544a3f343c44505b666e7b86929fa6b0bbbdbdbdbdbcb2a89e938c7f726b60564c42382e23170c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cabdb0a4978a7d7b859198a2abb5c0c8d2d7cbbfb5aba29891857c859298a2abb5c0cbd7d7cbc0b5aba29891847b7e8a97a4b0bdcad7d2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000000006111c26303b444f59626d75818e95a0a9b3bec7d2dde0dfd8dfe0dcd1c6bdb2a99f948d80736c61574e433a2f251b110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f1c28333f4a545f6a73808d96a0acb7c1cbd6e2e2d5c9bdb2a99f93887d6f675c51453c2f261c11060000000000000000000000000000000000000000000000000000000000000000000000000009141f2a36424d57616d7a849198a2aebbc0c7cfd6cec6bfbab3adaba7aaa29f9e9e9fa4acaaacb2b9bdc4cdd4dce6e0d5c9bdb2a89f9285796d6053473b31251a0e0200000000000000000000000000000006111c2834404b55606d7985929eaab4bfcac5b9ada1968b7e71665b5044382b1f160b0000000000000000000000000000000000000000000000000000000000020e1a26313c454d535560606060606060606060606060575550483e33281d1105000915212c37424b545a5c6060606060606060606060605d5b554d43382d22160a00000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919eabb2b2b2b2b2b2a89b8e81838e939ea0a8acb2b6b8bcbcbebdbcc0bbb9b6b4aeaaa29f9590847b6e685e52473e30261c110600000000000005121e2a36424d57616e7b86929fa8b2bcc6d0c7bdb3aaa299938c847e79767271706f6f7072767a7f858d929fa2aab4bdc7d1dce8e0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000020f1a26313c46505a606d79839097a2adb0b0b0b0b0b0b0ada1978f82756d62574d42382e333f4a545f69717e8b949ea9b3b0b0b0b0b0b0afa59f92877d6f685e544a3f34281c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d7cbbeb1a4988b7e839097a1aab4bdc7d2d2c8c0bbaea39992867c707c869299a3afbbbfc9d2d1c7bdb4aaa19690837e8b98a4b1becbd7d2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000000000a151e29323d46515b606d79839097a2acb6c0ccd8e4ece5ece3d7cbbfb5aba1969082786d605a50453c31281d130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e1a242b3844505b666f7c87929fa8b2bdc9d2dde8e6dacfc4bbafa49a9184796d60584e42382d22170b030000000000000000000000000000000000000000000000000000000000000000000000020e1a26313a46535e6974808d96a0aab4bfcbd1d6ccc4bcb4aea9a19e9a9698929192939a999ea0a8adb2bbc2cad4dce5d9cec4baada2978b7e7164574d42362a1e1205000000000000000000000000000000000c18232e3945515d67737f8c98a2aebac6c9bdb2a89d9184786c6053463d33271c10040000000000000000000000000000000000000000000000000000000006121e2b37424d575f6c6c6c6c6c6c6c6c6c6c6c6c6c6c64615a5045392d211408000c1925313d49545d65696c6c6c6c6c6c6c6c6c6c6c6c6a665f554a3e32261a0e00000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b7884919ea6a6a6a6a6a6a6a6998d807a818b91969ea0a8aaacb1b0b1b1b0b6afacaaaaa39f98928c837a6e695e564c41352c1e140a000000000000000714212d3a46535e6974818d98a3aebac4cecbc0b5aba29892877f79716d6766646362636465676d7279808a9298a2abb5c0cbd7e2ebd3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e58616c74818d95a0a9a3a3a3a3a3a3a3a3a49e91857a6d615a50453c30262d38424d57626c75828f97a1a3a3a3a3a3a3a3a3a3a39991857a6e665c5044382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2ded1c5b8ab9e92859095a0a9b3bcc6d0d3cac0b6ada39f92877d706a707d87929fa4aeb7c1cad3cfc6bcb2a9a0959085929eabb8c5d1ded2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000000000030c17202b343f45515d676e7b85929aa4afbbc8d4e0edf2ede0d3c7bbaea39991847a6e665c50483e332a1f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16202a36424d57606c78839099a3afbac4cedbe4eeebe0d8ccc0b6aca0968c80736a5f544a3f33281f1409000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d57616e7b86929fa8b2bcc6d0d6ccc4bab2aaa39f97928d898685848586898c91969ea1a9b0b8c2cad4dee0d6cabeb3a99d908376695e53463a2d2114060000000000000000000000000000000007121d2935404b55616d7a85929faab4bfcbc4b8aca0968a7d7164594f44382c21160a000000000000000000000000000000000000000000000000000000000814212e3a47535f697679797979797979797979797979716c6155493d3023170a000f1b2834414d5a6570757979797979797979797979797771665b4f4236291c1000000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b788491999999999999999999998d8073747e848b9196999da0a7a3a4a4a3aca49f9d9998928d857f796d685e574d443a30231a0c02000000000000000815212e3b4854616e7b86929faab4bfccd4c7bbafa39992867d726d66605d555756555657555d60676d737e869299a3afbbc2d0d9e4d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f6a717e8a92979797979797979797979797928a7d70685e52483f332a1e262f3b45505a616e7a8592979797979797979797979797979082786d60544a3f34281c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfd2c6b9ada2979297a0a7b1bbc4ced4cbc1b8aea49c918b7e716b616b717f8b929ca5afb8c2cbd5cec4bbb1a7a0979297a2adb9c6d2dfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000000000050e19222935404b555f69707d88939facb9c6d2dfecf8ecdfd2c5b9ac9f92877d6f685e544a3f362c21180d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323a46535e69727f8b959fabb5c0ccd5e0e8e8ebe8ddd2c7beb2a89f92877c6f665b50443b31251a0e05000000000000000000000000000000000000000000000000000000000000000000000714212d3a46535f6974818e99a3aebac4ced7cec4bab2a8a198928c85807d7a787778797c7f848b91969fa6b0b8c2ccd5e0dbd0c5b7ab9f95877b6e6154483b2d22170b00000000000000000000000000000000000d18242f3946525d6873808d98a3aebac7c8bdb2a89d9083776b6155483d32271b0f040000000000000000000000000000000000000000000000000000000815222f3b4855626e7b868686868686868686868686867e7164574a3e3124170b000f1c2936424f5c69758286868686868686868686868683776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e11050000000000000000000000000000000000000000000000000000000000000000000000000000000000121e2b3845515e6b78848c8c8c8c8c8c8c8c8c8c8c8c80736c71787e84898c90959596979796959a93908d8986807a736d675e564d453b32281e11080000000000000005111d2a36414c5666737f8c99a3aebcc6d0c8bcb1a79f92877d706b605c54514b4a4948494a4b51555d606c717d87929fa6b0bec7d2ddd3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b858a8a8a8a8a8a8a8a8a8a8a8a8a8a8a80746b61564c41362d21181d29333f46525e68707e898a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8073665c5044382c1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfd6cabeb3a9a29ea2a9b1b9c3cdd5ccc2b9b0a69d928c7f726c6159626d73808c939da6b0b9c3ccd6cdc3b9b1a9a29ea2a9b3becad6dfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000000000000071018242f39434d57616b75818e9ba8b4c1cedbe7f3e6dacdc0b3a79a8d80746b60564c42382e241a0f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d1924303a44505a616e7b86929fa7b1bdc7d1dededcdbdedfe4d9d0c3bbaea3999083786c60574d42362a20160c020000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b86929fabb4bfccd6d0c6bcb2a8a19691867f7a74706d676b666d6f73787e8490949fa6b0bac3ced9e1d3c7bcb1a7988b7e726553493f33271b0f030000000000000000000000000000000007121d2935414c56616e7b86929fabb5c0cbc3b8aca095897d7063594f43382c20150a0000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8893939393939393939393938a7d7164574a3e3124170b000f1c2936424f5c6975828f939393939393939393939083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e110b0a080500000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f7f7f7f7f7f7f7f7f7f7f7f7f7d7063666d71787c80838788898b8a8988878683807d79746d68605d554c443b332920160c00000000000000000713202d3946525e687683909dabb5bfced1c5b8aca0958c7f726b6159514b45403e3d3c3c3d40454b515a616b727f8b949facb6c0ccd8d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d796d60594f443a30241b0f18212a36414c56616c707d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7e786d6053463a2d20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfdbcfc5bbb3adabadb3bbc3cbd5cdc3bab1a79e938d80746d635a505a636e74818e949fa7b1bac4cdd5cbc3bbb3adabadb3bbc5cfdbdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000000000040d182128343f4a545e686f7c86929facb9c5d2dfecf8ebded2c5b8ab9f92857b6e675d51453f342b20170c030000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2935414c56616c75828f98a2aeb9c3cfd9d7d2cfced1d2d5dad7cbbfb5ab9f958b7f72695e53463e32281e1308000000000000000000000000000000000000000000000000000000000000000005111e2a36414c566673808c99a3afbdc6d1d6cabfb4aaa19691847c736d6763605d555c6062666d717a828f949fa8b2bdc8d4ded8cdc2b5a89c8f8275655b5044372b1f120500000000000000000000000000000000010d1924303a46525e6874818e99a3afbbc7c8bcb1a79c9083766b6054483c32261b0f0300000000000000000000000000000000000000000000000000000815222f3b4855626e7b88959f9f9f9f9f9f9f9f9f978a7d7164574a3e3124170b000f1c2936424f5c6975828f9c9f9f9f9f9f9f9f9f9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000000000000040a0f1926323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b1e19181715110c060000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4a56626d72737373737373737373737373706b605c60666c6f73777a7b7d7e7e7d7c7b7a7773706d67615e56514b433a322921170e0400000000000000000714212e3a4754616d7a86939facb9c6d1c9beb3a99d9183786c60594f454039352f302f302f353940455059626d76828f9aa4afbbc8d4d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b47535f6a6f707070707070707070707070707070706d675d51473e32291e12090f1925303b44505a616b70707070707070707070707070707070706d665c5044382c1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfe1d7cdc5beb9b8b9bec5cdd5cec5bbb2a89f958f81786d605b5148525c606d78828f95a0a8b2bbc5ced5cdc5beb9b8b9bec5cdd7e1dfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000000000010c161f2a333c44505c666d7a849198a3aebac7d3e0ecf0ecdfd3c6baaea2989083796d605b51473d32291e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313946525d68717e8a949eaab4bfcbd4d3ccc6c3c1c4c5c9cfd6d1c6bdb1a79f92867b6e615a50443a3025190d04000000000000000000000000000000000000000000000000000000000000000714202d3946525e687783909dabb5c0cfd8d3c6baaea29891847a6f6a605d5553514b5153545c60686e78828f96a0acb9c2cdd8dfd2c5b8ac9f9285796c605346392d201306000000000000000000000000000000000008131e2a36414d56616e7b87929facb6c0ccc3b7ab9f94897c6f63584e43372b1f150900000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1acacacacacacaca4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8acacacacacacaa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000000070f161b1f26323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144382b26262524211d17100900000000000000000000000000000000000000000000000000000000000000000000000916222e3a46515b626566666666666666666666666663605950545b606266676d6e707171706f6e6d676663605c55524c454039312920170f050000000000000000000b1824313e4b5764717e8a99a4afbbc7d2c6b9ada1978a7e71665b50473e342e292423222324292f353e47515b626f7c87939facb9c6d2d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e585f6264646464646464646464646464646464605d554b40352c20170c0008141e29323e485059606364646464646464646464646464646464605c544a3f34281c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfe9dfd7cfcac6c5c6cacfd7cfc6bcb3a9a0969083796d665c50494044505c666d79839096a0a9b3bcc6d0d7cfcac6c5c6cacfd7dfe9dfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000000007131d28313c45505a606d78828f96a1aab4bfcbd7e3ebe4ece2d6cabeb3aaa0958e81756d62594f443b30261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000020b18232f39434f59616d7a85929ea6b0bcc6d0d3c9c1bab6b5b8b9bdc4ccd6cfc2baaea2988f82766c61564c41362a1f160c010000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7a87939facb9c6d1d5c9beb3a99f92867c6f685f58514b47454044464a50565e666d7a84919ea6b0bcc7d3dfd3c6baaea298887b6e6155483b2e2215080000000000000000000000000000000000020e1925303b46535f6975818e9aa4afbbc8c7bcb0a69c8f82756a5f53473c31261a0e03000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aeb9b9b9b9b9b0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5b9b9b9b9b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000007101921272c2f323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e51443833333331302d28221b12090000000000000000000000000000000000000000000000000000000000000000000006121e29343f4951565859595959595959595959595956544f444a505356555d6062636464636261605c555653514b46413a352f271f170e05000000000000000000020e1b2835414e5b6874818e9babb5c0ccd1c5b8ab9e9285786c60544a3f3528231d18161516181d2429353f47545f6a75828f9ca8b5c2cfdac6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26323c464e53555757575757575757575757575757575753514b43392f231a0e0500020d17202c363e474f54565757575757575757575757575757575753504a42382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfece9e1dbd6d2d1d2d6dbd1c7bdb4aaa19791847a6d675d544a3f343f4a545d676e7a849197a1aab4bdc7d2dbd6d2d1d2d6dbe1e9ebdfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000000071118242f3a434e57616c73808d949fa8b2bcc6d1dcdfded7dfe0dbd0c5bcb1a79e938b7f726b60564c42382e23170f0600000000000000000000000000000000000000000000000000000000000000000000000000000a141d2934404b55606b74818e97a1adb8c1ced7cdc1b7afaaa8abadb2bac4cfd6cabfb4aa9e948a7e71685e52463d31281d12070000000000000000000000000000000000000000000000000000000000000b1825323e4b5865717e8b9aa4afbbc8d4d2c6b9ada1978c7f736a5f564e45413a3935383a3f444c545d68707d8a949fabb7c4d0ddd6cabfb4aa978a7d7064574a3d3124170a00000000000000000000000000000000000008141f2a36424d57626f7c87939facb9c2cdc2b7aa9e94887c6f62574d42372b1f1409000000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc6c6c6bdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2c6c6c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000000040f19232b32383b3c404c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e5144404040403e3d39342d241b1006000000000000000000000000000000000000000000000000000000000000000000010d18232d373f464a4c4c4c4c4c4c4c4c4c4c4c4c4c4948443d3f4446494c51545556585756555453514b4a47454039363029241d150d050000000000000000000003101d2a3643505d697683909ca9b6c3d2cec1b5a89b8e8175665b5042382d2318120c0709070d1218232b37434e5865717e8b98a9b3becad6c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202a343c4347494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4745403931271d1108000000050e1a232c353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a46443f3830261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf3ece6e2dfdedfdbd7cbc0b5aba29892857b6e685e554b42382e38424b555e686e7b859298a2abb5c0ccd7dbdfdedfe2e6ecf3ebdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000000000050f19232935404b555f6a707e8a929ca6b0bac4cfd8d6d3d2cad2d3d7d7cec3b9afa59f92877d6f685e544a3f342821180d0400000000000000000000000000000000000000000000000000000000000000000000000006111c262f3845515c67707d89939da9b3becad3cfc5bbafa59e9b9ea1a8b2bdc9d5d0c6bcb0a69e92857a6d61594f43392f24180c0300000000000000000000000000000000000000000000000000000000020e1b2835414e5b6874818e9bacb6c0ccd8d1c5b8ab9e9285796d60584e443c352f2c292c2e343b424c56616b7683909ca9b6c3d0dbdbd0bfb2a5988c7f7265594c3f3226190c000000000000000000000000000000000000020e1a26313b47535f6a75828f9ca6b0bbc7c7bbb0a69b8e8175695f53473b30251a0e020000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d2cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000000a16212b353d4348494c4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e514c4c4c4c4c4b49453e362d22170c0000000000000000000000000000000000000000000000000000000000000000000007111b252d343a3e3f4040404040404040404040403d3c38333338393c414547484a4b4b4a49484745403d3a38342f2a251e18120b03000000000000000000000004101c2834404b556a7784919daab7c4d0cbbeb1a4988b7e7165544a3f2f261c1107000000000107111b26323c4754616e7a8797a1adb9c6d2c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e18222a32373b3c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a38352f271f150b000000000008111a232b33383c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3a38342e261e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8f7f2eeece5dcd2c9c0bbafa39992867c6f695f564c43393026303a434c565f696f7d869299a4afbbc0c9d3dce6eceef2f7f8ebdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000000030c17212b353d45515d676e7c86929fa4aeb8c2ccd6d0cac6c5bdc5c7cbd1d5cbc1bbaea39991857a6e665c50443e332a1f160c0100000000000000000000000000000000000000000000000000000000000000000000000b17222d38424e58606d7984919ea5afbbc5cfd6cabeb3a99e938e9196a1adb9c1ced7cec2b9ada1978e81746b60554b4035291e150b0000000000000000000000000000000000000000000000000000000003101c2936434f5c6976828f9ca9b5c2d2ddcdc1b4a79a8e8174675d51463c322924201d1f2328303a444f5965727e8b98aab4bfcad6d9ccbfb3a6998c807366594d4033261a0d0000000000000000000000000000000000000009141f2b37434e58626f7c89949fabb7c3ccc1b9ac9f93877b6e62574d42362a1e13080000000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000030f1b27323d474f545659595965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e595959595959585650483e34281d11050000000000000000000000000000000000000000000000000000000000000000000009131b23292e3132333333333333333333333333302f2c27282b2d2f35393a3b3d3e3e3d3c3b3a38342f2d2c29231d19130c070100000000000000000000000006131f2c3845515c677885929fabb8c5d2c9bcafa396897c706356493d2d23140a000000000000000a15202d3946525e687885929eabb8c5d1c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101820262b2e2f313131313131313131313131313131312d2c29241d150d0300000000000008111921272c2f30313131313131313131313131313131312d2c28231c150c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8fff9f0e6ddd3cac0b7ada49f92877d706a60574d443a31271e28313b444d57606b707e87939fa4aeb7c1cad4dde7f0fafff8ebdfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000000000000b151e29333d47515b606d79839198a2aeb6c0cad4cec5bebab8b1b9babfc6cfd7cbbfb5aba1979082786d605a50463c31281d130700000000000000000000000000000000000000000000000000000000000000000000040f1c28333f4a545f6a73808d96a0acb7c0cdd6cfc7b9ada2978e8184919ea6b0bcc6d0d5c9beb3a99e93897d70675d51453d30271c120700000000000000000000000000000000000000000000000000000003101c28343f4a546a7784909daab7c3d0d6c9bdb0a3968a7d7063554b40342a2018131012171e28323e4754616e7b8798a2aebac6d3dacdc0b3a79a8d8074675a4d4134271a0e00000000000000000000000000000000000000030f1b26313c4754606a76828f9ca7b1bcc8c7bbafa4998e8174695e52463a3025190d0100000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2ccbfb2a5998c7f7266594c3f3326190600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c000000000000000000000000000000000000000007131f2c38434f59606366666666727f8c98a5b2bfcbd1c4b7aa9e9184776b6666666666666664615a5045392d21150800000000000000000000000000000000000000000000000000000000000000000000010911181e2225252626262626262626262626262322201c1c1f2024292c2d2f303131302f2e2d2c2923201f1c18120d080200000000000000000000000000000713202d3a4653606d798697a2adbac6d3c8bbaea295887b6f6255483c2f2215090000000000000005111e2a36414c566a7784909daab7c3d0c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070e151b1f212224242424242424242424242424242424201f1d18120b030000000000000000080f161c20222324242424242424242424242424242424201f1c17110a0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8faf1e7ded4cbc1b8afa59c928b7e716b61584e453b32281f161f29323c454f59616c727f8b929ca5afb8c2cbd5dee8f1fbf8ebdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000000007121d27303b454f59636d75818e95a0aab4bec8d1d0c5bcb4aeaba4acaeb4bdc6d1d1c6bdb2a99f948d80736c61584e433a2f241811070000000000000000000000000000000000000000000000000000000000000000040e1a242b3844505b666f7c87929fa8b2bdc9d2d1c7bdb1a79e92857a7e8a939eaab4bfcad6cfc5bbafa59e9184796d60584e42392e23180b02000000000000000000000000000000000000000000000000000006121f2c3844505c667885929eabb8c5d1d4c7bbaea194887b6e6155483b2f22180e0704060c16202d3a46525e697985929facb8c5d2dacdc0b3a79a8d8074675a4d4134271a0e00000000000000000000000000000000000000000a15202b38434e5863707d89959fabb8c3ccc0b5ab9f92867b6e61564c41362a1e130800000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2ccc0b3a6998d8073665a4d402d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c00000000000000000000000000000000000000000915222f3b4854606b6f73737373737f8c98a5b2bfcbd1c4b7aa9e9184777373737373737373716c6156493d3024170a000000000000000000000000000000000000000000000000000000000000000000000000070d12161819191919191919191919191919161613100f1213191d202122232524232221201f1c181413100c0701000000000000000000000000000000000814212e3b4754616e7a8794a9b3becad6c7baaea194877b6e6154483b2e21150800000000000000020e19253043505c6976838f9ca9b6c2cfc6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f131516171717171717171717171717171717171413100c070100000000000000000000050b10131617171717171717171717171717171717171312100c06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf8f2e9dfd6ccc3b9b0a69d938c7f736c62594f463c332920160d17202a333d46505a626d73808d939ea6b0b9c3ccd6dfe9f3f8ebdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000000071018232e39424d57606b727f8c939ea7b1bcc5d0d6cabeb4aaa29f979fa3abb4bfcbd7cfc4bbb0a69d928a7e716a5f554b40352923190e05000000000000000000000000000000000000000000000000000000000000020c16202a36424d57606c78839099a3afbac3ced7cbc0b5ab9f958b7e7175828f98a2aebac3d0d7cdc1b9aca1968d80736a60544a4034281d140a00000000000000000000000000000000000000000000000000000713202d3a4653606d7986939facb9c6d2d3c6b9ada093867a6d6053473a2d20140700000005111e2a36424d576a7784919daab7c4d0d9ccbfb2a6998c7f7366594c403326190d0000000000000000000000000000000000000000040f1b27323d4854606b7783909da7b1bcc8c7bbaea3998d8074685e52463a2f24190d01000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cdc1b4a79a8e817467544a3f33281c0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c0000000000000000000000000000000000000000091623303c4956636f7c7f7f7f7f7f828f9ca9b5c2cfd1c5b8ab9e92857f7f7f7f7f7f7f7f7f7e7164584b3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000106090b0c0d0d0d0d0d0d0d0d0d0d0d0d0a0907040306080d111314151718181716151413100c070604000000000000000000000000000000000000000714202d3a4753606d7a8698a2aebac6d3c8bbaea295887b6f6255483c2f2215060000000000000004111d2935414c566a7784909daab7c3d0c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030608090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0706040000000000000000000000000000000407090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0706030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecf3eae0d7cdc4bab1a79e948e81746d635a50473e342b21180e050e18212b343e48515b606c77818e949fa7b1bac4cdd7e1eaf4ebdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000000000040e19222834404b545e69707d87929fa5afb9c3ced5cbc3baaea298928a9299a3aebac1ccd6cdc2b8aea49f92867c6e675d51453f352b20170c03000000000000000000000000000000000000000000000000000000000008131e28323a46535e69727f8b959fabb5c0ccd5d3c7bbafa3999083776c6e7b86929fa7b1bdc7d2d5c9bdb2a89f93877c6f665c51443c2f261b1106000000000000000000000000000000000000000000000000000713202d3a4653606d798698a3aebac7d3d3c6b9ada093867a6d6053473a2d20140700000005121e2a36424d576a7784919daab7c4d0d7cbbeb1a4988b7e7165584b3e3225180b0000000000000000000000000000000000000000000a16202c38444f5964707d8a95a0acb8c4cbbfb5ab9f92867a6d61554c4135291d1207000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cfc3b6a99c908376665b5044382b1f1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001010101010101010105121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190c01010101010101010100000000000000000000000d192633404c5966737f8c8c8c8c8c8f949eaab7c3d0d2c6b9ada297928c8c8c8c8c8c8c8c8c8276695d5043362a1d100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001040607080a0b0b0a0908070604000000000000000000000000000000000000000000000006131f2c3945515d677985929facb8c5d2c9bcafa396897c706356493d2e23170c000000000000000713202c3945525d687885929eabb8c5d1c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfecebe1d8cec5bbb2a89f958f82786d605b52483f352c22190f0600060f19222c363f44505b656d78828f95a0a8b2bbc5cfd8e2ebebdfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000000020b16202a343c45515c666e7b859299a3afb7c1ccd5cec3b9aea49f92867e87929fa5afbac4cfd4cac0baaea2989183796d605b51473d32291e150b00000000000000000000000000000000000000000000000000000000030d1924303a44505a616e7b86929fa7b1bdc7d1d5c9bdb2a89f92877c6f6569727f8c95a0abb5c0ccd7cec4bbafa4999083786d60574d41382d22170b0200000000000000000000000000000000000000000000000006121f2b3844505c667985929facb8c5d2d4c7bbaea194887b6e6155483b2f24180f0804060c15202d3a46525e697985929facb8c5d2d7cbbfb5ab978a7d7064574a3d3124170a00000000000000000000000000000000000000000004101c27333d4653606c7884919da8b2bdc9c6baaea2988c8073675d5145392f24180c000000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d2c5b8ac9f9285796c6053463a3025190f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070d0d0d0d0d0d0d0d0d0d121e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f3225190d0d0d0d0d0d0d0d0d0d0a090704000000000000000d192633404c5966737f8c999999999c9ea6b0bbc7d3d6cabeb3a9a29e9999999999999999908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b556b7784919eaab7c4d1cbbeb1a4988b7e7165544a3f34281c12070000000000061018212d3a4754606d7a86939facb9c6d2c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000105070708090909090808060603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080c0f1212131313131313131313131313130b0a0805000000000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfece3d9cfc6bcb3a9a0969083796d665c504940362d231a100700000007101a2327333f49535c666d79839096a1a9b3bcc6d0d9e3ebdfd2c5b8ac9f9285796c5f5246392c1f130000000000000000000000000000000a141d28323c46505a606d78839097a1abb5c0c9d3d0c5bcb1a79d928a7e727f8b939ea8b2bdc6d1d6cabfb4aaa0958e81756d62594f443b30271c12070000000000000000000000000000000000000000000000000000010b151f2935414c56616c75828f98a2aeb9c2cfd8cec6b9ada1968d80736a5f606d78839099a4afbbc4cfd7ccc0b5aba0958c7f72695f53493f33271f140900000000000000000000000000000000000000000000000003101c28343f4a5f6b7885929eabb8c5d1d6c9bdb0a3968a7d7063554b4035292119131012171e28323b4854616e7b8798a2aebac6d3d3c7bbaea399897c6f6256493c2f231609000000000000000000000000000000000000000000000b161f2b3744505b65717e8b96a1acb9c5cabfb4aa9f92857a6d60554b4035291c12070000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d3c6baaea298897c6f63564c41362a2118120c07050200000000000000000000000000000000000000000000000000000000000000000000000000000000070c1013131a1a1a1a1a1a1a1a1a1a1a1e2b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f32251a1a1a1a1a1a1a1a1a1a1a171614100b0500000000000d192633404c5966737f8c99a6a6a6a9aab0b8c2ccd8dbcfc5bbb3adaba6a6a6a6a6a6a69c908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000000000000000105070709090a0b0a09080706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f43505d697683909ca9b6c3cfcec1b5a89b8e8275665c5044392e2318120b0607080a1117222a36424d5764717e8a9aa4afbbc8d4c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000003060709080d1113141516161616151413120f0b060706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d13181c1e1f20202020202020202020202020181715110c0600000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfe8dcd1c7bdb4aaa19791847a6d675d544a3f372e241b11080000000000081117222d38414a545d676e7b849197a2aab4bdc7d2dde8dfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000000006111c262f3a444e58626c74818d959fa9b3bdc7d1d6cabeb4aaa0958d80746d75818f96a0abb4bfcbd7d0c5bcb1a89e938c7f726b60564d42392e231810060000000000000000000000000000000000000000000000000007121d27313945525d68717e8a949eaab4bfcbd4d0c6bcb0a69e9184796d60585c666f7c87939fa9b2bdc9d5d2c7bdb1a79f92867b6e655b50443b3025190d040000000000000000000000000000000000000000000000000b17232e44505d6a7783909daab6c3d0dacdc1b4a79a8e8174675d51453c3329241f1d1f2328303a44505a65727e8b98aab4bfcad6d2c5b9ac9f92867a6d6053473a2d20140700000000000000000000000000000000000000000000030f1b27333f4953606d7984919ea9b3bec9c6baada2978c7f72675d5145392e23180c0000000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d6cabfb4aa9a8d8074685e52463d3328231c1814110e090a090704000000000000000000000000000000000000000000000000000000000000000000030b12181c1f202727272727272727272727272b3845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f322727272727272727272727272323201c161008000000000d192633404c5966737f8c99a6b2b2b5b7bbc2cad3dee1d7cdc5beb9b8b2b2b2b2b2b2a99c908376695d5043362a1d10000000000000000000000000000000000000000000000000000000000000040607080d111314161617171716151413100c0707050200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071c2835424f5b6875828e9ba8b5c1ced2c5b8ab9f9285796d60544a403428231c17151415141b2227343c46535f6975818e9bacb6c0ccd8c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000104060c1012131619191e202122222323222221201f1c17161413100c0705010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000710181e24282b2c2d2d2d2d2d2d2d2d2d2d2d2d2d2524211d171009000000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfdbd7cbc0b5aba29892857b6e685e554b42382e251c12090000000000000006111b262f39424c555e696e7c859298a3abb5c0ccd7dbdfd2c5b8ac9f9285796c5f5246392c1f1300000000000000000000000000060f17222d38424c565f6a717e8b929da7b1bbc5cfd5cbc3baaea2989083796d606d7a849199a3aebac1ccd6cec3baafa59f92877d6f695e544a40342822180d040000000000000000000000000000000000000000000000020b18232f39434f59606d7a85919ea6b0bcc5d0d6cabfb4aa9e948a7d70675d5154606a74808d96a1adb9c1ced7d0c3baaea3989082776c60564d42362a20160c010000000000000000000000000000000000000000000000061b2835424e5b6875818e9ba8b4c1d0dbd1c5b8ab9e92857a6d60584e453d352f2c292c2e343b424c56616c7683909da9b6c3d0dbcfc3b6a99c908376675d5145392c20130600000000000000000000000000000000000000000000000b17222d3844505c66727f8b97a1adb9c5cabeb3a99e9285796d60544a4034281c110600000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dbd0c5b8ab9f92857a6d61594f453d342e2923201e1a1c161613100b05000000000000000000000000000000000000000000000000000000000000030c151d23282c2d343434343434343434343434343845515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c3f34343434343434343434343434302f2c27211a11080000000d192633404c5966737f8c99a6b2bfc2c3c7ccd3dce5e9dfd7cfcac6c5bfbfbfbfbfb6a99c908376695d5043362a1d1000000000000000000000000000000000000000000000000000000003070c10131417191d202122232424242322201f1c181514120e090501000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323f4b5865727e8b98a7b1bcc8d3c6baada2978b7e71665c51443e342e282322212123262d333d464f59616e7b86929facb9c5d2ddc6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000001070d1113171c1f202326252a2d2e2e2f30302f2f2e2d2b282223201f1d1813110d08030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000610192229303437393939393939393939393939393931302d29221b12090000000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2dfd2c9c1bbafa39992867c6f695f564c433930261c130a0000000000000000000a141d27303a434d565f6a6f7d869299a4afbbc0c9d3dfd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000000040d182128333f4a545e686f7c86929fa4aeb9c2cdd6cec3b9aea49f92867b6e675d686f7c87929fa5afbac4cfd5ccc1bbafa39991857b6e665c51443e342a1f160c01000000000000000000000000000000000000000000000a141d2934404b55606b74818e97a1adb8c1ced7d0c7baaea2988f82756c61554b4e58606d7a84919ea6b0bcc6d0d7cbbfb4aa9f948b7e71695e52463e32281e130800000000000000000000000000000000000000000000000c1926333f4c5966727f8c99a9b3becad6d2c6b9ada1978c80736a5f574e45413a3835383a3f444d545e68707d8a959fabb7c4d1d5c9beb3a9998c7f7366554b4035291d1104000000000000000000000000000000000000000000000006111b28343f4a54606d7985929ea9b3becac5b9ada1978b7f72665c5144382d22170b00000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfd3c6baaea2988d80736b60574e444039342f2d2a25292322201c160f0700000000000000000000000000000000000000000000000000000000000b151e272e34383a404040404040404040404040404045515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584c40404040404040404040404040403d3c38332c231a100500000d192633404c5966737f8c99a6b2bfcccfd2d6dde4edf1e8e1dad5d2d1cacacacac3b6a99c908376695d5043362a1d1000000000000000000000000000000000000000000000000000060b1012181d1f202325292d2e2f30303130302f2d2c292322211e1a14110d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8795a0acb8c7d2cabeb3a99e9184796d605a50444039342e2e2d2e2f2f383f444e58616b75818e99a3aebac7d3d3c6baada093877a6d6054473a2d2114070000000000000000000000000000000000000000000000000000040a0f13181d2023282c2d2f333036393a3b3c3c3c3c3b3b3938332d302d2c2924201e19130f0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d18222b343b404445464646464646464646464646463e3d39342d241b100600000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2d4cac1b7aea49f92877d706a60574d443a31281e150a01000000000000000000020b151e28313b444e58606b717e87939fa4aeb7c1cad4d2c5b8ac9f9285796c5f5246392c1f130000000000000000000000010c161f2a333c44505b666d7a849198a3aeb7c0cbd4d0c5bcb1a79d928a7e71695f56606a727f8b939ea8b2bdc6d1d7cbc0b5aba1979082786d605a50463c31281e130800000000000000000000000000000000000000000006111c262f3845515c67707d89939da9b3becad3d2c7beb1a79f92867b6e615a504345515d67717e8a949eaab4bfcad6d1c6bcb0a69f92857b6e615a50443a2f24190d03000000000000000000000000000000000000000000000916232f3c4956626f7c8997a2adbac6d3d6cabeb3a99f92867c6f696058524c47454044464a50565e666d7a84919ea7b1bcc7d3d2c6b9ada197897c6f6256493c2f24180d010000000000000000000000000000000000000000000000000c17232e3845515d67727f8c97a2adbac6c9beb3a99e9184796d60544a3f33281c0f03000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfd6cabeb4aa9f93877d6f696058514a45403b3a363036302f2c272119110700000000000000000000000000000000000000000000000000000007121d2730394045464d4d4d4d4d4d4d4d4d4d4d4d4d4d4d515e6b7884919eabb7c4d1d8cbbeb2a5988b7f7265584d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a48443d352c21160b00000d192633404c5966737f8c99a6b2bdc1c2c6cbd2dbe4e8dfd6cfc9c6c4bdbdbdbdbdb6a99c908376695d5043362a1d100000000000000000000000000000000000000000000001070c11171c1f24292c2d303035393a3c3c3d3e3d3c3b3a38342f2e2d2a26201e19140f0a030000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a46535e697784909dacb6c0ccd0c5b9aca0968c80736c615a514a443f3c3b3a3b3c3e41495058606a707d88939fabb4bfcbd7d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000000000000050b10151b1d24292c2e34383a3c3f424146474849494949484746443f403d3a38352f2d2a251f1b17110c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e29343d464c5052535353535353535353535353534b49453e362d22170c00000000000000000000000000000000000013202c3946535f6c7986929facb9c5d2cbc2b8afa59c928b7f726b61584e453c32291f160c030000000000000000000000030c161f29323c464f59616c727f8b929da5afb8c2cbd2c5b8ac9f9285796c5f5246392c1f13000000000000000000000007121d28313c45505a606c78828f96a1aab4bfc9d2d6cabeb4aaa0958d80746c61574e58626d75818f96a0abb4bfcbd7d1c7bdb3a99f948d80746c61584e433a2f2419110700000000000000000000000000000000000000000b17222d38424e58606d7984919ea5afbbc4cfd8ccc0b6aca0958c7f72695e53473e414c55616c75828f98a2aebac3d0d8cfc2baada2978f82756c61564c4135291f150b010000000000000000000000000000000000000000000713202d3a4653606d7985929fabb8c2d0d9cfc5baaea29891847b6f6a605d5653514b5053545c60686e78829096a0acb9c2cdd7cbbfb4ab9e9185796d6053463a2d2013070000000000000000000000000000000000000000000000000006111c2935404b55606d7a85929faab4bfcac5b9aca1968b7e71665b5044382b1f160b000000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfdbd0c5bbafa49991857b6f6a605c54514b47464243433d3c38332b23190f0500000000000000000000000000000000000000000000000000000c18232e39424b51535a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5e6b7884919eabb7c4d1d8cbbeb2a5988b7f72655a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a56554f473d33271c1004000d192633404c5966737f8c99a6b0b0b4b6bac1c9d2dde1d6cdc4beb9b8b0b0b0b0b0b0a99c908376695d5043362a1d10000000000000000000000000000000000000000000060b12181c23282b2f35383a3d4041464749494a4a4a49484745403f3b3a36312d2a251e1b150e09030000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d576773808d9aa4afbbc7d2c9bdb2a89f93887e706c605c54504a49484748494a4f535b606a6f7c86929aa4afbdc6d1dcd3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000000000030a0f161c20272b2f35393a3f4446494c4f4c52545555565655555453504a4d494745403a3936302b27221b17110a0300000000000000000000000000000000000000000000000000000000000000000000000000000000000c1824303b464f575d5f60606060606060606060606060585650483e34291d1105000000000000000000000000000000000013202c3946535f6c7986929facb9c5ccc3b9b0a69d938c80736d62594f463d332a20170d0400000000000000000000000000040d17202a343d47505a626d73808d939ea6b0b9c3ccc5b8ac9f9285796c5f5246392c1f1300000000000000000000071118242f39434d57616c73808d949fa8b2bcc6d0d5cbc3baaea2989083796d605a5046515b606d7a849199a3aebac1ccd6cfc4bbb0a69d928a7e716a5f554c41352923190f05000000000000000000000000000000000000040f1c28333f4a545f6a73808d96a0acb7c0cdd6d4c8bbafa49a9083786d60574d42353a43505a616e7b86929fa7b1bdc7d2d6cabeb3a99e938a7e70685d52453d31271d120700000000000000000000000000000000000000000006121f2b3844505c6674818e9aa6b0bdc7d2d6cabfb4aaa19691847c736d6863605d555c6062666d717a8290949fa8b2bdcbd4d3c7baaea3998c7f73665c5044382b1f120600000000000000000000000000000000000000000000000000000c18242f3945515d6773808d98a2aebac6c9bdb2a89d9184786c6053463d33271c10040000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfe2d7ccc0b5aba19791847c736d66605c5554524d4f4f4948443d352b21160b0000000000000000000000000000000000000000000000000004101c2834404b545c6067676767676767676767676767676767676b7884919eabb7c4d1d8cbbeb2a5988b7f7267676767676767676767676767676767676361594f44382c201407000d192633404c5966737f8c99a3a3a3a7a9afb7c1cbd6dacfc4bbb3adaba3a3a3a3a3a3a39c908376695d5043362a1d1000000000000000000000000000000000000000020a11171d24292e34383a4045474a4d4c52545556575757565553514b4c4846423b3936302b26201a140d05000000000000000000000000000000000000000000000000000000000000000000000000020e1a25313c4955626f7c87939fabb5c0cccec4bbafa49a92867e736d66605c545655545456575961656c727c849198a2acb6c0cfd8e2d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000000001070c151a21272c32373a4045474a505356595b565e6161626363626261605b54595653514b4746413a37332d28231c150c08020000000000000000000000000000000000000000000000000000000000000000000000000000030f1c2834404c5761696c6c6c6c6c6c6c6c6c6c6c6c6c6c64625a5045392d211508000000000000000000000000000000000013202c3946535f6c7986929facb9c5c4bab1a79f948e81746e635b51473e342b21180e05000000000000000000000000000000050e18222b353e48515b606c77818e949fa7b1bac4c5b8ac9f9285796c5f5246392c1f13000000000000000000050e19232935404b555f69707e88939fa6b0bac4ced7cec3b9aea49f92867b6e675c51483f45525d686f7c87929fa5afbac4cfd6cdc2b8aea49f92867c6f675d51453f352b21170c0300000000000000000000000000000000040e1a242b3844505b666f7c87929fa8b2bdc9d2d5c9beb3a99f93887c6f665c50453b31313e46535e69727f8c95a0abb5c0ccd7d0c5bcafa59e91847a6d60594f43392f23180c02000000000000000000000000000000000000000003101c28343f4a54626f7c89949fabb5c0ccd7d0c6bcb2a9a1969186807a74706d676b666d6f73797e8590949fa6b0bac4ced6cabeb4aa9f92867a6e61544a3f34281c1003000000000000000000000000000000000000000000000000000007121d2935414c55616d7a86929fabb5bfcbc4b8aca0968a7d7164594f44382c21160a0000000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfe8ddd2c7bdb3a9a19691878078716d6764615e575c5c56544f473d33271c100400000000000000000000000000000000000000000000000006131f2c3845515c666d7373737373737373737373737373737373737884919eabb7c4d1d8cbbeb2a5988b7f737373737373737373737373737373737373706b6155483c2f231609000d192633404c5966737f8c979797979b9da5afbac6d2d5c9beb3a9a19e9797979797979797908376695d5043362a1d10000000000000000000000000000000000000060c141c23282f35383f44464b5153565a565e6162636364636362605c555855534d4746413b37312a251f170f090200000000000000000000000000000000000000000000000000000000000000000000000915212e3b47535f6a75828e99a4afbbc5d0ccc0b6aca29892887f79716d6664636160616264676b70787e869196a1aab4bec7d2e1ead3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000000030b121820262b33383d43474b5153545c606266686a686d6e6f6f6f6f6e6e6c66686663605d5554524c46443f38342e261e19140d050000000000000000000000000000000000000000000000000000000000000000000000000005121e2b3744505d69737879797979797979797979797979716c6256493d3024170a000000000000000000000000000000000013202c3946535f6c7986929facb9c5bbb2a8a0958f82786d605c52483f352c22190f060000000000000000000000000000000000060f19232c363f44505b656d79828f95a0a8b2bcc5b8ac9f9285796c5f5246392c1f130000000000000000030c17202b353d45515d676e7b86929aa4afb8c2ccd6d0c5bcb1a79d928a7e71695f554b4035414c56606a727f8b939ea8b2bdc6d1d4cbc0baaea29891847a6d605b51473d33291e150b000000000000000000000000000000020c16202a36424d57606c78839099a3aebac3ced8cfc6b9ada1978e81746b60544a3f33292a36424d57606d78839099a4afbbc4cfd7cec1b9ada1978e81746b60554b4034291e140a0000000000000000000000000000000000000000000b17232e384754606a76828f99a4afbbc5cfd8cec4bbb2a8a198928c85807d7a787778797c80848b91979fa6b0b8c2ccd5ccc3baaea2988e8174685e5242382e23170b000000000000000000000000000000000000000000000000000000010d19242f3a46525e6874808d99a3aebbc7c8bdb2a89d9083776b6055483d32271b0f0400000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfebe3d9d0c4bbb2a8a199928c837e7974716e696a69696360594f44382c2013070000000000000000000000000000000000000000000000000713202d3a4653606d798080808080808080808080808080808080808085929fabb8c5d2dccfc2b6a99c8f828080808080808080808080808080808080807d7063564a3d3023170a000d192633404c5966737f8a8a8a8a8a8e939da9b6c2cfd2c6b9ada197918a8a8a8a8a8a8a8a8a8276695d5043362a1d100000000000000000000000000000000000060f181e262e343940454a5053555d60636769686d6f6f7071706f6e6d676865615f5754524c47433c3630292119140d050000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e58626f7c87939faab4bec7d2c7beb4aaa29a938c847e7975716f6e6d6e6f7174787d838b9298a1a9b2bcc5d0d9e4e0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000000000060d151d242931373d44484e54555d6064666d6f727577797a7b7c7c7c7c7b7a79777573706d6765615e56535049443f38302a251f170e0600000000000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885868686868686868686868686867e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facb9bcb3a9a1969083796d665c514a40362d231a10070000000000000000000000000000000000000007111a2427333f49535c676d7a839096a1a9b3bdb8ac9f9285796c5f5246392c1f1300000000000000000b151e29333d47515b606d79839098a2acb6c0cad4d6cabeb4aaa0958d80746c61574d43392f3a444e58626d75818f96a0abb4bfcbd7d6cabfb4aaa0968f81756d63594f453b30271d1207000000000000000000000000000008131e28323a46525e69727f8b959fabb5bfccd5d1c6bdb0a69e92857a6d61594f42382e2125313b44505c666f7c87939fa9b2bec9d5d5c9beb2a99f93887d70675c51453c30261c1106000000000000000000000000000000000000000006111c2b38434e58626f7c87939fa9b3bcc6d1d6cdc4bab2aaa39f97928d898685848586898c91969ea1a9b0b9c2cad4ccc3bab0a69f92867b6e61564c4130261c11060000000000000000000000000000000000000000000000000000000008131e2a36414c56616e7b86929fabb5c0ccc3b8aba095897d7063594f43382c20150a00000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7986929facb8c5d2dfebebe2d6cdc4bab2aba39f95908b85807d7b78777676706b6054483c2f2216090000000000000000000000000000000000000000000000000714202d3a4753606d79868d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d9298a2aebac6d3ddd0c4b7ab9f948f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8c807366594d4033261a0d000815222f3b4855626e7b7d7d7d7d7d818e9ba7b4c1ced1c4b8ab9e91857d7d7d7d7d7d7d7d7d7c6f6356493c30231609000000000000000000000000000000020a1117212a30383f444b51545c6063676d707376787a7c7c7d7d7d7c7b7a7775726e6966615e56534e46423b332a251f170e07000000000000000000000000000000000000000000000000000000000000000000030f1b26323c47535f6a75818e98a2acb6c0ccd0c6bcb4aca49f96918b85817e7c7b7a7b7c7d81848a90959fa3aab2bbc4ced7e2ebe0d3c6baada093877a6d6054473a2d21140700000000000000000000000000000000000610181f272f353c43474f55586062676d7175797c7f8283858788888989888887858482807c7976726d6863605b53504a423d3630292017110a030000000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c78859293939393939393939393938b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facb9b4aaa29791847a6e675d544a40382e241b1108000000000000000000000000000000000000000000081217222d38414b555d686e7b849197a2abb4b8ac9f9285796c5f5246392c1f130000000000000007121d27303b454f59626d75818e95a0aab3bec7d2d5cbc3baaea2989083796d605a50453c3128323d46515b606d7a849199a3aebac1ccd6d0c6bcb2a89e938c7f726b60574d42392e23181006000000000000000000000000030c1924303a44505a616e7b86929fa7b1bdc6d1d7cbbfb5ab9f948b7e71685d52473d30261c1f28343f4a54606a74808d97a1adb9c1ced8cfc4bbafa49a9184796d60584e42382e23170b0300000000000000000000000000000000000000000f1b27323d47535f6a74818d97a1aab4bfc7cfd6ccc4bcb4aea9a29e9a9697929192939a999ea0a8adb3bbc2cbd7ccc4bab1a89f948b7e72695e53443b301e140a0000000000000000000000000000000000000000000000000000000000010d1925303a46525e6974818e99a4afbbc7c8bcb1a79c9083766b6054483c32261b0f03000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfe4dcd6d1ceccc4bdb5afa7a09d97928d8a87858482827d706356493d3023160a0000000000000000000000000000000000000000000000000714202d3a4753606d7a86939a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9fa2aab3becad6dfd3c7bbb0a69f9c9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a998c807366594d4033261a0d000814212e3a47535f696e70707070727f8c98a5b2bfcbd1c4b7aa9e91847770707070707070706f6b6054483b2f2215090000000000000000000000000000040c141c2328333c424a50555d60666d7075797d8083858788898a8a8a89888684827f7b77736e68625f58524d453f363029201810080000000000000000000000000000000000000000000000000000000000000000000a15202b37434e58616e7b86929aa4afbbc1cacec6beb6afa8a09e97928e8b89888787898a8e91969da0a7aeb4bcc4cdd6e0e9f4e0d3c6baada093877a6d6054473a2d211407000000000000000000000000000000020a1117222a313940454e535961636a6f757a7e8285898c8e9092989495969695959892908f8c8986837f7a76706c65605c544f46413b3228231c150c0400000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929f9f9f9f9f9f9f9f9f9f978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facb5aba39892857c6e685e554b42392e261c1209000000000000000000000000000000000000000000000006111b262f39434c565e696f7c859299a3acb6ac9f9285796c5f5246392c1f13000000000000061018232e39424d57606b727f8c939ea7b1bcc5d0d7cec3b9aea49f92867b6e675c51483e332a202b343f45525d686f7c87929fa5afbac4cfd7cec3baafa59f92877d70695e544b40342822180d0400000000000000000000000b151e2935414c56616c75828f98a2aeb9c2cfd8d3c7bbaea3999082776c60564c41342b1e1517232e38424e58606d7a84919ea6b0bcc6d0d8ccc0b6aca0968d80736a5f544a3f34281f140900000000000000000000000000000000000000000a16202b37434e58616d7a859298a3aeb5bdc5cdd5cfc6bfbab3adaba7a9a29f9e9e9fa4acaaacb2b9bec4cdd1cbc1bab2a8a0958f82776c60574d4232291e0c0200000000000000000000000000000000000000000000000000000000000008131e2a36424d57626e7b87939facb9c2ccc3b7ab9f94897c6f63584e43372b1f1509000000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfdad2cbc5c2c0c5c7c0bbb1aca9a29f9a979792908f8a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6abaeb3bcc5d0dbe3d8cdc2b8b0aba9a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6998c807366594d4033261a0d0006121e2b37424d575f6264646465727f8c98a5b2bfcbd1c4b7aa9e9184776b646464646464646360594f44382c1f130700000000000000000000000000040d161e262e343f454d545c60676d72787d8286898d8f92979596969796969992918e8b88847f7a756f6a615e575146423b322a221a11080000000000000000000000000000000000000000000000000000000000000000040f1a26313c46535f69707d88939fa5afb8c1cad0c7c0bbb2aca9a29e9b979694939495979a9ea1a8acb1babfc6cfcccfd4dbe2e0d3c6baada093877a6d6054473a2d2114070000000000000000000000000000030b141b2227343c434b51585f626b70767c81868b8f9298999b9d9fa2aaa2a2a2a2aaa39f9d9b999992908b86827d78716d666059524d443e342e261e160d05000000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabacacacacacacaca4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929facafa49992867d6f6a5f564c433a30271c130a000000000000000000000000000000000000000000000000000a141d27303a444d575f6a707d87929aa4afac9f9285796c5f5246392c1f130000000000040e18222834404b545e69707d87929fa5afb9c3ced7d0c5bcb1a79d928a7e71695f554b40362c2119222935414c56606a727f8b939ea8b2bdc6d1d5ccc1bbafa39992857b6e665c51453e342a20160b0200000000000000000007121d27303945525d68717e8a949eaab4bfcbd4d5c9bdb2a89f92877c6e655b50443a3022190c111c26303d45525d68717e8a949eaab4bfcad6d2c7beb2a89f92877c6f665c50443b31261a0e0500000000000000000000000000000000000000040f1b26323c46525e686f7d86929fa3abb3bbc2c9cfd1cbc5beb9b8b3b3adabaaabacafb6b7b9bdc3c9cfcfc7c0bbb0a8a19691837a6d655b50453b3120170d00000000000000000000000000000000000000000000000000000000000000020e1a25303b47535f6975828e9ba6b0bbc7c7bbb0a69c8f82756a5f53473c31261a0e030000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2dfd2c8c0b9b5b4b8b9bec3bcb8b3adaba7a9a19e9d978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b8babec5ced7e1e9ded4cac2bbb7b6b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a6998c807366594d4033261a0d00020e1a26313c454d535557575965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e57575757575756544f473d32271b0f03000000000000000000000000030c161f2830383f4451575f666d72797f848a8f92989a9c9ea1a9a2a3a4a3aba39f9d9b9896918c86817c746e69625b524d443c342c231a110800000000000000000000000000000000000000000000000000000000000000000a15202a36424d57616c737f8c939ea6afbabfc6ccccc4bdb9b3adaba8a4a2a1a0a1a2a4a7abadb2b8bcc3c4c3bec0c3c9d0d9e2d3c6baada093877a6d6054473a2d21140700000000000000000000000000030c151d262d333f464e555d606a6e767d82898e92989c9fa2aaa8aaacaeb4afafafafb4aeacaaa8aba39f9c99928f8a837e78706b615e564f443f3830281f170e050000000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8b9b9b9b9b9b1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929faca49f93877e706b60574e443b31281e150b0100000000000000000000000000000000000000000000000000020b151e28323b454e58606b717e88939fa4ac9f9285796c5f5246392c1f1300000000020b16202a343c45515c666e7b859199a3afb7c1cbd5d6cabeb4aaa0958d81746c61574d43392f241a1019242f3a444e58626d75818f96a0abb4bfcbd7d7cbc0b5aba1979083786d605a50463c32281d140a0000000000000000020b18232e39434f59606d7a85919ea6b0bcc5d0d7cec5b9aca1968d80736a5f53493f32281e10070a151e2935414c56616c75828f98a2aebac3d0d9d0c3bbafa3999083786d60574d42362a20170c02000000000000000000000000000000000000000a15202a36414c56606b717e8a9299a2a9b0b9bec4c8cecfcac6c5c0bebab8b7b8b9bbc0c4c5c8ceccc7c1bdb5afa69e9691847b6e685e53493f33291f0e05000000000000000000000000000000000000000000000000000000000000000009141f2b37424d57626f7c88949faab7c2cdc2b7aa9e94887c6f62574d42372b1f14090000000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d6cbc0b6aea9a7abadb3bbc5c5bebab8b4b3adaba4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb9c0c0c0c0c0c0c0c0c0c0c0c0c0c0c5c6cad0d7ddddddddddd4cdc7c4c2c0c0c0c0c0c0c0c0c0c0c0c0c0bfb3a6998c807366594d4033261a0d000009151f2a333c4247484a4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e514a4a4a4a4a4948443d352b21160a000000000000000000000000020b151e283139424a505b62696e787e848c91969b9fa3aaa9abadb3afb0b0b0b5afacaaa8a8a09d99928e87817b726d615e564e463e352c231a110700000000000000000000000000000000000000000000000000000000000000030e1a26313b454f59606c77818f949da5aeb4bbc0c7d0c9c5beb9b8b4b1afaeadaeafb0b4b8b9bdc4c3bcb8b6b2b3b8bfc7d0d9d3c6baada093877a6d6054473a2d211407000000000000000000000000020b151e262f383f4450585f676d737c82898f949b9fa2aaacaeb4b5b6b8babfbbbcbcbbbfbab8b7b5b4aeacaba39f9c95908b837d756e686159504a423a312920170e0400000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5c6c6c6beb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929fa59c928b7f726c61594f453c32291f160c03000000000000000000000000000000000000000000000000000000030c162029333c464f59616c727f8c929da59f9285796c5f5246392c1f13000000000a141d28323c46505a606d78839097a1abb5c0c9d3d5cbc3baaea2989083796d605a50453c31271d1208131e28323d46515b606d7a849199a3aebac1ccd6d1c7bdb3a99f958d80746c61584e443a2f261b1106000000000000000a141d2834404b55606b74818e97a1adb8c1ced7d0c5bcafa59e9184796d60584e41382d20160c00030c19242f3a43505a616e7b86929fa7b1bec7d2d7cbc0b5ab9f958c7f72695f53463e32291e130800000000000000000000000000000000000000040d1925303a444f59616c727f8792979fa6adb3b8bdc3c5c9cfced0cac6c5c4c5c6c8ccd2cec8c7c0bbb9afaba39f948f847b6e695e564c41382d21170d000000000000000000000000000000000000000000000000000000000000000000030e1a26313c47545f6a76828f9ca6b0bcc7c7bbb0a69b8e8175695f53473b30251a0e0200000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2d1c5b9aea49d9a9ea1a9b3bcc4cac6c5c0beb9b1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb9c6cdcdcdcdcdcdcdcdcdcdcdcdcdd0d0d0d0d0d0d0d0d0d0d0d0d0d0cfcdcdcdcdcdcdcdcdcdcdcdcdccbfb3a6998c807366594d4033261a0d0000030e18212a31373a3b3f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e51443d3d3d3d3c3b38322b23190f040000000000000000000000000a141d273039434b545c606d727b838b91979ea1a8acaeb4b6b8b9bebcbdbdbdc0bbb9b7b5b2acaba39f99938e867f766e695f584f473e352c23190f060000000000000000000000000000000000000000000000000000000000000009141f29333e44505b656d79828e939fa2aaafb5bdc1c6cacac6c5c1bebcbbbababcbdc1c4c5c6bfbab1abaaa5a7adb5bfc9ccccc6baada093877a6d6054473a2d2114070000000000000000000000000a141d2630384149505a626a6f7980878f949c9fa6acaeb4b8babfc1c3c5c6cad0c9c9d0cbc7c5c3c2bfbab9b5afaca7a09d959089827a706b605c544b433b322920160d04000000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d2cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929f9e938d80736d625a50473d332a20170d040000000000000000000000000000000000000000000000000000000000040d17212a343d47505a636d74808d939e9f9285796c5f5246392c1f1300000006111c262f3a444e58616c74808d959fa9b3bdc7d1cfcec3b9afa59f92867b6e675c51483e332a1f150b010c16202b343f45525d686f7c87929fa5afbac4cfcfcfc5bbb1a79d928b7e716a5f564c41382d22170c03000000000006111c262f3845515c67707d88939fa9b3becacfcfcabfb4aa9e938a7d70675d51463c2f261b0e04000008131e28313e46535e69727f8c95a0acb6c0cccfd1c7bdb1a79f92867b6e615a50443a3025190d050000000000000000000000000000000000000008131e28323d47505a626d727d858f949ea1a9acb2b7b9bdbfc2c4c5c6c8cccac6c5c4c2c0bcb8b5afaca59e99928c827a6e695f574d443a2f261b0f05000000000000000000000000000000000000000000000000000000000000000000000915202b37434e58636f7c89949fabb7c3ccc1b9ac9f93877b6e62574d42362a1e130800000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5d2cec2b5a99d928d9297a1aab2bac2c9cecfc9bdb1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb9c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3bfb3a6998c807366594d4033261a0d000000060f181f262b2e323f4c5965727f8c98a5b2bfcbd1c4b7aa9e9184776b5e514438313131302f2c272119110700000000000000000000000006111c262f39424b555d666d747f8690959ea1a9adb2b8babfc2c5c6c9cfc9cad1cbc7c5c4c1bdb8b5aeaba49f98928b827b6f6a61594f473e352b21180d03000000000000000000000000000000000000000000000000000000000000030d182127333f49535d676d78818b92989fa4abafb8babec2c5c6cad0c9c7c6d1cbc7c5c3bdb9b4aea79f9d989ba3adb8bfbfbfbfbaada093877a6d6054473a2d211407000000000000000000000006111c262f38424a535b606c717c838d92999fa6abb0b8babfc5c6cad0d0d2d2d1cfcececfd1d2d2d0d1cbc7c5c0bbb9b1aca7a09d938f857d746d665d554c443b32281f160b020000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929f948e81776c605b51483e342b21180e0500000000000000000000000000000000000000000000000000000000000000050f18222b353e48515b606c78818f949f9285796c5f5246392c1f130000000b17222d38424c565f6a717e8b929da7b1bbc2c2c2c2c2bcb1a79d928a7e71695f554b40362c21180d0300040d19222935414c56606a727f8b939ea8b2bdc2c2c2c2c2b9aea49f92867c6f685d53493f33271e150b00000000000b17222d38424e58606d7984919aa4afbbc2c2c2c2c2baaea2988e81756b61554b40342a1d140a000000010c161f2a36424d57606d7883909aa4afbbc2c2c2c2c2baaea2988f82766c61564c41362a21160b00000000000000000000000000000000000000020c16202b343e48515b626b707b828a91979da0a8abadb2b2b5b7b8b9bbc0bfbab8b7b6b3b1acaba49f9c938e877f776d685f574d453b32291d140a0000000000000000000000000000000000000000000000000000000000000000000000030f1b26323c4854606b7683909ca7b1bcc8c7bbafa4998e8174695e52463a3025190d01000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8c5ccccc0b4a79a8d80859298a1a8b0b9bdc4c8cdbdb1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0adb6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b3a6998c807366594d4033261a0d00000000060e151a1e26323f4c5965727f8c98a5b2bfcbcdc4b7aa9e9184776b5e5144382b242423221f1b160f07000000000000000000000000050e17222d38424a545d676d78808b92989fa7adb2b9bdc4c7cbd0d1d2d1cfcececfd0d2d2d0cec8c6bfbbb5afaaa29f948f847c706b61594f473d332a1f150b01000000000000000000000000000000000000000000000000000000000000060f17222d38414b555d666d747e868e93999ea5abadb3b6b8babebdbdbebdbdbfbab9b6b2adaaa39f95908b919ba7b2b2b2b2b2b2ada093877a6d6054473a2d21140700000000000000000000081117222d38424a545c656c737e8690959fa3abb0b7bbc2c6cad0d3d1d1cbc7c5c4c3c1c1c3c4c5c7cad0d2d3d1cbc7c3bcb8b1aca59e97928a80786d675e564c443a31281d140a0000000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c798692958f82786d655b50493f362c22190f06000000000000000000000000000000000000000000000000000000000000000000061019232c363f44505b666d798290959285796c5f5246392c1f130000030f1c28333f4a545d686f7c86929fa4aeb5b5b5b5b5b5b5b4aaa0958e81746c61574d43392f241a0f06000000071019242f3a444e58626d75818f96a0abb4b5b5b5b5b5b5b5aea29891847a6d655b50443d30271d1207000000030f1c28333f4a545f6a73808c96a0acb6b5b5b5b5b5b5b1a79f92867b6e61594f43392f22180b0200000000040d1a25313b44505c666f7c88939fa9b3b5b5b5b5b5b5b4aa9f948b7e71685e52463e33281c100400000000000000000000000000000000000000050e19222c363f48515960696e767e858b91969a9ea1a8a6a8aaabacafb6b4aeacaba9a6a7a09d99938f89817b726c655d564d453b332920170b020000000000000000000000000000000000000000000000000000000000000000000000000a15202c38444f5963707d8a95a0acb8c3ccc0b5ab9f92867b6e61564c41362a1e1308000000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb8bfbfbfbeb2a5988b7f7c8691969fa6acb2b8bcc1bdb1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a8693a0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa6998c807366594d4033261a0d000000000003090e1926323f4c5965727f8c98a5b2bfc0c0c0b7aa9e9184776b5e5144382b1e171615130f0a04000000000000000000000000020d172028333f4a545c666d79828d929fa2aab1b9bec4c9cfd3d3cfc9c6c5c2c1c1c2c4c5c7cbd0d3d1cbc7c0bbb4aea69f9691867d706b61594f453c31271d12070000000000000000000000000000000000000000000000000000000000000006111b262f39434b545c606c717b81878f939a9fa2a9a9abaeb4b0b0b1b1b0b4aeaca9a9a19e98928c837f8b98a5a6a6a6a6a6a6a6a093877a6d6054473a2d211407000000000000000000050f1a2328333f4a545c666d77808b9298a0a7afb5bdc2c7cdd3d3cdc8c4c3bfbab9b7b6b5b4b6b7b8babfc2c5c7cbd1d3cec8c3bcb8afa9a19e928d82796e685e564c433a2f261c110600000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986929083796d665c53493f372d241a1007000000000000000000000000000000000000000000000000000000000000000000000007111a2428333f4a545c676d7a83919285796c5f5246392c1f13000006121f2b3844505b666d7a849198a2a8a8a8a8a8a8a8a8a8a8a2989083796d605a50453c31271d1208000000000008131e28323d46515b606d7a849199a3a8a8a8a8a8a8a8a8a8aaa0968f82776c60594f42392e23180c00000006121f2b3844505b666f7c87929fa8a8a8a8a8a8a8a8a8aba0958b7f72695e52473e31271d0f0600000000000009141f28343f4a54606a74818d97a1a8a8a8a8a8a8a8a8a8a69e92857a6d61594f44382c201407000000000000000000000000000000000000000007101a242d363f474f575f616c71797e84898d919696999b9e9f9fa4a1aaa29f9e9c999795908c87827c756e69605b534c443b332a20170e0500000000000000000000000000000000000000000000000000000000000000000000000000040f1b27323d4855616b7783909da8b2bdc8c7bbaea3998d8074685e52463a2f24190d010000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929facb2b2b2b2b2b2a5988b7f727c848f949ea1a8acb1b4b7b1a4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d7a86939d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d998c807366594d4033261a0d000000000000000c1926323f4c5965727f8c98a5b2b3b3b3b3b3aa9e9184776b5e5144382b1e1109090703000000000000000000000000000008141f29323b44505b666d78828f949da4aeb4bcc2c9cfd5d0cac6c5beb9b8b6b5b4b5b7b8babfc5c7cbd1d2ccc6bfbab0a8a19892877d706b60574e43392f24180d03000000000000000000000000000000000000000000000000000000000000000a141d283139424a515a62696e757c82888e9297999c9fa2aaa3a4a4a4a3aaa39f9c9996918c867f797d899699999999999999999993877a6d6054473a2d2114070000000000000000020d17212b353d44505b666d78818d929fa3aab1bbc0c7cfd3d0cac6c2bcb8b6b4aeacaba9a8a8a9aaacaeb4b6b9bbc0c7cacfd4cec8c1bbb3ada49d948f837a6e685d554b42382d22170d04000000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c798791847b6e675d544b41382d251b120800000000000000000000000000000000000000000000000000000000000000000000000000081217222d38424b555d686e7b859185796c5f5246392c1f130005121e2a36424d57606c78828f969c9c9c9c9c9c9c9c9c9c9c9c9c92867b6e675c51483e332a1f150b000000000000010c16202b343f45525d686f7c87929c9c9c9c9c9c9c9c9c9c9c9c9c948c7f736b60544b4034281c10040004101c2834404b55606c788390999c9c9c9c9c9c9c9c9c9c9c999083786d60574d42352c1f150b00000000000000030c17232e38424e58606d7a85919c9c9c9c9c9c9c9c9c9c9c9c978e81756b6155483c2f23160900000000000000000000000000000000000000000008121b242d353d454d535a61676d71787c8084878a8c8f9192939a94949892918f8d8a87847f7b766f6a625f575049413a322a21180e050000000000000000000000000000000000000000000000000000000000000000000000000000000b16212c38444f5964717e8a96a0acb9c4cbbfb5ab9f92867a6d61554c4135291d12070000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c7985929fa6a6a6a6a6a6a6a5988b7f726f7a828a91969da0a7a8abaca4978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d798690909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090908c807366594d4033261a0d000000000000000c1926323f4c5965727f8c98a5a6a6a6a6a6a6a69e9184776b5e5144382b1e110500000000000000000000000000000000020b1925303b444f59606c78818e949ea6aebabfc6ced5d0cac5bebab8b3adaba9a8a7a9aaacaeb4b9bbc0c7cfd6d0cac2bab2aaa29992867d706a5f554b4035291f150b01000000000000000000000000000000000000000000000000000000000000020b161f283039404450575f616a6f757c8185898c8f9298959697989796959892908d8a847f7a73707d898c8c8c8c8c8c8c8c8c8c8c877a6d6054473a2d211407000000000000000009141f29333d47515b606c78818e939ca4aeb4bcc3cbd1d2ccc6bfbab8b1aba9aba39f9e9c9b9b9c9e9fa2aaa9acafb5b9bec5cbd1d4cdc5beb9aea69e9590837a6d675d544a3f332820160c010000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000013202c3946535f6c7986857c6f695e554c42392f261b130900000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f39434c565e696f7c8686796c5f5246392c1f13000714212d3a46535f6973808c8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8a7e71695f554b40362c21180d0300000000000000040d19222935414c56606a727f8b8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f877d70665c5145382c1f13060006131f2c3845515c67727f8b8f8f8f8f8f8f8f8f8f8f8f8f8f8f877c6f665c50453b30231a0d03000000000000000006111c26303d45525d68717e8a8f8f8f8f8f8f8f8f8f8f8f8f8f8f8a7d7063574a3d3024170a0000000000000000000000000000000000000000000009121b232b333b424650555c60656c6f74787a7d7f8284858687878786858483807d7b77726e69626058534d443f382f2820180f060000000000000000000000000000000000000000000000000000000000000000000000000000000004101c28333e4653606d7884919ea8b2bdc9c6baaea2988c8073675d5145392f24180c0000000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c798592999999999999999999988b7f72686d777e848b9095989b9ea1a8978a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000714202d3a4753606d79838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383837f7265584b3f3225180c000000000000000c1926323f4c5965727f8c989a9a9a9a9a9a9a9a9a9184776b5e5144382b1e1105000000000000000000000000000000000a141d2a36414d56616b73808d939ea6b0b8c0cad0d5cec5bebab3adaba9a19e9c9b9b9c9d9fa3aaacafb5bdc2cad0d6ccc4bcb4aba39892867c6e675d51453d31271d120700000000000000000000000000000000000000000000000000000000000000040d161e272e343f454d53585f626a6f74797d80838587898a8a8b8a8a89888683807d79736d686e7b7f7f7f7f7f7f7f7f7f7f7f7f7f796d6053463a2d20130700000000000000040d1a25303b454f59636d74808e939ea5aebabfc6ced7d0c7c0bbb4aeaca79f9d99999291908e8e90919298989c9fa3abadb3babfc6cfd4cfc9c0b8b0a7a0959083796d665b50443e32281e13080000000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000131f2c3946525f6c79857d706a5f574d433a30271d140a01000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d27313a444d575f6a707d85786c5f5245392c1f12000815222e3b4855616e7b828282828282828282828282828282828280736c61574d43392f241a0f06000000000000000000071019242f3a444e58626d73808282828282828282828282828282828281796d6053463a2d201307000713202d3a4653606d79818282828282828282828282828282827f736a60544a3f33291f1108000000000000000000000a151e2935414c56616c74808282828282828282828282828282828074675a4e4134271b0e0100000000000000000000000000000000000000000000091119212a31363e434b51535b606367696e7073757778797a7b7a7979787673716e6965615e57544e47423c332d261d160e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000b161f2b3844505c66717e8b96a1adb9c5cabfb4aa9f92857a6d60554b4035291c110600000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000131f2c3946525f6c79868c8c8c8c8c8c8c8c8c8c8c8b7f7265656c71797e83888b8e919696968a7e7164574b3e3124180b00000000000000000000000000000000000000000000000006131f2c3845515d676d77777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777726d62564a3d3124180b000000000000000c1926323f4c5965727f8c8d8d8d8d8d8d8d8d8d8d8d84776b5e5144382b1e110500000000000000000000000000000006111b262f3846525e68707d88939fa5afb8c1cad6d3cbc3bcb3ada9a29f9a97928f8e8e8f9192989c9fa3abb0babfc6ced6cec6bdb4aaa2989083796d60594f43392f23180c0100000000000000000000000000000000000000000000000000000000000000040c151c2328333b42464e53586062666d707376787a7c7d7d7e7e7d7c7b797673706d66615f696e737373737373737373737373736d675c5145382c1f1306000000000000010c161f2a36424d57606b737f8c929da5afb7c0cbd0d4ccc4beb6afaaa29f9995908c888684838281838485878b8f92999ea1a9aeb4bdc2cbd3d5cac2b9b1a79f958f82786c60594f443a2f24190d0400000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000b1724313e4a5764717d716b60584e453b31281e150b020000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151f28323b454e58606b717e7164574a3e3124170b000714212d3a46535f696e7575757575757575757575757575757575736d635a50453c31271d1208000000000000000000000008131e28323d46515b646e7375757575757575757575757575757575746d665c5145382c1f13060006131f2c3845515c676d75757575757575757575757575757575736d63584e42382e21170d0000000000000000000000030c19242f3a44505a646e74757575757575757575757575757575746e64584c4033261a0d000000000000000000000000000000000000000000000000070f181f262a3039404549505356565e616366686b666c6d6e6e6d666b696664615e5754524d47433d373127221b140b040000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a54606d7984919ea9b3becac6baada2978c7f72675d5145382e23170c00000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000d192633404c5966737f7f7f7f7f7f7f7f7f7f7f7f7f7c6f625b60676d72777c7f818487898a8a7e7164574b3e3124180b00000000000000000000000000000000000000000000000004101d2935404b555d606a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a65625b51453a2e221509000000000000000a1623303d495663707d8080808080808080808080807f7266594c3f3326190c000000000000000000000000000000000b17222d38414f59616e7a85929aa4afb7c1cad3d3c9c1b9b1a9a29f97928d88858382818284868a8f92999fa6aeb4bcc5ced7cfc6bcb4aaa0958e81746b60554b4034291d13070000000000000000000000000000000000000000000000000000000000000000030b1218212a31363c43474e54545c60636669686d6f70717171706f6e6d666663605c54575f6166666666666666666666666666605c554b4034281c100400000000000008131e28313a46525e69707d87939fa5afb7c1c9d6d2cac2bab2aca49f98928c87837f7b79787675757677797b7f83868c92979fa3abb1b9c1c9d1d3cbc3b9b1a79f948c80736b61564c41352921160a00000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000a1623303c4955616c716c61594f463c33291f160c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d162029333c464f59616c716c6155493c3023170a0005121e2a36424d575f61696969696969696969696969696969696966635b52483e332a1f150b000000000000000000000000010c16202b343f49525c64676969696969696969696969696969696968605c544b4034281c10040004101c2834404b555c606869696969696969696969696969696966635b51463d30261c0f0500000000000000000000000008131e28323e48525c646769696969696969696969696969696967645c52473c3024170b00000000000000000000000000000000000000000000000000060e141a1e272e34383f4446494d525457595c545b60606161605c545c5a5754534d4746423b37322b261f17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3845515c66727f8c97a1adb9c5cabeb3a99e9285796d60544a3f34281c1106000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000c1825323e4b57636d737373737373737373737373736f6a6054555c60656a6f7275787b7c7d7e7b6e6155483b2e221508000000000000000000000000000000000000000000000000000c18242f39434b51535d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d585651493f34291d1205000000000000000916222f3b4854606b70737373737373737373737373726d63574b3e3225180c000000000000000000000000000000030f1b27333f4953606b75818e97a1acb6c0c9d3d4cac1b7afa7a097928b85807b7876757476777a7e828790949fa2aab3bcc5cdd7cec5bcb1a79d93897d70675c51453a2f24180d00000000000000000000000000000000000000000000000000000000000000000000070f181f262a31373c43474a51535659565e616263646564636262605c545753504a4d53555959595959595959595959595953514b43392e23180c000000000000010d19242f3a43505a616e7b859299a4afb7c0c9d3d2c9c1b8b0a8a09a938e86807b76726e6c65696868696b696e72767a7f858d92999fa7afb7bfc8d1d5cbc2b9b0a69f93887d70685d52453d32271b0f04000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000814212d3944505a6164615a50473d342a20170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e17212a343d47505a6164615a5045392d21140800020e1a26313b454d53555c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5957524940362c21180d0300000000000000000000000000040d19222d37404a52585a5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5b53514b42392e23180c0000000c18232e39434b51535b5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5957514940342b1e140a00000000000000000000000000010c16202c36404a52585a5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5a58524a41362b1f1408000000000000000000000000000000000000000000000000000003090c151d23282d3337393c4246474a4c4f4a505354545453514b504d4a4846423b3a36302b27201a150b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c2834404b54606d7985929eaab4becac5b9ada1978b7f72665c5044382d22170b000000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000a16222f3b46515b63666666666666666666666666666260584e4b5153585f626568696e6f70716e695f53463a2d2114070000000000000000000000000000000000000000000000000007121d273139404547505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050504b4a453f372d23180c01000000000000000713202c38444f59606367676767676767676767676766635b51463a2f22160a00000000000000000000000000000005121f2b3744505b65707d89939ea9b3bec7d2d6ccc2b8afa59e9590857e79736e6a69686869676d71757b828b9298a2aab3bbc5d0d7cec3b9afa59e9184796d60554b4135291c120700000000000000000000000000000000000000000000000000000000000000000000060e141a20262b3237394044464a4d4c5254565757585757565553514b4a46443f4246484c4c4c4c4c4c4c4c4c4c4c4c4c4645403930271d120700000000000004111d2935414c55616c75828f97a1abb5c0c9d2d3c9c1b7afa69f969188817b736e696662605b535b5b5d575e6165686d727a808690959ea5aeb6bfc8d1d4cbc2bbafa49a91857a6d60584e43382c21160b000000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000004101c28333e485055575550483e352b22180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f18222b353e485055575550483e33281c1104000009141f29333b4246484f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4d4b4740372e241a0f0600000000000000000000000000000007101b252e3840474c4d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4645403930271d120700000007121d2730394045464e4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4c4b4640372e22190c020000000000000000000000000000040d1a242f3840474c4d4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4e4c4741382f241a0e0300000000000000000000000000000000000000000000000000000000030b12181b22272b2d30363a3b3d40423f444647484746454043403e3b3a36312d2a251f1b160e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e3945515d67737f8c98a2aebac6c9beb3a99e9184796d60544a3f33281c0f030000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000006121e2a35404951575959595959595959595959595956544e464045474e535558575e61636364615f574d42372b1e120500000000000000000000000000000000000000000000000000010b151f272f35383a444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444443f3d3a342d251b1106000000000000000003101b27323d474f54565a5a5a5a5a5a5a5a5a5a5a5a595751493f352a1e12060000000000000000000000000000000613202d394653606c7883909da5afbbc5d0d9d0c4bab0a69e938e837b726d67625f575b5b555d60646a6e777e869298a2a9b3bec7d2d5cbc1b9aca0968c7f72675d5145392e23180c000000000000000000000000000000000000000000000000000000000000000000000003090e151a20272b2e34383a3d40414647494a4a4b4b4a49484645403d3a3834363a3b404040404040404040404040403a38342e271e150b000000000000000613202c3945515d67717e8a949ea9b3bdc7d2d4cbc1b7afa59e9490847c746e69615e57555350494f4e504d5254565e61686d737b838e939ca4aeb6bfcad3d8ccc0b6aca1978d81746a6054483d32271b10030000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000b17222c363e44494a49443e362c231910060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232c363e45494a49453e362c22170c000000030d17212931363a3b4242424242424242424242424242424242403f3b352e251c1208000000000000000000000000000000000009131c262e363c3f4042424242424242424242424242424242413a38342e271e150b00000000000b151e272e34383a42424242424242424242424242424242403e3b352e251c10070000000000000000000000000000000008121d262f363c3f4142424242424242424242424242424241403c362f261d130800000000000000000000000000000000000000000000000000000000000000070c11171b1f20252a2d2e30332d3338393a3b3b3a38342e33312e2d2a25201e1a140f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2935404b55606d7a85929faab4bfcbc5b9aca1968b7e71665b5044382b1f160b0000000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000020d19232e3740464b4c4c4c4c4c4c4c4c4c4c4c4c4c4947433d34383c4347484c4d525456575755534d453c31261a0e020000000000000000000000000000000000000000000000000000030d151d24292c2d3737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373732312e29231b1209000000000000000000000b16212b353d4448494d4d4d4d4d4d4d4d4d4d4d4d4c4b463f372e23180d0200000000000000000000000000000713202c38444f5964707d8a95a0acb7c1cdd7d2c7bdb2a89f948e81796e69605d55534e4f4e4b5153575f656c717d869297a2acb6c0ccd8d4c8bdb2a89e92857a6d60544a4034281c1004000000000000000000000000000000000000000000000000000000000000000000000000030a0f151b1c23282c2d303036393a3c3d3e3e3e3d3c3b3a38342e2d2c282a2d2e333333333333333333333333332d2c28231d150c0300000000000004111d2935414b55606d7a85919ea6b0bbc5d0d6cdc3b9afa59e938e827a6f6a615e57534d4846443f4242434246484c52565d60696e79818c929ca4aeb8c1cbd5d2c7beb3a99f93877c6f62594f44382c1f15090000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000005101a242c33393c3e3c39332c241a110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a242c33393c3e3c39332c241a100500000000060f171f262a2d2e363636363636363636363636363636363633322f2a241c130a000000000000000000000000000000000000010b141c242b30333436363636363636363636363636363636352d2c28231d150c030000000000030c151d23282c2d3536363636363636363636363636363633322f2a231c130a0000000000000000000000000000000000000b141d242b3033343636363636363636363636363636363433302b241d140b01000000000000000000000000000000000000000000000000000000000000000000060b0f1213191e2021242622282b2d2d2e2e2d2c2823272421211e1a14110e09020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d18242f3945525d6873808d98a3aebac7c9bdb2a89d9184786c6053463d33271c100400000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000007121c252e353b3e404040404040404040404040403c3b3732292c31373a3c3f424647494a4b4846423c332a1f140900000000000000000000000000000000000000000000000000000000030b12181d1f202a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2524221d1811090000000000000000000000040f19232b32383b3d4040404040404040404040403f3e3a352e251c12070000000000000000000000000000000915222f3b4854606b7783909da7b1bcc9d3d7ccc0b5aba1969082786d675f57514b474242414045474e535b606b6f7c85929aa4afbbc3ced9cec3b9ada2978c7f72665c5144382c1f13080000000000000000000000000000000000000000000000000000000000000000000000000000040a0f12181c1f2023252a2d2e2f30313231302f2f2d2c2823201f1c1e212226262626262626262626262626201f1c18120b03000000000000000613202c3945515d67737f8c97a1adb8c1cdd7cfc4bbb1a79e938e81786d686058524d46423b3937332d3530363a3b41464c52575f676d77808c929ca6b0b9c3d0d9d0c4bbafa49a8f82766b6054483c31261a0e0000000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000000000000000000000000000008121a22282d3031302d28221a1208000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121a22282d3031302d28221a1208000000000000060d141a1e212229292929292929292929292929292929292625231e19120a0100000000000000000000000000000000000000020b12191f2326272929292929292929292929292929292928201f1c18120b0300000000000000030b12181c1f20282929292929292929292929292929292625221e19120a01000000000000000000000000000000000000020b131a1f2426272929292929292929292929292929292726241f1a130b020000000000000000000000000000000000000000000000000000000000000000000000000305090e1114141719171c1f20212121201f1c181a171514120e090502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2935414c56616e7b86929fabb5c0cbc4b8aca0958a7d7064594f44382c21160a00000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000a131c232a2f32333333333333333333333333332f2e2b27201f262b2e2f30363a3b3c3d3e3b3a37312a21180e03000000000000000000000000000000000000000000000000000000000001070c1013141d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d181815120c060000000000000000000000000007111921272c2f3034343434343434343434343433322f2a231c130a00000000000000000000000000000004111d2935414b55636f7c8995a0acb9c3cedbd4c7bbafa49991847a6d665d554d45403937312f35393c41495059606a707d88939fa7b1bcc8d4d6cabeb3a99e9285796d6053463a3025190d0100000000000000000000000000000000000000000000000000000000000000000000000000000000070c10121317191d20212324242524242322201f1c18131210121415191919191919191919191919191313100c070000000000000000030f1b27333f4953606d7a85929ea9b3becad3d5c9beb3a99f958e81756d665e564e46423b36312d2b272228252a2d30363a41454d555d656c73808c939ea7b1bdc7d2d8ccc0b6ac9f94897d7063574d42372b1c110600000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000810171c21232423211c171008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171c21232423211c171008000000000000000003090e1214151c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1a1916130d070000000000000000000000000000000000000000000001080e1317191a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1b1313100c070000000000000000000000070c1013131b1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c191816120d0700000000000000000000000000000000000000000001080e13171a1a1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1b1a17140e080100000000000000000000000000000000000000000000000000000000000000000000000000000000020507080a060b0f12131415141313100c070b080705020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1924303a46525e6874818d99a3afbbc7c8bdb1a89d9083776b6054483d32271b0f04000000000000000815222f3b4855626e7b8895a1aebbc8d4cabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000010a12191e22252626262626262626262626262623221f1b16151b1f2122252a2d2e3030312e2d2b261f180f06000000000000000000000000000000000000000000000000000000000000000000040607111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110c0b090501000000000000000000000000000000070f161b2022232727272727272727272727272625221e18120a010000000000000000000000000000000613202c3945515d6774818e9ba7b1bccbd5d7cbbfb4ab9f93877c6f685e544b433c352f2b2624292c2f383f444f58606b73808d95a0acb8c3ced9cfc5b9ada1978a7d7164564c41362a1d1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000040607080d11131416171718181716151313100c0706030507080d0d0d0d0d0d0d0d0d0d0d0d0d0706040000000000000000000005121f2b3744505b65727f8c97a2adbbc4cfd9d0c7b9ada1979083796d605c544c443c36302a25201f1b171b1a1e20252a2f353b434b535b606c77828f95a0abb5c0ccd7d2c7beb0a69c8f8276695f5347382d22170b00000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000050b101416171614100b05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c111417171714110c050000000000000000000000020507080f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0c0a07020000000000000000000000000000000000000000000000000003070b0d0d0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0706040000000000000000000000000000000406070f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0d0c0a060200000000000000000000000000000000000000000000000003070b0d0e0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0e0d0b0803000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306060708080706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2a36414d56616e7b87929facb6c0ccc3b8aba095897d7063594f43382c20150a000000000000000815222f3b4855626e7b8895a1aebbc8cbcabdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000070d121618191919191919191919191919191615130f0a0a0f1215151a1e202123242422211e1a140e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b101316161a1a1a1a1a1a1a1a1a1a1a1a191816120d0700000000000000000000000000000000000714212d3a4754606d7a86929facb8c3cddfd3c7baaea3998e81756a60564c42393129241d1a181d1f262d333d464f59606d7983909da7b1bcc8d4d5c9beb3a99c8f8276685e5246392d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707090a0b0b0b0a09080706040000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7884919ea9b3becdd6d2c7beb0a69e91857b6e675d514b423a322a251f1a13120f0b090e1214191e242931394149505b656d79839199a4afbbc6d0d9d0c2b7ab9f94887b6e61544a3f33281c0f03000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000000000000000000000000000000000000000004080a0b0a08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0b0a08040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1925303b46535f6975818e9aa4afbbc8c8bcb1a79c8f83766b6054483c32261b0f030000000000000815222f3b4855626e7b8895a1aebbbebebebdb0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000002060a0c0d0d0d0d0d0d0d0d0d0d0d0d0d090806030000030608090e1114141617181514120e090300000000000000000000000000000000000000000000000000000000000000030506070708080807070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000307090a0d0d0d0d0d0d0d0d0d0d0d0d0c0c0a06020000000000000000000000000000000000030f1b27333f495364717d8a98a2aebac6d3dfd2c5b9ac9f92867b6e61584e443a30271f18120e0c10141b2227343d45515c67707d8995a0acb8c5cfdacfc5b9ac9f93867a6d6154473a2e211409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f495363707c8996a0acbbc5cfd8ccc0b6ac9f948a7d70695e554b40393028201a140e09050300000205080d13191f272f383f49535d676f7c87939faab4bfcbd6d3c7bbb0a6998d8073665b5044382b1f1206000000000000000000000000000000000000000006121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030506101313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313130e0d0b07030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008141f2a36424d57626f7c87939facb9c2cdc3b7ab9f94897c6f63584e43372b1f15090000000000000815222f3b4855626e7b8895a1aeb1b1b1b1b1b0a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000002050708090a0b0807050200000000000000000000000000000000000000000000000000000003060709060b0f12131414151515141312100b060a07060401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b6574818e9baab4bfcad6d4c8bdb1a89a8d8074695f53463d32291e150d070100040a1117222834404b55606b7783909da9b3bec9d5d4c7bbafa4998b7e7164584b3e31261a0e020000000000000000000000000000000000000000000000000000000000000306070708090a0908070706040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b6574818e9ba8b2bdcdd7d4c8bbafa49a8f82766b61574d43392f271e160e0902000000000000000001080d151d262d38414b555f6a74818e98a3aebac7d3d8ccc2b8ab9e9184786c605346392d201306000000000000000000000000000000000000000305121f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000000000000001040607131313131313131313131313131309090703000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f12131c2020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201a1917130e08010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b47535f6a75828f9ba6b0bbc7c7bbb0a69c8f82756a5f53473c31261a0e0200000000000815222f3b4855626e7b8895a1a5a5a5a5a5a5a5a4978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105060b1012131518171b1f20202121222121201f1c1719161413110d07030000000000000000000000000000000000000000000000000000000000000000000000000000000000030506070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7885929eabb8c5d0dbd1c5b8aca095887c6f62574d42342b20170c030000000000061018232e39434f5964717e8b97a1adb9c6d2d7ccc0b5ab9b8e827568574d42372b1e120500000000000000000000000000000000000000000000000003050608060c101213141516161615141312100c0708060503000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7885929eabb8c4ceded2c6b9ac9f93877c6f62594f453b31271d150c05000000000000000000000000030b141b262f3a434e58616e7b86929facb8c3ced9d2c5b9ada196887c6f6255493c2f2216090000000000000000000000000000000000060b0f12131f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000000001080d11131420202020202020202020202020201615130f0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1f20292d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2726231f19120b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2b37434e58626f7c89949fabb7c2cdc2b7aa9e94887c6f62574d42372b1f140900000000000815222f3b4855626e7b8895989898989898989898978a7d7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003080d1113171c1f20222522272b2d2d2e2e2f2e2d2d2b2823262320201d18130f0b060000000000000000000000000000000000000000000000000000000000000000020507080b060b0f12131413120f0b06080705020000000006060606060606060606060606000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8897a1adb9c6d2ddd0c4b7aa9d9184776a5f53453b3122190e050000000000000007121d27303d4653606d7985929eabb8c5d1ddd2c5b8ab9f928578695f53463a2d21140700000000000000000000000000000000000000000000060b0f12131518171c1f2021222223222221201f1c18181513120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8897a1adb9c6d2d6cabeb3a99b8e81756a6054473e33291f150b030000000000000000000000000000020a141d28313c46525e6973808d9aa8b1bdc8d4d5c9bdb2a8998c7f7266594c3f30251a0e020000000000000000000000000000020a11171b1f201f2c3945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00000000040c13191d202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d23221f1b160f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b22272b2d363939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393433302b241d140b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b26313c4754606a76828f9ca7b1bcc8c7bbb0a69b8e8175695f53473b30251a0e02000000000815222f3b4855626e7b888b8b8b8b8b8b8b8b8b8b8b8a7e7164574a3e3124170b000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f13191d2023282b2d2f322d3337393a3a3b3b3b3a3a38342e32302d2c29241f1b17110a020000000000000000000000000000000000000000000000000000000105090e121415181b171b1f2021201f1b17181414110e08060809131313131313131313131313130a0907040000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a9b3bec9d5d7cbbfb4ab998c7f7366584e4333291f10070000000000000000000b151f2c3845515c6675818e9ba8b4c1cfdad3c6baada297887b6e6155483b2e2215080000000000000000000000000000000000000003090e11171b1f20222423282c2d2e2e2f302f2e2e2d2c28232422201f1b17110f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000c1926323f4c5965727f8c98a9b3bec9d5d3c6baada297897d7063584e43352c21170d0300000000000000000000000000000000020b161f2a36424d57626e7b8895a0acb8c5d1dacfc2b6a99c8f827669574d42362a1e1205000000000000000000000000010a0b141b22272b2d2b273945525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000000040d161e24292c393939393939393939393939393939302f2c272119100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d33373943464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646413f3c362e261d120800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a15202b37434e5863707d89959fabb8c3c3c1b9ac9f93877b6e61574d42362a1e1308000000000714212d3a4754606d7a7e7e7e7e7e7e7e7e7e7e7e7e7e7b6e6155483b2e221508000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b11171b1f25292d2e34383a3c3f413f444647474848484746443f423f3d3a39352f2b27221b140b0903000000000000000000000000000000000000000000000002080d11141a1e2021252822272b2d2d2d2b27222521201e191413151620202020202020202020202020171614100b05000000000000000000000000000000000000000000010e1a2734414d5a6774808d9aa7b3c0cfdad3c7baaea399887c6f6255493c3122170d0000000000000000000004101c2834404b5465727e8b98a9b3bec9d5d6cabeb3a9978a7e7164574b3e3124180b0000000000000000000000000000000000060b10151a1b22272b2d2e312e34383a3a3b3c3d3c3b3a3a38342e312f2d2b27221b1b15100c07000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546875828e9ba8b5c1cfdad2c5b8ab9f9285796d6053463c32201a0f05000000000000000000000000000000000000040d1a25303b47535f697784919daab7c4d0ddd2c5b8ac9f928579695e52463a2d2014070000000000000000000000010a131c1d262d33373937332d45525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0000010c161f282f35394646464646464646464646464646463c3b38322b22190f0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f383f44464f5353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353534d4c4740382e24190e0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27323d4854606b7683909da7b1b6b6b6b6afa4998e8174695e52463a3025190d010000000713202c3945525d686d727272727272727272727272726e695f53463a2d211407000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b22272b3035393a3f4446484b4e49505353545455545453504a4e4c494745403a37332d261d1a140d05000000000000000000000000000000000000000001070c13191d20252a2d2e32352d3337393a3937332d322e2d2a251f1f22222d2d2d2d2d2d2d2d2d2d2d2d2d2423201c1610080000000000000000000000000000000000000000030f1b27333f49536976838f9ca9b6c2cfdcd2c5b9ac9f9286796d6053463a2d20130700000000000000000000000c18232e3b4855626e7b8897a1adb9c6d2dbcfc0b3a69a8d8073675a4d4034271a0d010000000000000000000000000000020a11171c1f262b2d3337393b3e403f444647484949494847464440413e3b3937332d2b261f1c18120b0300000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667784909daab7c3d0dacec1b4a79b8e8174665c5044382c1f1208000000000000000000000000000000000000000009141f2b37424d576673808d99a6b3c0d0dbd3c6baaea298877b6e6154483b2e211508000000000000000000000009131c252e2f383f4446443f3845525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000008131e28313a41455353535353535353535353535353534948433d342b21160a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38414950535c6060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605a58524a40362b1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16202c38444f5964707d8a95a0aaaaaaaaaaaaab9f92867b6e61564c41362a1d110500000004111d2935414c565d6065656565656565656565656565615f574d42362a1e1205000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070b141b22272d33373a4146474a505355585b535b60606161626160605c545b595653514b46443f382f2a251f170f07000000000000000000000000000000000000030b12181e25292d30363a3b3e42433f44464746443f423e3b3936302b2b2e2f39393939393939393939393939302f2c28211a11080000000000000000000000000000000000000005121f2b3744505b657784919eaab7c4d1ddd0c3b6aa9d908377665c5144382c1f120600000000000000000000000714212e3a47535f6a7885919eabb8c4d1dbcec1b5a89b8e8275685b4f4235281c060000000000000000000000000002080c141c23282b3137383f4446484b4d4a50535455555655555453514a4d4b4846443f3837312c28231c150c0802000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facb9c5d2d7cabdb0a4978a7d7164544a3f34281c10030000000000000000000000000000000000000000020e1a26313c4956626f7c8995aab4bfcad6d6cabfb4aa96897d7063564a3d3023170a0000000000000000000009131b252e37404149505350494145525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b00010d19242f3a434c525f606060606060606060606060606056544f473d32271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f49535b60696c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c67645c52473c3023170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c27333d4653606c7883919d9d9d9d9d9d9d9d9d998d8074685e5246392d201307000000010d19242f3a444c52545858545c60626362605d55585855534d453b31261a0e02000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d262d33383f44464c5254545c6062656769656c6d6d6e6e6e6d6d666a686563605d55535049413e3630292119100700000000000000000000000000000000070d151d24293035393b4246484b4e50495053545350494f4b4746413b38373b3c464646464646464646464646463d3c38332c231a10050000000000000000000000000000000000000613202d394653606c7986929facb9c5d2dacdc1b4a79a8e817467544a4034281c1004000000000000000000000006121e2b37424e57697683909ca9b6c3cfdcd0c3b6a99d9083766a5d50432d22170b000000000000000000000000040c13191e262e34383c424749505355575a545c6061616263626161605c545a575553504947433c38342e271e19130d050000000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8798a3aebac7d3d6cabfb4aa95887b6e6255483b2e23170c000000000000000000000000000000000000000000000914212d3a4754606d7a8798a2aebac6d3dbd0beb1a5988b7e7265584b3f3225180c00000000000000000009121b252d37404951535b605b534a42525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b0004111d2935414c565d6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6360594f43382c1f13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b656c76797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979746e64584c3f3326190d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b161f2b3744505b65717e8b9090909090909090909090857a6d6154473a2e2114070000000008131e28323a414550575f61666d6f706f6d67625f585046423b332a1f140900000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070d151d23292f383f44495053565e6164666d6f72747677797a7a7b7b7b7a7979777572706d6763605b535046423b332a2219100700000000000000000000000000000710191f272f353a4146474d5254585b5d535b6060605b535b5854524c4644434749535353535353535353535353534a48443e352c21160b0000000000000000000000000000000000000714212e3a4754616d7a8798a3aebac7d3d8ccbfb2a5998c7f7266594c3f2e23180c000000000000000000000000020e1a2631424f5c6875828f9ba8b5c2cedbd1c4b8ab9e9185786b5e493f33271b0f0300000000000000000000060e161e242930383f44464e53535b6061646769666d6d6e6f706f6e6d6d6669676462605b53534e46444039302a251e170e0700000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8895aab4bfcbd7d3c6baaea298877a6d6054473a2d211406000000000000000000000000000000000000000000000613202c3945525d687985929facb8c5d2d8ccbfb2a5998c7f7266594c3f3326190c000000000000000008121b242d373f49515b63656c655c544b525f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000613202c3945525d687679797979797979797979797979796f6b6054483b2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c79828686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f4953606d78828383838383838383838383837e7164584b3e3125180b0000000008131e28323e48505a61696e74797b7c7c7a756e6a625a50483e32281e130800000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810191f272f343d414950535b6063686d7175797c7e81828486868787888787868584817f7c7a75706c65615a524d453c342a22190f05000000000000000000000000081119222b313940454c5254575e616568696a656c6d6c656a6865615e5653504e54556060606060606060606060606057554f473e33281c100400000000000000000000000000000000000815222e3b4855616e7b8894aab4bfcbd7d8cbbeb1a5988b7e7265584b3f3225180700000000000000000000000000091b2834414e5b6774818e9aa7b4c1cddad2c5b8ac9f928579655b5044372b1f1205000000000000000000071018202830353d424a5053575f62656c6e71737678797a7b7c7c7c7b7a79787674716e6c65625f5853514a423d3630292019100700000000000000000000000000000000000000000000000000000000091623303c4956636f7c8996a2afbcd1dcd2c5b8ac9f928579685d5245392c2013060000000000000000000000000000000000000000000004111d2935414c566b7784919eaab7c4d1d9ccc0b3a6998d8073665a4d4033271a0d0000000000000008121a242d363f49515b636d73786d665d554c5f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a86868686868686868686868686867c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b656e7a85929a93939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3844505c666d76777777777777777777777777716c6156493d3024170a000000010d1924303a44505a616c717b818588898886827c716c625a50443a3025190d01000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a222b313940454f535b60656c70757a7e8285888b8e8f91929994949594939892918e8c8986817d78706c615e574e463c342a21170d020000000000000000000008111a232b343c434b51565e6166696e7175767778797a79787775716e6864605b5860626c6c6c6c6c6c6c6c6c6c6c6c6c6361594f44382c20140700000000000000000000000000000000000915222f3c4855626f7b8895a2aebbd1dcd7cabdb1a4978a7e7164574b3e3124180b000000000000000000000000000d1a2733404d5a6673808d99a6b3c0ccd9d3c7baaea29886796c605346392d2013060000000000000000071019222a323a41464e545c60656a6e73787b7e8083858687888889888887868583807e7b78736f6a65605c544f46413a322b221911070000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8a96a3b0bdc9d6d1c4b7aa9e9184776b564c4135291d110400000000000000000000000000000000000000000000010d19242f43505c6976838f9ca9b6c2cfdacdc0b4a79a8d8174675a4e4134271b0e00000000000008111a242c363f48515b626d737f81786d675d565f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a87939393939393939393939393897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f49535e68707d88939fa79f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9a8d8074675a4d4134271a0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b28343f4a545c60696a6a6a6a6a6a6a6a6a6a6a6a64615a5045392d21150800000005111d2935414c56616c717e868e92989698928e867e716c61564c41362a1d1105000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005101a232c343c434b515960656c71787d82868b8f9298989a9c9e9fa3aba1a1a1aaa29f9d9b9898928e89847d756e695f584e463c33291f1409000000000000000000050e1a232c353d464e555d60686d73777b7e818384858687868583827e7a77716c66616a7679797979797979797979797979706b6155483c2f23160900000000000000000000000000000000000916222f3c4955626f7c8895a2afbbc8d5d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000c1926323f4c5965727f8c98a5b2bfcbd8d6cabfb4aa93867a6d6053473a2d20140700000000000000061019222b343c444c525860666d71767b8084888a8d909298949495969594949892908d8a8885807c77726d666059524c443c342b2319100700000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0bcc9d6d1c4b7aa9e9184776b564c4135291d11050000000000000000000000000000000000000000000000081d2a3643505d697683909ca9b6c3cfdacdc0b3a79a8d8074675a4d4134271a0e000000000007111a232c363e48505a626d727f8c8e82796d685e576c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a87939f9f9f9f9f9f9f9f9f9f96897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38414c56616b73808d95a0aab4acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaca79a8d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17232e38424a50535c5d5d5d5d5d5d5d5d5d5d5d5d585650483e34281d11050000000713202d3946525d68707e8792989fa2aaa39f99928a7e71685e5246392d201307000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212c353e464e555c606b70787e84898f92999c9fa2aaa7a9aaacaeb4aeaeaeb4aeacaaa8aaa29f9b96918a827b6f6a5f584e453b30251a0e0500000000000000020d17202c353e474f5860676d727a8084878b8e90919292999291908e8b87837e78706c6f7c868686868686868686868686867d7063574a3d3024170a00000000000000000000000000000000000916222f3c4955626f7c8895a2afbbc8d5d6cabdb0a3978a7d7064574a3d3124170a000000000000000000000000000c1926333f4c5966727f8c99a5b2bfccd8d4c7bbafa499867a6d6053473a2d201407000000000000040d18222b343d464e565d616a6f787e83888d9196979a9c9fa2aaa1a2a3a2a1aaa29f9c9a9797928d88837e78706b615e564e463d352b22190e0500000000000000000000000000000000000000000000000000091623303c4956636f7c8996a2afbcd0dbd2c5b9ac9f928679685e5246392d2013070000000000000000000000000000000000000000000005111d2a36414c566b7784919eaab7c4d1d9ccc0b3a6998d8073665a4d4033271a0d00000000071119232c353e48505a626c727f8b91948f837a6e695f6c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0acacacacacacacaca296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f3b444f59606d79839098a2aebab9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b3a79a8d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c2630383f44464f5050505050505050505050504b49453e362d22170c000000000714212e3a4754616d7a859299a2aaaeb3aeaba39f92857a6d6154473a2e211407000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c28333e474f5860676d737d838a91969b9fa3abacaeb4b4b5b7b9babfbabbbabfbab8b7b4b4aeaca8a09e938f857c6f6a5f574d42362a21160b0000000000000008131e29323e474f59606a6f797f858d9195989b9c9d9e9fa39f9e9d9b9a93908b837d756f7c8893939393939393939393938a7d7063574a3d3024170a00000000000000000000000000000000000815222f3b4855626e7b8895a1aebbd0dbd7cbbeb1a4988b7e7165584b3e3225180b000000000000000000000000000d1a2733404d5a6673808d99a6b3c0ccd9d2c6b9ac9f938679675c5145382c1f13060000000000010c16202a343d474f585f686d747c838b9095999ea1a9a6a9abaeb3aeafafafaeb4aeaba9a7a9a19e9a95908b837d746d6860584f473d342b20170d020000000000000000000000000000000000000000000000000915222f3c4855626f7b8895aab4bfcad6d3c7baaea398877a6d6154473a2e211407000000000000000000000000000000000000000000000713202d3946525e687986929facb9c5d2d8ccbfb2a5998c7f7266594c3f3326190c000000071019232b353e47505a616c717e88939f9f9590837b6e696c7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adb9b9b9b9b9b9afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29323e45515c666e7b86929fa5afbac4cfc6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c0b3a79a8d8074675a4d4134271a0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e262e34383a434444444444444444444444443e3d39342d241b1006000000000d192633404c5966737f8c97a2abb4babebab4ada2978c7f7366594c403326190d000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202c38444f59616a6f79808890959da0a8acafb5b8babfc1c2c4c5c7cbd1c8d0cac6c5c4c1bfbab8b2aca69e9792857c6f695e52463d33271c10020000000000010d1925303a444f59616b707c848c92989da0a7a8a9aaabacafacabaaaca49f9d95908a81797c88959f9f9f9f9f9f9f9f9f968a7d7063574a3d3024170a00000000000000000000000000000000000815212e3b4854616e7b8794aab4bfcad6d8ccbfb2a5998c7f7266594c3f33261908000000000000000000000000010e1b2834414e5b6774818e9aa7b4c1cddad2c5b8ab9f9285786c554b4034291c1004000000000008131e28323c464f59606a6f7a818790959d9fa7abadb2b3b6b8babebbbbbcbbbbbebab8b6b3b3adaba79f9d959189817a6f6a60594f463d32291e13080000000000000000000000000000000000000000000000000815212e3b4854616e7b8798a2aebac6d3d7cbbfb4aa95887b6f6255483c2f24180d010000000000000000000000000000000000000000000714212e3a4754616d7a8798a3aebac7d3d7cbbeb1a4988b7e7165584b3e3225180b0000040f19222b353d474f59616c717e87939aa4a79f9591847b6f6a7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6c6c6c6bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b17202834404b545f69717e8b939ea8b2bdc7d1dcd2d2d2d2d2d2d2d2ddd8d4d2cbcacacacacacacacacacacacacacacacacacacacacacacacacacacacacac0b3a79a8d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151c23282c2d3637373737373737373737373731302d28221b12090000000000101d2a3743505d6a7683909da9b3bdc6cac6beb3a99d9083766a5d5043372a1d10000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916232f3c4855616b707c838d939aa0a7acb2b9bbc0c5c6cad0cfcac6c5c3c2c1c2c4c5c7cbd0cac7c4bdb9b0a9a29792857b6e61594f44382c1e1308000000000005111e2a36414c56616b707d8691969fa2aaacb1b4b6b7b8b9bbb9b8b6b6afaca7a09d938e837d8a97a3acacacacacacaca3968a7d7063574a3d3024170a00000000000000000000000000000000000714212e3a4754616d7a8798a2aebac6d3d9cdc0b3a69a8d8073675a4d402f24190d01000000000000000000000003101c28343f4a546875828e9ba8b5c1cedbd1c4b8ab9e9185786b5e52452f23180c0000000000010d19242f3a444e58606b6f7c848e939aa0a7abb1b8b9bdc0c3c5c6cad0c8c9c8d0cac6c5c3c0beb9b8b1aba7a09d938e857c706b60584e443a3025190b0200000000000000000000000000000000000000000000000613202d394653606c7885929facb8c5d2dcd1beb1a4978b7e7164554b4035291d10040000000000000000000000000000000000000000030f1b27333f495363707d8996aab4bfcbd7d6cabeb3a996897c6f6356493c3023160900000a16202b343d474f59616b707e879299a4acb1a7a09691857c707885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d2d2c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18232e39424d57626c75818e96a1abb5c0cbd7dfe9dfdfdfebe2d9d2ccc8c6bfbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb3a79a8d8074675a4d4134271a0e01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a11171c1f20292a2a2a2a2a2a2a2a2a2a2a2a2524211d171009000000000000121f2c3845525f6b7885929eabb8c5d0d6d0c5b8ab9e9285786b5f5245382c1f12000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8691959fa4acb1b8bdc3c7cbccc7c6c3bfbeb9b8b7b5b4b6b7b9bbbfc6c9cecec9c1bbb3a9a2978e81756b6054483a3025190d01000000030e18212d3946525e68707d869298a1a9aeb3b8bcc1c3c4c5c5c7c5c4c3c0bbb9b1aca59e959086929facb8b9b9b9b9b9b0a3968a7d7063574a3d3024170a00000000000000000000000000000000000713202d3946525d687985929facb8c5d2dacec1b4a79b8e817468564c4135291d1104000000000000000000000006121f2c3844505c667683909da9b6c3d0dcd0c3b6a99d9083766a5d5043372a1d07000000000004111d2935414c565f6a6f7d8691969fa4acb1b8bcc2c5c9cfcfd1cdcbc9c8c8c8c9cbcdd1cfcfc9c6c3bcb8b1aca59e9791867d706a60564c41362a1d140a000000000000000000000000000000000000000000000005121f2b3744505b657783909daab6c3d0dbcec2b5a89b8f8275675d5145392c20150a000000000000000000000000000000000000000005121f2b3744505b6574818d9aa7b4c0d1dcd2c6b9ada197877a6d6154473a2e21140700030f1b27323d464f59606b707d879299a3abb5b9b1a8a19792867d7885929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303c45505a606d7a849199a3afbbc2cdd7e1ecf7eee4d9d0c7c0bbb9b2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a79a8d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c1012131c1d1d1d1d1d1d1d1d1d1d1d1d181715110c0600000000000000121f2c3845525f6b7885929eabb8c5cfd5d0c5b8ab9e9285786b5f5245382c1f12000f1c2936424f5c6975828f9ca8b5c2c6c6c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d79839198a2aeb6bec3c8cdc8c7c0bbb9b6b2b3adabaaa9a8a9aaacaeb5b9bdc4ccd5cdc5bbb3a99e93897d7063564c41362a1d110500000009141f2d39444f59616d7a859298a2aab2babec5c8ced2ccc7c6c2bfbdbcbbbcbfbcb8afa79f989298a3aebac7c6c6c6bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000005111d2935414c566a7784919daab7c4d0dcd0c3b6a99d908376685d5245392c20130600000000000000000000000713202d3a4653606d7986929facb8c5d2dbcec1b4a89b8e8175685b4e4235281b0f02000000040f19232c3945525d686f7c859298a1a8afb6bec3c7cdd2cfc9c5c4c1bebcbcbbbbbcbec0c4c5c9ced2cdc8c3bcb8afa9a19892867c6f685e52463e2f261c110600000000000000000000000000000000000000000000030f1b27333f49536875818e9ba8b4c1ced9d2c5b8ac9f92867a6d6053473e30261c1106000000000000000000000000000000000000060f18202d394653606c7884919eabb8c4d1ded1c5b8ab9e928578685e5246392d2013070006131f2b37434e58606b707d869299a3abb5bdc3bab2a9a19892867d85929fabb8c5d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e2a333f45525d686f7c87929fa6b0bbc5cfdae6efe8ddd2c7beb6afaca5a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49a8d8074675a4d4134271a0e0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030607101111111111111111111111110b0a0805000000000000000000101d2a3743505d6a7683909da9b3bdc5c9c5bdb3a99d9083766a5d5043372a1d10000f1c2936424f5c6975828f9ca8b5b9b9b9b9b6aa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3945515d676f7c86929fa5afb9c3c7c3bcb8b5afaca9a6a9a29e9d9c9b9c9e9fa3abacb2bac2cad4cdc5bbafa59c8f8376685e5246392d2013070000020e1a26313c4955616c75818e97a1aab4bcc4cad0d4d0c7c0bbb9b5b2b0afafafb2b5b9bbb1aaa39fa3aab4bfcbd6d2c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000010d192430434f5c6976828f9ca9b5c2cfdcd2c5b9ac9f92867a6d6054473a2d22170b00000000000000000000000916222f3c4955626f7c8898a3aebac7d3d9ccc0b3a6998d8073665a4d4033271a0d000000000a16212c38444f59606d7a849197a2aab2bbc0c7d0d4cdc7c4bdb9b7b4b1b0afaeafafb1b4b7b9bdc4c7ccd4cec8c1bbb2aaa29891857a6d615a5042382d22170b00000000000000000000000000000000000000000000000b17222d3f4b5865727e8b98a8b2bdc9d5d3c7baaea3988a7d7164594f42382e23170f0500000000000000000000000000000000040d18212b37434e58626f7c8996a1adb9c5d2dbcec2b5a89b8f827568564c41362a1d1105000815222e3b4754606a6f7d869298a3abb5bdc7ccc4bbb3aaa298928687939facb9c6d2d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c18212935414c56606a737f8c949fa9b3becad6dde7e4d8ccc0b6aca49f989797979797979797979797979797979797979797979797979797979797979797978d8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1926333f4c5966727f8c97a1abb3b9bdb9b4aba1978c7f7266594c3f3326190c000f1c2936424f5c6975828f9ca8adadadadadadaa9d9083776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b555f6a717e8b939ea7b1bcbbb9b1ababa49f9d99959792908f8e8f9192999ea0a8b0b8c2ccd5cdc1b9ac9f92867a6d6154473a2e211407000005121e2a36424d5764707d8a939ea9b3bcc5ced6d0c9c1bdb5afaca9a5a3a2a2a3a5a9acafb6b4aeacaeb4bcc6d0dcd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000081a2734414d5a6774808d9aa7b3c0cfdad4c7bbafa3998a7d706353493f33271b0f0300000000000000000004101c2834404b5565717e8b98aab4bfcbd6d6cabeb3a9978a7e7164574b3e3124180b000000030f1b27323c4854606b75818e96a1a9b3bcc4ccd2d1cbc2bbb7b2adaba7a5a3a2a2a2a3a4a7aaacb2b7bbc1cbd0d4cdc4bcb4aaa1978f82756c61544a3f33281c0f03000000000000000000000000000000000000000000000615222e3b4855616e7b8896a0acb9c5d2d6cbbfb4aa9c9083766c61544a3f342821170d060000000000000000000000000000040c161f2a333c47545f6a75818e9ba9b2bdc9d5d4c8bcb1a7988b7e7265584b3f3025190d01000916232f3c4956626f7c859298a2aab4bdc6cfd6cdc5bcb4aaa399939399a4afbbc7d4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19242f3a434e58606c78828f97a1adb9c0cbd5e0e0d4c8bbafa49a938c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8074675a4d4134271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a859299a2a9acb2adaaa29992857a6d6054473a2d211407000f1c2936424f5c6975828f9ca0a0a0a0a0a0a0a09d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f39434e58626c74818e95a0aab4afaca7a09d9993908c8986858482818384868c91969fa6b0bac3ced4c7bbafa3998b7e7164584b3e3125180b00000714212d3a46535f697683909ca5afbbc5ced7d0c7beb7afaba49f9c9996959596989c9fa4acb0bab8babfc6ced8e2d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000b1824313e4b5764717e8a97a9b3bec9d5d7cbc0b5ab9a8d8073655b5044372b1f150b01000000000000000006131f2c3845515c6774818e9ba7b4c1d0dcd2c6b9ada197887b6e6155483b2e22150800000007131f2c38444f5963707d89939ea8b2bcc5ced8cfc7c0bbb0aba8a19e9a989695959596989a9ea0a8aab0babfc6ced6cec6bcb3a99e948a7d70665b5044382b1f1207000000000000000000000000000000000000000000000714212d3a46535f697784919eaab7c2cdd8d0c6b7ab9f948a7d70665c50443d33291f170f07010000000000000000000000060e161e28313c454f59626f7c87939facb9c4cfdad1c5b8aca095887b6e6155483b2e22150800000a1724313d4a5764707e869298a1a9b2bac3cbd4d6cec5bcb4aba49f9fa4abb5c0ccd7d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313d44505b666e7b85929ea4aeb9c3ced8dfd2c6b9ac9f93877f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6255483c2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d68707d8792979ea1a8a19e9892877d70685d5245392c201307000f1c2936424f5c6975828f939393939393939393939083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313c46505a606d79839198a2aba39f9b95908b86837f7c7a7877767576777a7f848f949fa8b2bdc8d4cbc0b5ab9b8e8175685b4e4235281b0f00000815222e3b4855616e7b88949fabb7c1cdd7d1c8beb5ada59e99938f8c8a8988898c8f939a9fa6aeb6c0cbd0d8e0ead6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000815222e3b4855616e7b8897a1adb9c6d2dcd1c4b7aa9d9184786c6053463d31271d120700000000000000050e17202d3a4653606d7985929fabb8c5d2ded1c5b8ab9e928578695f53463a2d2114070000000915222f3b4854606b7783909da5afbac4ced7d1c7bdb5afa69f9c96918e8b89898888898b8d91969c9ea6aeb4bcc6d0d7cec4bbb0a69e9184786c605346392f24180c0000000000000000000000000000000000000000000005121e2a36424d576773808d9aa7b1bcc8d4d3c7bcb0a69d9184786d60594f453b31292118120b060000000000000001040a11172028303a434d57616c76828f9aa4afbbc8d6d7cbbfb5ab9d908377695f53463a2d21140700000a1623303c4955616c707d869197a0a8b1b9c2cad3d7cfc6bdb5afacacafb5bdc7d2ddd7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f28333f4a545e69707d8a929da7b1bcc6d0dbd4c8bbafa49a9083797171717171717171717171717171717171717171717171717171717171717171716f6a5f53473b2e2115080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56606b707d858d91969597928d867e716b61564c4135291d1104000f1c2936424f5c69758286868686868686868686868683776a5d5044372a1d1100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a343f45515d676f7c86929f9f99928e89837e7a76736f6d676a696869686d7279828f96a0acb9c5d2d1c2b6a99c8f8376695c504336291d100004111d2935414c566673808c99a6b0bbc9d3d6ccbfb6ada39b938e87827f7d7c7c7c7f82878f949da4aeb7c1cdd7e1e3d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000613202d394653606c7985929eabb8c5d0dbd1c5b8aca0968a7d7063594f43392f231812090300000000060f17202a36424d5764717d8a97a2adbac6d3d7ccc0b5ab9b8f827568574d42362a1e1205000003101c28343f4a54636f7c8995a0abb7c1ccd6d7cbc0b5aba39f948f8984817e7d7c7b7c7c7e8184888f949fa3aab4bdc7d2d6cdc1b8aca0968a7d7063554b4035291d1004000000000000000000000000000000000000000000020e1a26313c4855626f7b88959fabb8c3ced8cdc2b8aca0958b7f726b60574d433b3329231d17110e0807070607080d11141c2228323a424c555f69707d8a949facb6c0ccd8d3c7bbaea3998b7f7265574d42372b1e120500000814202d3944505a616b707c859196a0a7b0b8c1cad2d8d0c7c0bbb9b9bbc0c7d0d9e3d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17222d38424d57616c74808d95a0aab4bfcad6d8ccc0b6ac9f948c7f736b64646464646464646464646464646464646464646464646464646464646464625f584e43372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a434f59616b707a808487888785807b716c61594f443a2f24190d01000714202d3a4753606d797a7a7a7a7a7a7a7a7a7a7a7a796d6053473a2d2014070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18222935404b555f6a717e8b93948f87817c77716d686662605c555c5b565d60676d7984919eaab7c4d1d0c4b7aa9d9184776a5e5144372b1e11000613202c3945525d687784919eaab7c2cddacfc4baaea49b918b817b7672706f6f7072767c828d929da5afbbc5cfdae6d6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000005121f2b3744505b6574818e9baab4bfcad6d4c8bdb2a89c9083766b60554b403429241a140e0908070c11172129323b46535f6975828f9ca9b3becad6d4c7bbafa4998b7e7164584b3e31261a0e02000006121f2b3844505c6675818e9ba7b1bcc9d3d9d0c7bbafa399928b827c787472706f6f6f707174777c828a9298a3abb5c0ccd7d4c8bdb2a89c8f8275675d5145382c1f1306000000000000000000000000000000000000000000000915212e3a47535f6a7683909da8b2bdc8d4d4c8bdb1a89f92877d6f695e554d453d342f27221b19151413131415191d20262d333c444c545d676e7b85929fa6b0bec7d2d7cbc0b5ab9f92867a6d6154473c31261a0e02000004101c28333e475059606a6f7b8490959fa6afb8c0c9d8d9d2ccc7c6c6c7ccd2d9e2ebd7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f3b454f59606d79839098a2aebac1ccd6d2c7beb0a69f92877d6f685d575757575757575757575757575757575757575757575757575757575755534e463c32261b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313d474f5961686d73787a7b7a79746e69615a50473e32281e1308000006131f2c3845515c676d6d6d6d6d6d6d6d6d6d6d6d6d6d675d5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061018242f39434e58626c75818e8a827b756f6b64615d565653514b4f4e4c52555d6773808d99a6b3c0ccd2c5b8ab9f9285786c5f5245392c1f12000714212d3a4754606d7a86939facb9c6d2d5c9bdb2a89c928b7f756e696663626263656a6f78808d939ea9b3bec9d5e3d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000030f1b27333f495364707d8a98a2aebac7d3d9cec3b7ab9f94897c6f675c51453e362a251f1a161516181c2328333b44505a616e7b87929facb9c5d0dbd2c6b9ac9f93867a6d6154473a2e2114090000000713202d3a4653606d7885929fabb8c3cdddd2c7beafa59f92877e766f6c6565636262626365676a6f757e869299a4afbbc7d1d9cec3b8ac9f9286796d6053473a2d2014070000000000000000000000000000000000000000000006121f2b37434e5864717e8b96a0acb8c3cfd9cec3baaea39992857b6e675f574f454039332d2a2522212020212224292c2f383f444e565d666d79839197a2adb8c2d0d9d4c7bbafa3998e8175685e5246392a1f1409000000000b17222c353e474f585f696e7a8390949ea5afb7c0ccd2d9d7d4d2d2d4d7dde3ebe4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d29333e45515c676e7c86929fa5afbac4cfd9d0c2bbafa39991847a6d605a504a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4847433c342a20150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2b353d474f565e6166686e6f6e6c66615e5750483e352c20160c01000004101c2934404b555c60606060606060606060606060605d554b4035291d10040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d28313c46505a606d79827d766e6a63605954524c4a4d4b51535558565e616a74808d9aa7b3c0cdd2c5b8ac9f9285796c5f5246392c1f13000a1623303d495663707c899aa4afbbc8d4d2c5b9ada1968d80736d615e5757565556585f666d77818f97a1adb9c7d1dcd6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000b17222d3a4753606d7a86929facb8c3cdd9d3c7bcb0a69d9083796d605a50483f36312a2522212223292e343b454d56616c76828f99a3afbbc7d7d5c9beb3a99c8f8376685e5246392d2013070000000916232f3c4956626f7c8997a2adbac6d5d8ccc0b6ac9d938a7e716d63605b535656555556585860626c717d87939fabb5c0cbd7d3c7baaea398897d7063564a3d3023170a00000000000000000000000000000000000000000000030f1a26313c4653606d7884919ea7b1bdc7d1d7cbbfb4aba1979083796e696059514b443f3836302f2e2d2c2d2f2f35393d424a50575f686d78828f95a0a9b3becad4d6cabfb4aa9f92877b6e61564c41362a180e030000000005101a232c353d464e575f686e7a828f939da5aebbc0c7d0d9e0dfdfe0e3e8eef5e4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b17202934404b555f6a727e8b939ea8b2bdc7d1d7cbc0b5aba1968f81756d62584e433e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3b37322a22180e0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d1a232c353d444c5254565e616261605b54524d453e362c231a0d04000000000c18232f39434b515353535353535353535353535353514b43392f24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2a343f45515d676d76706c625f57544f4d5354575a555d60626467686d727c85929eabb8c5d1d1c4b7ab9e9184786b5e5145382b1e12000c1926323f4c5965727f8c98acb6c0ccd8d1c4b7ab9e9184796d605b534d4a4949494e545c656d7a85929eabb5c0cbd7d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000613202c3945515d6774818e9ba7b1bcc8d4d8cdc2b8aca0958d80746c615a5146423b36302f2e2f2f34383f444d575e68717e8a949eabb5c0cbd7d2c6b9ada1978a7e7164564c41362a1d11050000000c1925323f4c5865727f8b98a9b3becad6d4c8bbafa49a8e81746c625a5350494a494849494b4e545a616b73808d99a3afbbc7d3d6cbbfb4aa998c7f7366594c403326190d00000000000000000000000000000000000000000000000a151f2b3844505c66717e8b95a0abb5c0cbd7d1c6bdb3a9a09590837b6f6b605c55504946413d3c3a39393a3b3d4145474f545b606a6e7a828f949ea8b1bbc5d0d7cec5baaea2988e8174695f53443a3025190600000000000008111a232b343c454d565e686d79818e939ca4afb6bec7cfd8e0e9edf0f4f9f1e4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b090907030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18232f39434e58626d75818f96a1abb5c0cbd7d1c7bdb2a89e938b7e716a5f554b403431313131313131313131313131313131313131313131312f2e2b262018100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a232c323a4146474c5254555453504a46423b332c241a1108000000000007121d2731394045474747474747474747474747474745403931271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18222935404b555d606964615a53535559575e61646669676d6f7174767a7f859297a2adb9c6d2d0c3b6a99d9083766a5d5043372a1d10000e1b2834414e5b6774818e9aa7b4c1d2d6cabeb3a9988c7f72675c5146423d3c3c3d424a535d67737f8c99a3afbbc7d3d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000004111d2935404b55626f7c8995a0acb8c2cdd8d4c8bcb1a79d928a7e716c625b534d46423d3c3b3c3d40454a50575f696e7a85919ea6b0bdc7d1d6cabeb3a99e9185796d6053463a3025190d010000000e1b2734414e5a6774808d9aa7b4c0d0dbd2c6b9ac9f93877b6e615a5046443f3d3c3c3c3d3e43475059616d7a86929facb9c5d2dcd0c1b4a89b8e8175685b4e4235281b0f000000000000000000000000000000000000000000000003101c28343f4a54606d78839099a3afbbc3ced7cfc5bbb1a7a09591857d726d67605b53524c4a4847464547484a4c52545960666c717c848f949ea6b0bac3cdd7d0c5bcb1a79f92867b6e61574d4232291e130800000000000000081119222a333b444c565d676d78818d929fa4acb5bdc6ced7dfe8f0f9fff1e4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302318181818181818181818181818181818181818181818181615130f0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313c46515b606d7a849199a3afbbc2cdd7cfc4baafa59f92867c6f675c51453e332924242424242424242424242424242424242424242422211f1b150e06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111a20283036393b414647484746443f38363029201a1208000000000000010b151f272f34383a3a3a3a3a3a3a3a3a3a3a3a3a3a38352f271f150b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000061018242f39434b51535c575554585f626669696e717376787a7c7e8083868c9297a2a9b3becad6cbbfb5ab9a8e8174675b4e4134281b0e000f1c2935424f5c6875828f9ba8b5c2ced2c6b9ada197887b6e62554b4036312f2f3038414c55616d7a86929facb9c5d2d6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000010d18242f3a4854606a7783909da7b1bcc8d4d9cdc3b9aea49f92867e726d615e57524d4a4948494a4b51545c60696e7b849197a1adb8c2cfd9d0c7b9ada2978c8073665c514538291e130800000000101c2936434f5c6976828f9ca9b5c2cfdccfc3b6a99c908376695e53483f37332d2f2f2f3032373e46525e6876828f9ca9b5c2cfdcd0c3b6a99d9083766a5d5043372a1d100000000000000000000000000000000000000000000000000b17232e3844505c666f7c87929fa7b1bcc5cfd6cdc3b9b1a7a09792877f79716c65615e565755545252545556565d60646b70787e8591969fa6b0b8c1ccd5d6cabeb4aaa0958c7f72695e53453c3120170c020000000000000000071018212a323b434c555c666d74808c939aa3abb4bcc5cdd6dee7f0f8f1e4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3024242424242424242424242424242424242424242424242423221f1b160f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a343f45525d686f7d87929fa6b0bbc5d0d6ccc1baaea2989083796d605a50453b2f261c171717171717171717171717171717171717171515120f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080e161e252a2d3036393b3c3b3938332d2a251f170e080000000000000000030d151d23292c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c29241d150d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f182129313940454e53565e61666a6f7276787b7d80828586888b8d9092999fa2a9b3bbc5cfd3c7bbaea3998b7e7164584b3e3125180b00101d293643505c6976838f9ca9b6c2cfd1c5b8ab9e9285786a5f5343392f252322262f3a46525e687783909daab6c3d0d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000007131d2c38434e5864707d8a959fabb8c0ccd6d5cbc0baaea39892877f756e69615e575755545557555c60666d727b849196a0a9b2becad3d2c7beb2a89e92857a6d60544b403428170c0200000000101d2a3743505d6a7683909da9b6c3d0dacdc0b4a79a8d817467574d42362b272223222223272b36414c566773808d9aa6b3c0cdd9d0c3b7aa9d9084776a5d5144372a1e1100000000000000000000000000000000000000000000000006111c28343f4a54606a74808d95a0a9b3bdc7d0d5cbc3b9b1a9a199928c847e78726e68656362615d5d60626365686d71767d838b9297a0a8b0b8c1cad3d2c9c0baaea2989083786d60574d42332a1f0e0500000000000000000000060f182029313a434b545c606e737f889299a2aab3bbc4ccd5dee6eff1e4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c31313131313131313131313131313131313131313131313131302f2c2721191007000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18222935414c56606b73808c949fa9b3becad6d6cabfb4aaa0958d80746c61574d42382d22170d0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0908060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c13191d20252a2d2e2f2e2d2b28221c1a140d0500000000000000000000030b12181c1f20202020202020202020202020201f1d18120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d18212a333b424a50575f62686e73777b7f8285878a8d8f919695979a9c9fa3abadb3bcc5cdd1cabfb4aa9f92867a6d6054473a2d21140700101d2a3743505d6a7683909da9b6c3d0d0c3b7aa9d9084776a584e4331271d16141d2935414c566774808d9aa7b3c0cdd6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000010f1b27323d4955616c7683909da5afbac4cfd8d7cbbfb4aaa399938b817b736e6966646261626365676d70787f859196a0a8b2bbc4cfd8ccc0b6aca0968c7f72685d5242392e2318050000000000111e2a3744515d6a7784909daab7c3d0d9ccbfb2a6998c7f7366594c4031231b17161516161b25303f4c5965727f8c98a5b2bfcbd8d1c4b7ab9e9184786b5e5145382b1e12000000000000000000000000000000000000000000000000000b17232e38424e58606d79839097a2abb5bec7d1d5cbc3bbb3aba39f96918a837e7a7672706f6d68686d6e7072767a7e828990959fa2a9b2bac2cad3d2c9c0b7aea49f92867b6e665c50453b3121180e000000000000000000000000060e171f283139424a505c636d727e879298a2a9b2bac3ccd4dde5eee4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3b38322b23190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f1924303a444f59606d78829097a2adbac0ccd5d0c6bcb1a79d928a7d70695e544a3f332820160c0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d1114191e20212221201f1c17110e090200000000000000000000000001070c1013141414141414141414141414141413100c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2a333c454d545c606a6e747b8084888c8f929797999c9ea1a9a4a7a9acafb5babec5cecfc6bfbaaea2988e8174685d5245392c20130700111e2b3744515e6a7784919daab7c4d0cfc2b6a99c8f8376695c50433129150b0b1925303e4b5864717e8b97a4b1becad6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000a16212d3944505a63707d89939da8b2bdc6d1dcd1c6bcb4aba49f938e86807b7672706f6e6f707275797d838b9298a0a8b2bac3cdd6cdc4bbafa49a9184796d60564c4130271d12070000000000101d2a3743505d6a7683909da9b6c3d0d9ccc0b3a6998d807366544a3f34281e1a1716171a1f27333f495366737f8c99a6b2bfccd9d0c4b7aa9d9184776a5e5144372b1e110000000000000000000000000000000000000000000000000006111c26303c45515d676e7b859299a3acb6c0c7cfd5cdc5bdb4aea8a19e95908b87837f7d7b7a79797a7b7d7e82868b8f949da0a7adb3bcc3ccd4d6c9c0b7afa59c928a7e71695f544a3f33291f0f0600000000000000000000000000050d161f2730383f44525b626c717d869297a1a8b2bac2cbd4dce5e4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f63564b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4948433d352b21160a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323d44505c666e7b85929fa5afb9c3cfd8cec3b9aea49e92857b6e665b50443d32281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105080e111414151413120f0b06000000000000000000000000000000000000040607070707070707070707070707070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313c454d575f666d727b81868c9196999c9ea2a9a6a9abadb2b1b3b6b9bbc0c7cacdc8c3bcb4aea49f92867b6e61564c4135291d110400121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f081724313d4a5764707d8a97a3b0bdcad6c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000004101c28333e4854606b74818e96a1abb5bfcbd7d8cfc6bdb5afa59e98928c87837f7d7c7b7c7d7e81858a90959fa2aab2bac3ccd5cec4bbb1a79f93887d70675c51433a2f1e150b0000000000000f1c2936424f5c6975828f9ca8b5c2d2ddcec1b4a89b8e8175665c50443a302a25232323252a313944505b6574818e9aa7b4c1cddacfc3b6a99c908276695d5043362a1d1000000000000000000000000000000000000000000000000000000a141e2935404b555f69707d87929aa4afb5bdc6ced5cfc6bfbab2aca79f9d9a93908c8a888785858788898b8f92999c9fa6acb1babec5ced5d0cabfb7afa59d938d80736c61574d42382e21170d000000000000000000000000000000040d151e262e344049515a616b707d859196a0a8b1b9c2cad3dbe4d7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f635757575757575757575757575757575757575757575757575757575756544f473d32271b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162028343f4a545e69717e8a939da7b1bcc6d1d5cbc0b9ada2979082786c60594f443a2f24190f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080908060603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a434d575f696e787f868e92999ea0a8a9abadb3b3b5b8b9bdbec0c3c5c7cbc9c5c3bcb8b1aaa39f928b7f72695f53443a3024190d0100121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0a1723303d4a5663707d8996a3b0bcc9d6c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000b17222c38444f59606d7a849199a3aebbc0c8d6d8d0c7c0bbafaaa29f9a93908c8a8887888a8b8e92989da0a7aeb3bcc4ccd5cec5bcb3a99f958d80746b60554b4031281e0c030000000000000e1b2734414e5a6774808d9aabb5c0ccd7d1c4b8ab9e9184796d60554b433b3631302f3031363b434b55606c7884919eabb7c4d1dacec1b4a79b8e8174685b4e4135281b0e0000000000000000000000000000000000000000000000000000020c18242f39434d57616b717e88939fa3abb4bcc3ccd5d1cbc4bdb9b1abaca49f9c989695989292989596989c9fa3ababb0b8bcc3cad0d6cdc5bebaada59d938e81776c605a50453c30261c0f0500000000000000000000000000000000030c141c2328373f485059616a6f7c8491969fa7b0b8c1c9d2dad7cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f64646464646464646464646464646464646464646464646464646464646360594f43382c1f130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040e17232e38424d57616c74818e95a0aab4bfcbd7d6cabeb3a99f948c7f736b60564c41352922180d030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030608090d0d0d0d0d0d0d0d0d0d0d0d0d0d0a09070300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c565f696e7b838c92989fa3abacb2b5b8b9bec0c2c4c5c9cfcac7c5c3c0bdb9b7b1aba7a098928b80736d62574d4232281e13080000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f091623303c4956636f7c8996a2afbcc9d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000005101b27323d45525d686f7d87929fa4aeb6c0cbd0d8d2ccc1bcb4aeaca49f9d999795949596989b9fa2aaacb1babec5ced8cdc4bcb3aaa1979083796d60594f43392f1f160c000000000000000b1724313e4a5764717e8a99a4afbbc7d4d2c5b9ada1968a7d70675d554d46423e3d3c3d3e42464d555d67707d8996a1acb9c5d2d3c7bbb0a6988b7e7165584b3e3225180b00000000000000000000000000000000000000000000000000000007121d27313b454f59626c727f8b9299a2aab2bac0c9ced6cec9c3bcb8b6afaca9a5a3aaa29f9fa2aaa3a5a9acaeb5b7bbc2c8ced6d0cac2bbb3ada39c938e81786c655b50483e332a1e140a000000000000000000000000000000000000020a1117252d363e474f58606a6e7b8490959fa6afb7c0c8d7ddcabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c7171717171717171717171717171717171717171717171717171717171716f6b6054483b2f221509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b45505a606d79839198a3aebac1cdd6cfc5bbb0a69f92877d6f685d52453f342a1f150b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080c0e0f0e0c0807050200000000000000000000000000000000000000000000000000000000040a0f1315161a1a1a1a1a1a1a1a1a1a1a1a1a1a161613100b04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945525d686e7b8490959fa3aaaeb4b9bdc2c5c6cacbc7c5c4c2c0bfbab8b6b4b2acaaa79f9d9590867f736e645b51453b3120160c020000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000b16212935414c56606b727f8b929da4aebabfc6ced7d7cec6bfbab6afaca9a5a3a2a1a2a3a5a8acaeb4b8bcc3cad0d2ccc3bbb3aaa29891857b6e675c51473d31271d0d04000000000000000714212e3a4754616d7a86939facb9c2cfd5c9bdb2a99e9184796d675e57534d4b4a494a4b4d53575f676d7984919ea8b2bdc9d5d0c7b7ab9f94877b6e6154483b2e211508000000000000000000000000000000000000000000000000000000010b151f2a333e47505a626d727f879298a0a8afb9bdc4cad0d5cdc8c7c0bbb9b6b2b0b4aeacacaeb4b0b1b5b9bbbfc6c7ccd4d2ccc5bebab0a9a29f918c81786d665b53493f362c21180c02000000000000000000000000000000000000000006131b242c353e464e585f696e7a838f949ea5aeb6bfccd2cabeb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3d9ccbfb3a6998c807e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7e7d6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141e29333e45515d676f7c86929fa6b0bbc4d0d7cdc2bbafa39991847a6d605a50463c31271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090e121415191b1c1b181414110e080200000000000000000000000000000000000000000000000000070f151b1f222327272727272727272727272727272322201b160f07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e58606d7a8491969fa7aeb4babfc6c9cdc7c4c3c0bbb9b7b5b3b4aeaca9a7a8a09e9a95908a837c726d645c52493f33291f0e04000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000040d19242f3a434f59626d74808d929da4aeb4bcc3cbd1d7d0cac7c0bbb9b6b2b0afaeafb0b1b4b8babfc5c8cdd5d0c7c0bbb1a9a19892867c6f695e554b40352b1f150b00000000000000000713202d3946525e6875828f9ba6b0bdc6d1cfc4b9aca0968f82796e69615e575756565657575e61696e79828f96a0acbac4ced2c7bdb1a79c8f8276695e53463a2d21140700000000000000000000000000000000000000000000000000000000030d18212c353f48515b626d727d8691969da5acb2babfc6cacfd3d2ccc8c6c3bfbdbfbab8b8babfbcbec2c5c7cbd1d3d0cbc7c0bbb3ada69f97928a7f746d665c544a41382d241a0f060000000000000000000000000000000000000000000009121b232c343d464e575e686d79828e939da4adbbc0c4c4beb1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3dacdc1b4a89c928c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8175685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c17212935404b555f6a727f8b949ea9b2bdc7d2d7cbc0b5aba1968e81756c62584e43392f23180e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c141a1e2121262829282521201e19140c07000000000000000000000000000000000000000000000007101920272b2e2f3434343434343434343434343434302f2c2721191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4754606a74818e96a0a8b1babfc6cbccc7c2bcb7b6b5afacaaa8a6aaa29f9d9a9896918d89837e786f6a625b524a40372d21170d00000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000008131e28313d47515b646e74808d929fa3aab1bbbfc6cbd1d5d2ccc8c6c3bfbdbbbabbbdbec1c5c6cad0d4cfc9c3beb6afa7a09791867c6f6a60574d43392f23190d03000000000000000005111d2935414c5663707d89949fabb4bfcbd5c9bdb2a89e948f827b736e6967646362636466696e737b828f949ea8b2bdccd7ccc0b5ab9f958a7d7064574d42362a1e12050000000000000000000000000000000000000000000000000000000000060f1a232d363f49515b626b707c848e939ea0a8aeb4b9bec5c7cdd2d3d2cfcbd0cac7c5c5c6cad0cbcfd2d3d2cec8c6bfbab5afa9a29f9490857e736d605c544a42382f261b120800000000000000000000000000000000000000000000000009111a222b343c454d565e676d78818d929ca3afb5b7b7b7b1a4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3dcd0c4b9aea49c9997979797979797979797979797979797979797979797979797979797978e8175685b4e4235281b0f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f18242f39434e58626d75828f96a1abb5c0ccd7d1c7bdb2a89e938b7e716a5f554b40342920170b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181f252a2d2e32353635322e2d2a251f18120b030000000000000000000000000000000000000000040f19222b32373b3c40404040404040404040404040403d3b38322b23190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b55626f7c87939fa8b2bac2cbd1cac1bbb7b0aba9aba39f9d9c9a979892908d8b8884807c77716d665f58514940382e241b0f0600000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000010c161f2b353f49525c646e74808b9298a0a7aeb5bbc0c7c9cfd2d4d2d0cccac8c7c8c9cbced2d3d2cdc8c4bdb9b2aca49f9590857c6f6a60584e453b31271d1107000000000000000000010d1925303a4854606b76828f99a3aebac0c9cec4bab0a69e949086807b767371706f707173767b808690949ea6b0bac4cecac1bbafa4999083786c6053463b31251a0e0200000000000000000000000000000000000000000000000000000000000008111b242d373f485159616a6f79818a91969fa2aaadb3b7bcc2c5c7cad0cfd1d1d2d2d2d2d1d1cfd1cbc7c5c3bcb8b4aeaba49f97928b827b716c635b504a42382f261d140a0000000000000000000000000000000000000000000000000000081019222a333b444c555d666d77808c919fa4abababababa4978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3e1d5cabfb6aea8a6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49b8e8175685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313c46515b616d7a849199a4afbbc2ced7cfc4baafa59f92867c6e675c51453e33291d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d151d242931363a3b3f4142413f3b39363028231d150c03000000000000000000000000000000000000000a15202b343d4347494d4d4d4d4d4d4d4d4d4d4d4d4d4d4948443d352b21160b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d6775818e9aa4afbac3ccd7c8c0b8b0aaa69f9c999992918f8d8a888583817e7b77746f6b64605c544e463f372e261c12090000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000040d19232d37404a525c646e737e8691959fa3abafb5b9bec4c5c9cecdcfd0d0d1d0cfcfd1cbc7c5c3bcb8b2ada8a09a938d837b6f6a60584e463d33291f150b000000000000000000000008131e2c38444f59626e7b86929fa5afb7c0c9ccc1b8b0a69f98928c8783807e7d7c7d7e8083878d92989fa6b0b8c1cccac0b8afa59f93877c6f655b504437291f1409000000000000000000000000000000000000000000000000000000000000000009121b252d363f474f585f676d747d848c92989ea2a9abb0b5b8babfc0c2c4c5c5c7c7c5c5c4c2c0bfbbb9b6b1acaaa39f99938e857f786e69615a51443f3830261d140b02000000000000000000000000000000000000000000000000000000070f182129323a434b545c656c747f8b93999e9e9e9e9e9e978b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3e0dcd1c8bfb9b4b3b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1a89b8e8175685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a343f46525e68707d87939fa7b1bcc5d0d6ccc1baaea2989083796d60594f453b2f261c11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161f272f353b4246484c4e4f4e4b4746413b342e271e150d030000000000000000000000000000000000030f1b27323d464e54565a5a5a5a5a5a5a5a5a5a5a5a5a5a56544f473d32271b1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7985929facb6c0ccd5cfc0b6aea69e9c94908c89868482807e7b797674726e696763605953514a423c342d251c140a000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000007111b252f38414a525c646c717c838c92999fa3abadb3b7b9bdbfc1c2c3c3c4c3c3c2c0c0bbb9b6b1aba9a19e96918880796e6960584e463d342b21170d03000000000000000000000002101c27323d47535f69727f8c939da5aeb9bec4c9c1b8b0aaa29f9993908d8a8989898a8d9093999fa2aab0b8c1cac5bebaafa69e938c7f736a6053493f3327170d0300000000000000000000000000000000000000000000000000000000000000000009131b242d353e464e555d606c70797f868c92979c9fa6a9acaeb4b3b5b7b8b8babab9b8b7b6b4b5aeaca9a7a09d98928d87817a726d665e57504840342e261e150b020000000000000000000000000000000000000000000000000000000000060f172028313a424b535b606d737f8791919191919191918b7e7164584b3e3125180b000714212d3a4754606d7a8793a0adbac6d3e0e3dad1cac4c1bfbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb4a89b8e8175685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d18222a36414c56606b73808d959faab3becad6d6cabfb4aaa0958d80746c61574d42382d22170d04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f28313940454d5354595b5c5b5854524d45403930271f150b010000000000000000000000000000000006131f2b37434e58606267676767676767676767676767676360594f44382c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000091623303c4956636f7c8998a2aebec7d2d1c7bdaea49d948f88837f7c7a777573716e6d666765625f57585b53504a4239302a221b130a02000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000009121d262f38414a525a626a6f7980868e92999ea1a9aaacb2b2b4b5b6b7b7b7b6b5b4b5afaca9a79f9d96918b847d746d675e574e463d342b22190f05000000000000000000000000000b16212b37424d57626d74818e939da4adb3b9bec4c2bcb4aeaba49f9c9a9796959697999c9fa4abaeb4bcc2c8c0bbb3ada59d938e81776c60584e41382d221705000000000000000000000000000000000000000000000000000000000000000000000109121b232c343c434b515a61676d737a80858b9094999c9fa2aaa7a9aaabacaeaeacabaaa9a7aba39f9c9995918c86817b746d68605c544d453e3628231c150c0300000000000000000000000000000000000000000000000000000000000000050e161f2830394149505b636d727e8484848484848484847e7164574a3e3124170b000714212d3a4754606d7a8793a0adbac6d3e0ece3dcd5d0cdcccacacacacacacacacacacacacacacacacacacacacacacacacac1b4a89b8e8175685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101925303a444f59606d78839098a2aebac1ccd5d0c6bcb1a79d928a7d70695e544a3f332820160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28313a434b51575e616568696865615e56514b423931271d1207000000000000000000000000000000000815222e3b4754606a6f7373737373737373737373737373706b6054483c31261b0f010000000000000000000000000000000000000000000000000000000000000000000000000000000000000c1925323f4c5865727f8b98aab4bfd0d7cbc0b5ab9d928d827b7673706d6769676462605c5458545b606468605b544a3f332820170c0300000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000b141d262f384048505860666d737b81878d92979a9ea0a8a5a7a9a9aaaaaaa9a8a7aba39f9d9995908b847f796f6b605d554d453d342b221910070000000000000000000000000000050e1a26313c45515b606d78818d929ea1a9adb3bbc4c6bfbab5afaca9a6a4a3a2a3a4a6a9acafb5babfc6cec0b6aea9a29f938e81796d655b50463c2f261b110600000000000000000000000000000000000000000000000000000000000000000000000009111a222a3139404550555c60686d737a7e83888c8f9298989a9c9e9e9fa3a39f9e9e9c9a989992908c88847f7a746e69615e56504a423b332c2417110a03000000000000000000000000000000000000000000000000000000000000000000050d161e272f383f44515b626c71777878787878787878716c6155493c3023160a000714212d3a4754606d7a8793a0adbac6d3e0eae1d8d1cbc7c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c1b4a89b8e8175685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e28323d44505c666e7b85929fa5afbac3cfd8cec3b9aea49e92857b6e665b50443d32281e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a434c555d60696e72747574726e68605c544b43392f24180c040000000000000000000000000000000916232f3c4956626f7c80808080808080808080808080807d7063584e43372b1d13070000000000000000000000000000000000000000000000000000000000000000000000000000000000000d1a2633404d596673808c99a6b3bfd0d4c7bbafa3998d80756e6a6663605d555a57555351535b60666c71746c665b50443d33291e150a00000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000020b141d262e363e464e545c60696e747b80858a8e919697999a9c9d9d9e9d9c9c9a989992908c88837e79726d666059514b433b332b22191007000000000000000000000000000000000915202a333f44515c666d78808a91979ea1a9b3bec9cac7c0bbb9b6b3b1b0afb0b1b3b6b9bbc0c7cad0c5b9aea49c97928a81786d675c53493f342b1d140a00000000000000000000000000000000000000000000000000000000000000000000000000000810181f282f353e434b51565e61676d72767b7f8286898b8d8f91929298999292918f8d8c898683807c77736e68615f57524c443f383029211a1206000000000000000000000000000000000000000000000000000000000000000000000000040c151d262d334048515a61646b6b6b6b6b6b6b6b6b64615a5044392d211408000714212d3a4754606d7a8793a0adbac6d3e0e2d8cfc6bfbab9b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b8b4a89b8e8175685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c162028343f4a545f69717e8a939da8b2bdc6d1d5cbc0b9ada1978f82786c60594f443a2f24190f0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c555d676d747b7f8182817e7b736d665d554b40352920160a0000000000000000000000000000000714212e3a4754616d7a868d8d8d8d8d8d8d8d8d8d8d8d8d82766a5f53473a2f24180d0100000000000000000000000000000000000000000000000000000000000000000000000000000000010e1a2734414d5a6774808d9aa7b3c0cdd2c5b9ac9f92867a6d625f575653514b4c5254555d60656c70787e81786c60594f453b30261c1106000000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000020b141c242d343c424b51575f61696e74797d8184878a8c8e8f90909190908f8d8b898683807c77726d67605c544f4540393129211910070000000000000000000000000000000000030e18212834404a545c666c747d858c9197a1adb9c6d2d2ccc7c6c3c0bdbcbcbcbdc0c3c6c7ccd2d6cec1b5a89c928d857e746d665c554b41382d22190b02000000000000000000000000000000000000000000000000000000000000000000000000000000070d161d2429313940454c52555d6065696e7276797c7f8082848585868686858483817f7d7a76736f6a66615e56534d46413a342e261e170f080000000000000000000000000000000000000000000000000000000000000000000000000000030b141b2227363f485055575e5e5e5e5e5e5e5e5e575550483e33281c1004000714212d3a4754606d7a8793a0adbac6d3e7dcd1c6bdb4aeacacacacacacacacacacacacacacacacacacacacacacacacacacacaca89b8e8175685b4e4235281b0f020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17232e38424d57616c74818e96a0abb4bfcbd7d6cabeb3a99f948c7f736b60564c41352921180c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d676d7981868c8e8f8e8b8680786d675d51453d32271b0f0300000000000000000000000000000713202d3946525e6875818e9a9a9a9a9a9a9a9a9a9a9a94887c6f62554b4035291d110400000000000000000000000000000000000000000000000000000000000000000000000000000000010d1a2734404d5a6773808d9aa6b3c0cdd2c5b9ac9f9286796d615f575857585a565d6064676d72787d838b8c7f736b60574d42382e23170f060000000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000020a121b222b303940454d53575f61666d7074777b7d7f8182838484848382817f7d7a76736f6a65605c55514b423d352f271f170f0700000000000000000000000000000000000000060f18232e39424a545b606b70797f85919eabb8c4d1d9d4d1d0cac6c5c3c2c3c5c6cad0d1d4d9d9ccc0b3a6998d807a716c605c544b43392f261b10070000000000000000000000000000000000000000000000000000000000000000000000000000000000040c12181f272f343a41464b5153575f6166666d6f7274767778797979797877767472706d6766625f5854524c46423c363028231c140c0500000000000000000000000000000000000000000000000000000000000000000000000000000000020a1117242d363e45494a5151515151515151514a49443e362c22170b00000714212d3a4754606d7a8793a0adbac6d3e3d7cbbfb4aba39f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9b8e8175685b4e4235281b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303b45505a606d79849199a3aebac2cdd6cfc5bbb0a69f92877c6f685d52453f332a1e150b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c38444f59606d79838d92999b9c9b98928d82796d60584e43382b1f1306000000000000000000000000000005111e2a36414c56626f7c89959fa6a6a6a6a6a6a6a6a69a8d8074675d5145392c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000c1926333f4c5966727f8c99a5b2bfcfd3c7baaea3998d80756e69666564656668686d7174797e848a909593877d70695e544a3f342821180d0300000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000910191e272e343b42464d53545c606367696e707274767677777776757472706d6866625f5853514b4540393029241d150d0500000000000000000000000000000000000000000007121c273039424a505b656c737d85929fabb8c5d2cec8c5c3bebab8b7b5b7b8babec3c5c8ced5d0c3b6aa9d90837c716c615a50463c30271d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d151d232930363a4045474d5355545c60636567696b6b666d6d666b6b69676563605d5555534e4746413b37312a251e17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121b242c33393c3e4445454545454545453e3c39332c241a100500000714212d3a4754606d7a8793a0adbac6d3e0d3c7baaea3999292929292929292929292929292929292929292929292929292929292928e8175685b4e4235281b0f02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e29333e45515d676f7c86929fa6b0bbc4d0d7cdc2bbafa39991847a6d605a50453c30271d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3b4854606b75828f959fa3aba8aaa39f948e81756a6054473b2e2215080000000000000000000000000000010d1925303a4754606a7783909da9b3b3b3b3b3b3b3ab9f92857a6d6053473d32271b0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a9b3bec9d5cbbfb4ab9c928d827b77737171727374767a7d81858b91959da09992857b6e665c50443e332a1f150b01000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000000070c151d232831363c42464a505357575e61646667696a6a6b6a6969676563605d5655534e47454039342e271e18120b030000000000000000000000000000000000000000000008131e28313d47505a606c777f879297a2adbac6cbc3bcb8b7b4aeabaaa9aaabaeb4b7b8bcc3cbd1c4b8ab9f9590867e716c61584e43392e23180c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181e252a2f35393b4246484b515356585a5c5e545c60605c545e5c5a595653514b4847433c3936302b261f19130b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121a22282d303138383838383838383831302d28221a12080000000714212d3a4754606d7a8793a0adbac6d3dfd2c5b9ac9f92868585858585858585858585858585858585858585858585858585858585868174685b4e4135281b0e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c18212935404b55606a727f8c949fa9b3bec7d2d7cbc0b5aba1968e81756c62574e43392e23180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303d495663707d89939ea7afb5b5b4aea69e93897c6f6256493c2f23160900000000000000000000000000000008131e2b38434e5864717e8b97a1adb9c0c0c0c0baaea2988b7e7165584e43372b1e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7b8897a1adb9c7d1d1c6bdaea49c948f8883807e7d7e808183868a8e92979da0a8aba1979082786d605a50453b31271d1207000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000030b12181f262a3137383f44464a4d535457595b5c5d5d5e5d5d5c5a585654524c4847433c38342f28231d150c070100000000000000000000000000000000000000000000010d19242f3a434f59626c74808c9399a2a9b3becabfb9b1acaaaaa29f9d9c9d9fa2aaaaacb1b9bfc8c8bcb1a79f9892877e716a60554b4034281b110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c13191d24292c31363a3b404546494c4d4f514a505353514b51504e4c4a4745403c3b37322d2a251e1a140d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000810171c2123242b2b2b2b2b2b2b2b2b2423211c171008000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897d797979797979797979797979797979797979797979797979797979797979746f65594d4034271a0e010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18242f3a434e58606c77828f97a1acb6c0ccd8d1c7bdb2a89e938b7e716a5f554b40342820170b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1b2835414e5b6874818e9ba5afbbc0c2bfbaafa59a8d8174675a4e4134271b0e000000000000000000000000000000020f1b27323d4753606d7985929eabb5c0cccdcabeb3aa9d9083776a6054473a2f24190d010000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f697885919eabb5c0cbd7cfc0b6aea69e9c95908d8b8a8b8d8e9092999b9ea2a9acb1b3a99f948d80736c61574d43392f23180c000000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000000000000070c141a1f262b2e34383a3d4246484a4c4e4f50515151504f4e4c4a4745413c3a37312c29231d18120b0300000000000000000000000000000000000000000000000004111d2935414c55606b717e8b929fa4abb3bbc5bfb6ada7a09d989892908f909298989da0a7adb6bfc7c3b9b1aaa29992867c6f675c5145382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d13181d20262a2d2e34383a3c3f4143443f44464645404443413f3d3a39352f2e2b26201e19140e0903000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050c111417171e1e1e1e1e1e1e1e1e171614100b0500000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c68655d53483c3024180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d28313c44505b656e7a85919aa4afbbc3ced7cfc4baafa59f92867c6e675c51453e32291d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2b3744515e6a7783919daab7c1cbd1cbc1b7aa9d9083776a5d5144372a1e11000000000000000000000000000000000a161f2c3845515c6773808d99a4afbbc7d4d0c5b8aca095897c6f62564c4135291d110400000000000000000000000000000000000000000000000000000000000000000000000000000006121e2b37424d576773808d99a3afbbc3cdd7c8c0b8b0aaa79f9d99989798999b9c9fa3ababadb3b8bdbbb0a69d928a7e70695f554b4034291c10040000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000003090e141a1c23282c2d31363a3b3d3f4143434444444342413f3d3a39352f2e2b261f1c18120c0700000000000000000000000000000000000000000000000000000613202c3945515d676f7d87929fa4afb5bdc5bfb5ada49c95908b878584828485878b90959ca3adb5bfcbc3bcb4aba3989183796d6053493f33271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d11141a1e2123282c2d303234362e34383a3a38342e363432302d2c2924211f1b15110d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080a0b1112121212121212120b0a0804000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f635f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5f5b59534b41372c20140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f27333f49535e68707d88939fa7b1bcc6d0d6ccc1baaea2989083796d60594f443b2f261c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2c3845525f6b7885929eabb8c5d1dbd1c4b8ab9e9184786b5e5245382b1f120000000000000000000000000000000004101c2934404b55616e7b87939facb9c3ced4c8bcb1a79b8e8174685d5245392c20160b000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313c4855616e7b87929fa8b1bbc4ccd2cac1bbb7b1abaaa6a4a4a5a6a7a9acafb5b8b9bec5c8c2b9aea49f92857b6e675c5145382c1f13060000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000003090e11171c1f20252a2d2e313334363737383736363432302d2c2924211f1b15100c0701000000000000000000000000000000000000000000000000000005111d2935414c56606d7a859199a3aebbc0c7c3b9ada39c918c837e7a78777677787a7e838c919ba3adb9c2cec6bdb4aaa0958b7f72655b5044372b1f120600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104090e1214181c1f202325272923282c2d2d2c28232927262320201d1815120f0a05010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f63565252525252525252525252525252525252525252525252525252524e4d4841392f251a0f040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000202020202020202020202020202040d17222d38414c56616b73808d95a0aab4bfcad6d6cabfb4aaa0958d80746b61564d42382d22170d040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2b3744515e6a7783919daab7c1cbd0cac0b5ab9d9083776a5d5044372a1d1100000000000000000000000000000000000c18232f3946535f6975828f9ca8b2bdc8d4cdc3b8ac9f92867a6d6054473d32271b10020000000000000000000000000000000000000000000000000000000000000000000000000000000915212d3a46535f6973808d95a0a9b2bbc0c7d0ccc7c3bcb8b6b3b1b0b1b3b4b6b9bbc0c5c6cac8c5beb9b1aba2979083796d6053473a2d2014070000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c1012131a1e2121242628292a2a2b2a2a2927252321201d1915120f0a0400000000000000000000000000000000000000000000000000000000000713202d3946525e6873808d97a1abb5bfccc8bcb1a79c918c7f78716d686a696a686d71787f8c919ba7b1bcc7d0c6bcb1a79d9184786c605346392d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000205070c10131316191a1c171c1f20201f1c181d1b19171413100d0706030000000000000000000000000000000000000000000000000000000000000000000000000002050708090909090909090909090909090909090909090909090909090909090806030000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f635649464646464646464646464646464646464646464646464646464641403c372f271d130900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b0e0e0e0e0e0e0e0e0e0e0e0e0e0e0e06111b262f3b444f59606d79839098a2aebac1ccd6d0c6bcb1a79d928a7d70695e544a3f33281f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1b2834414e5b6774818e9aa5afbabfc1bebaafa4998d8074675a4d4134271a0e000000000000000000000000000000000007121d2a36424d5763707d8996a0acb8c6d0d3c7baaea2988b7f7265594f44382c1e130800000000000000000000000000000000000000000000000000000000000000000000000000000005121e2b37424d57606d79839197a1a8afb5bdc3c6cacdc8c4c3c0bebdbec0c1c3c5c7cbcac6c3bcb8b3ada7a099938d847c6e6255483b2f2215080000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090e12141517191b1c1d1e1e1e1d1c1b19171413110d080603000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a86929fa9b3bdc6d1c4b8ab9f958c7f736d66615e565c565e61666d737f8c959fabb8c4d1cec3b8aca096897d7063544a3f33281c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040607090c0e060c1012131313100c070e0c0a07060401000000000000000000000000000000000000000000000000000000000000000000000000000003090e1214151616161616161616161616161616161616161616161616161616161615130f0a04000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c393939393939393939393939393939393939393939393939393534302c251d150b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c111517181b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b1b141d29323d45515c666e7b86929fa5afbac4cfd8cec3b9aea49e92857b6e665b50443d31281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916232f3c4956626f7c89939da6aeb4b5b4aea69f93877c6f6255483c2f2215090000000000000000000000000000000000010e1a26313b4653606c7884919eaab4bfcad6cabfb4aa9d9184776b6054483a3025190d000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313c45515d676e7b8591969fa4abb1b8babec2c5c6cad0cacacac9d0cac6c5c2bebab8b1aca9a19e95918780796e6a5f53473a2e2114080000121e2b3845515e6b7884919eabb7c4d1cfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020507080a0c0e1010111111100f0e0c0a0707040100000000000000000000000000000000000000000000000000000000000000000004111d2935414b5565727f8c98a3aebbc4cfd0c3b6aa9d9083786c605c54524c4f4c52545c606c7883909da9b6c3d0d4c8bdb2a89b8f8275665b5044382b1f12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000003060707060400000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e141a1e212222222222222222222222222222222222222222222222222222222222211f1b150e060000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c28272420191816120d0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000910171d21242528282828282828282828282828282828282828282834404b545f69717e8b939ea8b2bdc7d1d5cbc0b9ada1978f82786c60584e433a2f24190f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4754606a74818e949fa3aaa8aaa29f948d80746a5f53473b2e21150800000000000000000000000000000000000009141f2b3744505b65727f8b98a2aebac6d3d0c6b8aca095897c7063564c41362a1c110600000000000000000000000000000000000000000000000000000000000000000000000000000009141f2935414b555f696e7b848e93999fa7abaeb3b6b8babfbdbdbebdbcbbbebab8b5b3aeaba7a09d97928c837c746d675f584e43372b1f12060000121e2b3845515e6b7884919eabb7c4cacac2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8cac9bdb0a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d677683909daab4bfcdd6cbbeb1a5988b7e72665b504a46414341464a505b65717e8b97a4b1becad9cec3b8ac9f9285796c605346392d20130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f181f262a2d2e2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2f2e2b262018100600000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30272727272727272727272727272727272727272727272727272727272525221e18110901000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121b22282d30313535353535353535353535353535353535353535352e39424d57626c75818e96a0abb5c0cbd7d5c9beb3a99f948c7f726a60564c41352921180c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2b37434e58606d79828d92989a9b9a98928c82786d60584e43372b1f1206000000000000000000000000000000000000030f1b27333f4953606d7a86929facb8c2cdd4c8bcb1a79b8e8175685e5246382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000030d18242f3a434d575f696e7a818790959a9fa2aaa9acaeb4b0b1b1b1b0afb3aeaba8aaa29f9c95918b857f796f6a605d554e463c31261a0f020000121e2b3845515e6b7884919eabb7bdbdbdbdb5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbbdbdbdbdb0a3968a7d7063574a3d3024170a000000000000000000000000000000000000000000000000000000000306070809090a0908070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a86929facb9c5d0d5c8bbaea295887b6f62544a3f38363036383f4953616e7b8894a1aebbc7d4d3c6baaea298887b6e6255483b2f2215080000000000000000000000000000000000000000000000000000000000000000000104060708090a0909080707040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030e18212a31363a3b3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b37322a22180e04000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c343434343434343434343434343434343434343434343434343434343432312e29231b13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101b242d34393d3e41414141414141414141414141414141414141414141414145505a606d7a849199a3afbbc2cdd7cfc5bbb0a69f92877c6f685d52453f332a1e150b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27323d45515c676d7880868b8d8e8d8a857f786d665c51463c32261b0f03000000000000000000000000000000000000000b17222d3845525d6874818e9aa6b0bbc7d3cec3b9ac9f92867a6d61544a3f33281c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000007131d28313c454d575f686d747c83898e9298999c9fa2aaa3a4a4a4a3a2aaa29f9c9898928f8a847e79726d676058514b433c342a20150a000000121e2b3845515e6b7884919eabb0b0b0b0b0b0a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afb0b0b0b0b0b0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000020507060b1012131515161616151413120f0b06070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3c4955626f7c8899a3afbbc7d4d3c7baada094877a6d6154473a2e2a252a2e3a4753606d7a8693a0adb9c6d3d6cabfb4aa96897d7063564a3d3023170a0000000000000000000000000000000000000000000000000000000000020608070d1013141516161615151413110d0808070502000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f2a333b4246484949494949494949494949494949494949494949494949494949494947433c342a20150a000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356494040404040404040404040404040404040404040404040404040404040403f3e3a342d251b11070000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17222d363e45494b4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e4e515d676f7c87929fa6b0bbc5cfd7cdc2bbafa39991847a6d605a50453c30271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a16202934404b555c666d737a7e8182807e7a726c665c544a40342a20150a000000000000000000000000000000000000000006111b2935414c56626f7c88949fabb7c4cfd3c7baaea3998c7f72665b5044382b1f1409000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f2a333c454d565d616a6f787c81858a8d8f9298959797989796959498928f8c8985827d78716d67605c554e454039312a22180e03000000121e2b3845515e6b7884919ea3a3a3a3a3a3a3a39c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2a3a3a3a3a3a3a3a3968a7d7063574a3d3024170a00000000000000000000000000000000000000000104090e121415171c1f2021222323222121201f1b17161313100c0704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4a5763707d8a96abb5c0cbd7d4c7bbaea194887b6e6155483b2f2924282e3b4754616e7a8794a1adbac7d4dbd0bdb1a4978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000307090e121415181d202022222323222121201d19181414110e09050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a26313b454d535555555555555555555555555555555555555555555555555555555555534e463c32261b0f030000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f63564d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4c4a463f372d23180d010000000000000000000000000000000000000000000000000000000000000000000000000000000005111d28343e485056585b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b55606a727f8c949fa9b3bec9d5d7cbc0b5aba1968e81756c62574d43392e23180e0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c18232f39434b545c60686d71747574716d68605b544a42392e22180e040000000000000000000000000000000000000000000d19242f3a47535f6a7683909ca9b2bec9d5cbbfb4ab9e9184786c6053463b30251a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000040d18212a333c444c525860656c7074797d80838587888a8a8b8a8988878685827f7c7975706c65605c55514b433d352f281f180f0600000000121e2b3845515e6b788491979797979797979797978f8275695c4f4236291c0f0916222f3c4955626f7c8895979797979797979797968a7d7063574a3d3024170a00000000000000000000000000000000000001070d10141a1e212223282b2d2e2f2f302f2e2d2d2b272223201f1c1813110d0801000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1723303d4a5663707d8996a3b0bccfdad6c9bcafa396897c7063554b4038352f34383f4a54626f7c8895a2afbbc8d5d7cabdb0a4978a7d7164574a3e3124170b000000000000000000000000000000000000000000000000040a0f13151a1e212224292c2d2f2f30302f2e2d2c29242521201e1a14110d0802000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121e2a36424d575f61626262626262626262626262626262626262626262626262626262625f584e43372b1f13060000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f635a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a585651493f34291e1206000000000000000000000000000000000000000000000000000000000000000000000000000000000815212d3945505a61646868686868686868686868686868686868686868686868686868686868686c78828f97a1adb9c6d2dcd1c7bdb2a89e938b7e71695f554b40342820170b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d273139424a51565e616567686764605d56504a423930271c10060000000000000000000000000000000000000000000008131e2b37434e5864717e8a97a1adb9c7d2d1c6b9aca196897d7063574d42362a1c110600000000000000000000000000000000000000000000000000000000000000000000000000000000060f18212a323a41464e535b6063676d707376797a7c7d7e7e7e7d7c7b7a7875726f6d6663605b53514b4540393029241d160d060000000000121e2b3845515e6b78848a8a8a8a8a8a8a8a8a8a8a8a8275695c4f4236291c0f0916222f3c4955626f7c888a8a8a8a8a8a8a8a8a8a8a8a7d7063574a3d3024170a0000000000000000000000000000000000060b12181d20262a2d2e2e34383a3b3c3c3d3c3b3a3937332d302d2c2823201d19130e090200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8894a9b3bec9d5d9ccc0b3a6998d8073675d514a454042404546505c66727f8c99a5b2bfccd8d6cabfb4aa95887c6f6255493c2f22160900000000000000000000000000000000000000000000040a0f161b1f22262b2e2f2f35393a3b3c3d3c3c3b3a393530322e2d2a25201e19130d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a46535f696e6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6f6a5f53473b2e2115080000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f67676767676767676767676767676767676767676767676767676767676767676765625b51463a2e221609000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4956616c7174747474747474747474747474747474747474747474747474747474747474747a85929eabb8c5d1ded9cfc4baafa59f92867b6e675c51453e32291d140a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f27303940444c5254585a5b5a5754524c443f382f271e150b0000000000000000000000000000000000000000000000010f1b26313c4653606d7984919eacb6c0ccd5c9bdb2a89b8f8275695e5246382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000060f18202830353d41495053555d606466656c6d6f70717171706f6e6d67696562605c54535049454039342e271e18120c040000000000000a1723303d4a5663707d7d7d7d7d7d7d7d7d7d7d7d7d7c6f6256493c2f2316090714212d3a4754606d7a7d7d7d7d7d7d7d7d7d7d7d7d7d7a6e6154473b2e211408000000000000000000000000000000020a11171d24292c31363a3b3e3f44464848494949484746443f3f3c3a38342e2c29241e19140c07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7a8697a1adb9c6d2ded1c4b7ab9e9184796d605c54514b4f4b51535b606d7883919daab7c4d0ddd3c7baaea298877a6d6154473a2e2114070000000000000000000000000000000000000000040a0f161b21272c2f31373a3b3f404547484949494848474541413e3b3a36302d2a251e19130b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c7c6f6255493c2f2216090000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c73737373737373737373737373737373737373737373737373737373737373737373726d62564a3e3125180b000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e81818181818181818181818181818181818181818181818181818181818181818183909daab7c3d0dde1d6ccc1baaea2989083796d60594f443b2f261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151e272e343a4146474b4e4f4d4b4745413a332d261d150c030000000000000000000000000000000000000000000000000a151f2c3844515c66737f8c9aa4afbbc8d4cec4b9ac9f92877b6e61544a3f34281c10030000000000000000000000000000000000000000000000000000000000000000000000000000000000060e161e24292f383f44464b515357535b60616264646564636261605d55595653504a46443f38342f28231d150c0701000000000000000916222f3c4854606b707070707070707070707070706f6a6054473b2e2215080713202c3945525d686d707070707070707070707070706e685e5246392d2014070000000000000000000000000000070b141b22272f35393b4246484b4a5053545556565554545350494c494645403a39352f2a251f18120b03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c677885929eabb8c4cfdad2c5b9ada1968d80746d66605d555b545c60646d727f8c95a0acb8c5d1dfd2c5b8ac9f928579685e5246392d20130700000000000000000000000000000000000000070c151b21272c32383b3c4247484c4b515355555656555454524c4e4b4746423b3936302a251e17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c68758288888888888888888888888888888888888888888888888888888885786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d3dbcec1b4a89b8e81808080808080808080808080808080808080808080808080808080808080808080807f7265584c3f3225190c000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e8e9095a0acb8c5d1dee8ded6cabfb4aaa0958d80746b61564d42382d22170d0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151c23283036393a3e4142413e3a39352f28221c140b030000000000000000000000000000000000000000000000000004101c2834404a54616e7a86939facb9c6d2d4c7bbafa3998c8073665c5044382c1f1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191d262d3337394045474a49505354555757585756555453514b4c4946443f3937332d29231d18120b030000000000000000000714202c38444f5960636464646464646464646464646260584e43382b1f130604111d2935414c565d6064646464646464646464646464615e564c41362a1e1105000000000000000000000000000710191d262d33394045474d535558545c6061626263626160605b53595653514b4745413a363028231d150c060000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2934404b556875818e9ba8b2bdc9d5d5c9bdb2a89d928d8078716d676a6869666d70767f88939fa7b1bcc8d4d6cabeb3a99b8f827568564c41362a1d11050000000000000000000000000000000000030b121820262b32383d4348494d535559555d60626263636261605d565a5854524d4746413a363028221c140b0500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f959595959595959595959595959595959595959595959595959285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d3dccfc2b6aa9e938e8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d83776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9a9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9da0a7b1bcc8d4e0ede7dbd0c6bcb1a79d928a7d70685e544a3f33281f160c01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e161e242932373b3c40424342403b3a373129241d160d040000000000000000000000000000000000000000000000000006121f2b37434e5863707d899aa4afbbc8d4d7cbc0b5ab9e9184796d6053463c31261a0e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080b141b22272b2f35383a3d3f444647494a4b4b4b4a49484745403f3c3a38342e2b27221b18120c07000000000000000000000004101c27333d474f545657575757575757575757575756544e463d32271b0f03010d19242f3a444c52545757575757575757575757575754524c443b3025190d010000000000000000000000030b1218232b2f383f444b5153575f616568666d6e6f6f706f6e6d6c65686563605c5554524c46423b342e271e180f08000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f3d4a5663707d8996a1adb9c3cfd9cfc4baaea49c928d837e7a7876757678797d828b939aa4afb9c3ced9d0c7b9ada1978a7d7064574a3d3025190d0100000000000000000000000000000000050c151c232832373d43484f5456575f626569676d6e6f706f6f6e6d68696765615e5754524c46413a332d261d170e07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a29f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d3ded2c6baafa59e9b9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7aaacb1b9c3ced9e4f0ede2d7cec3b9aea49e92857a6e665b50443d31281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e17202830353c4347484d4f504f4c4847423c352f281f160d040000000000000000000000000000000000000000000000000814212e3a47535f6a76828f9cacb6c0ccd8dcd1c7b9ada1968a7d7064574d42372b1d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171b1f24292c2d2d3337393a3c3d3e3e3e3d3c3b3a39352f2f2d2b28231f1b17110c0701000000000000000000000000000b16212b353d44484a4a4a4a4a4a4a4a4a4a4a4a4a4947433d342b20160a000008131e28323a4145474a4a4a4a4a4a4a4a4a4a4a4a4a4746413b32291e14080000000000000000000000040c151c2328353d414950555d6065696e717577797b7b7c7c7c7b7a797875726f6d6765605d56524d454039302a211a11080000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d394653606c7884919ea7b1bdc7d1d6ccc0b6aea49c95908b868583828384868a8f949fa4acb6c0cbd5d2c7beb2a89e9285796d6053463a2d20130800000000000000000000000000000000070e171e272e343c43474f5459606367696e7276787a7b7c7c7c7b7b7a787674716e6965615e56524c443f382f29201911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba8afafafafafafafafafafafafafafafafafafafafafab9f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d3e2d7ccc1b7afaaa8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b4b7b8bcc3cbd5dfe8e8e8e9e0d5cbc0b9ada1978f82786c60584e433a2f24190f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d172029323a41464e53555a5c5d5c5955534d45403a312820160c010000000000000000000000000000000000000000000005111e2a36414c56626e7b87939facb9c6d2dde3d5c9bdb2a99c8f8276695f5346392e23180c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f12181d1f2022272b2d2e2f31313231302f2e2d2c292423201f1c17120f0b0600000000000000000000000000000000050f1a232b33383c3d3d3d3d3d3d3d3d3d3d3d3d3d3c3b38322b22190f040000010c1620282f35393a3d3d3d3d3d3d3d3d3d3d3d3d3d3b3936302920170d0200000000000000000000040d161e272e3440474f535b60676d72777b7e818486878889898887878684827f7c7976726d68615e56514b433c332c231a1108000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b66737f8c95a0abb5c0cbd7d2c8c0b6aea7a09d979791908e909193999c9fa6afb6bec7d2d7ccc0b6aca0968d8073665c5145382c1f13060000000000000000000000000000000810192029303940444e545960636b6f73777b7f828586888889898887878583817e7b76726d68615e56504a423b332b2319110700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba8b5bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb8ab9f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d3e0ddd3c9c1bab6b4b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4c0c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c3c5c8ced5dbdbdbdbdbdbdbdbd5c9beb3a99f948c7f726a60554c41352921180c03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e29323a444c52585f626669696966625f57514b433a32281e1308000000000000000000000000000000000000000000000a13202d3946525e6874818e9aa4afbbc8d4e4e6dacfc4b9ac9f93877b6e61554b4034281c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003070c101314171b1f2021222424252423222120201d18161312100b06030000000000000000000000000000000000000008111a21272c2f303131313131313131313131312f2e2b272019100700000000040d161e24292c2d313131313131313131313131312e2d2a251e170e0500000000000000000000020b161f2830394044515960656c71797e83888b8e91929995959695949993918e8c8986837e7a746e69605c554e453e352c231a110700000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a54606d79839199a3afbbc0cbd1d1c8c0b9b1acaaa9a19e9d9b9c9e9fa4ababb0bbc0c7d0d2ccc0bbafa49a9184796d60544b4034281c1004000000000000000000000000000008121a222b323b424a51585f626b6f767c8084888c8f91969595969695949892908d8b87837f7a736d68605b544d453d352b23191107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba8b5c2c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c8c5b8ab9f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d3ddddddd3ccc6c2c1c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4c0cdcecececececececececececececececececececececececececececfcfcfcfcfcfcfcfcfcfcfcfcfcfcfc5bbb0a69f92877c6f675d51453e332a1e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925303a444c565d616a6f73757675736e69605d554c443a2f24190d05000000000000000000000000000000000000000006111b2934404b55616d7a86929facb6c0ccd8e4ebe0d4c8bbafa49a8d8073675c5145382c1f150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406060b0f12131416171818181716151413100d070706030000000000000000000000000000000000000000000000080f161c20222324242424242424242424242423221f1b160f07000000000000040c13191d20212424242424242424242424242421201e19140d0500000000000000000000000a141d28313a424a515b636b6f787e848b9095989b9d9fa3aba2a3a2aba49f9e9b989992908b86817b736d675f574f473e352c23190d04000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3845515c666f7c87929fa4aebbc0c7cfd6cbc3bcb8b7b3adaba9a8a9abacafb5b7bbc2ccd2d0c7c0bbafa59f93887d70675d5142392e23180c000000000000000000000000000007101a242c343d444d545c606a6f757c83898d9196989c9ea1a9a2a3a2a2aaa29f9c9a9a93908b86807a726c665e574f473d352b23190f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba8b5c2c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c5b8ab9f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac6d0d0d0d0d0d0d0d0cecdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdc3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4c0c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2c2bbafa39991847a6d605a50453c30271d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36414c565e686d757c808283827f7b746d675d564c41352921160b00000000000000000000000000000000000000000b17222d3845515c6773808c98a3aebec7d2dde8f0e4d8ccc0b6ac9e9285796d6053463c31261b0f01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003050607090a0b0b0b0a09080706040100000000000000000000000000000000000000000000000000000000050b101416171717171717171717171717171615130f0a04000000000000000001080d111314171717171717171717171717171414110d0802000000000000000000000006111c262f3a434b545c606d737d838b91969d9fa7a8aaacaeb4afafafb5afacaba8aba39f9c98928d8680796e6a61594f473e352b1f160c0100000000000000000000000000000000000000000000000000000000000000000000000000000006111c2834404b54606a73808d929da4afb5bdc3cad0cdc8c4c3beb9b8b6b5b6b7b9bbc0c7c7cdd0cac3bdb5afa59d938d80746b60554b4030271d120700000000000000000000000000060f19222c363e474f565e666d747c828990949a9ea0a8a9abadb2afafafaeb3aeaba9aca49f9c98928d867f786e6960594f473d352b21180c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba8b5b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b8ab9f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adbac3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7b4b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5aba0968e81756c62574d42392e23180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e686d7a81888d8f908f8c8781796d685d52453d33271c1004000000000000000000000000000000000000030f1b27333f4953606d7985929eaab4bfd0d9e4eef4e8ddd2c7b9ada1978a7e7164584e43372b1d12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a0a0a0a0a0a0a0a0a0a0a0a0a09080603000000000000000000000000010407070a0a0a0a0a0a0a0a0a0a0a0a0a08070501000000000000000000000000050e17222d38424b555d666d747f8990959ea1a9abb1b5b7b9babfbcbcbbc0bbb9b7b5b4aeacaaa29f98928d837c706b61594f473d31281d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e39424e58606c77808d929fa3abb1babec5c8ced2cfc9c6c4c3c1c3c4c6c7ccd2cec9c6bfbab1aba49f938e81786c60594f43392f1e150b00000000000000000000000000040e18212b343e48505960686e7880878f949c9fa6aaacb2b5b8b9bdbbbcbcbbbebab8b6b6afacaaa29f98928c827b6f6b60594f473d332a1e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba8adadadadadadadadadadadadadadadadadadadadadab9f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0adb6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6aa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aa7a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a89e938b7e71695f544b4034281c1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814202d39444f59616d7a848e93999c9c9c99938e837a6d60594f44382c20130700000000000000000000000000000000000005121f2b3744505b65717e8b97a1adbcc6d0e2ebecedeee4d6cabeb3a99c9083766a5f5347392f24180d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005080a0b1313131313131313131313131311100e0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020d172028333f4a545d676d78818c919d9fa7adb2b8bcc1c4c5c7cbd1c9d2ccc7c6c4c1bfbab9b4aeaaa29f9590867d706b61594f43392f24180d0400000000000000000000000000000000000000000000000000000000000000000000000000000007121d27303d44505b656c74808c9299a0a7aeb4b9bdc3c6c8ccd2cdcfcecfced2ccc8c6c3bdb9b4aea8a099938d81786c665b50473d31281d0c03000000000000000000000000020c16202a333d46505a616b6f7a828d939a9ea6abb0b7b9bdc2c4c5c9cfc9c9d0cac6c5c3c0bbb9b4aeaaa29f948f857d706b60594f453b30271d1207000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875828f9ba0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09f9285786c5f5245392c1f120000000000000714212d3a4754606d7a8793a0aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9a9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c9c92867b6e665c5145382c1f1306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1623303c4955616c76828f969ea5a8a9aba49f958f82756b6054483c2f2216090000000000000000000000000000000000000613202d394653606c7884919da9b3beced8e2e0dfe0e3e6dacfc5b7ab9f94887c6f62554b4035291d1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c11151718202020202020202020202020201e1d1b17110b0400000000000000000000000000000000000004090c0f0f1313131313131313131313130f0f0c0904000000000000000000000003060809131313131313131313131313130c0c0a060200000000000000000000000008141f29323b44505b666d79828e939ca4abb1b9bdc4c8cdd0d0cbc9c7c6c6c7caccd1d1cbc7c5bfbab4aea7a09892877d706b60554b40352921160a000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e27333f49535b606e747f8790959fa2aaacb2b7b9bbc0c0c1c2c3c2c1c0c0bbb9b7b2acaaa29f95918780776c665b544a3f352b1f160c0000000000000000000000000008131e28323c454f59616c717d8590949fa4acb0b7bbc2c5c8cbc7c5c4c2c1c2c3c5c6c9cfccc8c6bfbab4aea69f9792867d706b60574d43392e23180b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c6875818f939393939393939393939393939393939393939393939393939285786c5f5245392c1f120000000000000714212d3a4754606d7a87939d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f8f83796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724313d4a5764707d8a949fa8afb5b6b5afa79e94897d7063564a3d3023170a000000000000000000000000000000000006121f2b37434e5863707d8a95a0acbbc5cfdcd7d4d2d4d7dce1d3c7bcb0a69a8d8074675d5145392c20150a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000910171d2124252d2d2d2d2d2d2d2d2d2d2d2d2d2b2a27221d160e0500000000000000000000000000000002091015191b1c2020202020202020202020201c1b191510090200000000000000040a0f13151620202020202020202020202020191816120d0700000000000000000000020e1925303b44505a606c78828f949ea5adb8bcc3c9cfcec8c5c4bebcbab9bababdc0c4c5c9cfd0cac6bfbab1aaa29992877d70675d51453d32271b0f02000000000000000000000000000000000000000000000000000000000000000000000000000000030c17222d384149505c646d737c838c92989ea0a8aaacafb6b3b4b5b6b5b4b3b6afacaaa8a19e98928d847c736c655b544a42382d23190d04000000000000000000000000020c1925303a444d57606b717e8791979fa6afb6bec1c7ccc7c6c0bbb9b7b6b5b5b6b8b9bec3c4c8cdcac5bfbab0a9a19892867d70695f554b4034281d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2935424f5c68758286868686868686868686868686868686868686868686868686868685786c5f5245392c1f120000000000000714212d3a4754606d7a8790909090909090909090909090909090909090909090909090909090909090909090909090909090909090909090909083776a5d5044372a1d11000000000000000000000000000000000000000000000000000000000000000000000000000000000c1825323f4b5865727f82828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282828282827d7064574a3d3124170a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000f1c2835424f5b6875818e9ba6b0bac1c3c0bbb0a69b8e8174685b4e4135281b0e00000000000000000000000000000000010b15212e3b47535f6a76828f9ca7b1bccdd6d1cbc7c5c7cbd1d9d8cdc2b8ab9f9285796d6053473d32271b0f0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009121b22292d3031393939393939393939393939393736332e2820170e0400000000000000000000000000030c141b212528292d2d2d2d2d2d2d2d2d2d2d2d292825211b140c030000000000070e151b1f22222d2d2d2d2d2d2d2d2d2d2d2d2d2625221e18110a01000000000000000005111e2a36414d56616c73808d949ea6afb7bfc8cdcec9c3bcb8b7b2afadacadaeb0b3b7b9bdc4c9cfd0cac3bcb4aba3999184796d60594f43382c1f14080000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f383f44525b636a6f787f858b91969a9d9fa4aca6a7a8a9a8a7a6aca49f9d9a96918c8680796f6a605b534a42382f261c1107000000000000000000000000000a141e2935414c565f696f7d869299a1a9b0bbc0c7d0c7c0bbb9b5afacaaa9a8a8aaabadb3b7b8bcc3c7cdcac2bbb3aaa29892867b6e675c51453d2f261b110600000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d797a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a7a6d6053473a2d2014070000000000000714202d3a4753606d79838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838383838174685b4e4135281b0e000000000000000000000000000000000000000000000000000000000000000000000000000000000b1824313d4a56626d727575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575757575706c6155493c3023160a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2b3844515e6b7784919eaab7c2ccd2ccc1b7aa9d9083776a5d5144372a1e110000000000000000000000000000000007121d2a36424d56626f7c88949fabb9c3cecfc7c0bbb9bbc0c7cfd5d3c6baaea2988b7e7165584e43372b1e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006101b242d34393d3e4646464646464646464646464644433f39322920160b000000000000000000000000020c151e262c3134363939393939393939393939393634312c261e150c0200000007101920272b2e2f3939393939393939393939393933322e2a231c130a00000000000000040f19232d3946525e68717e8b929ca6b0b8c1c9d4ccc4bdb9b1acaaa5a2a19fa0a1a3a6abadb2b9bec5cdd6cec6bdb4aba1968d80746b6054483b3025190e02000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d33404951585f666d737a7f84898d90939a98999a9c9c9c9b9a999a93908d8a847f7a736d676058504941382f261d140a0000000000000000000000000006111c26303846525e686e7b859298a3abb2bbc2cccbc1bdb5afacaba39f9d9c9b9b9d9ea1a9aaacb1b7bbc2cccdc5bcb4aaa2989083796d60584e41382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c676d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d6d675d5145392c2013060000000000000613202c3945515d676d77777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777777746f65594d4034271a0e000000000000000000000000000000000000000000000000000000000000000000000000000000000915222e3a46515b6265696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696969696964615a5044392d20140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000121f2b3845525e6b7885919eabb8c4d1d9d1c4b7ab9e9184786b5e5145382b1e12000000000000000000000000000000000c18242f3a46525e6974818e9ba6b0bbccd1c7bdb5afacafb5bdc3ccd6cabeb3aa9d9083776a6054473a2f24190d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c17222d363e45494b53535353535353535353535353514f4b443b32281d1106000000000000000000000009141e2730373d414246464646464646464646464642413d3730271e14090000040e19222b32373b3c464646464646464646464646463f3e3a352e251c11070000000000000a16212c38444f59616e7b85929fa4aeb8c1cad2cac2bab2aca7a09d98969493939497999ea1a8adb3bbc3ccd5cfc6bdb2a89f93877c6f63564d41362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000020b141b22273740464e545c60676d72787d8083868a8c8d8e8f908f8e8d8c8a8684817d78726d68605c554e443f382f261d140b02000000000000000000000000000b17232e38424f59616d7a849197a1aab4bdc4cdc7c0bbb0aba49f9b9992918f8e8f909297989da0a7abb0bbc0c7cec6bcb3aaa0958d80746a6053493f33271b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2934404b555c60606060606060606060606060606060606060606060606060606060605d554b4035291d100400000000000004111d2935404b555d606a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a68655d53483c3024180c0000000000000000000000000000000000000000000000000000000000000000000000000000000006121d29343f495156585c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c5c575550483e33281c100400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000111e2a3744515d6a7783909dabb5c0c9cec8bfb4ab9d9083766a5d5043372a1d1000000000000000000000000000000004101d2935404b55616e7b86929facb9c2cccbc0b5aba39fa3abb2bac3ced0c5b8aba095897c6f62564c4135291d110400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d29343e48505658606060606060606060606060605e5b564d44392e22170b0000000000000000000004101b26303942494d4f5353535353535353535353534f4d49423930261b1004000a15202b343c434749535353535353535353535353534c4b463f372e23180d0200000000030f1b27323b4854606b75818e98a2aeb6c0cad3cac2b8b0a8a19e95918b89878687878a8d91969ea1a9b1b9c3ced7cfc4bbafa49a8f8275685e5246392d2014060000000000000000000000000000000000000000000000000000000000000000000000000000000000020a1117252e343c424a51555d60656c7074777a7d7f808182838281807f7d7a7774706d66605d56514b433d332d261d140b020000000000000000000000000003101c28343f4a54606b75828f96a0a9b3bcc6cfc6bdb5afa69e99938e8a86848382828385878b90959c9fa6afb5bdc6cec5bcb1a79d92897c6f655b5044372b1f120500000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f39434b515353535353535353535353535353535353535353535353535353535353514b43392f24180d01000000000000010d18242f3a434b51535d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5b59534b41372c20140800000000000000000000000000000000000000000000000000000000000000000000000000000000010c18232d373f464a4b4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4f4a49443e362c22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000e1a2734414d5a6774808d99a3afb9bdbfbdb8aea3998d8073665a4d4033271a0d00000000000000000000000000000006131f2c3945515d6773808d99a3aebbc7d4c7bbafa3999299a0a8b2bdc8d4c8bcb1a79a8e8174685d5245392c20160b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212d3945505a62646c6c6c6c6c6c6c6c6c6c6c6c6c6a675f564b3f33271b0e020000000000000000000915212c37424b545a5c6060606060606060606060605c5a544b42372c211509030f1b27323c464e545560606060606060606060606060595751493f352a1e12060000000007131f2c38434f5963707d89939eaab3bec8d2ccc2b8b0a69f96918a847f7c7a797a7b7d80848a9297a0a7b1bcc5d0d8ccc0b6ac9f92867b6e6154473b2e23170b0000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131c222a303940444b51535b606367686d70727374757675747372706d686763605c54524c4540393127221b140b02000000000000000000000000000006121f2b3844505c66707d89939ea8b2bbc5cec6bcb4aba39f948f87827e7a7776757577787a7f838890949fa4abb5bdc3bcb8b4aea49d9083786c605346392d201306000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2731394045474747474747474747474747474747474747474747474747474747474745403931281d1207000000000000000007131d28313a404547505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050505050504e4d4841392f251a0f04000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b252d343a3d3f42424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242423d3c39332c231a100500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222f3b4855626e7c87929fa5adb2b2b2aca49f92867b6e6155483b2e2215080000000000000000000000000000030f1c28333f4a54606d7985929eabb5bfcbd2c5b9ac9f92869196a0acb9c7d2cdc3b8ac9f92867a6d6054473d32271b0f0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a1724303d4956626c71797979797979797979797979797771675b4f43362a1d10040000000000000000000c1925313d49545d65696c6c6c6c6c6c6c6c6c6c6c6c69655d54493d3125190c06131f2b37434e5860626c6c6c6c6c6c6c6c6c6c6c6c6c66635b51463a2e22160a000000000915222f3b4854606b7683909da5afbcc5d0cec4bab0a69f948f847d78726f6e6c6d6e7073787e859195a0aab4bfcad6d2c7bbafa3998c7f7266544a3f34281c1003000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a10191e272e343a414549505356565d606465666769696968676664615e565753504a45413a342f271f17110a02000000000000000000000000000004101d2935404b55606d7883909da5afbac3cdcbbfb4aaa399928b827c75716d686968686a686d72777c828c9399a3abb5b8b1abaaa29f9a958a7e7164574b3e3124180b0000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f272f34383a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a3a39352f281f160c010000000000000000010c161f282f35393a4444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444441403c372f271d13090000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131b23292e3132363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363631302d28221a11080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3a47535f6a73808d939ea1a8a6a8a09e928c7f73695f53463a2d211407000000000000000000000000000006121f2b3844505b66727f8b97a2adbdc6d1c8bcb1a79b8e8184919eacb6c0ccd3c7baaea2988b7f7265594f44382c1e130800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8686868686868686868686868683776a5e5144372b1e11040000000000000000000f1b2834414d5a6570757979797979797979797979797570655a4d4134281b0f0815222e3b4754606a7679797979797979797979797979726d63574b3e3225180c00000005111e2a36414d56636f7c89959fabb7c1ced5c9bdb2a89f948f827a706c65636160606164666c717a839198a2aebac6d3d7cbc0b5ab9c908376665c5044382b1f12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c151c23282f35383f44464a4c525457595a5b5c5d5c5b5a595754524c4a46443f38352f29231d150d060000000000000000000000000000000006131f2c3945515d67727e8b95a0acb7c1cccec6baaea39892877f756f6a64605d565b5c565e61656a6f777f879299a3acaba79f9d98928e89837e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d23292c2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2c29241d160d0400000000000000000000040d161d24292c2d373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373737373534302c251d150b0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000911181d22242529292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292929292423201c1710080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b37434e58606c78818b919698999896918a80746d63574d42362a1e120500000000000000000000000000000613202d394653606c7884919ea9b3becfd1c5b8aca095897c7f8c9aa4afbbc8d4cabfb4aa9d9184776b6054483a3025190d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b93939393939393939393939184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828686868686868686868686868275695c4f4236291c0f0916222f3c4955626f7c868686868686868686868686867f7266594c3f3326190c0000000714202d3946525e6875828f9ba7b1bcc5c6cac7b9aca0968f82786d68605b5354535454545b60686e7b86929facb8c5d1dcd1c5b8ac9f9285796d6053463a2d201307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d24292d3337393d4145474a4c4d4e4f504f4e4d4c4a4746413d3a38342e29241e18120b0300000000000000000000000000000000000714202d3a4753606d7985929ea7b1bcc9d0c6bcafa59f92867d726d625f5854524c4f4f4c52545860656c727e87929aa29f9a95908b85817c77716c6155493d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181c1f2020202020202020202020202020202020202020202020202020202020201d18120c04000000000000000000000000040c13181d20202a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a282724201a130b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060c121518181c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c1c171614100b050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020f1a26313c44505b666c747e84898b8c8b88847e746e645b51453b31261a0e020000000000000000000000000006131f2b37434e5864707d8a96a0acbbc5cfcabfb4aa9d9083777b87939facb9c6d0d0c6b8aca095897c6f63564c41362a1c1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b979f9f9f9f9f9f9f9f9f9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f939393939393939393938f8275695c4f4236291c0f0916222f3c4955626f7c8893939393939393939393938c7f7266594c3f3326190c0000000814212e3b4754616e7b87939facafb5b8babebdafa59e91847a6d665e565049474647484a50565e69737f8c99abb5bfcbd7d3c6baaea298887b6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c13181b22272b2d3035393a3d3f404142434241403f3d3a3936302d2b28231c19130c0701000000000000000000000000000000000005111d2a36414c5664717e8b97a1adb9c3cecabfb4aa9d938b7e716b625b534e47454142424146474e535b606c717e889397928d88837e7a746f6a64615a5045392d211508000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013141414141414141414141414141414141414141414141414141414141413100d0701000000000000000000000000000001070d1113141d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1b1a18140f09010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000106090b0c0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0a0a080400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a152028333f4a545b606c71787c7e7f7e7c78716c645c52494033291f140900000000000000000000000000010c15222e3b4754606a7683909ca8b2bdcdd3c7baaea2988b7f727683909caab4bfcbd4c8bcb1a79b8e8175685e5246382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1825313e4b5864717e8b97a4acacacacacacacaa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9c9f9f9f9f9f9f9f9f9c8f8275695c4f4236291c0f0916222f3c4955626f7c88959f9f9f9f9f9f9f9f9f998c7f7266594c3f3326190c0000000c1925323f4c5865727f8b999c9fa3ababadb3b5ab9e93897d70685e544c443f3b393a3b3f444d57616e7b8899a3aebbc7d3d6cabfb4aa96897d7063564a3d3023170a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d11171b1f2024292c2d31323334363636353433312e2d2a25201f1c17110d0801000000000000000000000000000000000000000713202d3946525e687683909ca9b3becbd3c6baaea2988e81746c62595147433c39352f3036393c41495059616c73808d8b85807c77716d676260585550483e34281d110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070707070707070707070707070707070707070707070707070707070706040100000000000000000000000000000000000001040607111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110e0e0c0804000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b17222d38424a505a62666c6f7273726f6c65615a524a41372e21180d030000000000000000000000000007131d2a36424d57626f7c88949fabbac3ced2c5b8ac9f92867a6d717e8b98a3aebac7d3cec3b9ac9f92867a6d61544a3f33281c0f030000000000000000000000000000000000000000040404040404040404040404040404040404040404040b1825313e4b5864717e8b97a4b1b9b9b9b9b9b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8acacacacacaca89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2acacacacacacaca5998c7f7266594c3f3326190c0000000e1b2835414e5b687481888b8f92999b9fa2a9aaa4998e81756b60564c423a332d2d2d2d333b4653606c7986929facb9c5d2dbd0bdb1a4978a7e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f1213191d202124262728292a292827262421201d191312100b06000000000000000000000000000000000000000000000714212e3a4754616d7a87939facb9c5cfd2c5b8ac9f92867a6d615a50473f37312c2924252a2d2f383f44505a606d78817e79746f6a65605d55544e49453e362c22170c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f4450545b606365666562605b53504841382f251c0f0600000000000000000000000000010d18242f3a46525e6975818e9ba6b0bbccd4c8bcb1a79b8e8174686d7a86929facb8c5cfd3c7baaea3998c7f72665b5044382b1f14090000000000000000000000000000000105090b0b10101010101010101010101010101010101010101010101825313e4b5864717e8b97a4b1bec6c6c6c4b7aa9d9184776a5e5144372b1e11060400000000000000000f1c2936424f5c6975828f9ca8b5b9b9b9b9b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afb9b9b9b9b9b2a5998c7f7266594c3f3326190c0000000e1a2734404d59656f747b7f82868a8e92979a9e9f93877b6e61594f443a3027222021222c3945525d687985929facb8c5d2d7cabdb1a4978a7e7164574b3e3124180b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000305080d11131417191a1b1c1d1c1b1a19171413110d0806030000000000000000000000000000000000000000000000000b1724313e4a5764717e8a9aa4afbbc8d5c9bdb2a8998d8073685e52483f352b26201d19191d20262d333e45515c666d74716d67625f5854514b47433d39342c241a1006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d333e424a50535658595855535049413e362f261d130a000000000000000000000000000004111d2935414b55616e7b86929facb9c2cdd1c5b8aca095897c6f636875828e9ba9b3bec9d5cbbfb4ab9e9184786c6053463b30251a0e0000000000000000000000000000060c111517181d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d1d25313e4b5864717e8b97a4b1becad2d0c4b7aa9d9184776a5e5144372b1e1413100c070100000000000f1c2936424f5c6975828f9ca8b5c2c6c6c2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc6c6c6bfb2a5998c7f7266594c3f3326190c0000000c1824303c48535d65696e72767a7e8185898d91968f8275695f53473d32281e181c1f222d3a4754606d7a8798a2aebac7d3d6c9bdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010407070a0c0d0e0f100f0e0d0c0a070705010000000000000000000000000000000000000000000000000000010e1b2734414e5a6774818d9aacb6c0ccd2c5b9aca096887b6e61564c41362d231b15110d0d11141b222834404b545c606864605d55534e4745413a38322d28221a12080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c22282f383f4446494b4c4b4946443f382f2c241d140b0100000000000000000000000000000613202c3945515d6773808d99a3afbbc7d6cbbfb4aa9d9184776b6063707d8a97a1adb9c6d2d1c6b9aca096897d7063574d42362a1c11060000000000000000000000000911171d2124252a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a2a313e4b5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b2a201f1d18120b03000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d2ccbfb2a5998c7f7266594c3f3326190c0000000814202c37414b53575f6165686d7175797c8084888a7d7064574d42352b272723282c2d333c4855626e7b8895aab4bfcad6d5c9bdb2a895897c6f6256493c2f231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404a54697683909ca9b6c3d2d1c4b7aa9e918477695f53443a30241b110a040101050a1118232e39424b51535b5853514b47433c39352f2b27201d17100800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171d262d3338393c3f403f3c3937332d261d1a120b02000000000000000000000000000003101c28343f4a54606d7a85929fabb5c0cbd3c7baaea3988b7f726559606d7985929eabb8c3ced5c9bdb2a89b8f8275695e5246382e23170c000000000000000000000009121b22292e313237373737373737373737373737373737373737373737373737373e4b5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51443737372d2c29241d150d030000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000040f1a252f3941454d5355565d6064666d7073777b7f796d6053463c313334342e34383a3f44505a65727e8b98a5b1bed0dbd2c5b9aca196877a6e6154473b2e211408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2c3844515c667885929eabb8c5d1cdc0b4a79a8d817467574d4232291e120900000000000007121d2730394045464e4b4745403937322c29241d1b16110c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b141c22282b2d303233322f2d2b27221b140b080000000000000000000000000000000006121f2b3844505c66727f8b97a2adbdc7d1d2c5b8ac9f92867a6d61545c6674808d9aa7b1bcc8d4cec4b9ac9f92877b6e61544a3f34281c100300000000000000000006111b242d343a3d3e4343434343434343434343434343434343434343434343434343434b5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51444343433a38352f271f150b0100000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000009131d272f333b4246484c5254545c6063676a6e726d675c51453f3f404041414044464a5058616c7683909ca9b6c3cfdcd1c4b7ab9e918478695e52463a2d20140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d798697a1adb9c6d2ccbfb2a5998c7f7266594c3f3126170d00000000000000000b151e272e34383a413e3a38352f2b26201d18130f0a0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f202325262522201f1b17110a0200000000000000000000000000000000000713202d3a4653606d7884919ea9b3becfd4c8bdb2a89b8e8175685d5254626f7c8895a0acb8c7d2d4c7bbafa3998c8073665c5044382c1f14090000000000000000010c17222d363f454a4b505050505050505050505050505050505050505050505050505050505864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51505050504745403931271d120700000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000010b151d212a31363a3b4145474a505356575f6265605c554b4a4c4c4d4d4e4e4a5153545b606a707d8a949fabb7c4d0d5c9bdb2a99b8e817568564d42362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a8794a9b3bec9d5cabeb1a4978b7e7164584b3e3125180b0000000000000000030c151d23282c2d35312d2c29241d1b15110d07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f1213161819181613120f0b0600000000000000000000000000000000000007131f2c38434f5964717e8a96a1acbcc5d0d1c5b8aca096897c6f63564c54606a7784919dabb5c0ccd7cbc0b5ab9e9184796d6053463c31261a0e000000000000000005111d29343f485056585d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d5d64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5d5d5d5d5d53514b43392f24180c00000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000030b0f181f262a2d2f35393a3f4446494e53555953514f55575859595a5a5b545c6062666c727c86929fa6b0bcc7d3cec5b9ada1968a7d7164574a3e3025190e0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815212e3b4854616e7b8794a1aebacfdac9bdb0a3968a7d7063574a3d3024170a0000000000000000000810171c2123242825201f1d18120f0a0401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606090c0d0c0906050300000000000000000000000000000000000000010c15222f3b4854606b7683909da8b2bdced7cbbfb4ab9d9184776b6054444e5866727f8c99a4afbbc7d4d1c7b9ada1968a7d7064574d42372b1d1207000000000000000915212e3a45505a62656a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a717e8b97a4b1becad7d0c4b7aa9d9184776a6a6a6a6a6a6a605d554b4035291d1004000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000000000060e141a1e2124292c2e34383a3d4247484c464f59616365666667676868666d6f73787f869298a2aeb9c2cdcfc5bcb1a79e9184796d6053463a2d2013090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212e3a4754616d7a8794a9b3becad6cabdb1a4978a7e7164574b3e31241809000000000000000008121a22282d303135302f2c27201e19130f0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2a36424d57636f7c89959fabbac4ced3c7baaea3998c7f7265594f444854616e7b87939facb9c6d0d5c9bdb2a99c8f8276695f5346392e23180c000000000000000b1724313d4a56626c71767676767676767676767676767676767676767676767676767676767676767e8b97a4b1becad7d0c4b7aa9d918477767676767676766d675d5145382c1f1306000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000003090e1214191d2023282c2d31373a3b3f4855616b707272737374747577797c80848b9298a2aab3becbccc4bcb3aaa0958c7f72665c5044382c1f12060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d798697a2adbac6d3cbbfb2a5988c7f7265594c3f30251a0e01000000000000060f1a242c33393c3e423d3b38322d2a251f1c17110e090300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3a46535f6975828e9ba7b1bcccd6d2c5b9ac9f92867a6d6154473d46525e6976828f9caab4bfcad6cfc4b9ac9f93877b6e61554b4034281c10040000000000000b1825323e4b5865717e8383838383838383838383838383838383838383838383838383838383838384919eaab7c4d1ddd2c5b8ac9f92868383838383838383796d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000205080d1113171c1f20262b2e303d4a5763707d7f7f80808181828486888d91969fa2aab3bcc5c7c0bbb3aaa2989083786d60544a3f34281c100300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c667885929fabb8c5d2cdc0b3a79a8d807467574d42362a1e13080000000000030d18212c363e45494a4e4948443d3936302b28221c1a140f0b06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56616e7b87939facb9c2cdd4c8bdb2a89b8e8175685e524639424d5764717e8b98a2aebac6d3d4c8bbafa49a8d8073675c5145382c1f150a0000000000000d192633404c5966737f8c9090909090909090909090909090909090909090909090909090909090909196a0acb9c5d2ded3c7baaea398929090909090909086796d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000000000104060c1012131a1e293643505c6976828b8c8c8d8d8e8e909299999ea1a8aeb4bcc5c2beb6afa9a19892867c6f665c5042382e23170c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404b546a7683909da9b6c3d0d0c3b7aa9d908477695e52463a2f24191008020000060d151f2a333e485055575b56544f4746413a38332d2a251f1b17110a020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3945525d6874808d99a4afbbc7d4d2c5b9aca096897d7063564c41363b4754606d7a86929facb8c4cfd8ccc0b6ac9e9285796d6053463c31261b0f0100000000000d192633404c5966737f8c999d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9ea0a8b2bdc9d5e1d6cbbfb4aaa39f9d9d9d9d9d9d93867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000000000000000000000000000000306090e1d293643505c6976838f99999a9a9b9b9d9fa3ababacb2babfc6c2b8b0aca49f9791867d706a5f544a3f30261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e414e5b6774818e9aa7b4c1cdd1c5b8aca095877b6e61554c4135292219130f0a0d11171f27313c45505a61646863605954524c46443f3836302b27221b140b020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404a54606d7a85929fabb5c0ccd7cbbfb5ab9e9184786c6053463a303945515d6775818e9ba9b2bec9d5d2c7b9ada1978a7e7164584e43372b1d120700000000000d192633404c5966737f8c99a6a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9aaacb2bac4ced9e5dcd0c6bcb4aeaca9a9a9a9a9a093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000000101d293643505c6976838f9ca6a6a7a7a8aaacaeb5b7b9bdc4cac5bcb0a69f9a938e857d706b60584e42382e1e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071825313e4b5864717e8b97a7b1bcc8d4c8bcb1a7998c7f72675d51453d3429241e1b1a191b22273139434d57616c7175706b66615e5653504a46423b37332d261d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2c3844515c66727f8c98a2aebdc7d2d3c7bbaea3998c7f72655b5044372935414b5563707d8997a1adb9c6d2d5c9beb3a99c9083766a5f5347392f24180d01000000000d192633404c5966737f8c99a6b2b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b7b9bdc4ccd5e0ebe2d8cec6bfbab8b6b6b6b6ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b3b4b4b5b7b9bbbfc4c5c9cecabeb3aa9f948f87817b6f6b60594f463c30261c0c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000814212e3b4754616e7b8795a0abb8c5d0cec3b8ab9e92857a6d60594f463d35302b262624292d333b434b555f69717e817c77726d6863605b54524d46443f382f261b11060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7984919eaab4bfd0d9d2c5b9ac9f92867a6d6153493f33272f3a4653606d7984919eabb8c3cdd9cfc5b7ab9f94887c6f62554b4035291d1004000000000d192633404c5966737f8c99a6b2bfc3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c3c4c5c9ced5dee7f1eae0d8d0cbc7c5c3c3c3b9ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b6c0c1c1c3c5c7cbd1d2d5d3c6baaea2988f827c756e6960594f473d342a1e150a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a46525e697783909daab4bfcad2c6b9ada2978d80736b61584f46413a3732332f35383f444d555d676e7b868e89847f7a75706c66615e5753504941382d22170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c38444f5964717e8a96a1adbcc5d0d5c9bdb2a89b8e8275685e5241382d222b3844505c6673808d9aa7b1bcc8d4d3c7bcb0a69a8d8074675d5145392c20150a000000000d192633404c5966737f8c99a6b2bfccd0d0d0d0d0d0d0d0d0d0d0d0cecdcdcdcdcdcdcdcdcdcdcdcdcfd0d3d8dee5eef7f1e9e1dbd6d2d1cdcdc6b9ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b6c2cbccced0d2d3d7dcded2c5b8ab9f92857e77706b605d554c443b32281e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111e2a36424d5765727f8b98a2aebac4cecabeb3a99f93877d706a6159524c474341404141454950575f676d7983909896918c86827d78736e6964605b53493f33271b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c16222f3b4854606b7783909da8b2bdced7d2c5b9aca096897d7063564c412f261b28343f4a54626f7c8895a0acb8c7d1d8cdc2b8ab9f9285796d6053473c32271b0f010000000d192633404c5966737f8c99a6b2bfccd9dcdcdcdcdcdcdcd3ccc6c2c1c0c0c0c0c0c0c0c0c0c0c0c0c2c3c7ccd3dce5efe9dfd7cfcac6c5c0c0c0b9ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000003101d293643505c6976838f9ca9b6bdbebfc1c3c5c7cbd1d4d3c6baaea298928a837d756d675e564c443a3025190b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020e1a25303b4754606d7a85929fa8b2bdc9cfc5bbafa49992857c706b615d56544e4e4d4e4c52535b60696e79818f95a0a09d99928f89847f7b75706c655b5044372b1f120500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2b37424d5763707d8995a0abbac4cfd7cbc0b5ab9e9184786c6053463a302017232e3847535f6a7783909dabb5c0cbd7d3c6baaea2988b7e7165584e43372b1e13080000000d192633404c5966737f8c99a6b2bfccd9e7e9e9e9e9ddd3c9c1bab6b4b3b3b3b3b3b3b3b3b3b3b3b3b5b7bbc2cad3dee9e1d7cdc5beb9b8b3b3b3b3ada093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000000000000000000000000000000000101d293643505c6976838f9ca9afb0b1b2b4b7b9babfc6c7cccabeb3aaa29f95908981796e685e564c4135291d140a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000914202c3945525d68737f8c96a1acb9c2cdccc0b5aba29792867d736d68625f585b595a565d60656c717b838f939ea7acaba39f9b96918c87827e776c605346392d2013060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1925303a47535f6975828f9ca7b1bcccd6d3c7bbafa3998c7f72655b5044372b1f121c2b37434e5865727f8c99a3afbbc7d4d6cabeb3aa9d9083776a6054473a2f24190d0100000d192633404c5966737f8c99a6b2bfccd5dfe8f2eee2d7ccc1b7afaaa8a6a6a6a6a6a6a6a6a6a6a6a6a9aab0b8c2ccd8e3dbcfc5bbb3adaba6a6a6a6a6a093867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000000000000000003060a0f1d293643505c6976838f9ca2a3a4a4a6a8aaacaeb4b9bbc0c7c5bcb3aea79f9d938e837a6e685e52463e2f261c110600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c56606d7984919ea6b0bbc5cec7bdb3a9a2989287807a736f6a6967666769686d72787e8590959ea5afb8b5aeaca8a19e99938f8275655b5044372b1f1205000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005111d2935414c56626e7b87939facb9c3cdd6d2c5b9ac9f92867a6e6153493f33271b0f1b26313c4754616e7b86929facb9c5d0dbd0c5b8aba095887c6f62564c4135291d110400000d192633404c5966737f8c99a7b1bac3cdd6e0e9ebded2c6baafa59e9b9a9a9a9a9a9a9a9a9a9a9a9a9c9ea6b0bbc7d3dfd6cabeb3a9a29e9a9a9a9a9a9a93867a6d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000000000104060c1012131b1f293643505c6976838f9495969798999b9d9fa3abacafb5bdc2c5bebab1aba59e9590837a6d615a5042382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d1924303a45515c67717e8a949fa9b3bcc6d0c5bbb3aaa299928d85807c787574737475777a7f848a9297a0a7afb8c1bfbbb9b2aca69f92867b6e6153493f33271b0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3946525e6874818d9aa4afbbc8cacac9bdb2a89b8f8275685e5241382d22170b15202d3946525e6876828f9caab4becacacac8bcb1a79a8e8174685d5245392c20160b00000c1926333f4c5966727f8c959fa8b2bbc4ced7e1eadccfc2b6aa9e938e8d8d8d8d8d8d8d8d8d8d8d8d8f949eaab7c3d0dcd2c6b9ada297928d8d8d8d8d8d8d86796d6053473a2d201407000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000000000205070d1113171c1f20262b2e3643505c697682878788898a8b8c8e9092999b9fa4abb0b8c2cac3bcb8afa7a0958f82756c61544a3f33281c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008131e2934404b55616c76839097a1aab4bdc7cdc5bcb3aba39f97928c8884828180818284868c91969fa2a9b1b9c1cacbc5bcb2a89f948c7f72695e5341382d22170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404b54616d7a86929facb6c0bdbdbdbdb9aca196897d7063564c412f261b1106111e2a36414d5664717e8a98a2aebabdbdbdbdbdb8ac9f92867a6d6054473d32271b0f03000714202d3a4753606d79839096a0a9b3bcc6cfd9e3dbcec1b4a89b8e81808080808080808080808080828f9ca9b5c2cfdcd1c5b8ab9e92858080808080808080796d6053463a2d201307000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c000000000000000002080e1114181d2023282c2d31373a3c404e5a6670767a7b7c7c7d7e7f8183868a8e93999fa6b0b8c2cdc8c1b9b1a79e948a7e71665b5044382b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c18232f3943505a616e7b859298a2abb5bfc5cec5bdb5afa9a29f9996918f8e8c8d8f9192989ea0a8adb3bbc3cbccc4bbb3a9a0968f82786d60574d422f261b1106000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c66737f8c98a2aeb0b0b0b0b0b0b5ab9e9184786c6053463b3020140a000e1925303b4753606d7985929fabb0b0b0b0b0b0b0aea2988b7f7265594f44382c2013070006131f2c3945515d676d7a849197a1aab4bdc7d1dcddd0c3b6aa9d90837a73737373737373737373737e8b97a4b1becad7d0c4b7aa9d918477737373737373736d665c5145382c1f1306000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a99c8f8276695c4f4336291c070916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000000000050d14191e2024292c2e34383a3d4347484c46545e66676d6e6f7071717375777a7d818790949fa6b0bbc5cfcbc3b9b0a69e9184786c605346392d2013090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313e46535f696f7c869299a4aeb4bcc3ccc7c0bbb3adaba8a19e9c9a999a9c9d9fa3aaacb2babec5cdcbc3bab2a9a29791847a6d665c50453b311d140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7985919eaaa3a3a3a3a3a3a3a3a3998c7f73665b5044382b1f12020008141f2c3945515d6774818e9ba8a3a3a3a3a3a3a3a3aa9d9184776b6054483b2f2215090004101d2935404b555e686e7b859198a2abb5c0cbd7dbd1c4b8aca0958f82786c6767676767676767717e8b97a4b1becad7d0c4b7aa9d9184776a676767676767605c544b4034281c1004000f1c2936424f5c6975828f9ca8b5c2cfcfc3b6a99c908376695d50432f24180c0916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c0000000000020b0e171e252a2d2f35393a3f4446494e535559535154555d6061626364656668676d71757c828f949fa9b3becad6cbc1b9aca0968a7d7063574a3d30251a0e02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f2a36424d57606a707e87939fa2aab2bac1c8cbc5bebab8b2adaba8a7a6a7a8aaacaeb4b9bdc4cacfc7c0bbb1a8a19792857c6e685d544a3f33291f0b02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b5564717e8b97979797979797979797979792867b6e61544a3f33281c0f030004101d2935404b5563707d8996979797979797979797979795897c6f6356493c3023160900000c18242f39434c565f696f7c869299a3afbbbfc9d2d4c8bcb1a79e948d80746d62595a5a5a5a64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5a5a5a5a5a53514b42392e23180c00000f1c2936424f5c6975828f9ca8b5c2cfd0c3b6aa9d9083776a554b4035291d100916222f3c4955626f7c8895a2afbbc8d5ccbfb2a5998c7f7266594c3f3326190c00000000010b141d20293036393b4045474a505356585f6266605c544b5154545556575859555d60646a6f79828f97a2adbac6d3d5c9bdb2a89b8e817568574d42362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d1a26313b454e58616c727f8a9298a0a8afb8bcc3c8cac6c4bdb9b8b5b4b3b4b5b7b9babfc6c9cdc8c3bdb5afa7a09691857d6f6a5f564c42382e21170d00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d6777838a8a8a8a8a8a8a8a8a8a8a8a8a8a8275695e5242382d22170b0000000c18242f394653606c78848a8a8a8a8a8a8a8a8a8a8a8a8a8a8175685b4e4235281b0f000007121d27313a444d57606a707d87929fa4adb7c0cad3cdc3b9b0a69d928b7f726b61584e4d5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e514d4d4d4d4645403930271d120700000f1c2936424f5c6975828f9ca8b5c2cfd1c4b7aa9e918477675d5145392c1f130616232f3c4956626f7c8995a2afbcc8d5cbbfb2a5988c7f7265594c3f3226190c0000000008131d262f323b4146474b5153545c6063676a6f736d665c5145474849494a4b4c4b5153585f676d7a85929fabb8c5d2d9cec4b7ab9e918478695e52463a2d201407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009141f29333d46505a626d727e8691969ea5abb1b8bcc3c6c9c9c5c4c2c1bfc0c2c4c5c7cbcac6c3bcb8b1aba39f9590847c6f6a60574e443a30261c0f050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d797d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7b6e61574d422f261c110600000007121f2b3744505b656f7c7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7063574a3d3024170a0000010b151f28323b454e58616b717e8b919ca5afb8c1cbd4cbc1b8aea49f92877d706a5f564c5864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51444040403a38342e271e150b0000000f1c2936424f5c6975828f9ca8b5c2cfd2c5b9ac9f92867a6d6053473a2e2317101724303d4a5763707d8a96a3b0bdc9d6cbbeb1a4988b7e7165584b3e3225180b000000030f1a252f3841444c5254555d6064666d7074787c7f786d6053463a3b3c3d3e3e404045474e555d6873808d9aa6b3c0d0dbd2c5b9aca196877b6e6154473b2e2114080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17212b343e48515b626c717c848f939da0a7acb1b8b9bec3c5c6cad0c9c9cfc9c5c4c2beb9b8b1aca7a099928d837b6f6a60584e453c32281e140a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d676d7070707070707070707070707070706e695f53453b301d140a00000000030f1b27333f4953606a6f7070707070707070707070707070706b6155483c2f231609000000030d162029333c464f59626c737f8c939da6b0b9c2ccd3cac0bbafa39992867c6f685e555864717e8b97a4b1becad7d0c4b7aa9d9184776a5e51443734342d2c28231d150c030000000f1c2936424f5c6975828f9ca8b5c2cfd3c7bbafa399897c7063544a3f34281f1c1f262f3e4b5864717e8b97a4b1becad7cabdb0a4978a7d7164574a3e3124170b0000000814202b36414a53565e6165676d7174797c808488897c6f63544a3f342f3031322f35393c434c56626f7c8895aab4bfcad6d5c9bdb2a895897c6f6256493c2f231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c363f49515a616a6e79828a90959da0a7abadb3b6b8babebcbdbcbbbdb9b8b5b3adaba7a09d95908780786e695f584e463d332a20160c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b555d60646464646464646464646464646464615f574d4233291f0b0200000000000b17222d38414e58606264646464646464646464646464646361594f44382c20140700000000050e18212b343e47505a636d74818e949ea7b1bac3cdd7cbc0b5aba29891847a6e675d5364717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b27201f1c18120b03000000000f1c2936424f5c6975828f9ca8b5c2cfd7cbc0b5ab998c7f73665c50443a302b282b2f38414e586774808d9aa7b3c0cdd6c9bdb0a3968a7d7063574a3d3024170a0000000b1824303c48535c64686e71757a7d8185898d91968c8073665c5044392e23242524292c313a4754616d7a8798a2aebac7d3dacebdb0a3968a7d7063574a3d3024170a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a242d373f4850585f676d757d838a91959b9ea1a9a9abaeb4afb0afafb2adaba8a9a29e9a95908a837c736d665e574e463d342b21180e040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f39434b515357575757575757575757575757575755534d453b3120170d00000000000006111b262f3c464e5455575757575757575757575757575757554f473e33281c10040000000000060f19222c353f48515b606d78828f959fa8b2bbc5ced1c7bdb3aaa1969083796d655b64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e1313100c070000000000000f1c2936424f5c6975828f9ca8b5c2cfdcd1c4b7aa9e9184786d60564c423b3734383a404953606a7784919daab7c4d0d5c9bdb2a996897c6f6356493c302316090000000d1a2733404c58646e747a7e82868a8e92979a9e9e9184786d60554b40342d26222122242d3946525e687985929facb8c5d2d7cabdb1a4978a7e7164574b3e3124180b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008121b252d363e464e555d606b70787d838a8e9297999d9fa2aaa3a3a3a2a9a19e9c9997928e89837d786f6a605c544d453c342b22190f060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d2731394045474a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4846423b33291f0e05000000000000000a141d2b343c4347494a4a4a4a4a4a4a4a4a4a4a4a4a4a4a48443e352c21160b0000000000000007101a232d364044505c666d79839096a0a9b3bcc6cfcfc5bcb2a89f958e81776c6064717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11060400000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd2c5b9aca0968a7e71685e544d46443f44464b515b656f7c8995a0acb8c5d1d2c5b9ada196877a6d6154473a2e2114070000000e1b2834414e5b677480888b8f92989b9ea2a9aba1968a7d71675c51453f382f2f2e2f2f353b4653606c7986929facb9c5d2d7cabdb0a4978a7d7164574a3e3124170b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000009131b242c343c434c515961656c70787d8185898c90929895969696959496918f8c8985817d77706c656058514a423b332a221910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f272f35383a3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3b3a36312921180d0000000000000000020b19222b32373b3c3d3d3d3d3d3d3d3d3d3d3d3d3d3d3d3c38332c231a1005000000000000000008111b2428343f4a545d676d7a849197a1aab4bdc7d1cec4bab1a79e938d80736c64717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd5c9bdb2a89e91847a6d665e5753504a5053555d606c77828f9ca7b1bcc8d4d1c4b8ab9e918578685e5246392d2013070000000c1926323f4c5965727f8c9a9c9fa3aaabadb3b2a89e9184796d605a5049413e3c3b3c3c40454d57626e7b8899a3afbbc7d3d7cbbfb4aa96897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000109121a222a313a41454f535b60666c7074797c8083858788898a898888878582807d7974706b64605b534e44403930292118100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d151d24292c2d3131313131313131313131313131312e2d2a261f180f0600000000000000000007101920272b2e2f3131313131313131313131313131302f2c28211a110800000000000000000000091217232e38424b555e686e7b859298a2abb5c0cbd7ccc2b9afa59c928b7e716b717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd9cec4b9aca1968f82786e6962605b545c6062676d74808d949fabb9c3ced9cfc2b5a89c8f827569564c41362a1e11050000000814212e3b4754616e7b87939facaeb4b8b9beb9aca0968d80736c605b534e4a494848494b51575f6973808c99abb5c0cbd7d3c7baaea398887b6e6155483b2e2215080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000080f181f282f353e414950545b6064666c6f7376787a7c7c7d7c7c7b7a787573706d66636059535049413d342e271e170f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b12181d1f2024242424242424242424242424242422211e1a140d060000000000000000000000070f151b1f222224242424242424242424242424242423201c16100800000000000000000000000006111c263039434c565f696f7c869299a3afbbbfc9d2cbc1b7aea49f92877d70717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbe0d5c9bdb2a89f948f837b746f6c656a666d6f7379818d929ca6b0bbccd5d4c8bdb2a8998c807366594d403025190d010000000714202d3a46525e6975828f9ca7b1bcc5c6c9bdb2a89c928b7e726c655f585755545556555d60696e7b86929facb8c5d1dcd2c5b9ac9f9286796d6053473a2d201407000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060d161e24292f383f444a5053545b6062666a686e6f7070706f6e6d68696663605c54544f46443f382f28231c150c05000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070c1013141717171717171717171717171717171514120e090300000000000000000000000000040a0f1315161717171717171717171717171717171614100b0500000000000000000000000000000a141e27313a444d57606a707d87929fa4adb7c0cad3c9bfbbaea39992857b717e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbe5dacec4bab0a69f959086807c79777677797c80848d929ca4aeb8c2cdddd1c5b8aca096897c6f6356493c302316080000000005111e2a36424d57636f7c89959fabb8c1cecec4baaea49f92877f776f6a65646261626365676d727b849198a2aebac7d3d9d0c2b5a99c8f8276675d5145382c1f130600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13191d262d33383f44464a50535659565e61626363636261605d56595653504a48443d37332d261d18120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070a0a0a0a0a0a0a0a0a0a0a0a0a0a0a080705020000000000000000000000000000000000030608090a0a0a0a0a0a0a0a0a0a0a0a0a0a0a09070400000000000000000000000000000000020c151f29323b454e58616b717e8b929ca5afb8c1cbd7cbbfb5aba29791847a7e8b97a4b1becad7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbe6ded6ccc2b8b0a79f98928d888584838485888c91979da4aeb6c0cad4d6cbbfb4aa9d9184776b6054483b2f22150900000000020e1a25303b4854606b7683909da5afbcc5d0ccc0bbafa399928c827c7672716f6e6f6f72757a7f869196a1aab4bfcad6d2c7beb0a6988c7f7265554b4035291d1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001080b141b22272d3338393f4446494d4c525455565756555554524c4d4a46443f3838332b27221b140b070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17202a333d464f59626c73808c939da6b0b9c3ccd1c6bdb3a9a09690827e8b98a4b1becbd7d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbdcd4cdc7c4c2b9b1aaa29f9a97929090919298999ea1a9aeb7c0c8d1d7cec6baaea3988c7f7266594f43382c1f1307000000000009141f2c38444f5963707d89939ea9b3becad6cbc0b5aba39f948f88837f7d7c7b7b7c7e81858c9298a1a8b2bcc6d0d8ccc0b6ac9e93887b6e6255483b2f24180c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c22282b2d3338393c4041464749494a494948474541403d3a38342e2c271f1b17110a0200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000406070708090a09080706040100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343e47505a636d74818e949ea7b1bac4cdcfc5bbb2a89f949085919eabb8c4d1ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfdbd4cac2bcb7b6b5b7b4aeaca9a29f9d9d9d9fa2aaabadb2bbc0c9d1d7cdc5bcb1a79f92867b6e6154473d32271b0f030000000000020f1b27323d4854606b75818e97a2adbac0cad1c7bdb5afa69e9c95908c8a888788898b8e92989fa2aab2bac4ced8cec6bbafa49a8f82756a5f53473a2e1d120700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b11171c1f22282b2d2f3036393b3c3d3d3d3c3b3a393530302d2c28231c1c160f0b060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708070c1013141415161616151413110d0709070603000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c353f48525b606d78828f959fa8b2bbc5cecdc3bab0a69f979197a1adb9c6d2ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfd8cdc2b8b0aba9a8aab0bab8b3adabaaa9aaacaeb4b8b9bec4cdd7d1cbc4bbb3aaa0958c7f72695e52463a2b21160a000000000000000b16212c38444f59616e7a85929fa4aeb8c1cacfc7c0bbb0aaa79f9d989795949596989b9fa2aaaeb4bcc4ccd6d0c6bcb2a89f93877c6f62574e42372b1e0b01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f12171c1f2023252a2d2e2f3030302f2e2d2c292423201f1c1711100b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000306090e12141518181c1f2021222223232221201d1819161312100c06030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232d364044505c666d79839096a0a9b3bcc6cfccc2b8b0a9a19ea1a9b2bec9d5ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfd3c7bcb0a69f9c9c9ea6afb5bdbab8b7b6b7b8babfc4c6c9cfd1cbc6bfbbb2a9a2989083786d60564d42362a190f040000000000000004101b27323d46525e68717e8a929ca5afb8c0ccd1cbc1bbb7b1aba9a5a4a2a1a2a2a5a8acaeb4babfc5ced6cec5beb4aaa1968e81756a5f53453c31261a0e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003060b0f121316191e202122232423222221201d19171312100c0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030a0f13151a1e21222523292c2d2e2e2f302f2e2d2c29242623201f1c17120f0b0600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111b2428343f4a545d676d7a849197a1aab4bdc7d1cac2bbb2adabadb2bbc4cfdaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfd0c4b7ab9f94908f949fa4abb1b8bcc2c3c4c5c7cad0cec8c5c4c0bbb5aea8a19792867c6f665c50443b302519070000000000000000000b16212a36414c56616c73808d939ea6aebbc0c7d0ccc7c2bcb8b6b2b0afaeaeafb1b4b8babfc5cad0d0cbc3bcb3aca29891847a6e61584e43332a201509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030606080d1114141616171616151413110d0807060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b0f151b1f22262a2d2e312f34383a3a3b3c3d3c3b3a39352f332f2d2c28231f1b17110c070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091217232e38424b555e686e7b859298a2abb5c0cbd7cdc4beb9b8b9bec4cdd6e0ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc3b6a99c9082828c93999fa7abb1b6b9bbc0bdbdbcbbbdb8b7b5afaba39f9691857c6f6a5f544a3f32291f1409000000000000000000040d1925303b44505a606c77818f949da4afb5bdc2c9cecdc8c4c3bfbdbbbabbbcbec1c5c6cad0d0cac6bfbab1a9a29a92867c6f685e52463c3221180e030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050708090a0a0a090807070401000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171c1f272b2e31363a3b3e40404547474849494948474541433f3c3a38342e2b27221b18120b030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c263039434c565f696f7c869299a3afbbbfc9d2cfc9c6c4c6c9cfd6dfe8ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f82787f8790959d9fa7a9acafb5b1b1b0afb2acaaaba39f99928d847c6f6a60584e42382e20170d020000000000000000000008141e29323e44505b656d79828d929fa4abb0b9bdc4c8ccd2d0cbcac8c7c8c9cbced0d0cbc7c5bebab4aea7a09792887e716a5f564c41342a200f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003090b141c22282b32373b3c4246484b4d4b515354555556565554514b4f4c4946443f3937332d28231d150c07010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e28313a444d57606a707d87929fa4aeb7c0cad3d5d2d1d2d5dae0e8eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275737d838a9095989c9fa3aba4a4a3a2a8a09d9a99928e86807a6e6a60584e463c30261c0e050000000000000000000000020d172027333f49535d676d78808c93999fa6acb2b9bbc0c3c5c6cad0d1cbc7c5c5c4c2bfbab8b4aeaaa39f9590857e716c61584e443b3022180e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060e141a1d262d33383c4347494d5355585a555c60616162636261605d555c595653504a46443f38342e271e18130c040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c161f29323c454e58616b717f8b929ca5afb8c2cbd4dededfe1e6ebf2eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f82756b70767d83888c8f929996979796959496918d8a86817b746e685f584e463d342a1e150a00000000000000000000000000050e17222d38414b555d666d747f8790949ea0a8acafb6b6b8babebbbcc0bbb9b8b7b6b4aeacaaa29f98928d837b706c615a50463c32291e100600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f181f262a2f383f44464e5455575f61646769676d6d6e6f706f6e6d676b696662605c545350494540393029241d160d070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333d464f59626d73808c939da6b0b9c3ccd6dfe9eef1f7f7eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f827569636b70767b7f838688898a8a8988878684817d7a756e69615e564e463d342b22180c03000000000000000000000000000006111b262f39434b545c606d727c838a91969c9fa4acaaabaeb4afafb5afacabaaa9aaa39f9c98928d8680796e69615a50483e342a20170d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030b1218212a31363e424a505358606266696e717376787a7a7b7c7c7c7b7a797876726f6d6664605b53514b433e352f281f1910070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343e47505a636e74818e949ea7b1bac4cdd7e0eaf3fdf7eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695961636a6e72767a7b7c7e7e7d7c7b7a7774706d68615f57524c443c342b22191006000000000000000000000000000000000a141d283139424a505b626a6f767e848b8f939a9a9d9fa2aaa2a2aba39f9e9d9c9998928f8c85807a746d675f5750473e362c22190e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c151c2328333b424650545b60646a6f73777b7e80828586878888898988878684827f7c7975706c65605c555045413a312b221911070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c353f48525c606d78828f959fa8b2bbc5ced8e1ebf5f7eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c55585f6265676d6e707171706f6e6d676764605d56534d46413b322a221910070000000000000000000000000000000000020b161f2830383f44515860626c71797e83878a8e90929894959594999292918f8c8986837f7a736e68605d554d453e352c241a10070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d151e272e343e454d535a61666c71767c8084888b8d8f91979494959695949892918f8c8985827d78716d67615a514b433d342b23191006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232d364044505c666d79839096a0a9b3bcc6cfd9e3eef9eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4e5355555d6061636464636261605d555754524c46423b36302920180f0700000000000000000000000000000000000000040d161e262e343f464e545a61676d71767b7e81838587888889888786858482807c7976726d68615e56514b433c332c231a12080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161f273039404450575f616c70787d83888d9095979a9c9ea1a9a1a2a3a2aaa39f9e9c9998928f8a847e79716c605d554e463d352b22180f06000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111b2428343f4a545d676e7a849197a1aab4bdc7d1dce8edeaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4347484b51535556575756555453514b4a4745413a36312a251e170e06000000000000000000000000000000000000000000040c151c2328343c434750555c6064686e717477787a7b7c7c7b7a7978777673706d6766605d56524c454039312a211a11080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d161f283139424a515a61696e767d848a9095999da0a7a6a9abadb2aeafafafb4aeacaba9aaa29f9c96918b857e756d6760584f473d342a21180c030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091217232e38424b555e686e7b859298a2abb5c0cbd7dbe4eaddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f423a3b40454748494b4b4a49484745403d3a39352f2a261f19140d050000000000000000000000000000000000000000000000030a1117222b32373e434b5153565e6164676a686d6e6f6f6e6d6c656a696663605c5554524c46413b352f271f180f080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151f28313a434b545c606c717b828a91969d9fa7aaacb1b3b5b8b9bebbbbbcbcbfbab9b8b5b4aeaba8a09d97918a81796f6a60594f463c332a1e150b00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c26303a434c565f696f7c869299a3afbbbfc9d2dce5ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f42362f35393a3b3d3e3e3d3c3b3a39352f2d2c29241e1a140d0802000000000000000000000000000000000000000000000000000006101920272b30394045464d5254575b565e616162626160605b535c595653514b4745413a363029241d150d060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d27313a434c555d666d747e868f949ea0a8abb1b7b8bcc0c2c4c6c9cfc8c9d1cbc7c5c4c2bebab8b2aca9a19e938e847c6f6b60584e453b30271c12070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a151e28313b444d57606a707e87929fa4aeb7c1cad4ddddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f423624292c2d2e303131302f2e2d2c292421201d19130e09030000000000000000000000000000000000000000000000000000000000070e151b1e272e34383b4146474b4e4c52545555565554535049504d494645403a3935302a251e18120b0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f39434c555d676d78808a92989ea6acb2b8bcc2c5c8cecfd1d1cecccbc9c9cacdd0d1d0cac6c3bdb8b3ada59e9691867d6f6a5f574d42392e23180c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c161f29323c454e58616c727f8b929ca5afb8c2cbd5ddd0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291d1f202223242423222120201d181413110d08010000000000000000000000000000000000000000000000000000000000000000040a0c151d23282c3036393b3e41414647484949484746443f43403d3a38342e2c29241e19140c0701000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424b555d676d79828d929fa2aab0b9bdc4c7cdd1d2cfc9c5c4c1c0bebdbdbdc0c3c4c8cdd3cec8c4beb9afa8a09892857c6f695f544a4034281e1308000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333d46505a626d73808d939da6b0b9c3ccd1d0c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c1314151618181716151413110d07070401000000000000000000000000000000000000000000000000000000000000000000000000030b12181c1f252a2d2e313036393a3b3c3c3b3a3937332d33302d2c2823201d19130d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a545c676d79828f949da4aeb4bcc2c9ced4cfc9c6c4bdb9b7b4b3b1b0b0b1b3b6b8bcc2c6ccd4cfc9c1bab2aaa29791857b6e665c51443a3025190d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343e47515b636e74818e949fa7b1bac4c4c4c4b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f07080a0b0b0a090807060401000000000000000000000000000000000000000000000000000000000000000000000000000000000000070c1014191e202124252a2d2e2e2f2f2e2d2d2b27222623201f1c1813110d08020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b666d798290949fa6aebabfc6ced5d0cac5beb9b8b2adaba8a6a5a3a3a4a6a9abb1b6bac1cad0d5ccc4bcb3a9a1979183786d60564c41362a1e140800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222c353f49525c606d78828f95a0a8b2b7b7b7b7b7aa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004080e11141418191d20212222232221201f1b171a161313100c0704010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c78828e949fa6b0b8c0cad0d7cec5bebab3adaba8a19e9b99989696979a9d9fa7aaafbabec5ced6cec5bcb3a9a0958c7f72685e52463b3025190d010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101a232d374044515c666d79839096a1a9abababababaa9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2cfcfc2b5a89c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002050708080d111314151616151413120f0b060a070604000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d79839097a1aab4bfcbd6d1cbc1bcb4aea9a19e9a96918e8d8b8a8a8a8d90959b9ea5aeb3bcc5ced7cec4bbb1a79f92857a6d61564c41362a1e1105000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008111b242834404a545d676e7a8491979e9e9e9e9e9e9e9d9184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5c2c7c7c2b5a89c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105070708090908070605030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515d676e7b859198a3aebabfc9c6bfbaafaaa29f97928d898481807e7d7d7e8083888e939fa2aab3bcc5d0d6cdc3baaea2988e8174685e5246392d201408000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000091218232e39424b555e686e7b859191919191919191919184776a5e5144372b1e11040000000000000000000f1c2936424f5c6975828f9ca8b5babababab5a89c8f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101d2935404b555e696f7c86929fa4adb7c1bcb4aea59e98928c85807c7875737270707173767c818a9298a2aab4bfcad6d6cabeb3aa9f93877a6e6154473b2f24190d0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121c27303a434c565f696f7d848484848484848484848276695c504336291d10030000000000000000000f1c2936424f5c6975828f9ca8aeaeaeaeaeaea89c8f8275695c4f4236291c0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18242f39434d57606a717e8a929ca5afb9b3aaa39f938e857f79736f6c656665636364676a6f757e869298a2aebac2ccd8d0c5bbafa4998b7e7165564c4135291d1104000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b151e28313b444d57606b6f777878787878787878787670665a4e4135281c0f020000000000000000000f1c2936424f5c6975828f9ca1a1a1a1a1a1a1a19c8f8275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007121d27313b454e58616c73808c939ea7b1aaa298928b817a736d6762605b5358575757585f626c707d86929fa6b0bbc7d3d7ccc0b5ab9c8f8276685d5245392c20130700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030c161f29323c454f5960636b6b6b6b6b6b6b6b6b6b69665e54493e3226190d000000000000000000000f1c2936424f5c6975828f949494949494949494948f8275695c4f4236291c0f0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010b151f29333d46505a606c77818e959fa8a29892867f756d68605d555350494b4a4a4b4e535a616b717e8a949fabb7c5cfdad2c5b9ac9f92867a6d6054473a2d2114070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d17202a333d464f54565e5e5e5e5e5e5e5e5e5e5c5a544c42382d211509000000000000000000000f1c2936424f5c6975828787878787878787878787878275695c4f4236291c0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17212b343e44505b656d79839096a19792867d726d615e56514b46443f3f3d3d3e43475059616c76828f9ca9b3becad6d3c7bbaea3998a7d7164574a3e3124170b000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e18212b343d43484951515151515151515151504e49423a30261b1005000000000000000000000714212e3a4754616d7a7b7b7b7b7b7b7b7b7b7b7b7b7a6d6154473a2e21140700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050f192227333f49535d676e7a84919892857c6f6b625b524c45403937332d303032373e46505a63707d8a97a1adb9c6d2d7cbbfb5ab988c7f7265594c3f3226190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060f19222b32383b3c4445454545454545454543413e3830281e140a00000000000000000000000713202d3946525e686d6e6e6e6e6e6e6e6e6e6e6e6e6d685e5246392d2013070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071017222d38414b555e686f7c8692867d6f6a60595146413a352f2b27222424262b343e4653606d7985929eabb8c5d1dcd1c0b3a69a8d8073675a4d4034271a0d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007101921272c2f30383838383838383838383635322d261e160c03000000000000000000000005111e2a36414c565e61616161616161616161616161615e564c41362a1e110500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111b262f39434d565f6a717e867f716b60584f473f363029241f1b1717171b222c3844505c6676828f9ca9b5c2cfdbcec1b4a89b8e8175685b4e4235281b0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161b1f22232b2b2b2b2b2b2b2b2b2b292826211b140c04000000000000000000000000010d1925303a444c525454545454545454545454545454524c443a3025190d01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d27313b444e58616c717d716c62594f463d352a251e18120f0b060a101c28343f4a546774818d9aa7b4c0cddacfc2b6a99c8f8376695c504336291d1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040a0f1315161e1e1e1e1e1e1e1e1e1e1d1c1915100a03000000000000000000000000000008131e29323a4146474848484848484848484848484746413a32291e13080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b151f29323c46505a616b706b625a50473d342b2319130d07030000000c17232e404c5966737f8c99a6b2bfccd9d0c3b6aa9d9083776a5d5044372a1d110000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000307090911121212121212121212100f0d090500000000000000000000000000000000020d1720293036393a3b3b3b3b3b3b3b3b3b3b3b3b3a3936302920170d02000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030d17202a343e4850596163615950483f36302920170e060000000000061a2633404d596673808c99a6b3bfccd9cfc2b5a99c8f8276695c4f4336291c10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e171e252a2d2e2e2e2e2e2e2e2e2e2e2e2e2e2e2d2a251e170e050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050e19222c363e474f5557554f484746413a32292017110a060400030a1a2734404d5a6773808d9aa6b3c0cdd9cec1b4a89b8e8175685b4e4235281b0f00000000000000010406071313131313131313131313131313131313131313131313131313131313131313131313131313131313131313131313130f0f0c0904000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000050d13191e202121212121212121212121212121201e19130d050000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000060b12181d2429353e44484a4d535454524c443b3328221c1412100c10141b2a36424d576875828e9ba8b5c1cedacdc0b3a79a8d8074675a4d4134271a0e000000000001080d1113142020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020201c1b1915100902000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002080d1113141515151515151515151515151413110d080200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020a11171d23282f353a41454c52575e61615e564d453c332d26201f1c181c1f262d3a46535f697784919eaab7c4d1d9ccbfb2a6998c7f7366594c403326190d00000000040c13191d202d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d2d292825211b140c0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001050707080808080808080808080808070705010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020b141c22282e343940454c52565e61696e6d685e574e443f382f2d2c2823282b2f38414c56616e7b87939facb9c6d2d5c9bdb2a8978b7e7164584b3e3125180b000000040d161e24292c393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393634312c261e150c020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a141d262d333940454b51565d60686e747b7a6e695f58504a423d3a38342e34383b4149525e6873808c9aa4afbbc8d4d2c5b9aca096877b6e6154483b2e2115080000010c161f282f35394646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464646464642413d3730271e1409000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006111c262f383f444b51555d60686d737a8086847b6e6a605b544f48464440433f44464d535b616d7a85929eacb6c0ccd8d1c4b7aa9e918477695e53463a2d211407000008131e28313a4145535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353535353534f4d49423930261b1004000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d38424a50545c60676d727a80868d9291847c726c6660595553514a504a5053575e656c75818e97a1adbec7d2d5c9beb3a99a8d817467574d42362a1e120500010d19242f3a434c525f6060606060606060606060606060606060606060606060606060606060606060606060606060606060606060606060605c5a544b42372c211509000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1c28333f4a545b60666d72797f858d92989f9691867f786f6b6662605c545c545c6063696e77808d939ea9b3bed0d9d2c6b9ada1978a7d7164574a3e31251a0e020004111d2935414c565d6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c69655d54493d3125190c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505b666c71797f858c92979fa2a8a098928c827c77726f6d66696969666d70747b828d929da5afbbc5cfd5c9beb3a99e9285796d6053473a2d20140900000613202c3945525d68767979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797979797570655a4d4134281b0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c787e848b91979fa2a9aeb2aaa39f949089837f7b797776767677797c81868f939da4aeb7c1cdd6ccc4b9ada1978c7f72675d5145392c1f130600000714212d3a4754606d7a8686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868686868275695c4f4236291c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d192633404c5966737f8b91969ea1a9adb3babcb4aea69f9c95908c8886848383828486898d92989ea5aeb6c0c9d3cec4bab0a69e9285796d60554b4035291d100400000714212d3a4754606d7a87939393939393939393939393939393939393939393939393939393939393939393939393939393939393939393938f8275695c4f4236291c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b1724313e4a5764717d8a97a1a8adb3babec5c6bfbab0aba79f9d99999291908f8f9192989a9fa2aaafb8c0c8d2cdc5bcb2a89f948c7f72675d5143392f24180c0000000714212d3a4754606d7a87939f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9f9c8f8275695c4f4236291c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000815222e3b4855616e7b8898a2aeb9bec4cacfd0cbc2bbb7b1abaaaba39f9d9c9c9c9d9fa3aaacaeb4bcc1cad4cbc3bbb3aaa1969082796d60554b4031271d12070000000714212d3a4754606d7a8793a0acacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacacaca89c8f8275695c4f4236291c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202d394653606c7985929fabb8c5cfd6dbdcd6cdc7c3bcb8b6b5aeacaaa9a9a9aaacaeb4b8babfc6ceccc8c0b9b1a9a29891847a6d665c5143392f1f150b010000000714212d3a4754606d7a8793a0adb9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b9b5a89c8f8275695c4f4236291c0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005121f2b3744505b6576838f9ca9b6c2cfdce6e7dad2cac5c1c0c1bfbbb9b7b6b6b5b7b9babfc5c6cacac7c0bbb9afa7a09792867c6f685e544b4031271d0d03000000000714212d3a4754606d7a8793a0adbac6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c6c2b5a89c8f8275695c4f4236291c0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000030f1b27333f49536773808d9aa6b3c0d0dbe7dcd2c8c0b9b5b3b4b9bbc0c4c3c2c2c4c5c7cac6c5c2bfbab6afaca59d9590857d706a5f564c42392e1f150b00000000000714212d3a4754606d7a8793a0adbac6d2d2d2d2d2d5d0cdcccacacacacacacacacacacacacacacacacacacacacacacacacacacacac2b5a89c8f8275695c4f4236291c0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17222d3e4b5764717e8a97aab4bfcad6e2d6cac0b6aea9a6a7acafb5b9bbc0bebebdbcbfbab8b5b4aeaca49f9b938e837b706b61584e443a30271d0d0300000000000714212d3a4754606d7a8793a0adbac6d3dfe3dad1cac4c0bfbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdbdb5a89c8f8275695c4f4236291c0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000615222f3b4855626e7b8898a2aebac6d3e0d1c5b9aea49d9a9a9fa3abacafb5b2b1b0afb4aeaca9aaa29f9a938f8981796e6961594f463c32291e150b0000000000000714212d3a4754606d7a8793a0adbac6d3e0dbd1c8bfb8b4b2b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0a89c8f8275695c4f4236291c0f000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7985929facb8c5d2dfcec1b5a99d928d8e92999d9fa4aba5a5a4a3aaa29f9c9998928e87827c746d675f574f473e342a20170c030000000000000714212d3a4754606d7a8793a0adbac6d3e0d5cabfb5ada8a6a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a49c8f8275695c4f4236291c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2b3844505c667683909da9b6c3d0d9cdc0b3a69a8d8081868c90939997989897969598928f8c8986817b756f6a605c554d453e352c22180e05000000000000000714212d3a4754606d7a8793a0adbac6d3dcd0c4b8ada39c9997979797979797979797979797979797979797979797979797979797979797978f8275695c4f4236291c0f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003101c28343f4a546774818d9aa7b4c0d1dccdc1b4a79a8e81747b7f8386898a8b8b8a89888785827f7c79746e6a626058514b433b332c231a100700000000000000000714212d3a4754606d7a8793a0adbac6d3d9cdc0b4a89c918c8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8a8275695c4f4236291c0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b17232e3e4b5865717e8b98aab4bfcbd7d0c3b6a99d9083766e72777a7c7e7f7e7d7c7b7a7976736f6d66625f57544e4540393129211a11080000000000000000000714212d3a4754606d7a8793a0adbac6d3d9ccbfb2a6998c7f7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d7d6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000616222f3c4955626f7c8898a3aebac7d3d2c5b8ac9f9285796c65676d6f71727271706f6e6d666663605c54534e47433d342f271f180f0b050000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c7171717171717171717171717171717171717171717171717171717171717171716f6b6054483b2f22150900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202d3a4653606d7986929facb9c5d2d3c6baaea298887b6e615d606364656564636261605c545653514b47423c373229232423211c17100800000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f64646464646464646464646464646464646464646464646464646464646464646360594f43382c1f1307000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006121f2c3844515c667783909daab6c3d0d6cabfb4aa978a7d71645753565758585756555453504a494645403937313434343431302d28221a1208000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f635757575757575757575757575757575757575757575757575757575757575756544f473d32271b0f03000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2834404a546774818e9aa7b4c1d1dbd0bfb3a6998c807366594d494b4c4b4a49484746443f40404040404040404040403e3c39332c241a10050000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f63564a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4948433d342b21160a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232e3f4b5865727e8b98abb5c0cbd7cec2b5a89b8f827568554c4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4d4a49443e362c22170b0000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3e3c3b38322b22190f04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000716232f3c4956626f7c8999a3afbbc7d3d1c4b7aa9e918477675d5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a575550483e33281c100400000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c31313131313131313131313131313131313131313131313131313131302f2c272119100700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7986929facb9c5d2d2c6b9ac9f93867a6d67676767676767676767676767676767676767676767676764615a5044392d21140800000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3024242424242424242424242424242424242424242424242424242423221f1b160f0700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006131f2c3845515c677784909daab7c3d0d4c8bbafa49a897c73737373737373737373737373737373737373737373737373716c6155493c3023160a00000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302317171717171717171717171717171717171717171717171717171615130f0a040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101c2934404b556874818e9ba7b4c1d2d8ccc0b6ac9c8f82808080808080808080808080808080808080808080808080807e7164574a3e3124170b00000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b09090703000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c18232f3f4c5865727f8b98abb5c0ccd7d2c7b7aa9e948f8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071623303c4956636f7c8999a4afbbc7d4d3c7bbb0a69e9c9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a9a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7a86939facb9c6d2d7ccc1b8b0aaa8a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a6a69a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d677784919daab7c4d0ddd3cac1bbb7b5b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3a79a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935404b556875818e9ba8b4c1cedbded3ccc7c3c2c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0c0b4a79a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18242f3f4c5965727f8c98a5b2bfced1d1d1d1d1d1cfcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdcdc0b4a79a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000071623303d495663707c8996a8b2bdc4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c4c0b4a79a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8796a0acb7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b7b4a79a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c3945525d687784919eaaabababababababababababababababababababababababababababababababa79a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935414c566875828e9b9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9e9a8d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d19242f3f4c5966727f8c91919191919191919191919191919191919191919191919191919191919191919191918d8174675a4e4134271b0e01000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000081623303d495663707d84848484848484848484848484848484848484848484848484848484848484848484848484807366594d4033261a0d00000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000916222f3b4854606b7078787878787878787878787878787878787878787878787878787878787878787878787878736e63574b3f3226190c00000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000713202c38444f5960636b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b6b66635c52473b2f23170a00000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004101b27323d474f54565e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5e5957524a40352a1f130700000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b16212b353d444849515151515151515151515151515151515151515151515151515151515151515151515151514d4b4740382e24190e0200000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040f19232b32383b3d45454545454545454545454545454545454545454545454545454545454545454545454545403f3b352e261c12070000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007111921272c2f303838383838383838383838383838383838383838383838383838383838383838383838383833322f2a241c130a000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c3023160900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000070f161b2022232b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2626231f19120a01000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040b101316161e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1e1a1917130e070000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c30231609000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000407090a121212121212121212121212121212121212121212121212121212121212121212121212120d0c0a0702000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d3d5c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac6d0d0c9bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adbac3c3c3c3bcafa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0adb6b6b6b6b6b6afa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a8793a0aaaaaaaaaaaaaaaaa296897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a87939d9d9d9d9d9d9d9d9d9d96897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714212d3a4754606d7a87909090909090909090909090897c6f6356493c302316090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000714202d3a4753606d7983838383838383838383838383837c6f6255483c2f2215090000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000613202c3945515d676d77777777777777777777777777776f6a5f53473b2e21150800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004111d2935404b555d606a6a6a6a6a6a6a6a6a6a6a6a6a6a625f584e43372b1f1206000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010d18242f3a434b51535d5d5d5d5d5d5d5d5d5d5d5d5d5d55534e463c32261b0f030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007131d28313a40454750505050505050505050505050504847433c342a20150a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000010c161f282f35393a44444444444444444444444444443c3b37322a22180e04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040d161d24292c2d37373737373737373737373737372f2e2b26201810060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040c13181d20202a2a2a2a2a2a2a2a2a2a2a2a2a2a22211f1b150e060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001070d1113141d1d1d1d1d1d1d1d1d1d1d1d1d1d1515120f0a04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000104060711111111111111111111111111110908060300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 m_StreamData: serializedVersion: 2 offset: 0 @@ -794,6 +794,90 @@ MonoBehaviour: m_Height: 69 m_Scale: 1 m_AtlasIndex: 0 + - m_Index: 44 + m_Metrics: + m_Width: 54.71875 + m_Height: 86.953125 + m_HorizontalBearingX: -3.0625 + m_HorizontalBearingY: 74.796875 + m_HorizontalAdvance: 50.765625 + m_GlyphRect: + m_X: 957 + m_Y: 96 + m_Width: 56 + m_Height: 88 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 5 + m_Metrics: + m_Width: 49.859375 + m_Height: 65.796875 + m_HorizontalBearingX: 6.9375 + m_HorizontalBearingY: 65.796875 + m_HorizontalAdvance: 60.125 + m_GlyphRect: + m_X: 593 + m_Y: 184 + m_Width: 51 + m_Height: 66 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 66 + m_Metrics: + m_Width: 14.859375 + m_Height: 39.234375 + m_HorizontalBearingX: 2.0625 + m_HorizontalBearingY: 38.515625 + m_HorizontalAdvance: 19.265625 + m_GlyphRect: + m_X: 10 + m_Y: 219 + m_Width: 15 + m_Height: 40 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 11 + m_Metrics: + m_Width: 48.765625 + m_Height: 65.796875 + m_HorizontalBearingX: 6.9375 + m_HorizontalBearingY: 65.796875 + m_HorizontalAdvance: 57.421875 + m_GlyphRect: + m_X: 80 + m_Y: 340 + m_Width: 50 + m_Height: 66 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 37 + m_Metrics: + m_Width: 28.625 + m_Height: 12.25 + m_HorizontalBearingX: 4.3125 + m_HorizontalBearingY: 32.046875 + m_HorizontalAdvance: 38.25 + m_GlyphRect: + m_X: 540 + m_Y: 236 + m_Width: 29 + m_Height: 14 + m_Scale: 1 + m_AtlasIndex: 0 + - m_Index: 138 + m_Metrics: + m_Width: 51.203125 + m_Height: 51.578125 + m_HorizontalBearingX: 3.875 + m_HorizontalBearingY: 50.3125 + m_HorizontalAdvance: 58.5 + m_GlyphRect: + m_X: 430 + m_Y: 240 + m_Width: 53 + m_Height: 53 + m_Scale: 1 + m_AtlasIndex: 0 m_CharacterTable: - m_ElementType: 1 m_Unicode: 32 @@ -967,6 +1051,30 @@ MonoBehaviour: m_Unicode: 104 m_GlyphIndex: 143 m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 47 + m_GlyphIndex: 44 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 70 + m_GlyphIndex: 5 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 58 + m_GlyphIndex: 66 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 76 + m_GlyphIndex: 11 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 45 + m_GlyphIndex: 37 + m_Scale: 1 + - m_ElementType: 1 + m_Unicode: 99 + m_GlyphIndex: 138 + m_Scale: 1 m_AtlasTextures: - {fileID: -8091076898505078677} m_AtlasTextureIndex: 0 @@ -1141,6 +1249,30 @@ MonoBehaviour: m_Y: 246 m_Width: 66 m_Height: 88 + - m_X: 947 + m_Y: 86 + m_Width: 75 + m_Height: 107 + - m_X: 583 + m_Y: 174 + m_Width: 70 + m_Height: 85 + - m_X: 0 + m_Y: 209 + m_Width: 34 + m_Height: 59 + - m_X: 70 + m_Y: 330 + m_Width: 69 + m_Height: 85 + - m_X: 530 + m_Y: 226 + m_Width: 48 + m_Height: 33 + - m_X: 420 + m_Y: 230 + m_Width: 72 + m_Height: 72 m_FreeGlyphRects: - m_X: 78 m_Y: 32 @@ -1190,10 +1322,6 @@ MonoBehaviour: m_Y: 112 m_Width: 44 m_Height: 29 - - m_X: 583 - m_Y: 112 - m_Width: 16 - m_Height: 911 - m_X: 439 m_Y: 119 m_Width: 41 @@ -1210,10 +1338,6 @@ MonoBehaviour: m_Y: 142 m_Width: 15 m_Height: 32 - - m_X: 420 - m_Y: 174 - m_Width: 19 - m_Height: 849 - m_X: 252 m_Y: 175 m_Width: 16 @@ -1222,30 +1346,6 @@ MonoBehaviour: m_Y: 230 m_Width: 30 m_Height: 793 - - m_X: 320 - m_Y: 262 - m_Width: 703 - m_Height: 761 - - m_X: 0 - m_Y: 209 - m_Width: 34 - m_Height: 87 - - m_X: 0 - m_Y: 383 - m_Width: 1023 - m_Height: 640 - - m_X: 70 - m_Y: 296 - m_Width: 39 - m_Height: 727 - - m_X: 1014 - m_Y: 0 - m_Width: 9 - m_Height: 1023 - - m_X: 947 - m_Y: 86 - m_Width: 76 - m_Height: 937 - m_X: 875 m_Y: 85 m_Width: 70 @@ -1262,26 +1362,6 @@ MonoBehaviour: m_Y: 87 m_Width: 11 m_Height: 936 - - m_X: 530 - m_Y: 226 - m_Width: 157 - m_Height: 797 - - m_X: 583 - m_Y: 174 - m_Width: 104 - m_Height: 849 - - m_X: 420 - m_Y: 258 - m_Width: 603 - m_Height: 765 - - m_X: 420 - m_Y: 230 - m_Width: 267 - m_Height: 793 - - m_X: 772 - m_Y: 173 - m_Width: 251 - m_Height: 850 - m_X: 184 m_Y: 245 m_Width: 2 @@ -1294,14 +1374,82 @@ MonoBehaviour: m_Y: 246 m_Width: 2 m_Height: 777 + - m_X: 1014 + m_Y: 0 + m_Width: 9 + m_Height: 86 + - m_X: 1022 + m_Y: 0 + m_Width: 1 + m_Height: 1023 + - m_X: 772 + m_Y: 193 + m_Width: 251 + m_Height: 830 + - m_X: 772 + m_Y: 173 + m_Width: 175 + m_Height: 850 + - m_X: 583 + m_Y: 112 + m_Width: 16 + m_Height: 62 + - m_X: 653 + m_Y: 174 + m_Width: 34 + m_Height: 849 + - m_X: 653 + m_Y: 258 + m_Width: 370 + m_Height: 765 + - m_X: 0 + m_Y: 268 + m_Width: 34 + m_Height: 28 + - m_X: 0 + m_Y: 415 + m_Width: 1023 + m_Height: 608 + - m_X: 0 + m_Y: 383 + m_Width: 70 + m_Height: 640 - m_X: 70 + m_Y: 296 + m_Width: 39 + m_Height: 34 + - m_X: 139 m_Y: 334 - m_Width: 953 + m_Width: 884 m_Height: 689 - - m_X: 70 + - m_X: 139 m_Y: 330 - m_Width: 114 + m_Width: 45 m_Height: 693 + - m_X: 578 + m_Y: 226 + m_Width: 5 + m_Height: 797 + - m_X: 420 + m_Y: 174 + m_Width: 19 + m_Height: 56 + - m_X: 320 + m_Y: 302 + m_Width: 703 + m_Height: 721 + - m_X: 320 + m_Y: 262 + m_Width: 100 + m_Height: 761 + - m_X: 492 + m_Y: 259 + m_Width: 531 + m_Height: 764 + - m_X: 492 + m_Y: 230 + m_Width: 38 + m_Height: 793 m_fontInfo: Name: PointSize: 0 diff --git a/Assets/InitialVel.cs b/Assets/InitialVel.cs new file mode 100644 index 000000000..091b6d872 --- /dev/null +++ b/Assets/InitialVel.cs @@ -0,0 +1,13 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class InitialVel : MonoBehaviour +{ + public Vector3 force; + // Start is called before the first frame update + void Start() + { + GetComponent().AddForce(force, ForceMode.Impulse); + } +} diff --git a/Assets/InitialVel.cs.meta b/Assets/InitialVel.cs.meta new file mode 100644 index 000000000..1e02699a8 --- /dev/null +++ b/Assets/InitialVel.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d93ba4e1f8c839348adb941388d73dea +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/LockOn.cs b/Assets/LockOn.cs new file mode 100644 index 000000000..bc6c7f06f --- /dev/null +++ b/Assets/LockOn.cs @@ -0,0 +1,20 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class LockOn : MonoBehaviour +{ + public Transform interest; + Vector3 offset; + [Tooltip("How snappy is the camera?")]public float speed = 20; + + private void Start() + { + if (interest) offset = transform.position - interest.position; + } + + void Update() + { + if (interest) transform.position = Vector3.Lerp(transform.position, interest.position + offset, Time.fixedDeltaTime * speed); + } +} diff --git a/Assets/LockOn.cs.meta b/Assets/LockOn.cs.meta new file mode 100644 index 000000000..d50dcc47c --- /dev/null +++ b/Assets/LockOn.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 6f3f71b7d9752e742b6bbc2338ff0452 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Electric Field.mat b/Assets/Materials/Electric Field.mat new file mode 100644 index 000000000..bd42b4950 --- /dev/null +++ b/Assets/Materials/Electric Field.mat @@ -0,0 +1,38 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Electric Field + m_Shader: {fileID: -6465566751694194690, guid: a877d100dfbcdac4fb28af0a8eb9341f, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - Vector1_76634227db204b76af2d91e61eac5e6b: -3 + m_Colors: + - Color_6f92dc3ff16947f5817b5cb574051c92: {r: 0, g: 1, b: 0.98988575, a: 0} + m_BuildTextureStacks: [] diff --git a/Assets/Materials/Electric Field.mat.meta b/Assets/Materials/Electric Field.mat.meta new file mode 100644 index 000000000..518a0aa9b --- /dev/null +++ b/Assets/Materials/Electric Field.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: cd7985b03a32f9b4a87a277d88415e72 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Materials/Magentic Field.mat b/Assets/Materials/Magentic Field.mat new file mode 100644 index 000000000..1d775381a --- /dev/null +++ b/Assets/Materials/Magentic Field.mat @@ -0,0 +1,38 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!21 &2100000 +Material: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Magentic Field + m_Shader: {fileID: -6465566751694194690, guid: a877d100dfbcdac4fb28af0a8eb9341f, type: 3} + m_ShaderKeywords: + m_LightmapFlags: 4 + m_EnableInstancingVariants: 0 + m_DoubleSidedGI: 0 + m_CustomRenderQueue: -1 + stringTagMap: {} + disabledShaderPasses: [] + m_SavedProperties: + serializedVersion: 3 + m_TexEnvs: + - unity_Lightmaps: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_LightmapsInd: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + - unity_ShadowMasks: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} + m_Floats: + - Vector1_76634227db204b76af2d91e61eac5e6b: -3 + m_Colors: + - Color_6f92dc3ff16947f5817b5cb574051c92: {r: 1, g: 0.5686732, b: 0, a: 0} + m_BuildTextureStacks: [] diff --git a/Assets/Materials/Magentic Field.mat.meta b/Assets/Materials/Magentic Field.mat.meta new file mode 100644 index 000000000..1c5c4e434 --- /dev/null +++ b/Assets/Materials/Magentic Field.mat.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: c0adb1e3bc5e84643a6ec8c9c47903ad +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 2100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs index 9e289c81f..c195b6ccf 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs @@ -1,202 +1,202 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -#if true // MODULE_MARKER -using System; -using DG.Tweening.Core; -using DG.Tweening.Plugins.Options; -using UnityEngine; -#if UNITY_5 || UNITY_2017_1_OR_NEWER -using UnityEngine.Audio; // Required for AudioMixer -#endif - -#pragma warning disable 1591 -namespace DG.Tweening -{ - public static class DOTweenModuleAudio - { - #region Shortcuts - - #region Audio - - /// Tweens an AudioSource's volume to the given value. - /// Also stores the AudioSource as the tween's target so it can be used for filtered operations - /// The end value to reach (0 to 1)The duration of the tween - public static TweenerCore DOFade(this AudioSource target, float endValue, float duration) - { - if (endValue < 0) endValue = 0; - else if (endValue > 1) endValue = 1; - TweenerCore t = DOTween.To(() => target.volume, x => target.volume = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens an AudioSource's pitch to the given value. - /// Also stores the AudioSource as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOPitch(this AudioSource target, float endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.pitch, x => target.pitch = x, endValue, duration); - t.SetTarget(target); - return t; - } - - #endregion - -#if UNITY_5 || UNITY_2017_1_OR_NEWER - #region AudioMixer (Unity 5 or Newer) - - /// Tweens an AudioMixer's exposed float to the given value. - /// Also stores the AudioMixer as the tween's target so it can be used for filtered operations. - /// Note that you need to manually expose a float in an AudioMixerGroup in order to be able to tween it from an AudioMixer. - /// Name given to the exposed float to set - /// The end value to reachThe duration of the tween - public static TweenerCore DOSetFloat(this AudioMixer target, string floatName, float endValue, float duration) - { - TweenerCore t = DOTween.To(()=> { - float currVal; - target.GetFloat(floatName, out currVal); - return currVal; - }, x=> target.SetFloat(floatName, x), endValue, duration); - t.SetTarget(target); - return t; - } - - #region Operation Shortcuts - - /// - /// Completes all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens completed - /// (meaning the tweens that don't have infinite loops and were not already complete) - /// - /// For Sequences only: if TRUE also internal Sequence callbacks will be fired, - /// otherwise they will be ignored - public static int DOComplete(this AudioMixer target, bool withCallbacks = false) - { - return DOTween.Complete(target, withCallbacks); - } - - /// - /// Kills all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens killed. - /// - /// If TRUE completes the tween before killing it - public static int DOKill(this AudioMixer target, bool complete = false) - { - return DOTween.Kill(target, complete); - } - - /// - /// Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens flipped. - /// - public static int DOFlip(this AudioMixer target) - { - return DOTween.Flip(target); - } - - /// - /// Sends to the given position all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens involved. - /// - /// Time position to reach - /// (if higher than the whole tween duration the tween will simply reach its end) - /// If TRUE will play the tween after reaching the given position, otherwise it will pause it - public static int DOGoto(this AudioMixer target, float to, bool andPlay = false) - { - return DOTween.Goto(target, to, andPlay); - } - - /// - /// Pauses all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens paused. - /// - public static int DOPause(this AudioMixer target) - { - return DOTween.Pause(target); - } - - /// - /// Plays all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens played. - /// - public static int DOPlay(this AudioMixer target) - { - return DOTween.Play(target); - } - - /// - /// Plays backwards all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens played. - /// - public static int DOPlayBackwards(this AudioMixer target) - { - return DOTween.PlayBackwards(target); - } - - /// - /// Plays forward all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens played. - /// - public static int DOPlayForward(this AudioMixer target) - { - return DOTween.PlayForward(target); - } - - /// - /// Restarts all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens restarted. - /// - public static int DORestart(this AudioMixer target) - { - return DOTween.Restart(target); - } - - /// - /// Rewinds all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens rewinded. - /// - public static int DORewind(this AudioMixer target) - { - return DOTween.Rewind(target); - } - - /// - /// Smoothly rewinds all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens rewinded. - /// - public static int DOSmoothRewind(this AudioMixer target) - { - return DOTween.SmoothRewind(target); - } - - /// - /// Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference - /// (meaning tweens that were started from this target, or that had this target added as an Id) - /// and returns the total number of tweens involved. - /// - public static int DOTogglePause(this AudioMixer target) - { - return DOTween.TogglePause(target); - } - - #endregion - - #endregion -#endif - - #endregion - } -} -#endif +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true // MODULE_MARKER +using System; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +using UnityEngine; +#if UNITY_5 || UNITY_2017_1_OR_NEWER +using UnityEngine.Audio; // Required for AudioMixer +#endif + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModuleAudio + { + #region Shortcuts + + #region Audio + + /// Tweens an AudioSource's volume to the given value. + /// Also stores the AudioSource as the tween's target so it can be used for filtered operations + /// The end value to reach (0 to 1)The duration of the tween + public static TweenerCore DOFade(this AudioSource target, float endValue, float duration) + { + if (endValue < 0) endValue = 0; + else if (endValue > 1) endValue = 1; + TweenerCore t = DOTween.To(() => target.volume, x => target.volume = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an AudioSource's pitch to the given value. + /// Also stores the AudioSource as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPitch(this AudioSource target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pitch, x => target.pitch = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + +#if UNITY_5 || UNITY_2017_1_OR_NEWER + #region AudioMixer (Unity 5 or Newer) + + /// Tweens an AudioMixer's exposed float to the given value. + /// Also stores the AudioMixer as the tween's target so it can be used for filtered operations. + /// Note that you need to manually expose a float in an AudioMixerGroup in order to be able to tween it from an AudioMixer. + /// Name given to the exposed float to set + /// The end value to reachThe duration of the tween + public static TweenerCore DOSetFloat(this AudioMixer target, string floatName, float endValue, float duration) + { + TweenerCore t = DOTween.To(()=> { + float currVal; + target.GetFloat(floatName, out currVal); + return currVal; + }, x=> target.SetFloat(floatName, x), endValue, duration); + t.SetTarget(target); + return t; + } + + #region Operation Shortcuts + + /// + /// Completes all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens completed + /// (meaning the tweens that don't have infinite loops and were not already complete) + /// + /// For Sequences only: if TRUE also internal Sequence callbacks will be fired, + /// otherwise they will be ignored + public static int DOComplete(this AudioMixer target, bool withCallbacks = false) + { + return DOTween.Complete(target, withCallbacks); + } + + /// + /// Kills all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens killed. + /// + /// If TRUE completes the tween before killing it + public static int DOKill(this AudioMixer target, bool complete = false) + { + return DOTween.Kill(target, complete); + } + + /// + /// Flips the direction (backwards if it was going forward or viceversa) of all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens flipped. + /// + public static int DOFlip(this AudioMixer target) + { + return DOTween.Flip(target); + } + + /// + /// Sends to the given position all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens involved. + /// + /// Time position to reach + /// (if higher than the whole tween duration the tween will simply reach its end) + /// If TRUE will play the tween after reaching the given position, otherwise it will pause it + public static int DOGoto(this AudioMixer target, float to, bool andPlay = false) + { + return DOTween.Goto(target, to, andPlay); + } + + /// + /// Pauses all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens paused. + /// + public static int DOPause(this AudioMixer target) + { + return DOTween.Pause(target); + } + + /// + /// Plays all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens played. + /// + public static int DOPlay(this AudioMixer target) + { + return DOTween.Play(target); + } + + /// + /// Plays backwards all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens played. + /// + public static int DOPlayBackwards(this AudioMixer target) + { + return DOTween.PlayBackwards(target); + } + + /// + /// Plays forward all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens played. + /// + public static int DOPlayForward(this AudioMixer target) + { + return DOTween.PlayForward(target); + } + + /// + /// Restarts all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens restarted. + /// + public static int DORestart(this AudioMixer target) + { + return DOTween.Restart(target); + } + + /// + /// Rewinds all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens rewinded. + /// + public static int DORewind(this AudioMixer target) + { + return DOTween.Rewind(target); + } + + /// + /// Smoothly rewinds all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens rewinded. + /// + public static int DOSmoothRewind(this AudioMixer target) + { + return DOTween.SmoothRewind(target); + } + + /// + /// Toggles the paused state (plays if it was paused, pauses if it was playing) of all tweens that have this target as a reference + /// (meaning tweens that were started from this target, or that had this target added as an Id) + /// and returns the total number of tweens involved. + /// + public static int DOTogglePause(this AudioMixer target) + { + return DOTween.TogglePause(target); + } + + #endregion + + #endregion +#endif + + #endregion + } +} +#endif diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleEPOOutline.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleEPOOutline.cs index 6f445f7ae..aff123565 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleEPOOutline.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleEPOOutline.cs @@ -1,142 +1,142 @@ -using UnityEngine; - -#if false || EPO_DOTWEEN // MODULE_MARKER - -using EPOOutline; -using DG.Tweening.Plugins.Options; -using DG.Tweening; -using DG.Tweening.Core; - -namespace DG.Tweening -{ - public static class DOTweenModuleEPOOutline - { - public static int DOKill(this SerializedPass target, bool complete) - { - return DOTween.Kill(target, complete); - } - - public static TweenerCore DOFloat(this SerializedPass target, string propertyName, float endValue, float duration) - { - var tweener = DOTween.To(() => target.GetFloat(propertyName), x => target.SetFloat(propertyName, x), endValue, duration); - tweener.SetOptions(true).SetTarget(target); - return tweener; - } - - public static TweenerCore DOFade(this SerializedPass target, string propertyName, float endValue, float duration) - { - var tweener = DOTween.ToAlpha(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration); - tweener.SetOptions(true).SetTarget(target); - return tweener; - } - - public static TweenerCore DOColor(this SerializedPass target, string propertyName, Color endValue, float duration) - { - var tweener = DOTween.To(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration); - tweener.SetOptions(false).SetTarget(target); - return tweener; - } - - public static TweenerCore DOVector(this SerializedPass target, string propertyName, Vector4 endValue, float duration) - { - var tweener = DOTween.To(() => target.GetVector(propertyName), x => target.SetVector(propertyName, x), endValue, duration); - tweener.SetOptions(false).SetTarget(target); - return tweener; - } - - public static TweenerCore DOFloat(this SerializedPass target, int propertyId, float endValue, float duration) - { - var tweener = DOTween.To(() => target.GetFloat(propertyId), x => target.SetFloat(propertyId, x), endValue, duration); - tweener.SetOptions(true).SetTarget(target); - return tweener; - } - - public static TweenerCore DOFade(this SerializedPass target, int propertyId, float endValue, float duration) - { - var tweener = DOTween.ToAlpha(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration); - tweener.SetOptions(true).SetTarget(target); - return tweener; - } - - public static TweenerCore DOColor(this SerializedPass target, int propertyId, Color endValue, float duration) - { - var tweener = DOTween.To(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration); - tweener.SetOptions(false).SetTarget(target); - return tweener; - } - - public static TweenerCore DOVector(this SerializedPass target, int propertyId, Vector4 endValue, float duration) - { - var tweener = DOTween.To(() => target.GetVector(propertyId), x => target.SetVector(propertyId, x), endValue, duration); - tweener.SetOptions(false).SetTarget(target); - return tweener; - } - - public static int DOKill(this Outlinable.OutlineProperties target, bool complete = false) - { - return DOTween.Kill(target, complete); - } - - public static int DOKill(this Outliner target, bool complete = false) - { - return DOTween.Kill(target, complete); - } - - public static TweenerCore DOFade(this Outlinable.OutlineProperties target, float endValue, float duration) - { - var tweener = DOTween.ToAlpha(() => target.Color, x => target.Color = x, endValue, duration); - tweener.SetOptions(true).SetTarget(target); - return tweener; - } - - public static TweenerCore DOColor(this Outlinable.OutlineProperties target, Color endValue, float duration) - { - var tweener = DOTween.To(() => target.Color, x => target.Color = x, endValue, duration); - tweener.SetOptions(false).SetTarget(target); - return tweener; - } - - public static TweenerCore DODilateShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false) - { - var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration); - tweener.SetOptions(snapping).SetTarget(target); - return tweener; - } - - public static TweenerCore DOBlurShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false) - { - var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration); - tweener.SetOptions(snapping).SetTarget(target); - return tweener; - } - - public static TweenerCore DOBlurShift(this Outliner target, float endValue, float duration, bool snapping = false) - { - var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration); - tweener.SetOptions(snapping).SetTarget(target); - return tweener; - } - - public static TweenerCore DODilateShift(this Outliner target, float endValue, float duration, bool snapping = false) - { - var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration); - tweener.SetOptions(snapping).SetTarget(target); - return tweener; - } - - public static TweenerCore DOInfoRendererScale(this Outliner target, float endValue, float duration, bool snapping = false) - { - var tweener = DOTween.To(() => target.InfoRendererScale, x => target.InfoRendererScale = x, endValue, duration); - tweener.SetOptions(snapping).SetTarget(target); - return tweener; - } - - public static TweenerCore DOPrimaryRendererScale(this Outliner target, float endValue, float duration, bool snapping = false) - { - var tweener = DOTween.To(() => target.PrimaryRendererScale, x => target.PrimaryRendererScale = x, endValue, duration); - tweener.SetOptions(snapping).SetTarget(target); - return tweener; - } - } -} -#endif +using UnityEngine; + +#if false || EPO_DOTWEEN // MODULE_MARKER + +using EPOOutline; +using DG.Tweening.Plugins.Options; +using DG.Tweening; +using DG.Tweening.Core; + +namespace DG.Tweening +{ + public static class DOTweenModuleEPOOutline + { + public static int DOKill(this SerializedPass target, bool complete) + { + return DOTween.Kill(target, complete); + } + + public static TweenerCore DOFloat(this SerializedPass target, string propertyName, float endValue, float duration) + { + var tweener = DOTween.To(() => target.GetFloat(propertyName), x => target.SetFloat(propertyName, x), endValue, duration); + tweener.SetOptions(true).SetTarget(target); + return tweener; + } + + public static TweenerCore DOFade(this SerializedPass target, string propertyName, float endValue, float duration) + { + var tweener = DOTween.ToAlpha(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration); + tweener.SetOptions(true).SetTarget(target); + return tweener; + } + + public static TweenerCore DOColor(this SerializedPass target, string propertyName, Color endValue, float duration) + { + var tweener = DOTween.To(() => target.GetColor(propertyName), x => target.SetColor(propertyName, x), endValue, duration); + tweener.SetOptions(false).SetTarget(target); + return tweener; + } + + public static TweenerCore DOVector(this SerializedPass target, string propertyName, Vector4 endValue, float duration) + { + var tweener = DOTween.To(() => target.GetVector(propertyName), x => target.SetVector(propertyName, x), endValue, duration); + tweener.SetOptions(false).SetTarget(target); + return tweener; + } + + public static TweenerCore DOFloat(this SerializedPass target, int propertyId, float endValue, float duration) + { + var tweener = DOTween.To(() => target.GetFloat(propertyId), x => target.SetFloat(propertyId, x), endValue, duration); + tweener.SetOptions(true).SetTarget(target); + return tweener; + } + + public static TweenerCore DOFade(this SerializedPass target, int propertyId, float endValue, float duration) + { + var tweener = DOTween.ToAlpha(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration); + tweener.SetOptions(true).SetTarget(target); + return tweener; + } + + public static TweenerCore DOColor(this SerializedPass target, int propertyId, Color endValue, float duration) + { + var tweener = DOTween.To(() => target.GetColor(propertyId), x => target.SetColor(propertyId, x), endValue, duration); + tweener.SetOptions(false).SetTarget(target); + return tweener; + } + + public static TweenerCore DOVector(this SerializedPass target, int propertyId, Vector4 endValue, float duration) + { + var tweener = DOTween.To(() => target.GetVector(propertyId), x => target.SetVector(propertyId, x), endValue, duration); + tweener.SetOptions(false).SetTarget(target); + return tweener; + } + + public static int DOKill(this Outlinable.OutlineProperties target, bool complete = false) + { + return DOTween.Kill(target, complete); + } + + public static int DOKill(this Outliner target, bool complete = false) + { + return DOTween.Kill(target, complete); + } + + public static TweenerCore DOFade(this Outlinable.OutlineProperties target, float endValue, float duration) + { + var tweener = DOTween.ToAlpha(() => target.Color, x => target.Color = x, endValue, duration); + tweener.SetOptions(true).SetTarget(target); + return tweener; + } + + public static TweenerCore DOColor(this Outlinable.OutlineProperties target, Color endValue, float duration) + { + var tweener = DOTween.To(() => target.Color, x => target.Color = x, endValue, duration); + tweener.SetOptions(false).SetTarget(target); + return tweener; + } + + public static TweenerCore DODilateShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false) + { + var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration); + tweener.SetOptions(snapping).SetTarget(target); + return tweener; + } + + public static TweenerCore DOBlurShift(this Outlinable.OutlineProperties target, float endValue, float duration, bool snapping = false) + { + var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration); + tweener.SetOptions(snapping).SetTarget(target); + return tweener; + } + + public static TweenerCore DOBlurShift(this Outliner target, float endValue, float duration, bool snapping = false) + { + var tweener = DOTween.To(() => target.BlurShift, x => target.BlurShift = x, endValue, duration); + tweener.SetOptions(snapping).SetTarget(target); + return tweener; + } + + public static TweenerCore DODilateShift(this Outliner target, float endValue, float duration, bool snapping = false) + { + var tweener = DOTween.To(() => target.DilateShift, x => target.DilateShift = x, endValue, duration); + tweener.SetOptions(snapping).SetTarget(target); + return tweener; + } + + public static TweenerCore DOInfoRendererScale(this Outliner target, float endValue, float duration, bool snapping = false) + { + var tweener = DOTween.To(() => target.InfoRendererScale, x => target.InfoRendererScale = x, endValue, duration); + tweener.SetOptions(snapping).SetTarget(target); + return tweener; + } + + public static TweenerCore DOPrimaryRendererScale(this Outliner target, float endValue, float duration, bool snapping = false) + { + var tweener = DOTween.To(() => target.PrimaryRendererScale, x => target.PrimaryRendererScale = x, endValue, duration); + tweener.SetOptions(snapping).SetTarget(target); + return tweener; + } + } +} +#endif diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs index 6e1469ebf..08b070065 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs @@ -1,216 +1,216 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -#if true // MODULE_MARKER -using System; -using DG.Tweening.Core; -using DG.Tweening.Core.Enums; -using DG.Tweening.Plugins; -using DG.Tweening.Plugins.Core.PathCore; -using DG.Tweening.Plugins.Options; -using UnityEngine; - -#pragma warning disable 1591 -namespace DG.Tweening -{ - public static class DOTweenModulePhysics - { - #region Shortcuts - - #region Rigidbody - - /// Tweens a Rigidbody's position to the given value. - /// Also stores the rigidbody as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMove(this Rigidbody target, Vector3 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody's X position to the given value. - /// Also stores the rigidbody as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMoveX(this Rigidbody target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue, 0, 0), duration); - t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody's Y position to the given value. - /// Also stores the rigidbody as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMoveY(this Rigidbody target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, endValue, 0), duration); - t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody's Z position to the given value. - /// Also stores the rigidbody as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMoveZ(this Rigidbody target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue), duration); - t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody's rotation to the given value. - /// Also stores the rigidbody as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// Rotation mode - public static TweenerCore DORotate(this Rigidbody target, Vector3 endValue, float duration, RotateMode mode = RotateMode.Fast) - { - TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration); - t.SetTarget(target); - t.plugOptions.rotateMode = mode; - return t; - } - - /// Tweens a Rigidbody's rotation so that it will look towards the given position. - /// Also stores the rigidbody as the tween's target so it can be used for filtered operations - /// The position to look atThe duration of the tween - /// Eventual axis constraint for the rotation - /// The vector that defines in which direction up is (default: Vector3.up) - public static TweenerCore DOLookAt(this Rigidbody target, Vector3 towards, float duration, AxisConstraint axisConstraint = AxisConstraint.None, Vector3? up = null) - { - TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, towards, duration) - .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetLookAt); - t.plugOptions.axisConstraint = axisConstraint; - t.plugOptions.up = (up == null) ? Vector3.up : (Vector3)up; - return t; - } - - #region Special - - /// Tweens a Rigidbody's position to the given value, while also applying a jump effect along the Y axis. - /// Returns a Sequence instead of a Tweener. - /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations - /// The end value to reach - /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) - /// Total number of jumps - /// The duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static Sequence DOJump(this Rigidbody target, Vector3 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) - { - if (numJumps < 1) numJumps = 1; - float startPosY = 0; - float offsetY = -1; - bool offsetYSet = false; - Sequence s = DOTween.Sequence(); - Tween yTween = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, jumpPower, 0), duration / (numJumps * 2)) - .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() - .SetLoops(numJumps * 2, LoopType.Yoyo) - .OnStart(() => startPosY = target.position.y); - s.Append(DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue.x, 0, 0), duration) - .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) - ).Join(DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue.z), duration) - .SetOptions(AxisConstraint.Z, snapping).SetEase(Ease.Linear) - ).Join(yTween) - .SetTarget(target).SetEase(DOTween.defaultEaseType); - yTween.OnUpdate(() => { - if (!offsetYSet) { - offsetYSet = true; - offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; - } - Vector3 pos = target.position; - pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad); - target.MovePosition(pos); - }); - return s; - } - - /// Tweens a Rigidbody's position through the given path waypoints, using the chosen path algorithm. - /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations. - /// NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened. - /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). - /// If you plan to publish there you should use a regular transform.DOPath. - /// The waypoints to go through - /// The duration of the tween - /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) - /// The path mode: 3D, side-scroller 2D, top-down 2D - /// The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive. - /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints - /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) - public static TweenerCore DOPath( - this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear, - PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null - ) - { - if (resolution < 1) resolution = 1; - TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, new Path(pathType, path, resolution, gizmoColor), duration) - .SetTarget(target).SetUpdate(UpdateType.Fixed); - - t.plugOptions.isRigidbody = true; - t.plugOptions.mode = pathMode; - return t; - } - /// Tweens a Rigidbody's localPosition through the given path waypoints, using the chosen path algorithm. - /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations - /// NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened. - /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). - /// If you plan to publish there you should use a regular transform.DOLocalPath. - /// The waypoint to go through - /// The duration of the tween - /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) - /// The path mode: 3D, side-scroller 2D, top-down 2D - /// The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive. - /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints - /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) - public static TweenerCore DOLocalPath( - this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear, - PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null - ) - { - if (resolution < 1) resolution = 1; - Transform trans = target.transform; - TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path, resolution, gizmoColor), duration) - .SetTarget(target).SetUpdate(UpdateType.Fixed); - - t.plugOptions.isRigidbody = true; - t.plugOptions.mode = pathMode; - t.plugOptions.useLocalPosition = true; - return t; - } - // Used by path editor when creating the actual tween, so it can pass a pre-compiled path - internal static TweenerCore DOPath( - this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D - ) - { - TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, path, duration) - .SetTarget(target); - - t.plugOptions.isRigidbody = true; - t.plugOptions.mode = pathMode; - return t; - } - internal static TweenerCore DOLocalPath( - this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D - ) - { - Transform trans = target.transform; - TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration) - .SetTarget(target); - - t.plugOptions.isRigidbody = true; - t.plugOptions.mode = pathMode; - t.plugOptions.useLocalPosition = true; - return t; - } - - #endregion - - #endregion - - #endregion - } -} -#endif +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true // MODULE_MARKER +using System; +using DG.Tweening.Core; +using DG.Tweening.Core.Enums; +using DG.Tweening.Plugins; +using DG.Tweening.Plugins.Core.PathCore; +using DG.Tweening.Plugins.Options; +using UnityEngine; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModulePhysics + { + #region Shortcuts + + #region Rigidbody + + /// Tweens a Rigidbody's position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMove(this Rigidbody target, Vector3 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's X position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveX(this Rigidbody target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's Y position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveY(this Rigidbody target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's Z position to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveZ(this Rigidbody target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody's rotation to the given value. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// Rotation mode + public static TweenerCore DORotate(this Rigidbody target, Vector3 endValue, float duration, RotateMode mode = RotateMode.Fast) + { + TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration); + t.SetTarget(target); + t.plugOptions.rotateMode = mode; + return t; + } + + /// Tweens a Rigidbody's rotation so that it will look towards the given position. + /// Also stores the rigidbody as the tween's target so it can be used for filtered operations + /// The position to look atThe duration of the tween + /// Eventual axis constraint for the rotation + /// The vector that defines in which direction up is (default: Vector3.up) + public static TweenerCore DOLookAt(this Rigidbody target, Vector3 towards, float duration, AxisConstraint axisConstraint = AxisConstraint.None, Vector3? up = null) + { + TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, towards, duration) + .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetLookAt); + t.plugOptions.axisConstraint = axisConstraint; + t.plugOptions.up = (up == null) ? Vector3.up : (Vector3)up; + return t; + } + + #region Special + + /// Tweens a Rigidbody's position to the given value, while also applying a jump effect along the Y axis. + /// Returns a Sequence instead of a Tweener. + /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations + /// The end value to reach + /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) + /// Total number of jumps + /// The duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Sequence DOJump(this Rigidbody target, Vector3 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) + { + if (numJumps < 1) numJumps = 1; + float startPosY = 0; + float offsetY = -1; + bool offsetYSet = false; + Sequence s = DOTween.Sequence(); + Tween yTween = DOTween.To(() => target.position, target.MovePosition, new Vector3(0, jumpPower, 0), duration / (numJumps * 2)) + .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() + .SetLoops(numJumps * 2, LoopType.Yoyo) + .OnStart(() => startPosY = target.position.y); + s.Append(DOTween.To(() => target.position, target.MovePosition, new Vector3(endValue.x, 0, 0), duration) + .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) + ).Join(DOTween.To(() => target.position, target.MovePosition, new Vector3(0, 0, endValue.z), duration) + .SetOptions(AxisConstraint.Z, snapping).SetEase(Ease.Linear) + ).Join(yTween) + .SetTarget(target).SetEase(DOTween.defaultEaseType); + yTween.OnUpdate(() => { + if (!offsetYSet) { + offsetYSet = true; + offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; + } + Vector3 pos = target.position; + pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad); + target.MovePosition(pos); + }); + return s; + } + + /// Tweens a Rigidbody's position through the given path waypoints, using the chosen path algorithm. + /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations. + /// NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened. + /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). + /// If you plan to publish there you should use a regular transform.DOPath. + /// The waypoints to go through + /// The duration of the tween + /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) + /// The path mode: 3D, side-scroller 2D, top-down 2D + /// The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive. + /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) + public static TweenerCore DOPath( + this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear, + PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null + ) + { + if (resolution < 1) resolution = 1; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, new Path(pathType, path, resolution, gizmoColor), duration) + .SetTarget(target).SetUpdate(UpdateType.Fixed); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + return t; + } + /// Tweens a Rigidbody's localPosition through the given path waypoints, using the chosen path algorithm. + /// Also stores the Rigidbody as the tween's target so it can be used for filtered operations + /// NOTE: to tween a rigidbody correctly it should be set to kinematic at least while being tweened. + /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). + /// If you plan to publish there you should use a regular transform.DOLocalPath. + /// The waypoint to go through + /// The duration of the tween + /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) + /// The path mode: 3D, side-scroller 2D, top-down 2D + /// The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive. + /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) + public static TweenerCore DOLocalPath( + this Rigidbody target, Vector3[] path, float duration, PathType pathType = PathType.Linear, + PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null + ) + { + if (resolution < 1) resolution = 1; + Transform trans = target.transform; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path, resolution, gizmoColor), duration) + .SetTarget(target).SetUpdate(UpdateType.Fixed); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + t.plugOptions.useLocalPosition = true; + return t; + } + // Used by path editor when creating the actual tween, so it can pass a pre-compiled path + internal static TweenerCore DOPath( + this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D + ) + { + TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, target.MovePosition, path, duration) + .SetTarget(target); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + return t; + } + internal static TweenerCore DOLocalPath( + this Rigidbody target, Path path, float duration, PathMode pathMode = PathMode.Full3D + ) + { + Transform trans = target.transform; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration) + .SetTarget(target); + + t.plugOptions.isRigidbody = true; + t.plugOptions.mode = pathMode; + t.plugOptions.useLocalPosition = true; + return t; + } + + #endregion + + #endregion + + #endregion + } +} +#endif diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs index c40008580..d01f72891 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs @@ -1,193 +1,193 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -#if true && (UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER -using System; -using DG.Tweening.Core; -using DG.Tweening.Plugins; -using DG.Tweening.Plugins.Core.PathCore; -using DG.Tweening.Plugins.Options; -using UnityEngine; - -#pragma warning disable 1591 -namespace DG.Tweening -{ - public static class DOTweenModulePhysics2D - { - #region Shortcuts - - #region Rigidbody2D Shortcuts - - /// Tweens a Rigidbody2D's position to the given value. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMove(this Rigidbody2D target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody2D's X position to the given value. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMoveX(this Rigidbody2D target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector2(endValue, 0), duration); - t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody2D's Y position to the given value. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMoveY(this Rigidbody2D target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector2(0, endValue), duration); - t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); - return t; - } - - /// Tweens a Rigidbody2D's rotation to the given value. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DORotate(this Rigidbody2D target, float endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration); - t.SetTarget(target); - return t; - } - - #region Special - - /// Tweens a Rigidbody2D's position to the given value, while also applying a jump effect along the Y axis. - /// Returns a Sequence instead of a Tweener. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations. - /// IMPORTANT: a rigidbody2D can't be animated in a jump arc using MovePosition, so the tween will directly set the position - /// The end value to reach - /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) - /// Total number of jumps - /// The duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static Sequence DOJump(this Rigidbody2D target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) - { - if (numJumps < 1) numJumps = 1; - float startPosY = 0; - float offsetY = -1; - bool offsetYSet = false; - Sequence s = DOTween.Sequence(); - Tween yTween = DOTween.To(() => target.position, x => target.position = x, new Vector2(0, jumpPower), duration / (numJumps * 2)) - .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() - .SetLoops(numJumps * 2, LoopType.Yoyo) - .OnStart(() => startPosY = target.position.y); - s.Append(DOTween.To(() => target.position, x => target.position = x, new Vector2(endValue.x, 0), duration) - .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) - ).Join(yTween) - .SetTarget(target).SetEase(DOTween.defaultEaseType); - yTween.OnUpdate(() => { - if (!offsetYSet) { - offsetYSet = true; - offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; - } - Vector3 pos = target.position; - pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad); - target.MovePosition(pos); - }); - return s; - } - - /// Tweens a Rigidbody2D's position through the given path waypoints, using the chosen path algorithm. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations. - /// NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened. - /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). - /// If you plan to publish there you should use a regular transform.DOPath. - /// The waypoints to go through - /// The duration of the tween - /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) - /// The path mode: 3D, side-scroller 2D, top-down 2D - /// The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive. - /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints - /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) - public static TweenerCore DOPath( - this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear, - PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null - ) - { - if (resolution < 1) resolution = 1; - int len = path.Length; - Vector3[] path3D = new Vector3[len]; - for (int i = 0; i < len; ++i) path3D[i] = path[i]; - TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), new Path(pathType, path3D, resolution, gizmoColor), duration) - .SetTarget(target).SetUpdate(UpdateType.Fixed); - - t.plugOptions.isRigidbody2D = true; - t.plugOptions.mode = pathMode; - return t; - } - /// Tweens a Rigidbody2D's localPosition through the given path waypoints, using the chosen path algorithm. - /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations - /// NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened. - /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). - /// If you plan to publish there you should use a regular transform.DOLocalPath. - /// The waypoint to go through - /// The duration of the tween - /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) - /// The path mode: 3D, side-scroller 2D, top-down 2D - /// The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive. - /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints - /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) - public static TweenerCore DOLocalPath( - this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear, - PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null - ) - { - if (resolution < 1) resolution = 1; - int len = path.Length; - Vector3[] path3D = new Vector3[len]; - for (int i = 0; i < len; ++i) path3D[i] = path[i]; - Transform trans = target.transform; - TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path3D, resolution, gizmoColor), duration) - .SetTarget(target).SetUpdate(UpdateType.Fixed); - - t.plugOptions.isRigidbody2D = true; - t.plugOptions.mode = pathMode; - t.plugOptions.useLocalPosition = true; - return t; - } - // Used by path editor when creating the actual tween, so it can pass a pre-compiled path - internal static TweenerCore DOPath( - this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D - ) - { - TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), path, duration) - .SetTarget(target); - - t.plugOptions.isRigidbody2D = true; - t.plugOptions.mode = pathMode; - return t; - } - internal static TweenerCore DOLocalPath( - this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D - ) - { - Transform trans = target.transform; - TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration) - .SetTarget(target); - - t.plugOptions.isRigidbody2D = true; - t.plugOptions.mode = pathMode; - t.plugOptions.useLocalPosition = true; - return t; - } - - #endregion - - #endregion - - #endregion - } -} -#endif +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true && (UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER +using System; +using DG.Tweening.Core; +using DG.Tweening.Plugins; +using DG.Tweening.Plugins.Core.PathCore; +using DG.Tweening.Plugins.Options; +using UnityEngine; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModulePhysics2D + { + #region Shortcuts + + #region Rigidbody2D Shortcuts + + /// Tweens a Rigidbody2D's position to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMove(this Rigidbody2D target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody2D's X position to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveX(this Rigidbody2D target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody2D's Y position to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMoveY(this Rigidbody2D target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.position, target.MovePosition, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + + /// Tweens a Rigidbody2D's rotation to the given value. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DORotate(this Rigidbody2D target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.rotation, target.MoveRotation, endValue, duration); + t.SetTarget(target); + return t; + } + + #region Special + + /// Tweens a Rigidbody2D's position to the given value, while also applying a jump effect along the Y axis. + /// Returns a Sequence instead of a Tweener. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations. + /// IMPORTANT: a rigidbody2D can't be animated in a jump arc using MovePosition, so the tween will directly set the position + /// The end value to reach + /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) + /// Total number of jumps + /// The duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Sequence DOJump(this Rigidbody2D target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) + { + if (numJumps < 1) numJumps = 1; + float startPosY = 0; + float offsetY = -1; + bool offsetYSet = false; + Sequence s = DOTween.Sequence(); + Tween yTween = DOTween.To(() => target.position, x => target.position = x, new Vector2(0, jumpPower), duration / (numJumps * 2)) + .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() + .SetLoops(numJumps * 2, LoopType.Yoyo) + .OnStart(() => startPosY = target.position.y); + s.Append(DOTween.To(() => target.position, x => target.position = x, new Vector2(endValue.x, 0), duration) + .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) + ).Join(yTween) + .SetTarget(target).SetEase(DOTween.defaultEaseType); + yTween.OnUpdate(() => { + if (!offsetYSet) { + offsetYSet = true; + offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; + } + Vector3 pos = target.position; + pos.y += DOVirtual.EasedValue(0, offsetY, yTween.ElapsedPercentage(), Ease.OutQuad); + target.MovePosition(pos); + }); + return s; + } + + /// Tweens a Rigidbody2D's position through the given path waypoints, using the chosen path algorithm. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations. + /// NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened. + /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). + /// If you plan to publish there you should use a regular transform.DOPath. + /// The waypoints to go through + /// The duration of the tween + /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) + /// The path mode: 3D, side-scroller 2D, top-down 2D + /// The resolution of the path (useless in case of Linear paths): higher resolutions make for more detailed curved paths but are more expensive. + /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) + public static TweenerCore DOPath( + this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear, + PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null + ) + { + if (resolution < 1) resolution = 1; + int len = path.Length; + Vector3[] path3D = new Vector3[len]; + for (int i = 0; i < len; ++i) path3D[i] = path[i]; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), new Path(pathType, path3D, resolution, gizmoColor), duration) + .SetTarget(target).SetUpdate(UpdateType.Fixed); + + t.plugOptions.isRigidbody2D = true; + t.plugOptions.mode = pathMode; + return t; + } + /// Tweens a Rigidbody2D's localPosition through the given path waypoints, using the chosen path algorithm. + /// Also stores the Rigidbody2D as the tween's target so it can be used for filtered operations + /// NOTE: to tween a Rigidbody2D correctly it should be set to kinematic at least while being tweened. + /// BEWARE: doesn't work on Windows Phone store (waiting for Unity to fix their own bug). + /// If you plan to publish there you should use a regular transform.DOLocalPath. + /// The waypoint to go through + /// The duration of the tween + /// The type of path: Linear (straight path), CatmullRom (curved CatmullRom path) or CubicBezier (curved with control points) + /// The path mode: 3D, side-scroller 2D, top-down 2D + /// The resolution of the path: higher resolutions make for more detailed curved paths but are more expensive. + /// Defaults to 10, but a value of 5 is usually enough if you don't have dramatic long curves between waypoints + /// The color of the path (shown when gizmos are active in the Play panel and the tween is running) + public static TweenerCore DOLocalPath( + this Rigidbody2D target, Vector2[] path, float duration, PathType pathType = PathType.Linear, + PathMode pathMode = PathMode.Full3D, int resolution = 10, Color? gizmoColor = null + ) + { + if (resolution < 1) resolution = 1; + int len = path.Length; + Vector3[] path3D = new Vector3[len]; + for (int i = 0; i < len; ++i) path3D[i] = path[i]; + Transform trans = target.transform; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), new Path(pathType, path3D, resolution, gizmoColor), duration) + .SetTarget(target).SetUpdate(UpdateType.Fixed); + + t.plugOptions.isRigidbody2D = true; + t.plugOptions.mode = pathMode; + t.plugOptions.useLocalPosition = true; + return t; + } + // Used by path editor when creating the actual tween, so it can pass a pre-compiled path + internal static TweenerCore DOPath( + this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D + ) + { + TweenerCore t = DOTween.To(PathPlugin.Get(), () => target.position, x => target.MovePosition(x), path, duration) + .SetTarget(target); + + t.plugOptions.isRigidbody2D = true; + t.plugOptions.mode = pathMode; + return t; + } + internal static TweenerCore DOLocalPath( + this Rigidbody2D target, Path path, float duration, PathMode pathMode = PathMode.Full3D + ) + { + Transform trans = target.transform; + TweenerCore t = DOTween.To(PathPlugin.Get(), () => trans.localPosition, x => target.MovePosition(trans.parent == null ? x : trans.parent.TransformPoint(x)), path, duration) + .SetTarget(target); + + t.plugOptions.isRigidbody2D = true; + t.plugOptions.mode = pathMode; + t.plugOptions.useLocalPosition = true; + return t; + } + + #endregion + + #endregion + + #endregion + } +} +#endif diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs index cd31a6475..549fff39f 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs @@ -1,93 +1,93 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -#if true && (UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER -using System; -using UnityEngine; -using DG.Tweening.Core; -using DG.Tweening.Plugins.Options; - -#pragma warning disable 1591 -namespace DG.Tweening -{ - public static class DOTweenModuleSprite - { - #region Shortcuts - - #region SpriteRenderer - - /// Tweens a SpriteRenderer's color to the given value. - /// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOColor(this SpriteRenderer target, Color endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a Material's alpha color to the given value. - /// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOFade(this SpriteRenderer target, float endValue, float duration) - { - TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a SpriteRenderer's color using the given gradient - /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The gradient to useThe duration of the tween - public static Sequence DOGradientColor(this SpriteRenderer target, Gradient gradient, float duration) - { - Sequence s = DOTween.Sequence(); - GradientColorKey[] colors = gradient.colorKeys; - int len = colors.Length; - for (int i = 0; i < len; ++i) { - GradientColorKey c = colors[i]; - if (i == 0 && c.time <= 0) { - target.color = c.color; - continue; - } - float colorDuration = i == len - 1 - ? duration - s.Duration(false) // Verifies that total duration is correct - : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); - s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); - } - s.SetTarget(target); - return s; - } - - #endregion - - #region Blendables - - #region SpriteRenderer - - /// Tweens a SpriteRenderer's color to the given value, - /// in a way that allows other DOBlendableColor tweens to work together on the same target, - /// instead than fight each other as multiple DOColor would do. - /// Also stores the SpriteRenderer as the tween's target so it can be used for filtered operations - /// The value to tween toThe duration of the tween - public static Tweener DOBlendableColor(this SpriteRenderer target, Color endValue, float duration) - { - endValue = endValue - target.color; - Color to = new Color(0, 0, 0, 0); - return DOTween.To(() => to, x => { - Color diff = x - to; - to = x; - target.color += diff; - }, endValue, duration) - .Blendable().SetTarget(target); - } - - #endregion - - #endregion - - #endregion - } -} -#endif +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true && (UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER +using System; +using UnityEngine; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModuleSprite + { + #region Shortcuts + + #region SpriteRenderer + + /// Tweens a SpriteRenderer's color to the given value. + /// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this SpriteRenderer target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Material's alpha color to the given value. + /// Also stores the spriteRenderer as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this SpriteRenderer target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a SpriteRenderer's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this SpriteRenderer target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #region Blendables + + #region SpriteRenderer + + /// Tweens a SpriteRenderer's color to the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the SpriteRenderer as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this SpriteRenderer target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #endregion + + #endregion + } +} +#endif diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUI.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUI.cs index bfe32957b..dc24ebf02 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUI.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUI.cs @@ -1,660 +1,660 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -#if true && (UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER - -using System; -using System.Globalization; -using UnityEngine; -using UnityEngine.UI; -using DG.Tweening.Core; -using DG.Tweening.Core.Enums; -using DG.Tweening.Plugins; -using DG.Tweening.Plugins.Options; -using Outline = UnityEngine.UI.Outline; -using Text = UnityEngine.UI.Text; - -#pragma warning disable 1591 -namespace DG.Tweening -{ - public static class DOTweenModuleUI - { - #region Shortcuts - - #region CanvasGroup - - /// Tweens a CanvasGroup's alpha color to the given value. - /// Also stores the canvasGroup as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOFade(this CanvasGroup target, float endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.alpha, x => target.alpha = x, endValue, duration); - t.SetTarget(target); - return t; - } - - #endregion - - #region Graphic - - /// Tweens an Graphic's color to the given value. - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOColor(this Graphic target, Color endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens an Graphic's alpha color to the given value. - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOFade(this Graphic target, float endValue, float duration) - { - TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - #endregion - - #region Image - - /// Tweens an Image's color to the given value. - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOColor(this Image target, Color endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens an Image's alpha color to the given value. - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOFade(this Image target, float endValue, float duration) - { - TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens an Image's fillAmount to the given value. - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The end value to reach (0 to 1)The duration of the tween - public static TweenerCore DOFillAmount(this Image target, float endValue, float duration) - { - if (endValue > 1) endValue = 1; - else if (endValue < 0) endValue = 0; - TweenerCore t = DOTween.To(() => target.fillAmount, x => target.fillAmount = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens an Image's colors using the given gradient - /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The gradient to useThe duration of the tween - public static Sequence DOGradientColor(this Image target, Gradient gradient, float duration) - { - Sequence s = DOTween.Sequence(); - GradientColorKey[] colors = gradient.colorKeys; - int len = colors.Length; - for (int i = 0; i < len; ++i) { - GradientColorKey c = colors[i]; - if (i == 0 && c.time <= 0) { - target.color = c.color; - continue; - } - float colorDuration = i == len - 1 - ? duration - s.Duration(false) // Verifies that total duration is correct - : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); - s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); - } - s.SetTarget(target); - return s; - } - - #endregion - - #region LayoutElement - - /// Tweens an LayoutElement's flexibleWidth/Height to the given value. - /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOFlexibleSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => new Vector2(target.flexibleWidth, target.flexibleHeight), x => { - target.flexibleWidth = x.x; - target.flexibleHeight = x.y; - }, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Tweens an LayoutElement's minWidth/Height to the given value. - /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOMinSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => new Vector2(target.minWidth, target.minHeight), x => { - target.minWidth = x.x; - target.minHeight = x.y; - }, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Tweens an LayoutElement's preferredWidth/Height to the given value. - /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOPreferredSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => new Vector2(target.preferredWidth, target.preferredHeight), x => { - target.preferredWidth = x.x; - target.preferredHeight = x.y; - }, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - #endregion - - #region Outline - - /// Tweens a Outline's effectColor to the given value. - /// Also stores the Outline as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOColor(this Outline target, Color endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.effectColor, x => target.effectColor = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a Outline's effectColor alpha to the given value. - /// Also stores the Outline as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOFade(this Outline target, float endValue, float duration) - { - TweenerCore t = DOTween.ToAlpha(() => target.effectColor, x => target.effectColor = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a Outline's effectDistance to the given value. - /// Also stores the Outline as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOScale(this Outline target, Vector2 endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.effectDistance, x => target.effectDistance = x, endValue, duration); - t.SetTarget(target); - return t; - } - - #endregion - - #region RectTransform - - /// Tweens a RectTransform's anchoredPosition to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPos(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - /// Tweens a RectTransform's anchoredPosition X to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPosX(this RectTransform target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(endValue, 0), duration); - t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); - return t; - } - /// Tweens a RectTransform's anchoredPosition Y to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPosY(this RectTransform target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(0, endValue), duration); - t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); - return t; - } - - /// Tweens a RectTransform's anchoredPosition3D to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPos3D(this RectTransform target, Vector3 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - /// Tweens a RectTransform's anchoredPosition3D X to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPos3DX(this RectTransform target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(endValue, 0, 0), duration); - t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); - return t; - } - /// Tweens a RectTransform's anchoredPosition3D Y to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPos3DY(this RectTransform target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(0, endValue, 0), duration); - t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); - return t; - } - /// Tweens a RectTransform's anchoredPosition3D Z to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorPos3DZ(this RectTransform target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(0, 0, endValue), duration); - t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target); - return t; - } - - /// Tweens a RectTransform's anchorMax to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorMax(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchorMax, x => target.anchorMax = x, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Tweens a RectTransform's anchorMin to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOAnchorMin(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.anchorMin, x => target.anchorMin = x, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Tweens a RectTransform's pivot to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOPivot(this RectTransform target, Vector2 endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, endValue, duration); - t.SetTarget(target); - return t; - } - /// Tweens a RectTransform's pivot X to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOPivotX(this RectTransform target, float endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, new Vector2(endValue, 0), duration); - t.SetOptions(AxisConstraint.X).SetTarget(target); - return t; - } - /// Tweens a RectTransform's pivot Y to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOPivotY(this RectTransform target, float endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, new Vector2(0, endValue), duration); - t.SetOptions(AxisConstraint.Y).SetTarget(target); - return t; - } - - /// Tweens a RectTransform's sizeDelta to the given value. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOSizeDelta(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.sizeDelta, x => target.sizeDelta = x, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - /// Punches a RectTransform's anchoredPosition towards the given direction and then back to the starting one - /// as if it was connected to the starting position via an elastic. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The direction and strength of the punch (added to the RectTransform's current position) - /// The duration of the tween - /// Indicates how much will the punch vibrate - /// Represents how much (0 to 1) the vector will go beyond the starting position when bouncing backwards. - /// 1 creates a full oscillation between the punch direction and the opposite direction, - /// while 0 oscillates only between the punch and the start position - /// If TRUE the tween will smoothly snap all values to integers - public static Tweener DOPunchAnchorPos(this RectTransform target, Vector2 punch, float duration, int vibrato = 10, float elasticity = 1, bool snapping = false) - { - return DOTween.Punch(() => target.anchoredPosition, x => target.anchoredPosition = x, punch, duration, vibrato, elasticity) - .SetTarget(target).SetOptions(snapping); - } - - /// Shakes a RectTransform's anchoredPosition with the given values. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The duration of the tween - /// The shake strength - /// Indicates how much will the shake vibrate - /// Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). - /// Setting it to 0 will shake along a single direction. - /// If TRUE the tween will smoothly snap all values to integers - /// If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not - public static Tweener DOShakeAnchorPos(this RectTransform target, float duration, float strength = 100, int vibrato = 10, float randomness = 90, bool snapping = false, bool fadeOut = true) - { - return DOTween.Shake(() => target.anchoredPosition, x => target.anchoredPosition = x, duration, strength, vibrato, randomness, true, fadeOut) - .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetShake).SetOptions(snapping); - } - /// Shakes a RectTransform's anchoredPosition with the given values. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The duration of the tween - /// The shake strength on each axis - /// Indicates how much will the shake vibrate - /// Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). - /// Setting it to 0 will shake along a single direction. - /// If TRUE the tween will smoothly snap all values to integers - /// If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not - public static Tweener DOShakeAnchorPos(this RectTransform target, float duration, Vector2 strength, int vibrato = 10, float randomness = 90, bool snapping = false, bool fadeOut = true) - { - return DOTween.Shake(() => target.anchoredPosition, x => target.anchoredPosition = x, duration, strength, vibrato, randomness, fadeOut) - .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetShake).SetOptions(snapping); - } - - #region Special - - /// Tweens a RectTransform's anchoredPosition to the given value, while also applying a jump effect along the Y axis. - /// Returns a Sequence instead of a Tweener. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations - /// The end value to reach - /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) - /// Total number of jumps - /// The duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static Sequence DOJumpAnchorPos(this RectTransform target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) - { - if (numJumps < 1) numJumps = 1; - float startPosY = 0; - float offsetY = -1; - bool offsetYSet = false; - - // Separate Y Tween so we can elaborate elapsedPercentage on that insted of on the Sequence - // (in case users add a delay or other elements to the Sequence) - Sequence s = DOTween.Sequence(); - Tween yTween = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(0, jumpPower), duration / (numJumps * 2)) - .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() - .SetLoops(numJumps * 2, LoopType.Yoyo) - .OnStart(()=> startPosY = target.anchoredPosition.y); - s.Append(DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(endValue.x, 0), duration) - .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) - ).Join(yTween) - .SetTarget(target).SetEase(DOTween.defaultEaseType); - s.OnUpdate(() => { - if (!offsetYSet) { - offsetYSet = true; - offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; - } - Vector2 pos = target.anchoredPosition; - pos.y += DOVirtual.EasedValue(0, offsetY, s.ElapsedDirectionalPercentage(), Ease.OutQuad); - target.anchoredPosition = pos; - }); - return s; - } - - #endregion - - #endregion - - #region ScrollRect - - /// Tweens a ScrollRect's horizontal/verticalNormalizedPosition to the given value. - /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static Tweener DONormalizedPos(this ScrollRect target, Vector2 endValue, float duration, bool snapping = false) - { - return DOTween.To(() => new Vector2(target.horizontalNormalizedPosition, target.verticalNormalizedPosition), - x => { - target.horizontalNormalizedPosition = x.x; - target.verticalNormalizedPosition = x.y; - }, endValue, duration) - .SetOptions(snapping).SetTarget(target); - } - /// Tweens a ScrollRect's horizontalNormalizedPosition to the given value. - /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static Tweener DOHorizontalNormalizedPos(this ScrollRect target, float endValue, float duration, bool snapping = false) - { - return DOTween.To(() => target.horizontalNormalizedPosition, x => target.horizontalNormalizedPosition = x, endValue, duration) - .SetOptions(snapping).SetTarget(target); - } - /// Tweens a ScrollRect's verticalNormalizedPosition to the given value. - /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static Tweener DOVerticalNormalizedPos(this ScrollRect target, float endValue, float duration, bool snapping = false) - { - return DOTween.To(() => target.verticalNormalizedPosition, x => target.verticalNormalizedPosition = x, endValue, duration) - .SetOptions(snapping).SetTarget(target); - } - - #endregion - - #region Slider - - /// Tweens a Slider's value to the given value. - /// Also stores the Slider as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOValue(this Slider target, float endValue, float duration, bool snapping = false) - { - TweenerCore t = DOTween.To(() => target.value, x => target.value = x, endValue, duration); - t.SetOptions(snapping).SetTarget(target); - return t; - } - - #endregion - - #region Text - - /// Tweens a Text's color to the given value. - /// Also stores the Text as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOColor(this Text target, Color endValue, float duration) - { - TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// - /// Tweens a Text's text from one integer to another, with options for thousands separators - /// - /// The value to start from - /// The end value to reach - /// The duration of the tween - /// If TRUE (default) also adds thousands separators - /// The to use (InvariantCulture if NULL) - public static TweenerCore DOCounter( - this Text target, int fromValue, int endValue, float duration, bool addThousandsSeparator = true, CultureInfo culture = null - ){ - int v = fromValue; - CultureInfo cInfo = !addThousandsSeparator ? null : culture ?? CultureInfo.InvariantCulture; - TweenerCore t = DOTween.To(() => v, x => { - v = x; - target.text = addThousandsSeparator - ? v.ToString("N0", cInfo) - : v.ToString(); - }, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a Text's alpha color to the given value. - /// Also stores the Text as the tween's target so it can be used for filtered operations - /// The end value to reachThe duration of the tween - public static TweenerCore DOFade(this Text target, float endValue, float duration) - { - TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a Text's text to the given value. - /// Also stores the Text as the tween's target so it can be used for filtered operations - /// The end string to tween toThe duration of the tween - /// If TRUE (default), rich text will be interpreted correctly while animated, - /// otherwise all tags will be considered as normal text - /// The type of scramble mode to use, if any - /// A string containing the characters to use for scrambling. - /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. - /// Leave it to NULL (default) to use default ones - public static TweenerCore DOText(this Text target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) - { - if (endValue == null) { - if (Debugger.logPriority > 0) Debugger.LogWarning("You can't pass a NULL string to DOText: an empty string will be used instead to avoid errors"); - endValue = ""; - } - TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); - t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) - .SetTarget(target); - return t; - } - - #endregion - - #region Blendables - - #region Graphic - - /// Tweens a Graphic's color to the given value, - /// in a way that allows other DOBlendableColor tweens to work together on the same target, - /// instead than fight each other as multiple DOColor would do. - /// Also stores the Graphic as the tween's target so it can be used for filtered operations - /// The value to tween toThe duration of the tween - public static Tweener DOBlendableColor(this Graphic target, Color endValue, float duration) - { - endValue = endValue - target.color; - Color to = new Color(0, 0, 0, 0); - return DOTween.To(() => to, x => { - Color diff = x - to; - to = x; - target.color += diff; - }, endValue, duration) - .Blendable().SetTarget(target); - } - - #endregion - - #region Image - - /// Tweens a Image's color to the given value, - /// in a way that allows other DOBlendableColor tweens to work together on the same target, - /// instead than fight each other as multiple DOColor would do. - /// Also stores the Image as the tween's target so it can be used for filtered operations - /// The value to tween toThe duration of the tween - public static Tweener DOBlendableColor(this Image target, Color endValue, float duration) - { - endValue = endValue - target.color; - Color to = new Color(0, 0, 0, 0); - return DOTween.To(() => to, x => { - Color diff = x - to; - to = x; - target.color += diff; - }, endValue, duration) - .Blendable().SetTarget(target); - } - - #endregion - - #region Text - - /// Tweens a Text's color BY the given value, - /// in a way that allows other DOBlendableColor tweens to work together on the same target, - /// instead than fight each other as multiple DOColor would do. - /// Also stores the Text as the tween's target so it can be used for filtered operations - /// The value to tween toThe duration of the tween - public static Tweener DOBlendableColor(this Text target, Color endValue, float duration) - { - endValue = endValue - target.color; - Color to = new Color(0, 0, 0, 0); - return DOTween.To(() => to, x => { - Color diff = x - to; - to = x; - target.color += diff; - }, endValue, duration) - .Blendable().SetTarget(target); - } - - #endregion - - #endregion - - #region Shapes - - /// Tweens a RectTransform's anchoredPosition so that it draws a circle around the given center. - /// Also stores the RectTransform as the tween's target so it can be used for filtered operations. - /// IMPORTANT: SetFrom(value) requires a instead of a float, where the X property represents the "from degrees value" - /// Circle-center/pivot around which to rotate (in UI anchoredPosition coordinates) - /// The end value degrees to reach (to rotate counter-clockwise pass a negative value) - /// The duration of the tween - /// If TRUE the coordinates will be considered as relative to the target's current anchoredPosition - /// If TRUE the tween will smoothly snap all values to integers - public static TweenerCore DOShapeCircle( - this RectTransform target, Vector2 center, float endValueDegrees, float duration, bool relativeCenter = false, bool snapping = false - ) - { - TweenerCore t = DOTween.To( - CirclePlugin.Get(), () => target.anchoredPosition, x => target.anchoredPosition = x, center, duration - ); - t.SetOptions(endValueDegrees, relativeCenter, snapping).SetTarget(target); - return t; - } - - #endregion - - #endregion - - // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ - // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ - // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ - - public static class Utils - { - /// - /// Converts the anchoredPosition of the first RectTransform to the second RectTransform, - /// taking into consideration offset, anchors and pivot, and returns the new anchoredPosition - /// - public static Vector2 SwitchToRectTransform(RectTransform from, RectTransform to) - { - Vector2 localPoint; - Vector2 fromPivotDerivedOffset = new Vector2(from.rect.width * 0.5f + from.rect.xMin, from.rect.height * 0.5f + from.rect.yMin); - Vector2 screenP = RectTransformUtility.WorldToScreenPoint(null, from.position); - screenP += fromPivotDerivedOffset; - RectTransformUtility.ScreenPointToLocalPointInRectangle(to, screenP, null, out localPoint); - Vector2 pivotDerivedOffset = new Vector2(to.rect.width * 0.5f + to.rect.xMin, to.rect.height * 0.5f + to.rect.yMin); - return to.anchoredPosition + localPoint - pivotDerivedOffset; - } - } - } -} -#endif +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +#if true && (UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER) // MODULE_MARKER + +using System; +using System.Globalization; +using UnityEngine; +using UnityEngine.UI; +using DG.Tweening.Core; +using DG.Tweening.Core.Enums; +using DG.Tweening.Plugins; +using DG.Tweening.Plugins.Options; +using Outline = UnityEngine.UI.Outline; +using Text = UnityEngine.UI.Text; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + public static class DOTweenModuleUI + { + #region Shortcuts + + #region CanvasGroup + + /// Tweens a CanvasGroup's alpha color to the given value. + /// Also stores the canvasGroup as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this CanvasGroup target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.alpha, x => target.alpha = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region Graphic + + /// Tweens an Graphic's color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Graphic target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Graphic's alpha color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Graphic target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region Image + + /// Tweens an Image's color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Image target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Image's alpha color to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Image target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Image's fillAmount to the given value. + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The end value to reach (0 to 1)The duration of the tween + public static TweenerCore DOFillAmount(this Image target, float endValue, float duration) + { + if (endValue > 1) endValue = 1; + else if (endValue < 0) endValue = 0; + TweenerCore t = DOTween.To(() => target.fillAmount, x => target.fillAmount = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens an Image's colors using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this Image target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #region LayoutElement + + /// Tweens an LayoutElement's flexibleWidth/Height to the given value. + /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOFlexibleSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => new Vector2(target.flexibleWidth, target.flexibleHeight), x => { + target.flexibleWidth = x.x; + target.flexibleHeight = x.y; + }, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens an LayoutElement's minWidth/Height to the given value. + /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOMinSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => new Vector2(target.minWidth, target.minHeight), x => { + target.minWidth = x.x; + target.minHeight = x.y; + }, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens an LayoutElement's preferredWidth/Height to the given value. + /// Also stores the LayoutElement as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOPreferredSize(this LayoutElement target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => new Vector2(target.preferredWidth, target.preferredHeight), x => { + target.preferredWidth = x.x; + target.preferredHeight = x.y; + }, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + #endregion + + #region Outline + + /// Tweens a Outline's effectColor to the given value. + /// Also stores the Outline as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Outline target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.effectColor, x => target.effectColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Outline's effectColor alpha to the given value. + /// Also stores the Outline as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Outline target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.effectColor, x => target.effectColor = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Outline's effectDistance to the given value. + /// Also stores the Outline as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOScale(this Outline target, Vector2 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.effectDistance, x => target.effectDistance = x, endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region RectTransform + + /// Tweens a RectTransform's anchoredPosition to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition X to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPosX(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition Y to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPosY(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's anchoredPosition3D to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3D(this RectTransform target, Vector3 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition3D X to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3DX(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(endValue, 0, 0), duration); + t.SetOptions(AxisConstraint.X, snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition3D Y to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3DY(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(0, endValue, 0), duration); + t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target); + return t; + } + /// Tweens a RectTransform's anchoredPosition3D Z to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorPos3DZ(this RectTransform target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchoredPosition3D, x => target.anchoredPosition3D = x, new Vector3(0, 0, endValue), duration); + t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's anchorMax to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorMax(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchorMax, x => target.anchorMax = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's anchorMin to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOAnchorMin(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.anchorMin, x => target.anchorMin = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's pivot to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPivot(this RectTransform target, Vector2 endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, endValue, duration); + t.SetTarget(target); + return t; + } + /// Tweens a RectTransform's pivot X to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPivotX(this RectTransform target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, new Vector2(endValue, 0), duration); + t.SetOptions(AxisConstraint.X).SetTarget(target); + return t; + } + /// Tweens a RectTransform's pivot Y to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOPivotY(this RectTransform target, float endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.pivot, x => target.pivot = x, new Vector2(0, endValue), duration); + t.SetOptions(AxisConstraint.Y).SetTarget(target); + return t; + } + + /// Tweens a RectTransform's sizeDelta to the given value. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOSizeDelta(this RectTransform target, Vector2 endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.sizeDelta, x => target.sizeDelta = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + /// Punches a RectTransform's anchoredPosition towards the given direction and then back to the starting one + /// as if it was connected to the starting position via an elastic. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The direction and strength of the punch (added to the RectTransform's current position) + /// The duration of the tween + /// Indicates how much will the punch vibrate + /// Represents how much (0 to 1) the vector will go beyond the starting position when bouncing backwards. + /// 1 creates a full oscillation between the punch direction and the opposite direction, + /// while 0 oscillates only between the punch and the start position + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOPunchAnchorPos(this RectTransform target, Vector2 punch, float duration, int vibrato = 10, float elasticity = 1, bool snapping = false) + { + return DOTween.Punch(() => target.anchoredPosition, x => target.anchoredPosition = x, punch, duration, vibrato, elasticity) + .SetTarget(target).SetOptions(snapping); + } + + /// Shakes a RectTransform's anchoredPosition with the given values. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The duration of the tween + /// The shake strength + /// Indicates how much will the shake vibrate + /// Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + /// Setting it to 0 will shake along a single direction. + /// If TRUE the tween will smoothly snap all values to integers + /// If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + public static Tweener DOShakeAnchorPos(this RectTransform target, float duration, float strength = 100, int vibrato = 10, float randomness = 90, bool snapping = false, bool fadeOut = true) + { + return DOTween.Shake(() => target.anchoredPosition, x => target.anchoredPosition = x, duration, strength, vibrato, randomness, true, fadeOut) + .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetShake).SetOptions(snapping); + } + /// Shakes a RectTransform's anchoredPosition with the given values. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The duration of the tween + /// The shake strength on each axis + /// Indicates how much will the shake vibrate + /// Indicates how much the shake will be random (0 to 180 - values higher than 90 kind of suck, so beware). + /// Setting it to 0 will shake along a single direction. + /// If TRUE the tween will smoothly snap all values to integers + /// If TRUE the shake will automatically fadeOut smoothly within the tween's duration, otherwise it will not + public static Tweener DOShakeAnchorPos(this RectTransform target, float duration, Vector2 strength, int vibrato = 10, float randomness = 90, bool snapping = false, bool fadeOut = true) + { + return DOTween.Shake(() => target.anchoredPosition, x => target.anchoredPosition = x, duration, strength, vibrato, randomness, fadeOut) + .SetTarget(target).SetSpecialStartupMode(SpecialStartupMode.SetShake).SetOptions(snapping); + } + + #region Special + + /// Tweens a RectTransform's anchoredPosition to the given value, while also applying a jump effect along the Y axis. + /// Returns a Sequence instead of a Tweener. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations + /// The end value to reach + /// Power of the jump (the max height of the jump is represented by this plus the final Y offset) + /// Total number of jumps + /// The duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Sequence DOJumpAnchorPos(this RectTransform target, Vector2 endValue, float jumpPower, int numJumps, float duration, bool snapping = false) + { + if (numJumps < 1) numJumps = 1; + float startPosY = 0; + float offsetY = -1; + bool offsetYSet = false; + + // Separate Y Tween so we can elaborate elapsedPercentage on that insted of on the Sequence + // (in case users add a delay or other elements to the Sequence) + Sequence s = DOTween.Sequence(); + Tween yTween = DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(0, jumpPower), duration / (numJumps * 2)) + .SetOptions(AxisConstraint.Y, snapping).SetEase(Ease.OutQuad).SetRelative() + .SetLoops(numJumps * 2, LoopType.Yoyo) + .OnStart(()=> startPosY = target.anchoredPosition.y); + s.Append(DOTween.To(() => target.anchoredPosition, x => target.anchoredPosition = x, new Vector2(endValue.x, 0), duration) + .SetOptions(AxisConstraint.X, snapping).SetEase(Ease.Linear) + ).Join(yTween) + .SetTarget(target).SetEase(DOTween.defaultEaseType); + s.OnUpdate(() => { + if (!offsetYSet) { + offsetYSet = true; + offsetY = s.isRelative ? endValue.y : endValue.y - startPosY; + } + Vector2 pos = target.anchoredPosition; + pos.y += DOVirtual.EasedValue(0, offsetY, s.ElapsedDirectionalPercentage(), Ease.OutQuad); + target.anchoredPosition = pos; + }); + return s; + } + + #endregion + + #endregion + + #region ScrollRect + + /// Tweens a ScrollRect's horizontal/verticalNormalizedPosition to the given value. + /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DONormalizedPos(this ScrollRect target, Vector2 endValue, float duration, bool snapping = false) + { + return DOTween.To(() => new Vector2(target.horizontalNormalizedPosition, target.verticalNormalizedPosition), + x => { + target.horizontalNormalizedPosition = x.x; + target.verticalNormalizedPosition = x.y; + }, endValue, duration) + .SetOptions(snapping).SetTarget(target); + } + /// Tweens a ScrollRect's horizontalNormalizedPosition to the given value. + /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOHorizontalNormalizedPos(this ScrollRect target, float endValue, float duration, bool snapping = false) + { + return DOTween.To(() => target.horizontalNormalizedPosition, x => target.horizontalNormalizedPosition = x, endValue, duration) + .SetOptions(snapping).SetTarget(target); + } + /// Tweens a ScrollRect's verticalNormalizedPosition to the given value. + /// Also stores the ScrollRect as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static Tweener DOVerticalNormalizedPos(this ScrollRect target, float endValue, float duration, bool snapping = false) + { + return DOTween.To(() => target.verticalNormalizedPosition, x => target.verticalNormalizedPosition = x, endValue, duration) + .SetOptions(snapping).SetTarget(target); + } + + #endregion + + #region Slider + + /// Tweens a Slider's value to the given value. + /// Also stores the Slider as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOValue(this Slider target, float endValue, float duration, bool snapping = false) + { + TweenerCore t = DOTween.To(() => target.value, x => target.value = x, endValue, duration); + t.SetOptions(snapping).SetTarget(target); + return t; + } + + #endregion + + #region Text + + /// Tweens a Text's color to the given value. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOColor(this Text target, Color endValue, float duration) + { + TweenerCore t = DOTween.To(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// + /// Tweens a Text's text from one integer to another, with options for thousands separators + /// + /// The value to start from + /// The end value to reach + /// The duration of the tween + /// If TRUE (default) also adds thousands separators + /// The to use (InvariantCulture if NULL) + public static TweenerCore DOCounter( + this Text target, int fromValue, int endValue, float duration, bool addThousandsSeparator = true, CultureInfo culture = null + ){ + int v = fromValue; + CultureInfo cInfo = !addThousandsSeparator ? null : culture ?? CultureInfo.InvariantCulture; + TweenerCore t = DOTween.To(() => v, x => { + v = x; + target.text = addThousandsSeparator + ? v.ToString("N0", cInfo) + : v.ToString(); + }, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Text's alpha color to the given value. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The end value to reachThe duration of the tween + public static TweenerCore DOFade(this Text target, float endValue, float duration) + { + TweenerCore t = DOTween.ToAlpha(() => target.color, x => target.color = x, endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Text's text to the given value. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The end string to tween toThe duration of the tween + /// If TRUE (default), rich text will be interpreted correctly while animated, + /// otherwise all tags will be considered as normal text + /// The type of scramble mode to use, if any + /// A string containing the characters to use for scrambling. + /// Use as many characters as possible (minimum 10) because DOTween uses a fast scramble mode which gives better results with more characters. + /// Leave it to NULL (default) to use default ones + public static TweenerCore DOText(this Text target, string endValue, float duration, bool richTextEnabled = true, ScrambleMode scrambleMode = ScrambleMode.None, string scrambleChars = null) + { + if (endValue == null) { + if (Debugger.logPriority > 0) Debugger.LogWarning("You can't pass a NULL string to DOText: an empty string will be used instead to avoid errors"); + endValue = ""; + } + TweenerCore t = DOTween.To(() => target.text, x => target.text = x, endValue, duration); + t.SetOptions(richTextEnabled, scrambleMode, scrambleChars) + .SetTarget(target); + return t; + } + + #endregion + + #region Blendables + + #region Graphic + + /// Tweens a Graphic's color to the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the Graphic as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this Graphic target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #region Image + + /// Tweens a Image's color to the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the Image as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this Image target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #region Text + + /// Tweens a Text's color BY the given value, + /// in a way that allows other DOBlendableColor tweens to work together on the same target, + /// instead than fight each other as multiple DOColor would do. + /// Also stores the Text as the tween's target so it can be used for filtered operations + /// The value to tween toThe duration of the tween + public static Tweener DOBlendableColor(this Text target, Color endValue, float duration) + { + endValue = endValue - target.color; + Color to = new Color(0, 0, 0, 0); + return DOTween.To(() => to, x => { + Color diff = x - to; + to = x; + target.color += diff; + }, endValue, duration) + .Blendable().SetTarget(target); + } + + #endregion + + #endregion + + #region Shapes + + /// Tweens a RectTransform's anchoredPosition so that it draws a circle around the given center. + /// Also stores the RectTransform as the tween's target so it can be used for filtered operations. + /// IMPORTANT: SetFrom(value) requires a instead of a float, where the X property represents the "from degrees value" + /// Circle-center/pivot around which to rotate (in UI anchoredPosition coordinates) + /// The end value degrees to reach (to rotate counter-clockwise pass a negative value) + /// The duration of the tween + /// If TRUE the coordinates will be considered as relative to the target's current anchoredPosition + /// If TRUE the tween will smoothly snap all values to integers + public static TweenerCore DOShapeCircle( + this RectTransform target, Vector2 center, float endValueDegrees, float duration, bool relativeCenter = false, bool snapping = false + ) + { + TweenerCore t = DOTween.To( + CirclePlugin.Get(), () => target.anchoredPosition, x => target.anchoredPosition = x, center, duration + ); + t.SetOptions(endValueDegrees, relativeCenter, snapping).SetTarget(target); + return t; + } + + #endregion + + #endregion + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + + public static class Utils + { + /// + /// Converts the anchoredPosition of the first RectTransform to the second RectTransform, + /// taking into consideration offset, anchors and pivot, and returns the new anchoredPosition + /// + public static Vector2 SwitchToRectTransform(RectTransform from, RectTransform to) + { + Vector2 localPoint; + Vector2 fromPivotDerivedOffset = new Vector2(from.rect.width * 0.5f + from.rect.xMin, from.rect.height * 0.5f + from.rect.yMin); + Vector2 screenP = RectTransformUtility.WorldToScreenPoint(null, from.position); + screenP += fromPivotDerivedOffset; + RectTransformUtility.ScreenPointToLocalPointInRectangle(to, screenP, null, out localPoint); + Vector2 pivotDerivedOffset = new Vector2(to.rect.width * 0.5f + to.rect.xMin, to.rect.height * 0.5f + to.rect.yMin); + return to.anchoredPosition + localPoint - pivotDerivedOffset; + } + } + } +} +#endif diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs index 2ab7472eb..fa1ac05b0 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs @@ -1,403 +1,403 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -using System; -using UnityEngine; -using DG.Tweening.Core; -using DG.Tweening.Plugins.Options; -//#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0) -//using Task = System.Threading.Tasks.Task; -//#endif - -#pragma warning disable 1591 -namespace DG.Tweening -{ - /// - /// Shortcuts/functions that are not strictly related to specific Modules - /// but are available only on some Unity versions - /// - public static class DOTweenModuleUnityVersion - { -#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER - #region Unity 4.3 or Newer - - #region Material - - /// Tweens a Material's color using the given gradient - /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The gradient to useThe duration of the tween - public static Sequence DOGradientColor(this Material target, Gradient gradient, float duration) - { - Sequence s = DOTween.Sequence(); - GradientColorKey[] colors = gradient.colorKeys; - int len = colors.Length; - for (int i = 0; i < len; ++i) { - GradientColorKey c = colors[i]; - if (i == 0 && c.time <= 0) { - target.color = c.color; - continue; - } - float colorDuration = i == len - 1 - ? duration - s.Duration(false) // Verifies that total duration is correct - : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); - s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); - } - s.SetTarget(target); - return s; - } - /// Tweens a Material's named color property using the given gradient - /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). - /// Also stores the image as the tween's target so it can be used for filtered operations - /// The gradient to use - /// The name of the material property to tween (like _Tint or _SpecColor) - /// The duration of the tween - public static Sequence DOGradientColor(this Material target, Gradient gradient, string property, float duration) - { - Sequence s = DOTween.Sequence(); - GradientColorKey[] colors = gradient.colorKeys; - int len = colors.Length; - for (int i = 0; i < len; ++i) { - GradientColorKey c = colors[i]; - if (i == 0 && c.time <= 0) { - target.SetColor(property, c.color); - continue; - } - float colorDuration = i == len - 1 - ? duration - s.Duration(false) // Verifies that total duration is correct - : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); - s.Append(target.DOColor(c.color, property, colorDuration).SetEase(Ease.Linear)); - } - s.SetTarget(target); - return s; - } - - #endregion - - #endregion -#endif - -#if UNITY_5_3_OR_NEWER || UNITY_2017_1_OR_NEWER - #region Unity 5.3 or Newer - - #region CustomYieldInstructions - - /// - /// Returns a that waits until the tween is killed or complete. - /// It can be used inside a coroutine as a yield. - /// Example usage:yield return myTween.WaitForCompletion(true); - /// - public static CustomYieldInstruction WaitForCompletion(this Tween t, bool returnCustomYieldInstruction) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return null; - } - return new DOTweenCYInstruction.WaitForCompletion(t); - } - - /// - /// Returns a that waits until the tween is killed or rewinded. - /// It can be used inside a coroutine as a yield. - /// Example usage:yield return myTween.WaitForRewind(); - /// - public static CustomYieldInstruction WaitForRewind(this Tween t, bool returnCustomYieldInstruction) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return null; - } - return new DOTweenCYInstruction.WaitForRewind(t); - } - - /// - /// Returns a that waits until the tween is killed. - /// It can be used inside a coroutine as a yield. - /// Example usage:yield return myTween.WaitForKill(); - /// - public static CustomYieldInstruction WaitForKill(this Tween t, bool returnCustomYieldInstruction) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return null; - } - return new DOTweenCYInstruction.WaitForKill(t); - } - - /// - /// Returns a that waits until the tween is killed or has gone through the given amount of loops. - /// It can be used inside a coroutine as a yield. - /// Example usage:yield return myTween.WaitForElapsedLoops(2); - /// - /// Elapsed loops to wait for - public static CustomYieldInstruction WaitForElapsedLoops(this Tween t, int elapsedLoops, bool returnCustomYieldInstruction) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return null; - } - return new DOTweenCYInstruction.WaitForElapsedLoops(t, elapsedLoops); - } - - /// - /// Returns a that waits until the tween is killed - /// or has reached the given time position (loops included, delays excluded). - /// It can be used inside a coroutine as a yield. - /// Example usage:yield return myTween.WaitForPosition(2.5f); - /// - /// Position (loops included, delays excluded) to wait for - public static CustomYieldInstruction WaitForPosition(this Tween t, float position, bool returnCustomYieldInstruction) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return null; - } - return new DOTweenCYInstruction.WaitForPosition(t, position); - } - - /// - /// Returns a that waits until the tween is killed or started - /// (meaning when the tween is set in a playing state the first time, after any eventual delay). - /// It can be used inside a coroutine as a yield. - /// Example usage:yield return myTween.WaitForStart(); - /// - public static CustomYieldInstruction WaitForStart(this Tween t, bool returnCustomYieldInstruction) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return null; - } - return new DOTweenCYInstruction.WaitForStart(t); - } - - #endregion - - #endregion -#endif - -#if UNITY_2018_1_OR_NEWER - #region Unity 2018.1 or Newer - - #region Material - - /// Tweens a Material's named texture offset property with the given ID to the given value. - /// Also stores the material as the tween's target so it can be used for filtered operations - /// The end value to reach - /// The ID of the material property to tween (also called nameID in Unity's manual) - /// The duration of the tween - public static TweenerCore DOOffset(this Material target, Vector2 endValue, int propertyID, float duration) - { - if (!target.HasProperty(propertyID)) { - if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID); - return null; - } - TweenerCore t = DOTween.To(() => target.GetTextureOffset(propertyID), x => target.SetTextureOffset(propertyID, x), endValue, duration); - t.SetTarget(target); - return t; - } - - /// Tweens a Material's named texture scale property with the given ID to the given value. - /// Also stores the material as the tween's target so it can be used for filtered operations - /// The end value to reach - /// The ID of the material property to tween (also called nameID in Unity's manual) - /// The duration of the tween - public static TweenerCore DOTiling(this Material target, Vector2 endValue, int propertyID, float duration) - { - if (!target.HasProperty(propertyID)) { - if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID); - return null; - } - TweenerCore t = DOTween.To(() => target.GetTextureScale(propertyID), x => target.SetTextureScale(propertyID, x), endValue, duration); - t.SetTarget(target); - return t; - } - - #endregion - - #region .NET 4.6 or Newer - -#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0) - - #region Async Instructions - - /// - /// Returns an async that waits until the tween is killed or complete. - /// It can be used inside an async operation. - /// Example usage:await myTween.WaitForCompletion(); - /// - public static async System.Threading.Tasks.Task AsyncWaitForCompletion(this Tween t) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return; - } - while (t.active && !t.IsComplete()) await System.Threading.Tasks.Task.Yield(); - } - - /// - /// Returns an async that waits until the tween is killed or rewinded. - /// It can be used inside an async operation. - /// Example usage:await myTween.AsyncWaitForRewind(); - /// - public static async System.Threading.Tasks.Task AsyncWaitForRewind(this Tween t) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return; - } - while (t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0)) await System.Threading.Tasks.Task.Yield(); - } - - /// - /// Returns an async that waits until the tween is killed. - /// It can be used inside an async operation. - /// Example usage:await myTween.AsyncWaitForKill(); - /// - public static async System.Threading.Tasks.Task AsyncWaitForKill(this Tween t) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return; - } - while (t.active) await System.Threading.Tasks.Task.Yield(); - } - - /// - /// Returns an async that waits until the tween is killed or has gone through the given amount of loops. - /// It can be used inside an async operation. - /// Example usage:await myTween.AsyncWaitForElapsedLoops(); - /// - /// Elapsed loops to wait for - public static async System.Threading.Tasks.Task AsyncWaitForElapsedLoops(this Tween t, int elapsedLoops) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return; - } - while (t.active && t.CompletedLoops() < elapsedLoops) await System.Threading.Tasks.Task.Yield(); - } - - /// - /// Returns an async that waits until the tween is killed or started - /// (meaning when the tween is set in a playing state the first time, after any eventual delay). - /// It can be used inside an async operation. - /// Example usage:await myTween.AsyncWaitForPosition(); - /// - /// Position (loops included, delays excluded) to wait for - public static async System.Threading.Tasks.Task AsyncWaitForPosition(this Tween t, float position) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return; - } - while (t.active && t.position * (t.CompletedLoops() + 1) < position) await System.Threading.Tasks.Task.Yield(); - } - - /// - /// Returns an async that waits until the tween is killed. - /// It can be used inside an async operation. - /// Example usage:await myTween.AsyncWaitForKill(); - /// - public static async System.Threading.Tasks.Task AsyncWaitForStart(this Tween t) - { - if (!t.active) { - if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); - return; - } - while (t.active && !t.playedOnce) await System.Threading.Tasks.Task.Yield(); - } - - #endregion -#endif - - #endregion - - #endregion -#endif - } - - // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ - // ███ CLASSES █████████████████████████████████████████████████████████████████████████████████████████████████████████ - // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ - -#if UNITY_5_3_OR_NEWER || UNITY_2017_1_OR_NEWER - public static class DOTweenCYInstruction - { - public class WaitForCompletion : CustomYieldInstruction - { - public override bool keepWaiting { get { - return t.active && !t.IsComplete(); - }} - readonly Tween t; - public WaitForCompletion(Tween tween) - { - t = tween; - } - } - - public class WaitForRewind : CustomYieldInstruction - { - public override bool keepWaiting { get { - return t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0); - }} - readonly Tween t; - public WaitForRewind(Tween tween) - { - t = tween; - } - } - - public class WaitForKill : CustomYieldInstruction - { - public override bool keepWaiting { get { - return t.active; - }} - readonly Tween t; - public WaitForKill(Tween tween) - { - t = tween; - } - } - - public class WaitForElapsedLoops : CustomYieldInstruction - { - public override bool keepWaiting { get { - return t.active && t.CompletedLoops() < elapsedLoops; - }} - readonly Tween t; - readonly int elapsedLoops; - public WaitForElapsedLoops(Tween tween, int elapsedLoops) - { - t = tween; - this.elapsedLoops = elapsedLoops; - } - } - - public class WaitForPosition : CustomYieldInstruction - { - public override bool keepWaiting { get { - return t.active && t.position * (t.CompletedLoops() + 1) < position; - }} - readonly Tween t; - readonly float position; - public WaitForPosition(Tween tween, float position) - { - t = tween; - this.position = position; - } - } - - public class WaitForStart : CustomYieldInstruction - { - public override bool keepWaiting { get { - return t.active && !t.playedOnce; - }} - readonly Tween t; - public WaitForStart(Tween tween) - { - t = tween; - } - } - } -#endif -} +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +using System; +using UnityEngine; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Options; +//#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0) +//using Task = System.Threading.Tasks.Task; +//#endif + +#pragma warning disable 1591 +namespace DG.Tweening +{ + /// + /// Shortcuts/functions that are not strictly related to specific Modules + /// but are available only on some Unity versions + /// + public static class DOTweenModuleUnityVersion + { +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1_OR_NEWER + #region Unity 4.3 or Newer + + #region Material + + /// Tweens a Material's color using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to useThe duration of the tween + public static Sequence DOGradientColor(this Material target, Gradient gradient, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.color = c.color; + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + /// Tweens a Material's named color property using the given gradient + /// (NOTE 1: only uses the colors of the gradient, not the alphas - NOTE 2: creates a Sequence, not a Tweener). + /// Also stores the image as the tween's target so it can be used for filtered operations + /// The gradient to use + /// The name of the material property to tween (like _Tint or _SpecColor) + /// The duration of the tween + public static Sequence DOGradientColor(this Material target, Gradient gradient, string property, float duration) + { + Sequence s = DOTween.Sequence(); + GradientColorKey[] colors = gradient.colorKeys; + int len = colors.Length; + for (int i = 0; i < len; ++i) { + GradientColorKey c = colors[i]; + if (i == 0 && c.time <= 0) { + target.SetColor(property, c.color); + continue; + } + float colorDuration = i == len - 1 + ? duration - s.Duration(false) // Verifies that total duration is correct + : duration * (i == 0 ? c.time : c.time - colors[i - 1].time); + s.Append(target.DOColor(c.color, property, colorDuration).SetEase(Ease.Linear)); + } + s.SetTarget(target); + return s; + } + + #endregion + + #endregion +#endif + +#if UNITY_5_3_OR_NEWER || UNITY_2017_1_OR_NEWER + #region Unity 5.3 or Newer + + #region CustomYieldInstructions + + /// + /// Returns a that waits until the tween is killed or complete. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForCompletion(true); + /// + public static CustomYieldInstruction WaitForCompletion(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForCompletion(t); + } + + /// + /// Returns a that waits until the tween is killed or rewinded. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForRewind(); + /// + public static CustomYieldInstruction WaitForRewind(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForRewind(t); + } + + /// + /// Returns a that waits until the tween is killed. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForKill(); + /// + public static CustomYieldInstruction WaitForKill(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForKill(t); + } + + /// + /// Returns a that waits until the tween is killed or has gone through the given amount of loops. + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForElapsedLoops(2); + /// + /// Elapsed loops to wait for + public static CustomYieldInstruction WaitForElapsedLoops(this Tween t, int elapsedLoops, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForElapsedLoops(t, elapsedLoops); + } + + /// + /// Returns a that waits until the tween is killed + /// or has reached the given time position (loops included, delays excluded). + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForPosition(2.5f); + /// + /// Position (loops included, delays excluded) to wait for + public static CustomYieldInstruction WaitForPosition(this Tween t, float position, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForPosition(t, position); + } + + /// + /// Returns a that waits until the tween is killed or started + /// (meaning when the tween is set in a playing state the first time, after any eventual delay). + /// It can be used inside a coroutine as a yield. + /// Example usage:yield return myTween.WaitForStart(); + /// + public static CustomYieldInstruction WaitForStart(this Tween t, bool returnCustomYieldInstruction) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return null; + } + return new DOTweenCYInstruction.WaitForStart(t); + } + + #endregion + + #endregion +#endif + +#if UNITY_2018_1_OR_NEWER + #region Unity 2018.1 or Newer + + #region Material + + /// Tweens a Material's named texture offset property with the given ID to the given value. + /// Also stores the material as the tween's target so it can be used for filtered operations + /// The end value to reach + /// The ID of the material property to tween (also called nameID in Unity's manual) + /// The duration of the tween + public static TweenerCore DOOffset(this Material target, Vector2 endValue, int propertyID, float duration) + { + if (!target.HasProperty(propertyID)) { + if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID); + return null; + } + TweenerCore t = DOTween.To(() => target.GetTextureOffset(propertyID), x => target.SetTextureOffset(propertyID, x), endValue, duration); + t.SetTarget(target); + return t; + } + + /// Tweens a Material's named texture scale property with the given ID to the given value. + /// Also stores the material as the tween's target so it can be used for filtered operations + /// The end value to reach + /// The ID of the material property to tween (also called nameID in Unity's manual) + /// The duration of the tween + public static TweenerCore DOTiling(this Material target, Vector2 endValue, int propertyID, float duration) + { + if (!target.HasProperty(propertyID)) { + if (Debugger.logPriority > 0) Debugger.LogMissingMaterialProperty(propertyID); + return null; + } + TweenerCore t = DOTween.To(() => target.GetTextureScale(propertyID), x => target.SetTextureScale(propertyID, x), endValue, duration); + t.SetTarget(target); + return t; + } + + #endregion + + #region .NET 4.6 or Newer + +#if UNITY_2018_1_OR_NEWER && (NET_4_6 || NET_STANDARD_2_0) + + #region Async Instructions + + /// + /// Returns an async that waits until the tween is killed or complete. + /// It can be used inside an async operation. + /// Example usage:await myTween.WaitForCompletion(); + /// + public static async System.Threading.Tasks.Task AsyncWaitForCompletion(this Tween t) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return; + } + while (t.active && !t.IsComplete()) await System.Threading.Tasks.Task.Yield(); + } + + /// + /// Returns an async that waits until the tween is killed or rewinded. + /// It can be used inside an async operation. + /// Example usage:await myTween.AsyncWaitForRewind(); + /// + public static async System.Threading.Tasks.Task AsyncWaitForRewind(this Tween t) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return; + } + while (t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0)) await System.Threading.Tasks.Task.Yield(); + } + + /// + /// Returns an async that waits until the tween is killed. + /// It can be used inside an async operation. + /// Example usage:await myTween.AsyncWaitForKill(); + /// + public static async System.Threading.Tasks.Task AsyncWaitForKill(this Tween t) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return; + } + while (t.active) await System.Threading.Tasks.Task.Yield(); + } + + /// + /// Returns an async that waits until the tween is killed or has gone through the given amount of loops. + /// It can be used inside an async operation. + /// Example usage:await myTween.AsyncWaitForElapsedLoops(); + /// + /// Elapsed loops to wait for + public static async System.Threading.Tasks.Task AsyncWaitForElapsedLoops(this Tween t, int elapsedLoops) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return; + } + while (t.active && t.CompletedLoops() < elapsedLoops) await System.Threading.Tasks.Task.Yield(); + } + + /// + /// Returns an async that waits until the tween is killed or started + /// (meaning when the tween is set in a playing state the first time, after any eventual delay). + /// It can be used inside an async operation. + /// Example usage:await myTween.AsyncWaitForPosition(); + /// + /// Position (loops included, delays excluded) to wait for + public static async System.Threading.Tasks.Task AsyncWaitForPosition(this Tween t, float position) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return; + } + while (t.active && t.position * (t.CompletedLoops() + 1) < position) await System.Threading.Tasks.Task.Yield(); + } + + /// + /// Returns an async that waits until the tween is killed. + /// It can be used inside an async operation. + /// Example usage:await myTween.AsyncWaitForKill(); + /// + public static async System.Threading.Tasks.Task AsyncWaitForStart(this Tween t) + { + if (!t.active) { + if (Debugger.logPriority > 0) Debugger.LogInvalidTween(t); + return; + } + while (t.active && !t.playedOnce) await System.Threading.Tasks.Task.Yield(); + } + + #endregion +#endif + + #endregion + + #endregion +#endif + } + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ CLASSES █████████████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + +#if UNITY_5_3_OR_NEWER || UNITY_2017_1_OR_NEWER + public static class DOTweenCYInstruction + { + public class WaitForCompletion : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && !t.IsComplete(); + }} + readonly Tween t; + public WaitForCompletion(Tween tween) + { + t = tween; + } + } + + public class WaitForRewind : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && (!t.playedOnce || t.position * (t.CompletedLoops() + 1) > 0); + }} + readonly Tween t; + public WaitForRewind(Tween tween) + { + t = tween; + } + } + + public class WaitForKill : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active; + }} + readonly Tween t; + public WaitForKill(Tween tween) + { + t = tween; + } + } + + public class WaitForElapsedLoops : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && t.CompletedLoops() < elapsedLoops; + }} + readonly Tween t; + readonly int elapsedLoops; + public WaitForElapsedLoops(Tween tween, int elapsedLoops) + { + t = tween; + this.elapsedLoops = elapsedLoops; + } + } + + public class WaitForPosition : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && t.position * (t.CompletedLoops() + 1) < position; + }} + readonly Tween t; + readonly float position; + public WaitForPosition(Tween tween, float position) + { + t = tween; + this.position = position; + } + } + + public class WaitForStart : CustomYieldInstruction + { + public override bool keepWaiting { get { + return t.active && !t.playedOnce; + }} + readonly Tween t; + public WaitForStart(Tween tween) + { + t = tween; + } + } + } +#endif +} diff --git a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs index 3d4c786b3..12a365d4f 100644 --- a/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs +++ b/Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs @@ -1,167 +1,167 @@ -// Author: Daniele Giardini - http://www.demigiant.com -// Created: 2018/07/13 - -using System; -using System.Reflection; -using UnityEngine; -using DG.Tweening.Core; -using DG.Tweening.Plugins.Core.PathCore; -using DG.Tweening.Plugins.Options; - -#pragma warning disable 1591 -namespace DG.Tweening -{ - /// - /// Utility functions that deal with available Modules. - /// Modules defines: - /// - DOTAUDIO - /// - DOTPHYSICS - /// - DOTPHYSICS2D - /// - DOTSPRITE - /// - DOTUI - /// Extra defines set and used for implementation of external assets: - /// - DOTWEEN_TMP ► TextMesh Pro - /// - DOTWEEN_TK2D ► 2D Toolkit - /// - public static class DOTweenModuleUtils - { - static bool _initialized; - - #region Reflection - - /// - /// Called via Reflection by DOTweenComponent on Awake - /// -#if UNITY_2018_1_OR_NEWER - [UnityEngine.Scripting.Preserve] -#endif - public static void Init() - { - if (_initialized) return; - - _initialized = true; - DOTweenExternalCommand.SetOrientationOnPath += Physics.SetOrientationOnPath; - -#if UNITY_EDITOR -#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1 - UnityEditor.EditorApplication.playmodeStateChanged += PlaymodeStateChanged; -#else - UnityEditor.EditorApplication.playModeStateChanged += PlaymodeStateChanged; -#endif -#endif - } - -#if UNITY_2018_1_OR_NEWER -#pragma warning disable - [UnityEngine.Scripting.Preserve] - // Just used to preserve methods when building, never called - static void Preserver() - { - Assembly[] loadedAssemblies = AppDomain.CurrentDomain.GetAssemblies(); - MethodInfo mi = typeof(MonoBehaviour).GetMethod("Stub"); - } -#pragma warning restore -#endif - - #endregion - -#if UNITY_EDITOR - // Fires OnApplicationPause in DOTweenComponent even when Editor is paused (otherwise it's only fired at runtime) -#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1 - static void PlaymodeStateChanged() - #else - static void PlaymodeStateChanged(UnityEditor.PlayModeStateChange state) -#endif - { - if (DOTween.instance == null) return; - DOTween.instance.OnApplicationPause(UnityEditor.EditorApplication.isPaused); - } -#endif - - // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ - // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ - // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ - - public static class Physics - { - // Called via DOTweenExternalCommand callback - public static void SetOrientationOnPath(PathOptions options, Tween t, Quaternion newRot, Transform trans) - { -#if true // PHYSICS_MARKER - if (options.isRigidbody) ((Rigidbody)t.target).rotation = newRot; - else trans.rotation = newRot; -#else - trans.rotation = newRot; -#endif - } - - // Returns FALSE if the DOTween's Physics2D Module is disabled, or if there's no Rigidbody2D attached - public static bool HasRigidbody2D(Component target) - { -#if true // PHYSICS2D_MARKER - return target.GetComponent() != null; -#else - return false; -#endif - } - - #region Called via Reflection - - - // Called via Reflection by DOTweenPathInspector - // Returns FALSE if the DOTween's Physics Module is disabled, or if there's no rigidbody attached -#if UNITY_2018_1_OR_NEWER - [UnityEngine.Scripting.Preserve] -#endif - public static bool HasRigidbody(Component target) - { -#if true // PHYSICS_MARKER - return target.GetComponent() != null; -#else - return false; -#endif - } - - // Called via Reflection by DOTweenPath -#if UNITY_2018_1_OR_NEWER - [UnityEngine.Scripting.Preserve] -#endif - public static TweenerCore CreateDOTweenPathTween( - MonoBehaviour target, bool tweenRigidbody, bool isLocal, Path path, float duration, PathMode pathMode - ){ - TweenerCore t = null; - bool rBodyFoundAndTweened = false; -#if true // PHYSICS_MARKER - if (tweenRigidbody) { - Rigidbody rBody = target.GetComponent(); - if (rBody != null) { - rBodyFoundAndTweened = true; - t = isLocal - ? rBody.DOLocalPath(path, duration, pathMode) - : rBody.DOPath(path, duration, pathMode); - } - } -#endif -#if true // PHYSICS2D_MARKER - if (!rBodyFoundAndTweened && tweenRigidbody) { - Rigidbody2D rBody2D = target.GetComponent(); - if (rBody2D != null) { - rBodyFoundAndTweened = true; - t = isLocal - ? rBody2D.DOLocalPath(path, duration, pathMode) - : rBody2D.DOPath(path, duration, pathMode); - } - } -#endif - if (!rBodyFoundAndTweened) { - t = isLocal - ? target.transform.DOLocalPath(path, duration, pathMode) - : target.transform.DOPath(path, duration, pathMode); - } - return t; - } - - #endregion - } - } -} +// Author: Daniele Giardini - http://www.demigiant.com +// Created: 2018/07/13 + +using System; +using System.Reflection; +using UnityEngine; +using DG.Tweening.Core; +using DG.Tweening.Plugins.Core.PathCore; +using DG.Tweening.Plugins.Options; + +#pragma warning disable 1591 +namespace DG.Tweening +{ + /// + /// Utility functions that deal with available Modules. + /// Modules defines: + /// - DOTAUDIO + /// - DOTPHYSICS + /// - DOTPHYSICS2D + /// - DOTSPRITE + /// - DOTUI + /// Extra defines set and used for implementation of external assets: + /// - DOTWEEN_TMP ► TextMesh Pro + /// - DOTWEEN_TK2D ► 2D Toolkit + /// + public static class DOTweenModuleUtils + { + static bool _initialized; + + #region Reflection + + /// + /// Called via Reflection by DOTweenComponent on Awake + /// +#if UNITY_2018_1_OR_NEWER + [UnityEngine.Scripting.Preserve] +#endif + public static void Init() + { + if (_initialized) return; + + _initialized = true; + DOTweenExternalCommand.SetOrientationOnPath += Physics.SetOrientationOnPath; + +#if UNITY_EDITOR +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1 + UnityEditor.EditorApplication.playmodeStateChanged += PlaymodeStateChanged; +#else + UnityEditor.EditorApplication.playModeStateChanged += PlaymodeStateChanged; +#endif +#endif + } + +#if UNITY_2018_1_OR_NEWER +#pragma warning disable + [UnityEngine.Scripting.Preserve] + // Just used to preserve methods when building, never called + static void Preserver() + { + Assembly[] loadedAssemblies = AppDomain.CurrentDomain.GetAssemblies(); + MethodInfo mi = typeof(MonoBehaviour).GetMethod("Stub"); + } +#pragma warning restore +#endif + + #endregion + +#if UNITY_EDITOR + // Fires OnApplicationPause in DOTweenComponent even when Editor is paused (otherwise it's only fired at runtime) +#if UNITY_4_3 || UNITY_4_4 || UNITY_4_5 || UNITY_4_6 || UNITY_5 || UNITY_2017_1 + static void PlaymodeStateChanged() + #else + static void PlaymodeStateChanged(UnityEditor.PlayModeStateChange state) +#endif + { + if (DOTween.instance == null) return; + DOTween.instance.OnApplicationPause(UnityEditor.EditorApplication.isPaused); + } +#endif + + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + // ███ INTERNAL CLASSES ████████████████████████████████████████████████████████████████████████████████████████████████ + // █████████████████████████████████████████████████████████████████████████████████████████████████████████████████████ + + public static class Physics + { + // Called via DOTweenExternalCommand callback + public static void SetOrientationOnPath(PathOptions options, Tween t, Quaternion newRot, Transform trans) + { +#if true // PHYSICS_MARKER + if (options.isRigidbody) ((Rigidbody)t.target).rotation = newRot; + else trans.rotation = newRot; +#else + trans.rotation = newRot; +#endif + } + + // Returns FALSE if the DOTween's Physics2D Module is disabled, or if there's no Rigidbody2D attached + public static bool HasRigidbody2D(Component target) + { +#if true // PHYSICS2D_MARKER + return target.GetComponent() != null; +#else + return false; +#endif + } + + #region Called via Reflection + + + // Called via Reflection by DOTweenPathInspector + // Returns FALSE if the DOTween's Physics Module is disabled, or if there's no rigidbody attached +#if UNITY_2018_1_OR_NEWER + [UnityEngine.Scripting.Preserve] +#endif + public static bool HasRigidbody(Component target) + { +#if true // PHYSICS_MARKER + return target.GetComponent() != null; +#else + return false; +#endif + } + + // Called via Reflection by DOTweenPath +#if UNITY_2018_1_OR_NEWER + [UnityEngine.Scripting.Preserve] +#endif + public static TweenerCore CreateDOTweenPathTween( + MonoBehaviour target, bool tweenRigidbody, bool isLocal, Path path, float duration, PathMode pathMode + ){ + TweenerCore t = null; + bool rBodyFoundAndTweened = false; +#if true // PHYSICS_MARKER + if (tweenRigidbody) { + Rigidbody rBody = target.GetComponent(); + if (rBody != null) { + rBodyFoundAndTweened = true; + t = isLocal + ? rBody.DOLocalPath(path, duration, pathMode) + : rBody.DOPath(path, duration, pathMode); + } + } +#endif +#if true // PHYSICS2D_MARKER + if (!rBodyFoundAndTweened && tweenRigidbody) { + Rigidbody2D rBody2D = target.GetComponent(); + if (rBody2D != null) { + rBodyFoundAndTweened = true; + t = isLocal + ? rBody2D.DOLocalPath(path, duration, pathMode) + : rBody2D.DOPath(path, duration, pathMode); + } + } +#endif + if (!rBodyFoundAndTweened) { + t = isLocal + ? target.transform.DOLocalPath(path, duration, pathMode) + : target.transform.DOPath(path, duration, pathMode); + } + return t; + } + + #endregion + } + } +} diff --git a/Assets/Prefabs/ElectricField.prefab b/Assets/Prefabs/ElectricField.prefab new file mode 100644 index 000000000..e37743945 --- /dev/null +++ b/Assets/Prefabs/ElectricField.prefab @@ -0,0 +1,127 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &8532869926823315434 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8532869926823315431} + - component: {fileID: 8532869926823315430} + - component: {fileID: 8532869926823315429} + - component: {fileID: 8532869926823315435} + - component: {fileID: 5884145992327544421} + m_Layer: 0 + m_Name: ElectricField + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8532869926823315431 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8532869926823315434} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 5.64, y: 0, z: 10.48} + m_LocalScale: {x: 10, y: 20, z: 10} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8532869926823315430 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8532869926823315434} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8532869926823315429 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8532869926823315434} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: cd7985b03a32f9b4a87a277d88415e72, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &8532869926823315435 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8532869926823315434} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f51c2242944b29468ecc7559a663e15, type: 3} + m_Name: + m_EditorClassIdentifier: + isPositive: 0 + chargeType: 5 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + forceLine: {fileID: 0} + spinLine: {fileID: 0} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + type: 0 + scope: 0 + Value: 0 +--- !u!136 &5884145992327544421 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8532869926823315434} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + m_Radius: 0.5000002 + m_Height: 2.0000005 + m_Direction: 1 + m_Center: {x: 0.00000005960466, y: 0, z: -0.00000008940697} diff --git a/Assets/Prefabs/ElectricField.prefab.meta b/Assets/Prefabs/ElectricField.prefab.meta new file mode 100644 index 000000000..0da6c4b3a --- /dev/null +++ b/Assets/Prefabs/ElectricField.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: a8beb0aaaee06904f975f995ea4f871d +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Magnetic Field.prefab b/Assets/Prefabs/Magnetic Field.prefab new file mode 100644 index 000000000..4c7fd414c --- /dev/null +++ b/Assets/Prefabs/Magnetic Field.prefab @@ -0,0 +1,127 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &1344843524751223409 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1344843524751223420} + - component: {fileID: 1344843524751223421} + - component: {fileID: 1344843524751223422} + - component: {fileID: 1344843524751223408} + - component: {fileID: 5496229184877665167} + m_Layer: 0 + m_Name: Magnetic Field + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1344843524751223420 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344843524751223409} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 5.64, y: 0, z: 10.48} + m_LocalScale: {x: 10, y: 20, z: 10} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &1344843524751223421 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344843524751223409} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1344843524751223422 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344843524751223409} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: c0adb1e3bc5e84643a6ec8c9c47903ad, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!114 &1344843524751223408 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344843524751223409} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f51c2242944b29468ecc7559a663e15, type: 3} + m_Name: + m_EditorClassIdentifier: + isPositive: 0 + chargeType: 5 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + forceLine: {fileID: 0} + spinLine: {fileID: 0} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + type: 0 + scope: 0 + Value: 0 +--- !u!136 &5496229184877665167 +CapsuleCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1344843524751223409} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + m_Radius: 0.5000001 + m_Height: 2 + m_Direction: 1 + m_Center: {x: 0.000000059604645, y: 0, z: -0.00000008940697} diff --git a/Assets/Prefabs/Magnetic Field.prefab.meta b/Assets/Prefabs/Magnetic Field.prefab.meta new file mode 100644 index 000000000..50e2892d2 --- /dev/null +++ b/Assets/Prefabs/Magnetic Field.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 42dcf3cefd679484eb3a0d686336e4ff +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Models/Force Probe.prefab b/Assets/Prefabs/Models/Force Probe.prefab new file mode 100644 index 000000000..5fef9ded0 --- /dev/null +++ b/Assets/Prefabs/Models/Force Probe.prefab @@ -0,0 +1,441 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &3996239515154191931 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3996239515154191928} + - component: {fileID: 3996239515154191927} + - component: {fileID: 3996239515154191926} + - component: {fileID: 3996239515154191929} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3996239515154191928 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239515154191931} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.1, y: 0.1, z: 0.1} + m_Children: + - {fileID: 3996239516384018909} + m_Father: {fileID: 3996239516044172348} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 780.4, y: 449.2} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!223 &3996239515154191927 +Canvas: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239515154191931} + m_Enabled: 1 + serializedVersion: 3 + m_RenderMode: 2 + m_Camera: {fileID: 0} + m_PlaneDistance: 100 + m_PixelPerfect: 0 + m_ReceivesEvents: 1 + m_OverrideSorting: 0 + m_OverridePixelPerfect: 0 + m_SortingBucketNormalizedSize: 0 + m_AdditionalShaderChannelsFlag: 25 + m_SortingLayerID: 0 + m_SortingOrder: 0 + m_TargetDisplay: 0 +--- !u!114 &3996239515154191926 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239515154191931} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UiScaleMode: 0 + m_ReferencePixelsPerUnit: 100 + m_ScaleFactor: 1 + m_ReferenceResolution: {x: 800, y: 600} + m_ScreenMatchMode: 0 + m_MatchWidthOrHeight: 0 + m_PhysicalUnit: 3 + m_FallbackScreenDPI: 96 + m_DefaultSpriteDPI: 96 + m_DynamicPixelsPerUnit: 1 + m_PresetInfoIsWorld: 1 +--- !u!114 &3996239515154191929 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239515154191931} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + m_Name: + m_EditorClassIdentifier: + m_IgnoreReversedGraphics: 1 + m_BlockingObjects: 0 + m_BlockingMask: + serializedVersion: 2 + m_Bits: 4294967295 +--- !u!1 &3996239516044172320 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3996239516044172348} + - component: {fileID: 3996239516044172351} + - component: {fileID: 3996239516044172350} + - component: {fileID: 3996239516044172321} + - component: {fileID: 3996239516044172349} + m_Layer: 0 + m_Name: Force Probe + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3996239516044172348 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516044172320} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.1, y: 0.1, z: 0.1} + m_Children: + - {fileID: 3996239515154191928} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3996239516044172351 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516044172320} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0edbac64f175eac49b8cb89df09814bd, type: 3} + m_Name: + m_EditorClassIdentifier: + isCharged: 0 + charge: 0 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} +--- !u!33 &3996239516044172350 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516044172320} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &3996239516044172321 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516044172320} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 31321ba15b8f8eb4c954353edc038b1d, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!120 &3996239516044172349 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516044172320} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 57b1e5b2f30f06f4784a92cccc9bff35, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 +--- !u!1 &3996239516384018908 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3996239516384018909} + - component: {fileID: 3996239516384018907} + - component: {fileID: 3996239516384018906} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &3996239516384018909 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516384018908} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 3996239515154191928} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 30, y: -10} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &3996239516384018907 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516384018908} + m_CullTransparentMesh: 1 +--- !u!114 &3996239516384018906 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3996239516384018908} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 0 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4294967295 + m_fontColor: {r: 1, g: 1, b: 1, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 10 + m_fontSizeBase: 10 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} diff --git a/Assets/Prefabs/Models/Force Probe.prefab.meta b/Assets/Prefabs/Models/Force Probe.prefab.meta new file mode 100644 index 000000000..c5912abf9 --- /dev/null +++ b/Assets/Prefabs/Models/Force Probe.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: b338bc23756c3134a9fe3b850fa349bf +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Models/Proton/Proton.prefab b/Assets/Prefabs/Models/Proton/Proton.prefab index 08e59048a..be3dfc914 100644 --- a/Assets/Prefabs/Models/Proton/Proton.prefab +++ b/Assets/Prefabs/Models/Proton/Proton.prefab @@ -46,6 +46,7 @@ GameObject: - component: {fileID: 264284009461599844} - component: {fileID: 264284009461599845} - component: {fileID: 264284009461599865} + - component: {fileID: 1076493929440379126} m_Layer: 8 m_Name: Quark3_Down m_TagString: Untagged @@ -67,6 +68,7 @@ Transform: - {fileID: 5663761652600925566} - {fileID: 264284009755688532} - {fileID: 264284011396718179} + - {fileID: 4716020788171403870} m_Father: {fileID: 8125098694876102903} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -82,16 +84,24 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e5d691a8a83bcf24bb74713f5f14a7c4, type: 3} m_Name: m_EditorClassIdentifier: + isPositive: 0 + chargeType: 1 quarkColor: 1 - quarkSphere: {fileID: 264284009755688528} - quarkCore: {fileID: 264284011396718239} - quarkGlow: {fileID: 264284010095095183} sphereMaterial: {fileID: 0} coreMaterial: {fileID: 0} glowMaterial: {fileID: 0} - Radius: 0.5 + forceLine: {fileID: 1076493929440379126} + spinLine: {fileID: 1579417554475634968} trailWidth: 0 trailTime: 0 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + quarkSphere: {fileID: 264284009755688528} + quarkCore: {fileID: 264284011396718239} + quarkGlow: {fileID: 264284010095095183} + Radius: 0.5 + f: 0 trailSizeCorrectionCurve: serializedVersion: 2 m_Curve: @@ -123,7 +133,7 @@ MonoBehaviour: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 264284009461599842} - m_Enabled: 0 + m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d130dcbc3b00a284981d9751835345ba, type: 3} m_Name: @@ -133,6 +143,11 @@ MonoBehaviour: orbitalVelocity: -50000 timeOnTheSameOrbit: 5 orbitChangeVelocity: 150 + isPolarized: 0 + currentRadius: 1 + rad: 0 + tempRotVector: {x: 0, y: 0, z: 0} + polarizationAxis: 2 --- !u!96 &264284009461599846 TrailRenderer: serializedVersion: 2 @@ -283,6 +298,104 @@ MonoBehaviour: m_EditorClassIdentifier: rb: {fileID: 0} all: {fileID: 0} +--- !u!120 &1076493929440379126 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264284009461599842} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: e00fe9968de29b24ab457840d589826a, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1 &264284009675362929 GameObject: m_ObjectHideFlags: 0 @@ -562,6 +675,7 @@ GameObject: - component: {fileID: 264284009930100672} - component: {fileID: 264284009930100673} - component: {fileID: 264284009930100675} + - component: {fileID: 8317870588994572358} m_Layer: 8 m_Name: Quark1_Up_Red m_TagString: Untagged @@ -583,6 +697,7 @@ Transform: - {fileID: 8125098695082942654} - {fileID: 264284010038144814} - {fileID: 264284009783771358} + - {fileID: 8180692959282337021} m_Father: {fileID: 8125098694876102903} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -598,16 +713,24 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e5d691a8a83bcf24bb74713f5f14a7c4, type: 3} m_Name: m_EditorClassIdentifier: + isPositive: 1 + chargeType: 2 quarkColor: 0 - quarkSphere: {fileID: 264284010038144815} - quarkCore: {fileID: 264284009783771359} - quarkGlow: {fileID: 264284010832587795} sphereMaterial: {fileID: 0} coreMaterial: {fileID: 0} glowMaterial: {fileID: 0} - Radius: 0.5 + forceLine: {fileID: 8317870588994572358} + spinLine: {fileID: 1505386097657520197} trailWidth: 0 trailTime: 0 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + quarkSphere: {fileID: 264284010038144815} + quarkCore: {fileID: 264284009783771359} + quarkGlow: {fileID: 264284010832587795} + Radius: 0.5 + f: 0 trailSizeCorrectionCurve: serializedVersion: 2 m_Curve: @@ -639,7 +762,7 @@ MonoBehaviour: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 264284009930100687} - m_Enabled: 0 + m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d130dcbc3b00a284981d9751835345ba, type: 3} m_Name: @@ -649,6 +772,11 @@ MonoBehaviour: orbitalVelocity: 50000 timeOnTheSameOrbit: 5 orbitChangeVelocity: 150 + isPolarized: 0 + currentRadius: 1 + rad: 0 + tempRotVector: {x: 0, y: 0, z: 0} + polarizationAxis: 2 --- !u!96 &264284009930100691 TrailRenderer: serializedVersion: 2 @@ -799,6 +927,104 @@ MonoBehaviour: m_EditorClassIdentifier: rb: {fileID: 0} all: {fileID: 0} +--- !u!120 &8317870588994572358 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264284009930100687} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 57b1e5b2f30f06f4784a92cccc9bff35, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1 &264284009979104122 GameObject: m_ObjectHideFlags: 0 @@ -1240,6 +1466,7 @@ GameObject: - component: {fileID: 264284010244169452} - component: {fileID: 264284010244169453} - component: {fileID: 264284010244169441} + - component: {fileID: 561549329603352911} m_Layer: 8 m_Name: Quark2_Up_Blue m_TagString: Untagged @@ -1261,6 +1488,7 @@ Transform: - {fileID: 2009051508099716098} - {fileID: 264284010422341505} - {fileID: 264284010140170108} + - {fileID: 2829016609122112277} m_Father: {fileID: 8125098694876102903} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -1276,16 +1504,24 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: e5d691a8a83bcf24bb74713f5f14a7c4, type: 3} m_Name: m_EditorClassIdentifier: + isPositive: 1 + chargeType: 2 quarkColor: 2 - quarkSphere: {fileID: 264284010422341506} - quarkCore: {fileID: 264284010140170109} - quarkGlow: {fileID: 264284011367291005} sphereMaterial: {fileID: 0} coreMaterial: {fileID: 0} glowMaterial: {fileID: 0} - Radius: 0.5 + forceLine: {fileID: 561549329603352911} + spinLine: {fileID: 1340020293559971897} trailWidth: 0 trailTime: 0 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + quarkSphere: {fileID: 264284010422341506} + quarkCore: {fileID: 264284010140170109} + quarkGlow: {fileID: 264284011367291005} + Radius: 0.5 + f: 0 trailSizeCorrectionCurve: serializedVersion: 2 m_Curve: @@ -1317,7 +1553,7 @@ MonoBehaviour: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 264284010244169450} - m_Enabled: 0 + m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d130dcbc3b00a284981d9751835345ba, type: 3} m_Name: @@ -1327,6 +1563,11 @@ MonoBehaviour: orbitalVelocity: 50000 timeOnTheSameOrbit: 5 orbitChangeVelocity: 150 + isPolarized: 0 + currentRadius: 1 + rad: 0 + tempRotVector: {x: 0, y: 0, z: 0} + polarizationAxis: 2 --- !u!96 &264284010244169454 TrailRenderer: serializedVersion: 2 @@ -1477,6 +1718,104 @@ MonoBehaviour: m_EditorClassIdentifier: rb: {fileID: 0} all: {fileID: 0} +--- !u!120 &561549329603352911 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264284010244169450} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: a2e410303e3b20d45b1b68e7c34aa0b3, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1 &264284010269365235 GameObject: m_ObjectHideFlags: 0 @@ -1487,6 +1826,9 @@ GameObject: m_Component: - component: {fileID: 264284010269365239} - component: {fileID: 264284010269365234} + - component: {fileID: 6286276693454516955} + - component: {fileID: 4658782103055338294} + - component: {fileID: 8871818237558183125} m_Layer: 0 m_Name: Proton m_TagString: Untagged @@ -1535,6 +1877,52 @@ MonoBehaviour: - {x: 900, y: 900} - {x: 100, y: 100} - {x: 10, y: 10} +--- !u!114 &6286276693454516955 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264284010269365235} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce8d030f21b9347b244cf1f82e860c, type: 3} + m_Name: + m_EditorClassIdentifier: + u0Pi: 0.0000001 + k: 8.987552e+9 + scale: 2.7778e-16 + cScale: 1.6021766e-19 + vScale: 1 + strength: 1 + cancelThreshold: 0.0001 +--- !u!114 &4658782103055338294 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264284010269365235} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 064c76acb20ef95468574513385756dd, type: 3} + m_Name: + m_EditorClassIdentifier: + A: 1 + B: 1 + C: 1 +--- !u!114 &8871818237558183125 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 264284010269365235} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f6687ceb78a44b74bb7fe5eacd5d7860, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &264284010422341506 GameObject: m_ObjectHideFlags: 0 @@ -2279,6 +2667,135 @@ Transform: m_Father: {fileID: 333141740902759513} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &752357124030674333 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4716020788171403870} + - component: {fileID: 1579417554475634968} + m_Layer: 8 + m_Name: Spin + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4716020788171403870 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 752357124030674333} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 264284009461599840} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!120 &1579417554475634968 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 752357124030674333} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d5c3a44cc2ba84ae2985e6b6f3d7160c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.9175914, b: 0, a: 1} + key1: {r: 1, g: 0.9175914, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1 &804215870492207371 GameObject: m_ObjectHideFlags: 0 @@ -2434,6 +2951,135 @@ Transform: m_Father: {fileID: 297331675380842364} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1072931533971010669 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2829016609122112277} + - component: {fileID: 1340020293559971897} + m_Layer: 8 + m_Name: Spin + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2829016609122112277 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1072931533971010669} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 264284010244169449} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!120 &1340020293559971897 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1072931533971010669} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d5c3a44cc2ba84ae2985e6b6f3d7160c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.9175914, b: 0, a: 1} + key1: {r: 1, g: 0.9175914, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1 &1111128216178501062 GameObject: m_ObjectHideFlags: 0 @@ -41333,6 +41979,135 @@ ParticleSystemRenderer: m_Mesh2: {fileID: 0} m_Mesh3: {fileID: 0} m_MaskInteraction: 0 +--- !u!1 &6071255633460479487 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8180692959282337021} + - component: {fileID: 1505386097657520197} + m_Layer: 8 + m_Name: Spin + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8180692959282337021 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6071255633460479487} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 264284009930100686} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!120 &1505386097657520197 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6071255633460479487} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d5c3a44cc2ba84ae2985e6b6f3d7160c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.9175914, b: 0, a: 1} + key1: {r: 1, g: 0.9175914, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 --- !u!1 &6980889261651614293 GameObject: m_ObjectHideFlags: 0 @@ -60993,7 +61768,14 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: speedSlider: {fileID: 0} + forceSlider: {fileID: 0} quarkSpeed: 5.01 + polarized: 1 + quark1: {fileID: 0} + quark2: {fileID: 0} + quark3: {fileID: 0} + polarizationAxis: 0 + forceLineVis: 1 --- !u!1 &8125098695082942655 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Prefabs/Models/SeaQuark/FluxTubeMaterial.mat b/Assets/Prefabs/Models/SeaQuark/FluxTubeMaterial.mat index ecb678095..50d487177 100644 --- a/Assets/Prefabs/Models/SeaQuark/FluxTubeMaterial.mat +++ b/Assets/Prefabs/Models/SeaQuark/FluxTubeMaterial.mat @@ -8,19 +8,22 @@ Material: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: FluxTubeMaterial - m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3} + m_Shader: {fileID: -6465566751694194690, guid: 70b8305c41aca6940ad1e4384b1b6626, type: 3} m_ShaderKeywords: _RECEIVE_SHADOWS_OFF m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 - m_CustomRenderQueue: 3000 - stringTagMap: - RenderType: Transparent + m_CustomRenderQueue: -1 + stringTagMap: {} disabledShaderPasses: - SHADOWCASTER m_SavedProperties: serializedVersion: 3 m_TexEnvs: + - Texture2D_116fab48b72244728a9961893813879c: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _BaseMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -78,6 +81,9 @@ Material: m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} m_Floats: + - Vector1_022a4fddde1341bd9c3a85fc45410302: 0.47 + - Vector1_2b202985309a4b8eb6e5da244e17b102: 0 + - Vector1_b964c76286b349e58730873281d02e24: 2 - _AlphaClip: 0 - _Blend: 0 - _BumpScale: 1 @@ -105,6 +111,8 @@ Material: - _WorkflowMode: 1 - _ZWrite: 0 m_Colors: + - Color_1a9c160561294cbc9d194abde2b5a692: {r: 0.4289763, g: 4.929155, b: 6.062866, a: 0} + - Vector2_538b52c395dc4dd29891e7cb4ed10bb5: {r: 0.5, g: 1.5, b: 0, a: 0} - _BaseColor: {r: 1, g: 1, b: 1, a: 1} - _Color: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} diff --git a/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab b/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab index 16a426286..e68759a50 100644 --- a/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab +++ b/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab @@ -1,6 +1,6 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &5561600251957936904 +--- !u!1 &6972975765157242126 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -8,7 +8,9994 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 3289192305496122577} + - component: {fileID: 6972975765157242127} + - component: {fileID: 6972975765157242120} + m_Layer: 0 + m_Name: Flux Tube + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &6972975765157242127 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765157242126} + m_LocalRotation: {x: 0.7071068, y: -0, z: -0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.080000006, y: 0.099999994, z: 0.07999999} + m_Children: [] + m_Father: {fileID: 7204467036606809151} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} +--- !u!137 &6972975765157242120 +SkinnedMeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765157242126} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 3 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 4dcd5558ed53d6a4eb1d4b15ee8d4c90, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + serializedVersion: 2 + m_Quality: 0 + m_UpdateWhenOffscreen: 0 + m_SkinnedMotionVectors: 1 + m_Mesh: {fileID: -2432090755550338912, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + m_Bones: + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + - {fileID: 0} + m_BlendShapeWeights: [] + m_RootBone: {fileID: 0} + m_AABB: + m_Center: {x: -0.10271388, y: -0.04287219, z: -0.000000059604645} + m_Extent: {x: 2.037055, y: 2.192077, z: 0.45444858} + m_DirtyAABB: 0 +--- !u!1 &6972975765354548856 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6972975765354548857} + - component: {fileID: 6972975765354548859} + - component: {fileID: 6972975765354548858} + - component: {fileID: 4018628035025322119} + - component: {fileID: 3613279183330907741} + - component: {fileID: 1756292687739732167} + m_Layer: 0 + m_Name: Particle System (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6972975765354548857 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765354548856} + m_LocalRotation: {x: -0.7071068, y: -0, z: -0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 0, z: -0.4} + m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} + m_Children: + - {fileID: 3264993919490312295} + m_Father: {fileID: 6972975766535982204} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!198 &6972975765354548859 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765354548856} + serializedVersion: 7 + lengthInSec: 3 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 1 + prewarm: 1 + playOnAwake: 1 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 0 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 0.08627451, g: 0.94509804, b: 0.98039216, a: 0.6156863} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0.2 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 3 + scalar: 6.283185 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 50 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 0 + type: 0 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 1 + randomPositionAmount: 0 + radius: + value: 0.2 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 10 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 0 + m_Bursts: [] + SizeModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 3 + scalar: 0.34906584 + minScalar: -0.17453292 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 1 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 0} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 32382 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + serializedVersion: 2 + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + rowMode: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + LifetimeByEmitterSpeedModule: + enabled: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: -0.8 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0.2 + inSlope: -0.8 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Range: {x: 0, y: 1} + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + serializedVersion: 2 + enabled: 0 + multiplierCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 4 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + m_Planes: [] + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + serializedVersion: 2 + inside: 1 + outside: 0 + enter: 0 + exit: 0 + colliderQueryMode: 0 + radiusScale: 1 + primitives: [] + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &6972975765354548858 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765354548856} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: f12a49584519d8647b64fa3faeeda886, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_FreeformStretching: 0 + m_RotateWithStretchDirection: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!114 &4018628035025322119 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765354548856} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ed2439ec6edf4f441b25040894c3982d, type: 3} + m_Name: + m_EditorClassIdentifier: + isPositive: 0 + chargeType: 2 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + forceLine: {fileID: 3613279183330907741} + spinLine: {fileID: 6636655551898050428} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + spin: {x: 0, y: 0, z: 0} +--- !u!120 &3613279183330907741 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765354548856} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 57b1e5b2f30f06f4784a92cccc9bff35, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.02 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 +--- !u!54 &1756292687739732167 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765354548856} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!1 &6972975765442666722 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6972975765442666723} + - component: {fileID: 6972975765442666733} + - component: {fileID: 6972975765442666732} + - component: {fileID: 188924185087941208} + - component: {fileID: 8634118344070406416} + - component: {fileID: 3154217784848115029} + m_Layer: 0 + m_Name: Particle System (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6972975765442666723 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765442666722} + m_LocalRotation: {x: -0.7071068, y: -0, z: -0, w: 0.7071068} + m_LocalPosition: {x: 0, y: 0, z: 0.4} + m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} + m_Children: + - {fileID: 6928608323226882649} + m_Father: {fileID: 6972975766535982204} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0} +--- !u!198 &6972975765442666733 +ParticleSystem: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765442666722} + serializedVersion: 7 + lengthInSec: 3 + simulationSpeed: 1 + stopAction: 0 + cullingMode: 0 + ringBufferMode: 0 + ringBufferLoopRange: {x: 0, y: 1} + looping: 1 + prewarm: 1 + playOnAwake: 1 + useUnscaledTime: 0 + autoRandomSeed: 1 + useRigidbodyForVelocity: 1 + startDelay: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + moveWithTransform: 0 + moveWithCustomTransform: {fileID: 0} + scalingMode: 1 + randomSeed: 0 + InitialModule: + serializedVersion: 3 + enabled: 1 + startLifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 5 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 5 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startColor: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 0.7254902, g: 0.043019388, b: 0, a: 0.19215687} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + startSize: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 0.2 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeY: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startSizeZ: + serializedVersion: 2 + minMaxState: 3 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationX: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotationY: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startRotation: + serializedVersion: 2 + minMaxState: 3 + scalar: 6.283185 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + randomizeRotationDirection: 0 + maxNumParticles: 50 + size3D: 0 + rotation3D: 0 + gravityModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + ShapeModule: + serializedVersion: 6 + enabled: 0 + type: 0 + angle: 25 + length: 5 + boxThickness: {x: 0, y: 0, z: 0} + radiusThickness: 1 + donutRadius: 0.2 + m_Position: {x: 0, y: 0, z: 0} + m_Rotation: {x: 0, y: 0, z: 0} + m_Scale: {x: 1, y: 1, z: 1} + placementMode: 0 + m_MeshMaterialIndex: 0 + m_MeshNormalOffset: 0 + m_MeshSpawn: + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Mesh: {fileID: 0} + m_MeshRenderer: {fileID: 0} + m_SkinnedMeshRenderer: {fileID: 0} + m_Sprite: {fileID: 0} + m_SpriteRenderer: {fileID: 0} + m_UseMeshMaterialIndex: 0 + m_UseMeshColors: 1 + alignToDirection: 0 + m_Texture: {fileID: 0} + m_TextureClipChannel: 3 + m_TextureClipThreshold: 0 + m_TextureUVChannel: 0 + m_TextureColorAffectsParticles: 1 + m_TextureAlphaAffectsParticles: 1 + m_TextureBilinearFiltering: 0 + randomDirectionAmount: 0 + sphericalDirectionAmount: 1 + randomPositionAmount: 0 + radius: + value: 0.2 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + arc: + value: 360 + mode: 0 + spread: 0 + speed: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + EmissionModule: + enabled: 1 + serializedVersion: 4 + rateOverTime: + serializedVersion: 2 + minMaxState: 0 + scalar: 10 + minScalar: 10 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rateOverDistance: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_BurstCount: 0 + m_Bursts: [] + SizeModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + RotationModule: + enabled: 1 + x: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 3 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 3 + scalar: 0.34906584 + minScalar: -0.17453292 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + ColorModule: + enabled: 1 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 0} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 32382 + atime2: 65535 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 3 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + UVModule: + serializedVersion: 2 + enabled: 0 + mode: 0 + timeMode: 0 + fps: 30 + frameOverTime: + serializedVersion: 2 + minMaxState: 1 + scalar: 0.9999 + minScalar: 0.9999 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + startFrame: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedRange: {x: 0, y: 1} + tilesX: 1 + tilesY: 1 + animationType: 0 + rowIndex: 0 + cycles: 1 + uvChannelMask: -1 + rowMode: 1 + sprites: + - sprite: {fileID: 0} + flipU: 0 + flipV: 0 + VelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetX: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetY: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + orbitalOffsetZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + radial: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + speedModifier: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + InheritVelocityModule: + enabled: 0 + m_Mode: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + LifetimeByEmitterSpeedModule: + enabled: 0 + m_Curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: -0.8 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0.2 + inSlope: -0.8 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Range: {x: 0, y: 1} + ForceModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + inWorldSpace: 0 + randomizePerFrame: 0 + ExternalForcesModule: + serializedVersion: 2 + enabled: 0 + multiplierCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + influenceFilter: 0 + influenceMask: + serializedVersion: 2 + m_Bits: 4294967295 + influenceList: [] + ClampVelocityModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + magnitude: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxis: 0 + inWorldSpace: 0 + multiplyDragByParticleSize: 1 + multiplyDragByParticleVelocity: 1 + dampen: 0 + drag: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + NoiseModule: + enabled: 0 + strength: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthY: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + strengthZ: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + frequency: 0.5 + damping: 1 + octaves: 1 + octaveMultiplier: 0.5 + octaveScale: 2 + quality: 2 + scrollSpeed: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remap: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapY: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapZ: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1 + inSlope: 0 + outSlope: 2 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 2 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + remapEnabled: 0 + positionAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + rotationAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + sizeAmount: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + SizeBySpeedModule: + enabled: 0 + curve: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + z: + serializedVersion: 2 + minMaxState: 1 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 1 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 1 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + range: {x: 0, y: 1} + separateAxes: 0 + RotationBySpeedModule: + enabled: 0 + x: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + y: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + curve: + serializedVersion: 2 + minMaxState: 0 + scalar: 0.7853982 + minScalar: 0.7853982 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + separateAxes: 0 + range: {x: 0, y: 1} + ColorBySpeedModule: + enabled: 0 + gradient: + serializedVersion: 2 + minMaxState: 1 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + range: {x: 0, y: 1} + CollisionModule: + enabled: 0 + serializedVersion: 4 + type: 0 + collisionMode: 0 + colliderForce: 0 + multiplyColliderForceByParticleSize: 0 + multiplyColliderForceByParticleSpeed: 0 + multiplyColliderForceByCollisionAngle: 1 + m_Planes: [] + m_Dampen: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_Bounce: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_EnergyLossOnCollision: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minKillSpeed: 0 + maxKillSpeed: 10000 + radiusScale: 1 + collidesWith: + serializedVersion: 2 + m_Bits: 4294967295 + maxCollisionShapes: 256 + quality: 0 + voxelSize: 0.5 + collisionMessages: 0 + collidesWithDynamic: 1 + interiorCollisions: 0 + TriggerModule: + enabled: 0 + serializedVersion: 2 + inside: 1 + outside: 0 + enter: 0 + exit: 0 + colliderQueryMode: 0 + radiusScale: 1 + primitives: [] + SubModule: + serializedVersion: 2 + enabled: 0 + subEmitters: + - serializedVersion: 3 + emitter: {fileID: 0} + type: 0 + properties: 0 + emitProbability: 1 + LightsModule: + enabled: 0 + ratio: 0 + light: {fileID: 0} + randomDistribution: 1 + color: 1 + range: 1 + intensity: 1 + rangeCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + intensityCurve: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + maxLights: 20 + TrailModule: + enabled: 0 + mode: 0 + ratio: 1 + lifetime: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minVertexDistance: 0.2 + textureMode: 0 + ribbonCount: 1 + shadowBias: 0.5 + worldSpace: 0 + dieWithParticles: 1 + sizeAffectsWidth: 1 + sizeAffectsLifetime: 0 + inheritParticleColor: 1 + generateLightingData: 0 + splitSubEmitterRibbons: 0 + attachRibbonsToTransform: 0 + colorOverLifetime: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + widthOverTrail: + serializedVersion: 2 + minMaxState: 0 + scalar: 1 + minScalar: 1 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorOverTrail: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + CustomDataModule: + enabled: 0 + mode0: 0 + vectorComponentCount0: 4 + color0: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel0: Color + vector0_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_0: X + vector0_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_1: Y + vector0_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_2: Z + vector0_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel0_3: W + mode1: 0 + vectorComponentCount1: 4 + color1: + serializedVersion: 2 + minMaxState: 0 + minColor: {r: 1, g: 1, b: 1, a: 1} + maxColor: {r: 1, g: 1, b: 1, a: 1} + maxGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + minGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + colorLabel1: Color + vector1_0: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_0: X + vector1_1: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_1: Y + vector1_2: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_2: Z + vector1_3: + serializedVersion: 2 + minMaxState: 0 + scalar: 0 + minScalar: 0 + maxCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + minCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 1 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + vectorLabel1_3: W +--- !u!199 &6972975765442666732 +ParticleSystemRenderer: + serializedVersion: 6 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765442666722} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: f12a49584519d8647b64fa3faeeda886, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_RenderMode: 0 + m_SortMode: 0 + m_MinParticleSize: 0 + m_MaxParticleSize: 0.5 + m_CameraVelocityScale: 0 + m_VelocityScale: 0 + m_LengthScale: 2 + m_SortingFudge: 0 + m_NormalDirection: 1 + m_ShadowBias: 0 + m_RenderAlignment: 0 + m_Pivot: {x: 0, y: 0, z: 0} + m_Flip: {x: 0, y: 0, z: 0} + m_UseCustomVertexStreams: 0 + m_EnableGPUInstancing: 1 + m_ApplyActiveColorSpace: 1 + m_AllowRoll: 1 + m_FreeformStretching: 0 + m_RotateWithStretchDirection: 1 + m_VertexStreams: 00010304 + m_Mesh: {fileID: 0} + m_Mesh1: {fileID: 0} + m_Mesh2: {fileID: 0} + m_Mesh3: {fileID: 0} + m_MaskInteraction: 0 +--- !u!114 &188924185087941208 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765442666722} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ed2439ec6edf4f441b25040894c3982d, type: 3} + m_Name: + m_EditorClassIdentifier: + isPositive: 1 + chargeType: 2 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + forceLine: {fileID: 8634118344070406416} + spinLine: {fileID: 7429572203072583859} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} + spin: {x: 0, y: 0, z: 0} +--- !u!120 &8634118344070406416 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765442666722} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 57b1e5b2f30f06f4784a92cccc9bff35, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.02 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 +--- !u!54 &3154217784848115029 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975765442666722} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 0 +--- !u!1 &6972975766535982195 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6972975766535982204} + - component: {fileID: -5063133016556607020} + - component: {fileID: 3664865371327439078} m_Layer: 0 m_Name: SeaQuark m_TagString: Untagged @@ -16,246 +10003,344 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &3289192305496122577 +--- !u!4 &6972975766535982204 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5561600251957936904} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0.883, y: 0.007, z: 0.306} - m_LocalScale: {x: 1, y: 1, z: 1} + m_GameObject: {fileID: 6972975766535982195} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 0.4, y: 0.4, z: 3} m_Children: - - {fileID: 5707924861877653065} - - {fileID: 4785845173201843228} - - {fileID: 8855033658769888307} + - {fileID: 6972975765442666723} + - {fileID: 6972975765354548857} + - {fileID: 7204467036606809151} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1001 &5035030608486323191 -PrefabInstance: +--- !u!114 &-5063133016556607020 +MonoBehaviour: m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 3289192305496122577} - m_Modifications: - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_RootOrder - value: 1 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalScale.x - value: 2.5 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalScale.y - value: 2.5 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalScale.z - value: 2.5 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalPosition.x - value: -0.05 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 919132149155446097, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_Name - value: icosphere_80t (1) - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 7afab42407903c8439480fb1c8280161, type: 3} ---- !u!4 &4785845173201843228 stripped + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975766535982195} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 49fe1b9ea40086244a539f576e425aa1, type: 3} + m_Name: + m_EditorClassIdentifier: + HP: 0 + virtuality: 0 + x: 0 + cageRadius: 0 + color: 0 +--- !u!114 &3664865371327439078 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6972975766535982195} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 064c76acb20ef95468574513385756dd, type: 3} + m_Name: + m_EditorClassIdentifier: + A: 3 + B: 1.8 + C: 2.9 + threshold: 100000 + fluxCenter: {fileID: 7010178284438975856} + scale: 0.1 +--- !u!1 &7010178284438975856 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7204467036606809151} + m_Layer: 0 + m_Name: Tube Holder + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7204467036606809151 Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - m_PrefabInstance: {fileID: 5035030608486323191} + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} ---- !u!1001 &5241105946484926882 -PrefabInstance: + m_GameObject: {fileID: 7010178284438975856} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 6972975765157242127} + m_Father: {fileID: 6972975766535982204} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7094927044181864672 +GameObject: m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 3289192305496122577} - m_Modifications: - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_RootOrder - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalScale.x - value: 2.5 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalScale.y - value: 2.5 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalScale.z - value: 2.5 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalPosition.x - value: 0.05 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.w - value: 1 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalRotation.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 919132149155446097, guid: 7afab42407903c8439480fb1c8280161, type: 3} - propertyPath: m_Name - value: icosphere_80t - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 7afab42407903c8439480fb1c8280161, type: 3} ---- !u!4 &5707924861877653065 stripped + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6928608323226882649} + - component: {fileID: 7429572203072583859} + m_Layer: 0 + m_Name: Spin + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6928608323226882649 Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} - m_PrefabInstance: {fileID: 5241105946484926882} + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} ---- !u!1001 &9036999658356224984 -PrefabInstance: + m_GameObject: {fileID: 7094927044181864672} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6972975765442666723} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!120 &7429572203072583859 +LineRenderer: m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 3289192305496122577} - m_Modifications: - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_RootOrder - value: 2 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalScale.x - value: 0.01 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalScale.y - value: 0.01 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalScale.z - value: 0.01 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalPosition.x - value: -0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalPosition.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalRotation.w - value: 0.7071068 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalRotation.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalRotation.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalRotation.z - value: 0.7071068 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalEulerAnglesHint.x - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalEulerAnglesHint.y - value: 0 - objectReference: {fileID: 0} - - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_LocalEulerAnglesHint.z - value: 90 - objectReference: {fileID: 0} - - target: {fileID: -7635826562936255635, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_Materials.Array.data[0] - value: - objectReference: {fileID: 2100000, guid: bbf56d9cfa1d4a9408d5cd44bf0644ed, type: 2} - - target: {fileID: 919132149155446097, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - propertyPath: m_Name - value: fluxtube - objectReference: {fileID: 0} - m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} ---- !u!4 &8855033658769888307 stripped + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7094927044181864672} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d5c3a44cc2ba84ae2985e6b6f3d7160c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: 0} + - {x: 0, y: 0, z: 1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.9175914, b: 0, a: 1} + key1: {r: 1, g: 0.9175914, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 +--- !u!1 &8898354432698229643 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3264993919490312295} + - component: {fileID: 6636655551898050428} + m_Layer: 0 + m_Name: Spin + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3264993919490312295 Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} - m_PrefabInstance: {fileID: 9036999658356224984} + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8898354432698229643} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 6972975765354548857} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!120 &6636655551898050428 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8898354432698229643} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d5c3a44cc2ba84ae2985e6b6f3d7160c, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_Positions: + - {x: 0, y: 0, z: -2} + - {x: 0, y: 0, z: -1} + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.1 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0.9175914, b: 0, a: 1} + key1: {r: 1, g: 0.9175914, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 0 + numCapVertices: 0 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 diff --git a/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab.meta b/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab.meta index 13e6ac19f..8e2533bc6 100644 --- a/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab.meta +++ b/Assets/Prefabs/Models/SeaQuark/SeaQuark.prefab.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: f58b8247b0000944a9347ea55abaea03 +guid: 87381a99f65d6a144b6fbd52f2b1ee2a PrefabImporter: externalObjects: {} userData: diff --git a/Assets/Prefabs/Models/SeaQuark/SeaQuarkOld.prefab b/Assets/Prefabs/Models/SeaQuark/SeaQuarkOld.prefab new file mode 100644 index 000000000..16a426286 --- /dev/null +++ b/Assets/Prefabs/Models/SeaQuark/SeaQuarkOld.prefab @@ -0,0 +1,261 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1 &5561600251957936904 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3289192305496122577} + m_Layer: 0 + m_Name: SeaQuark + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3289192305496122577 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5561600251957936904} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.883, y: 0.007, z: 0.306} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 5707924861877653065} + - {fileID: 4785845173201843228} + - {fileID: 8855033658769888307} + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1001 &5035030608486323191 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3289192305496122577} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalScale.x + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalScale.y + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalScale.z + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalPosition.x + value: -0.05 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_Name + value: icosphere_80t (1) + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 7afab42407903c8439480fb1c8280161, type: 3} +--- !u!4 &4785845173201843228 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + m_PrefabInstance: {fileID: 5035030608486323191} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &5241105946484926882 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3289192305496122577} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalScale.x + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalScale.y + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalScale.z + value: 2.5 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalPosition.x + value: 0.05 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 919132149155446097, guid: 7afab42407903c8439480fb1c8280161, type: 3} + propertyPath: m_Name + value: icosphere_80t + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 7afab42407903c8439480fb1c8280161, type: 3} +--- !u!4 &5707924861877653065 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 7afab42407903c8439480fb1c8280161, type: 3} + m_PrefabInstance: {fileID: 5241105946484926882} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &9036999658356224984 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 3289192305496122577} + m_Modifications: + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_RootOrder + value: 2 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalScale.x + value: 0.01 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalScale.y + value: 0.01 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalScale.z + value: 0.01 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalPosition.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalRotation.z + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 90 + objectReference: {fileID: 0} + - target: {fileID: -7635826562936255635, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_Materials.Array.data[0] + value: + objectReference: {fileID: 2100000, guid: bbf56d9cfa1d4a9408d5cd44bf0644ed, type: 2} + - target: {fileID: 919132149155446097, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + propertyPath: m_Name + value: fluxtube + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} +--- !u!4 &8855033658769888307 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 2c6dabfbac0c5864297e6cdf5960c328, type: 3} + m_PrefabInstance: {fileID: 9036999658356224984} + m_PrefabAsset: {fileID: 0} diff --git a/Assets/Prefabs/Models/SeaQuark/SeaQuarkOld.prefab.meta b/Assets/Prefabs/Models/SeaQuark/SeaQuarkOld.prefab.meta new file mode 100644 index 000000000..13e6ac19f --- /dev/null +++ b/Assets/Prefabs/Models/SeaQuark/SeaQuarkOld.prefab.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: f58b8247b0000944a9347ea55abaea03 +PrefabImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/.sample.json b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/.sample.json index 5f1b56969..709ba66b5 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/.sample.json +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/.sample.json @@ -1,4 +1,4 @@ -{ - "displayName": "Default Input Actions", - "description": "Default set of input actions and presets for use with XR Interaction Toolkit behaviors that utilize the Input System." -} +{ + "displayName": "Default Input Actions", + "description": "Default set of input actions and presets for use with XR Interaction Toolkit behaviors that utilize the Input System." +} diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset index 0533b6532..86824ecb2 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset @@ -1,125 +1,125 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!181963792 &2655988077585873504 -Preset: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: XRI Default Continuous Move - m_TargetType: - m_NativeTypeID: 114 - m_ManagedTypePPtr: {fileID: 11500000, guid: 0bf296fc962d7184ab14ad1841598d5f, - type: 3} - m_ManagedTypeFallback: - m_Properties: - - target: {fileID: 0} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorHideFlags - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorClassIdentifier - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_System - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_MoveSpeed - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableStrafe - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UseGravity - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_GravityApplicationMode - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ForwardSource - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_Name - value: Left Hand Move - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_Id - value: 75f1b245-c357-48c8-9acb-8967bec9dda2 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandMoveAction.m_Reference - value: - objectReference: {fileID: 6972639530819350904, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_Name - value: Right Hand Move - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_Id - value: 6bf6c732-e011-46b1-acc5-b649a4ec5f10 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandMoveAction.m_Reference - value: - objectReference: {fileID: -8198699208435500284, guid: c348712bda248c246b8c49b3db54643f, - type: 3} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: XRI Default Continuous Move + m_TargetType: + m_NativeTypeID: 114 + m_ManagedTypePPtr: {fileID: 11500000, guid: 0bf296fc962d7184ab14ad1841598d5f, + type: 3} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorHideFlags + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorClassIdentifier + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_System + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_MoveSpeed + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableStrafe + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UseGravity + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_GravityApplicationMode + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ForwardSource + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_Name + value: Left Hand Move + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_Id + value: 75f1b245-c357-48c8-9acb-8967bec9dda2 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandMoveAction.m_Reference + value: + objectReference: {fileID: 6972639530819350904, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_Name + value: Right Hand Move + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_Id + value: 6bf6c732-e011-46b1-acc5-b649a4ec5f10 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandMoveAction.m_Reference + value: + objectReference: {fileID: -8198699208435500284, guid: c348712bda248c246b8c49b3db54643f, + type: 3} diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset.meta b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset.meta index d47eaa11f..6ec78be43 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset.meta +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Move.preset.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 91f9da00cfdac5d49955df2d2d820b9c -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 91f9da00cfdac5d49955df2d2d820b9c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset index 92755dc44..06059a714 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset @@ -1,109 +1,109 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!181963792 &2655988077585873504 -Preset: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: XRI Default Continuous Turn - m_TargetType: - m_NativeTypeID: 114 - m_ManagedTypePPtr: {fileID: 11500000, guid: 919e39492806b334982b6b84c90dd927, - type: 3} - m_ManagedTypeFallback: - m_Properties: - - target: {fileID: 0} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorHideFlags - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorClassIdentifier - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_System - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TurnSpeed - value: 60 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_Name - value: Left Hand Turn - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_Id - value: b9ac2485-f305-451c-9106-d1d25cc235dc - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandTurnAction.m_Reference - value: - objectReference: {fileID: 1010738217276881514, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_Name - value: Right Hand Turn - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_Id - value: 93119ec4-ae3b-41c0-8fb4-7ff4c5e6f732 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandTurnAction.m_Reference - value: - objectReference: {fileID: -6493913391331992944, guid: c348712bda248c246b8c49b3db54643f, - type: 3} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: XRI Default Continuous Turn + m_TargetType: + m_NativeTypeID: 114 + m_ManagedTypePPtr: {fileID: 11500000, guid: 919e39492806b334982b6b84c90dd927, + type: 3} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorHideFlags + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorClassIdentifier + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_System + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TurnSpeed + value: 60 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_Name + value: Left Hand Turn + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_Id + value: b9ac2485-f305-451c-9106-d1d25cc235dc + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandTurnAction.m_Reference + value: + objectReference: {fileID: 1010738217276881514, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_Name + value: Right Hand Turn + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_Id + value: 93119ec4-ae3b-41c0-8fb4-7ff4c5e6f732 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandTurnAction.m_Reference + value: + objectReference: {fileID: -6493913391331992944, guid: c348712bda248c246b8c49b3db54643f, + type: 3} diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset.meta b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset.meta index 607bb11cd..a7e162631 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset.meta +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Continuous Turn.preset.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 0caad3af14f9a414dbdf25ed41e5aa47 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 0caad3af14f9a414dbdf25ed41e5aa47 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions index 5b4b19d51..9e7b7fa3a 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions @@ -1,984 +1,984 @@ -{ - "name": "XRI Default Input Actions", - "maps": [ - { - "name": "XRI HMD", - "id": "09ff3ccc-21b4-4346-a3a2-7c978b5af892", - "actions": [ - { - "name": "Position", - "type": "Value", - "id": "1a9029f8-7a46-46b9-9eff-e9ae8365f611", - "expectedControlType": "Vector3", - "processors": "", - "interactions": "" - }, - { - "name": "Rotation", - "type": "Value", - "id": "aed87fe6-2b01-4dd2-a8fa-195578fd8158", - "expectedControlType": "Quaternion", - "processors": "", - "interactions": "" - } - ], - "bindings": [ - { - "name": "", - "id": "cff1f981-6e1f-4e2c-a90c-715a0ea2e80e", - "path": "/centerEyePosition", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "e2017383-a3f6-4c46-acb1-012b8eece9cc", - "path": "/centerEyeRotation", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": false - } - ] - }, - { - "name": "XRI LeftHand", - "id": "5fe596f9-1b7b-49b7-80a7-3b5195caf74d", - "actions": [ - { - "name": "Position", - "type": "Value", - "id": "83a7af0b-87e3-42c3-a909-95fbf8091e4f", - "expectedControlType": "Vector3", - "processors": "", - "interactions": "" - }, - { - "name": "Rotation", - "type": "Value", - "id": "cb6b7130-2bac-4ef7-abe4-6991ae7d419d", - "expectedControlType": "Quaternion", - "processors": "", - "interactions": "" - }, - { - "name": "Select", - "type": "Button", - "id": "33754c03-48ec-46ef-9bc6-22ed6bfdd8e8", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Activate", - "type": "Button", - "id": "0c0991c5-d329-4afc-8892-1076b440477c", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "UI Press", - "type": "Button", - "id": "7e1eced7-c774-4fe5-be8f-d8711f646d9e", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Haptic Device", - "type": "PassThrough", - "id": "664a62b0-e178-421d-b3f8-014eec01591d", - "expectedControlType": "", - "processors": "", - "interactions": "" - }, - { - "name": "Teleport Select", - "type": "Button", - "id": "cbeaf823-3b69-4004-8ec8-13ea2ca3fc31", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Teleport Mode Activate", - "type": "Button", - "id": "a21db72c-4843-4839-b4d0-3ce8d287cb86", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Teleport Mode Cancel", - "type": "Button", - "id": "89ce8348-6001-41a3-85b9-f8f2e2dcad7c", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Turn", - "type": "Value", - "id": "9164e093-ebd4-4923-af32-1b52f31c2d66", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - }, - { - "name": "Move", - "type": "Value", - "id": "9693e25f-8a4f-4aed-842f-3961243c69a1", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - }, - { - "name": "Rotate Anchor", - "type": "Value", - "id": "21b75b25-12ad-410f-b4f8-a7745b7aca27", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - }, - { - "name": "Translate Anchor", - "type": "Value", - "id": "bfa204c7-3c92-4193-bad1-39eb71920042", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - } - ], - "bindings": [ - { - "name": "", - "id": "b34c79c1-ab5e-4851-87ac-abc43705eae0", - "path": "{LeftHand}/triggerPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "UI Press", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "Quaternion Fallback", - "id": "61466a56-4ee4-47b1-aa6a-4806de1de5f2", - "path": "QuaternionFallback", - "interactions": "", - "processors": "", - "groups": "", - "action": "Rotation", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "first", - "id": "afdcfbff-e241-4fdd-a6d1-23b0bf273360", - "path": "{LeftHand}/pointerRotation", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "second", - "id": "ed03d944-4c09-4c38-8b68-5c844e18ca7c", - "path": "{LeftHand}/deviceRotation", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "third", - "id": "c98fc8c8-7fc6-4909-89b6-c5b7568e7275", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "", - "id": "8da6ed3a-f621-49fe-8c76-1f6b7d7754d6", - "path": "{LeftHand}/Primary2DAxis", - "interactions": "Sector(directions=1)", - "processors": "", - "groups": "Noncontinuous Move", - "action": "Teleport Mode Activate", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "b8edee81-6779-4aa8-89cd-29b149a8f55e", - "path": "{LeftHand}/primaryButton", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Mode Activate", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "b8aebee7-fa03-43d4-bfb7-77a3f87452cc", - "path": "{LeftHand}/gripPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Mode Cancel", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "95fa1419-ca7b-4c8a-8d15-7d46e58d82e3", - "path": "{LeftHand}/Primary2DAxis", - "interactions": "Sector(directions=-1,sweepBehavior=3)", - "processors": "", - "groups": "Noncontinuous Move", - "action": "Teleport Select", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "14a27f53-867e-4d15-92d9-3e36deb55b1b", - "path": "{LeftHand}/primaryButton", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Select", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "Vector 3 Fallback", - "id": "14aeff85-d719-43ff-a124-b1cd7ca8686d", - "path": "Vector3Fallback", - "interactions": "", - "processors": "", - "groups": "", - "action": "Position", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "first", - "id": "abf752ec-feee-4d51-b530-f0870f48acc9", - "path": "{LeftHand}/pointerPosition", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "second", - "id": "6580b669-0651-401c-9779-85ef22689130", - "path": "{LeftHand}/devicePosition", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "third", - "id": "ae101942-9eaa-4c53-a388-cafc3fd89bdf", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "", - "id": "71a4d23f-3e9a-4513-923b-ba388c5e84bf", - "path": "{LeftHand}/gripPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Select", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "487f4f2e-9e9b-49aa-b0f2-4037a24624f5", - "path": "{LeftHand}/triggerPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Activate", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "99cb7ad1-51ec-4611-af68-92a85f2c17d6", - "path": "{LeftHand}/Primary2DAxis", - "interactions": "Sector(directions=12,sweepBehavior=1)", - "processors": "", - "groups": "Noncontinuous Move", - "action": "Turn", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "034c3ced-8f2c-44ce-892e-678ca433265b", - "path": "{LeftHand}/Primary2DAxis", - "interactions": "Sector(directions=2,sweepBehavior=2)", - "processors": "", - "groups": "Noncontinuous Move", - "action": "Turn", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "8e383b1a-270f-4c20-819b-89a59cffb498", - "path": "{LeftHand}/Primary2DAxis", - "interactions": "", - "processors": "StickDeadzone", - "groups": "Continuous Move", - "action": "Move", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "acdf9550-5529-4ff7-8558-73ecdf0d75bd", - "path": "{LeftHand}/*", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Haptic Device", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "2D Vector", - "id": "de8136fd-5b07-4794-bb96-63c6027cf1b6", - "path": "2DVector(mode=2)", - "interactions": "", - "processors": "StickDeadzone", - "groups": "", - "action": "Rotate Anchor", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "up", - "id": "529c0dda-d254-4a71-8aa8-7dbdeabbe45d", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "down", - "id": "dad37c56-3fcd-4890-98bf-e06f80ba76ff", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "left", - "id": "e0dd3431-14bb-4817-ac71-ed700d5af1ca", - "path": "{LeftHand}/Primary2DAxis/x", - "interactions": "", - "processors": "Clamp(min=-1),Invert", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "right", - "id": "0064f189-a00e-4cf8-9f53-be76a30cb97f", - "path": "{LeftHand}/Primary2DAxis/x", - "interactions": "", - "processors": "Clamp(max=1)", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "2D Vector", - "id": "44d142b3-f6ac-4d08-8bd1-fac53cf9bb9e", - "path": "2DVector(mode=2)", - "interactions": "", - "processors": "StickDeadzone", - "groups": "", - "action": "Translate Anchor", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "up", - "id": "b1dbcb6a-408c-413c-b2d1-7a10fe418324", - "path": "{LeftHand}/Primary2DAxis/y", - "interactions": "", - "processors": "Clamp(max=1)", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "down", - "id": "0e38a62a-8bee-4853-b87a-1af460e3ec33", - "path": "{LeftHand}/Primary2DAxis/y", - "interactions": "", - "processors": "Clamp(min=-1),Invert", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "left", - "id": "2f25805f-44a3-4716-983c-532473bcc03c", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "right", - "id": "d97ccaa1-79ae-4ca7-b7dd-be5ce92c94a6", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - } - ] - }, - { - "name": "XRI RightHand", - "id": "7960f8ef-2bf3-4281-aecc-4c03809d6c8c", - "actions": [ - { - "name": "Position", - "type": "Value", - "id": "c4990d70-7b8a-4ce1-b03c-da86716b8352", - "expectedControlType": "Vector3", - "processors": "", - "interactions": "" - }, - { - "name": "Rotation", - "type": "Value", - "id": "ee6bf5bf-bb0a-4a50-8327-cb654b19e298", - "expectedControlType": "Quaternion", - "processors": "", - "interactions": "" - }, - { - "name": "Select", - "type": "Button", - "id": "ac96c10b-c955-4a46-8e67-bf16bc069b53", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Activate", - "type": "Button", - "id": "41976d89-60de-4deb-bff9-16b4af96b290", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "UI Press", - "type": "Button", - "id": "65174b45-c2ee-4f90-93bb-fb4084eaaab3", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Haptic Device", - "type": "PassThrough", - "id": "57b2a1b4-3290-46d6-ac07-4854ee8f91b1", - "expectedControlType": "", - "processors": "", - "interactions": "" - }, - { - "name": "Teleport Select", - "type": "Button", - "id": "02e43582-8973-4940-af06-dff6158e3df2", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Teleport Mode Activate", - "type": "Button", - "id": "a6c7231d-c55d-4dd4-9e87-877bb5522ef5", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Teleport Mode Cancel", - "type": "Button", - "id": "d587b60c-39a0-4365-8075-477ce484ba0f", - "expectedControlType": "Button", - "processors": "", - "interactions": "" - }, - { - "name": "Turn", - "type": "Value", - "id": "9fb2eb2b-2fb6-4328-8167-10a1bf11b424", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - }, - { - "name": "Move", - "type": "Value", - "id": "00a4dc9f-1ee6-4349-b0e9-72d5dccaadd6", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - }, - { - "name": "Rotate Anchor", - "type": "Value", - "id": "9b5d8312-f609-4895-b70f-81a722b2ae11", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - }, - { - "name": "Translate Anchor", - "type": "Value", - "id": "6f7cf253-7062-443b-b10f-2be48a33f027", - "expectedControlType": "Vector2", - "processors": "", - "interactions": "" - } - ], - "bindings": [ - { - "name": "", - "id": "fa59aed1-ae0b-4074-a58c-294b85f46228", - "path": "{RightHand}/triggerPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Activate", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "Quaternion Fallback", - "id": "84e51e1c-1b95-4f3e-a61f-29da6c1f0816", - "path": "QuaternionFallback", - "interactions": "", - "processors": "", - "groups": "", - "action": "Rotation", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "first", - "id": "3722d501-eb80-4f61-9361-08a5ea7a1394", - "path": "{RightHand}/pointerRotation", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "second", - "id": "2e6ad191-d5aa-4919-aac6-295c83387a72", - "path": "{RightHand}/deviceRotation", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "third", - "id": "b9ecb60d-341e-47cf-b50a-41d5815af8b0", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotation", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "", - "id": "62690862-4688-4010-975b-b3d9c6062157", - "path": "{RightHand}/Primary2DAxis", - "interactions": "Sector(directions=1)", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Mode Activate", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "90efd65e-3290-4798-af15-21ab4d7848b5", - "path": "{RightHand}/primaryButton", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Mode Activate", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "de466e6e-12bf-46a1-b0fd-ffbc343f3399", - "path": "{RightHand}/gripPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Mode Cancel", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "919c4a6c-22ed-4083-8e14-f30e91ff59fe", - "path": "{RightHand}/Primary2DAxis", - "interactions": "Sector(directions=-1,sweepBehavior=3)", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Select", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "f7e6d19f-8306-47c9-8ca9-d3b6137565dc", - "path": "{RightHand}/primaryButton", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Teleport Select", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "Vector 3 Fallback", - "id": "74e968f1-ad08-4a82-a68d-764517faecef", - "path": "Vector3Fallback", - "interactions": "", - "processors": "", - "groups": "", - "action": "Position", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "first", - "id": "9717e367-64a4-440a-9974-1e641d753eb2", - "path": "{RightHand}/pointerPosition", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "second", - "id": "0794a41d-29ef-48ec-a452-6b7de29b52fa", - "path": "{RightHand}/devicePosition", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "third", - "id": "3ef0a781-60c5-48bc-a584-f95553f8ae0a", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Position", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "", - "id": "1ce80054-410d-4112-a332-50faa7fb4f23", - "path": "{RightHand}/gripPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Select", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "92bb5b8f-bf48-4dab-af05-50a865773895", - "path": "{RightHand}/triggerPressed", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "UI Press", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "d6c08c3d-3d41-4695-994d-1ac9016a5a9e", - "path": "{RightHand}/Primary2DAxis", - "interactions": "Sector(directions=12,sweepBehavior=1)", - "processors": "", - "groups": "Generic XR Controller", - "action": "Turn", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "70f78baa-0f00-4d32-a2b6-ea9e2090ecc2", - "path": "{RightHand}/Primary2DAxis", - "interactions": "Sector(directions=2,sweepBehavior=2)", - "processors": "", - "groups": "Generic XR Controller", - "action": "Turn", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "", - "id": "6011e1e6-b2dd-4cb1-8da5-29b03868f2c5", - "path": "{RightHand}/*", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Haptic Device", - "isComposite": false, - "isPartOfComposite": false - }, - { - "name": "2D Vector", - "id": "61502e80-1b21-4116-890c-c0bc31c9dffd", - "path": "2DVector(mode=2)", - "interactions": "", - "processors": "StickDeadzone", - "groups": "", - "action": "Rotate Anchor", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "up", - "id": "2b466c01-134f-40f2-b376-f7e9684e423b", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "down", - "id": "79757cb3-5b81-4a3d-bc3c-d2582f85d5db", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "left", - "id": "76425f70-54b8-4f8e-ad52-94debc75962c", - "path": "{RightHand}/Primary2DAxis/x", - "interactions": "", - "processors": "Clamp(min=-1),Invert", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "right", - "id": "8df952de-cf29-4b5e-9a90-a6b4eee7f52c", - "path": "{RightHand}/Primary2DAxis/x", - "interactions": "", - "processors": "Clamp(max=1)", - "groups": "Generic XR Controller", - "action": "Rotate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "2D Vector", - "id": "a4b1434f-f204-49c4-bcea-c25e321e93eb", - "path": "2DVector(mode=2)", - "interactions": "", - "processors": "StickDeadzone", - "groups": "", - "action": "Translate Anchor", - "isComposite": true, - "isPartOfComposite": false - }, - { - "name": "up", - "id": "4ced8328-f738-4bbd-937a-c09019acd234", - "path": "{RightHand}/Primary2DAxis/y", - "interactions": "", - "processors": "Clamp(max=1)", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "down", - "id": "f7e89e7c-f5a9-4f42-914f-945815a49033", - "path": "{RightHand}/Primary2DAxis/y", - "interactions": "", - "processors": "Clamp(min=-1),Invert", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "left", - "id": "df3b3e57-34c6-4200-b00e-6617123a9680", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - }, - { - "name": "right", - "id": "54ddc99c-3e9a-4c3a-9fdd-f5fb15952af4", - "path": "", - "interactions": "", - "processors": "", - "groups": "Generic XR Controller", - "action": "Translate Anchor", - "isComposite": false, - "isPartOfComposite": true - } - ] - } - ], - "controlSchemes": [ - { - "name": "Generic XR Controller", - "bindingGroup": "Generic XR Controller", - "devices": [ - { - "devicePath": "{LeftHand}", - "isOptional": true, - "isOR": false - }, - { - "devicePath": "{RightHand}", - "isOptional": true, - "isOR": false - }, - { - "devicePath": "", - "isOptional": true, - "isOR": false - }, - { - "devicePath": "", - "isOptional": true, - "isOR": false - } - ] - }, - { - "name": "Continuous Move", - "bindingGroup": "Continuous Move", - "devices": [ - { - "devicePath": "{LeftHand}", - "isOptional": false, - "isOR": false - }, - { - "devicePath": "{RightHand}", - "isOptional": false, - "isOR": false - } - ] - }, - { - "name": "Noncontinuous Move", - "bindingGroup": "Noncontinuous Move", - "devices": [ - { - "devicePath": "{LeftHand}", - "isOptional": false, - "isOR": false - }, - { - "devicePath": "{RightHand}", - "isOptional": false, - "isOR": false - } - ] - } - ] +{ + "name": "XRI Default Input Actions", + "maps": [ + { + "name": "XRI HMD", + "id": "09ff3ccc-21b4-4346-a3a2-7c978b5af892", + "actions": [ + { + "name": "Position", + "type": "Value", + "id": "1a9029f8-7a46-46b9-9eff-e9ae8365f611", + "expectedControlType": "Vector3", + "processors": "", + "interactions": "" + }, + { + "name": "Rotation", + "type": "Value", + "id": "aed87fe6-2b01-4dd2-a8fa-195578fd8158", + "expectedControlType": "Quaternion", + "processors": "", + "interactions": "" + } + ], + "bindings": [ + { + "name": "", + "id": "cff1f981-6e1f-4e2c-a90c-715a0ea2e80e", + "path": "/centerEyePosition", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "e2017383-a3f6-4c46-acb1-012b8eece9cc", + "path": "/centerEyeRotation", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": false + } + ] + }, + { + "name": "XRI LeftHand", + "id": "5fe596f9-1b7b-49b7-80a7-3b5195caf74d", + "actions": [ + { + "name": "Position", + "type": "Value", + "id": "83a7af0b-87e3-42c3-a909-95fbf8091e4f", + "expectedControlType": "Vector3", + "processors": "", + "interactions": "" + }, + { + "name": "Rotation", + "type": "Value", + "id": "cb6b7130-2bac-4ef7-abe4-6991ae7d419d", + "expectedControlType": "Quaternion", + "processors": "", + "interactions": "" + }, + { + "name": "Select", + "type": "Button", + "id": "33754c03-48ec-46ef-9bc6-22ed6bfdd8e8", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Activate", + "type": "Button", + "id": "0c0991c5-d329-4afc-8892-1076b440477c", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "UI Press", + "type": "Button", + "id": "7e1eced7-c774-4fe5-be8f-d8711f646d9e", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Haptic Device", + "type": "PassThrough", + "id": "664a62b0-e178-421d-b3f8-014eec01591d", + "expectedControlType": "", + "processors": "", + "interactions": "" + }, + { + "name": "Teleport Select", + "type": "Button", + "id": "cbeaf823-3b69-4004-8ec8-13ea2ca3fc31", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Teleport Mode Activate", + "type": "Button", + "id": "a21db72c-4843-4839-b4d0-3ce8d287cb86", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Teleport Mode Cancel", + "type": "Button", + "id": "89ce8348-6001-41a3-85b9-f8f2e2dcad7c", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Turn", + "type": "Value", + "id": "9164e093-ebd4-4923-af32-1b52f31c2d66", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + }, + { + "name": "Move", + "type": "Value", + "id": "9693e25f-8a4f-4aed-842f-3961243c69a1", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + }, + { + "name": "Rotate Anchor", + "type": "Value", + "id": "21b75b25-12ad-410f-b4f8-a7745b7aca27", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + }, + { + "name": "Translate Anchor", + "type": "Value", + "id": "bfa204c7-3c92-4193-bad1-39eb71920042", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + } + ], + "bindings": [ + { + "name": "", + "id": "b34c79c1-ab5e-4851-87ac-abc43705eae0", + "path": "{LeftHand}/triggerPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "UI Press", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "Quaternion Fallback", + "id": "61466a56-4ee4-47b1-aa6a-4806de1de5f2", + "path": "QuaternionFallback", + "interactions": "", + "processors": "", + "groups": "", + "action": "Rotation", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "first", + "id": "afdcfbff-e241-4fdd-a6d1-23b0bf273360", + "path": "{LeftHand}/pointerRotation", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "second", + "id": "ed03d944-4c09-4c38-8b68-5c844e18ca7c", + "path": "{LeftHand}/deviceRotation", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "third", + "id": "c98fc8c8-7fc6-4909-89b6-c5b7568e7275", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "8da6ed3a-f621-49fe-8c76-1f6b7d7754d6", + "path": "{LeftHand}/Primary2DAxis", + "interactions": "Sector(directions=1)", + "processors": "", + "groups": "Noncontinuous Move", + "action": "Teleport Mode Activate", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "b8edee81-6779-4aa8-89cd-29b149a8f55e", + "path": "{LeftHand}/primaryButton", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Mode Activate", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "b8aebee7-fa03-43d4-bfb7-77a3f87452cc", + "path": "{LeftHand}/gripPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Mode Cancel", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "95fa1419-ca7b-4c8a-8d15-7d46e58d82e3", + "path": "{LeftHand}/Primary2DAxis", + "interactions": "Sector(directions=-1,sweepBehavior=3)", + "processors": "", + "groups": "Noncontinuous Move", + "action": "Teleport Select", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "14a27f53-867e-4d15-92d9-3e36deb55b1b", + "path": "{LeftHand}/primaryButton", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Select", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "Vector 3 Fallback", + "id": "14aeff85-d719-43ff-a124-b1cd7ca8686d", + "path": "Vector3Fallback", + "interactions": "", + "processors": "", + "groups": "", + "action": "Position", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "first", + "id": "abf752ec-feee-4d51-b530-f0870f48acc9", + "path": "{LeftHand}/pointerPosition", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "second", + "id": "6580b669-0651-401c-9779-85ef22689130", + "path": "{LeftHand}/devicePosition", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "third", + "id": "ae101942-9eaa-4c53-a388-cafc3fd89bdf", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "71a4d23f-3e9a-4513-923b-ba388c5e84bf", + "path": "{LeftHand}/gripPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Select", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "487f4f2e-9e9b-49aa-b0f2-4037a24624f5", + "path": "{LeftHand}/triggerPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Activate", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "99cb7ad1-51ec-4611-af68-92a85f2c17d6", + "path": "{LeftHand}/Primary2DAxis", + "interactions": "Sector(directions=12,sweepBehavior=1)", + "processors": "", + "groups": "Noncontinuous Move", + "action": "Turn", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "034c3ced-8f2c-44ce-892e-678ca433265b", + "path": "{LeftHand}/Primary2DAxis", + "interactions": "Sector(directions=2,sweepBehavior=2)", + "processors": "", + "groups": "Noncontinuous Move", + "action": "Turn", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "8e383b1a-270f-4c20-819b-89a59cffb498", + "path": "{LeftHand}/Primary2DAxis", + "interactions": "", + "processors": "StickDeadzone", + "groups": "Continuous Move", + "action": "Move", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "acdf9550-5529-4ff7-8558-73ecdf0d75bd", + "path": "{LeftHand}/*", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Haptic Device", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "2D Vector", + "id": "de8136fd-5b07-4794-bb96-63c6027cf1b6", + "path": "2DVector(mode=2)", + "interactions": "", + "processors": "StickDeadzone", + "groups": "", + "action": "Rotate Anchor", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "529c0dda-d254-4a71-8aa8-7dbdeabbe45d", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "dad37c56-3fcd-4890-98bf-e06f80ba76ff", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "e0dd3431-14bb-4817-ac71-ed700d5af1ca", + "path": "{LeftHand}/Primary2DAxis/x", + "interactions": "", + "processors": "Clamp(min=-1),Invert", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "0064f189-a00e-4cf8-9f53-be76a30cb97f", + "path": "{LeftHand}/Primary2DAxis/x", + "interactions": "", + "processors": "Clamp(max=1)", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "2D Vector", + "id": "44d142b3-f6ac-4d08-8bd1-fac53cf9bb9e", + "path": "2DVector(mode=2)", + "interactions": "", + "processors": "StickDeadzone", + "groups": "", + "action": "Translate Anchor", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "b1dbcb6a-408c-413c-b2d1-7a10fe418324", + "path": "{LeftHand}/Primary2DAxis/y", + "interactions": "", + "processors": "Clamp(max=1)", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "0e38a62a-8bee-4853-b87a-1af460e3ec33", + "path": "{LeftHand}/Primary2DAxis/y", + "interactions": "", + "processors": "Clamp(min=-1),Invert", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "2f25805f-44a3-4716-983c-532473bcc03c", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "d97ccaa1-79ae-4ca7-b7dd-be5ce92c94a6", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + } + ] + }, + { + "name": "XRI RightHand", + "id": "7960f8ef-2bf3-4281-aecc-4c03809d6c8c", + "actions": [ + { + "name": "Position", + "type": "Value", + "id": "c4990d70-7b8a-4ce1-b03c-da86716b8352", + "expectedControlType": "Vector3", + "processors": "", + "interactions": "" + }, + { + "name": "Rotation", + "type": "Value", + "id": "ee6bf5bf-bb0a-4a50-8327-cb654b19e298", + "expectedControlType": "Quaternion", + "processors": "", + "interactions": "" + }, + { + "name": "Select", + "type": "Button", + "id": "ac96c10b-c955-4a46-8e67-bf16bc069b53", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Activate", + "type": "Button", + "id": "41976d89-60de-4deb-bff9-16b4af96b290", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "UI Press", + "type": "Button", + "id": "65174b45-c2ee-4f90-93bb-fb4084eaaab3", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Haptic Device", + "type": "PassThrough", + "id": "57b2a1b4-3290-46d6-ac07-4854ee8f91b1", + "expectedControlType": "", + "processors": "", + "interactions": "" + }, + { + "name": "Teleport Select", + "type": "Button", + "id": "02e43582-8973-4940-af06-dff6158e3df2", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Teleport Mode Activate", + "type": "Button", + "id": "a6c7231d-c55d-4dd4-9e87-877bb5522ef5", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Teleport Mode Cancel", + "type": "Button", + "id": "d587b60c-39a0-4365-8075-477ce484ba0f", + "expectedControlType": "Button", + "processors": "", + "interactions": "" + }, + { + "name": "Turn", + "type": "Value", + "id": "9fb2eb2b-2fb6-4328-8167-10a1bf11b424", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + }, + { + "name": "Move", + "type": "Value", + "id": "00a4dc9f-1ee6-4349-b0e9-72d5dccaadd6", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + }, + { + "name": "Rotate Anchor", + "type": "Value", + "id": "9b5d8312-f609-4895-b70f-81a722b2ae11", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + }, + { + "name": "Translate Anchor", + "type": "Value", + "id": "6f7cf253-7062-443b-b10f-2be48a33f027", + "expectedControlType": "Vector2", + "processors": "", + "interactions": "" + } + ], + "bindings": [ + { + "name": "", + "id": "fa59aed1-ae0b-4074-a58c-294b85f46228", + "path": "{RightHand}/triggerPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Activate", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "Quaternion Fallback", + "id": "84e51e1c-1b95-4f3e-a61f-29da6c1f0816", + "path": "QuaternionFallback", + "interactions": "", + "processors": "", + "groups": "", + "action": "Rotation", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "first", + "id": "3722d501-eb80-4f61-9361-08a5ea7a1394", + "path": "{RightHand}/pointerRotation", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "second", + "id": "2e6ad191-d5aa-4919-aac6-295c83387a72", + "path": "{RightHand}/deviceRotation", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "third", + "id": "b9ecb60d-341e-47cf-b50a-41d5815af8b0", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotation", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "62690862-4688-4010-975b-b3d9c6062157", + "path": "{RightHand}/Primary2DAxis", + "interactions": "Sector(directions=1)", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Mode Activate", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "90efd65e-3290-4798-af15-21ab4d7848b5", + "path": "{RightHand}/primaryButton", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Mode Activate", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "de466e6e-12bf-46a1-b0fd-ffbc343f3399", + "path": "{RightHand}/gripPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Mode Cancel", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "919c4a6c-22ed-4083-8e14-f30e91ff59fe", + "path": "{RightHand}/Primary2DAxis", + "interactions": "Sector(directions=-1,sweepBehavior=3)", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Select", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "f7e6d19f-8306-47c9-8ca9-d3b6137565dc", + "path": "{RightHand}/primaryButton", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Teleport Select", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "Vector 3 Fallback", + "id": "74e968f1-ad08-4a82-a68d-764517faecef", + "path": "Vector3Fallback", + "interactions": "", + "processors": "", + "groups": "", + "action": "Position", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "first", + "id": "9717e367-64a4-440a-9974-1e641d753eb2", + "path": "{RightHand}/pointerPosition", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "second", + "id": "0794a41d-29ef-48ec-a452-6b7de29b52fa", + "path": "{RightHand}/devicePosition", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "third", + "id": "3ef0a781-60c5-48bc-a584-f95553f8ae0a", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Position", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "", + "id": "1ce80054-410d-4112-a332-50faa7fb4f23", + "path": "{RightHand}/gripPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Select", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "92bb5b8f-bf48-4dab-af05-50a865773895", + "path": "{RightHand}/triggerPressed", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "UI Press", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "d6c08c3d-3d41-4695-994d-1ac9016a5a9e", + "path": "{RightHand}/Primary2DAxis", + "interactions": "Sector(directions=12,sweepBehavior=1)", + "processors": "", + "groups": "Generic XR Controller", + "action": "Turn", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "70f78baa-0f00-4d32-a2b6-ea9e2090ecc2", + "path": "{RightHand}/Primary2DAxis", + "interactions": "Sector(directions=2,sweepBehavior=2)", + "processors": "", + "groups": "Generic XR Controller", + "action": "Turn", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "", + "id": "6011e1e6-b2dd-4cb1-8da5-29b03868f2c5", + "path": "{RightHand}/*", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Haptic Device", + "isComposite": false, + "isPartOfComposite": false + }, + { + "name": "2D Vector", + "id": "61502e80-1b21-4116-890c-c0bc31c9dffd", + "path": "2DVector(mode=2)", + "interactions": "", + "processors": "StickDeadzone", + "groups": "", + "action": "Rotate Anchor", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "2b466c01-134f-40f2-b376-f7e9684e423b", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "79757cb3-5b81-4a3d-bc3c-d2582f85d5db", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "76425f70-54b8-4f8e-ad52-94debc75962c", + "path": "{RightHand}/Primary2DAxis/x", + "interactions": "", + "processors": "Clamp(min=-1),Invert", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "8df952de-cf29-4b5e-9a90-a6b4eee7f52c", + "path": "{RightHand}/Primary2DAxis/x", + "interactions": "", + "processors": "Clamp(max=1)", + "groups": "Generic XR Controller", + "action": "Rotate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "2D Vector", + "id": "a4b1434f-f204-49c4-bcea-c25e321e93eb", + "path": "2DVector(mode=2)", + "interactions": "", + "processors": "StickDeadzone", + "groups": "", + "action": "Translate Anchor", + "isComposite": true, + "isPartOfComposite": false + }, + { + "name": "up", + "id": "4ced8328-f738-4bbd-937a-c09019acd234", + "path": "{RightHand}/Primary2DAxis/y", + "interactions": "", + "processors": "Clamp(max=1)", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "down", + "id": "f7e89e7c-f5a9-4f42-914f-945815a49033", + "path": "{RightHand}/Primary2DAxis/y", + "interactions": "", + "processors": "Clamp(min=-1),Invert", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "left", + "id": "df3b3e57-34c6-4200-b00e-6617123a9680", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + }, + { + "name": "right", + "id": "54ddc99c-3e9a-4c3a-9fdd-f5fb15952af4", + "path": "", + "interactions": "", + "processors": "", + "groups": "Generic XR Controller", + "action": "Translate Anchor", + "isComposite": false, + "isPartOfComposite": true + } + ] + } + ], + "controlSchemes": [ + { + "name": "Generic XR Controller", + "bindingGroup": "Generic XR Controller", + "devices": [ + { + "devicePath": "{LeftHand}", + "isOptional": true, + "isOR": false + }, + { + "devicePath": "{RightHand}", + "isOptional": true, + "isOR": false + }, + { + "devicePath": "", + "isOptional": true, + "isOR": false + }, + { + "devicePath": "", + "isOptional": true, + "isOR": false + } + ] + }, + { + "name": "Continuous Move", + "bindingGroup": "Continuous Move", + "devices": [ + { + "devicePath": "{LeftHand}", + "isOptional": false, + "isOR": false + }, + { + "devicePath": "{RightHand}", + "isOptional": false, + "isOR": false + } + ] + }, + { + "name": "Noncontinuous Move", + "bindingGroup": "Noncontinuous Move", + "devices": [ + { + "devicePath": "{LeftHand}", + "isOptional": false, + "isOR": false + }, + { + "devicePath": "{RightHand}", + "isOptional": false, + "isOR": false + } + ] + } + ] } \ No newline at end of file diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions.meta b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions.meta index 621872e48..ade0a198f 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions.meta +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Input Actions.inputactions.meta @@ -1,14 +1,14 @@ -fileFormatVersion: 2 -guid: c348712bda248c246b8c49b3db54643f -ScriptedImporter: - internalIDToNameTable: [] - externalObjects: {} - serializedVersion: 2 - userData: - assetBundleName: - assetBundleVariant: - script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3} - generateWrapperCode: 0 - wrapperCodePath: - wrapperClassName: - wrapperCodeNamespace: +fileFormatVersion: 2 +guid: c348712bda248c246b8c49b3db54643f +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 8404be70184654265930450def6a9037, type: 3} + generateWrapperCode: 0 + wrapperCodePath: + wrapperClassName: + wrapperCodeNamespace: diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset index 638d38e4e..09aafe4b6 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset @@ -1,359 +1,359 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!181963792 &2655988077585873504 -Preset: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: XRI Default Left Controller - m_TargetType: - m_NativeTypeID: 114 - m_ManagedTypePPtr: {fileID: 11500000, guid: caff514de9b15ad48ab85dcff5508221, - type: 3} - m_ManagedTypeFallback: - m_Properties: - - target: {fileID: 0} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorHideFlags - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorClassIdentifier - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UpdateTrackingType - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableInputTracking - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableInputActions - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelPrefab - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelTransform - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_AnimateModel - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelSelectTransition - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelDeSelectTransition - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Name - value: Position - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Id - value: 26d2aaa4-6518-4d33-8fae-419043a723d4 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Reference - value: - objectReference: {fileID: -2024308242397127297, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Name - value: Rotation - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Id - value: d7a15530-737b-416a-9d5d-a8b51ba6c682 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Reference - value: - objectReference: {fileID: 8248158260566104461, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Name - value: Select - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Id - value: 05483079-4b7c-4369-9176-fb8514428e98 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Reference - value: - objectReference: {fileID: -6131295136447488360, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Name - value: Activate - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Id - value: 38e5c09b-96d2-40e4-ae8e-3bfb9eb16727 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Reference - value: - objectReference: {fileID: -5982496924579745919, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Name - value: UI Press - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Id - value: 347fe4ac-83bc-44f7-a0d2-2793a5775161 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Reference - value: - objectReference: {fileID: -6395602842196007441, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Name - value: Haptic Device - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Id - value: 35cfed17-bcaf-4ff9-9fe0-fa1727b7619b - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Reference - value: - objectReference: {fileID: -8785819595477538065, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Name - value: Rotate Anchor - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Id - value: 4fcd4b62-1769-4cc4-aaee-aea2fc40d24f - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Reference - value: - objectReference: {fileID: -7363382999065477798, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Name - value: Translate Anchor - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Id - value: 7bfe4461-8d15-4a61-9fa6-28ce950c9996 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Reference - value: - objectReference: {fileID: 7779212132400271959, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_ButtonPressPoint - value: 0.5 - objectReference: {fileID: 0} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: XRI Default Left Controller + m_TargetType: + m_NativeTypeID: 114 + m_ManagedTypePPtr: {fileID: 11500000, guid: caff514de9b15ad48ab85dcff5508221, + type: 3} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorHideFlags + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorClassIdentifier + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UpdateTrackingType + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableInputTracking + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableInputActions + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelPrefab + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelTransform + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_AnimateModel + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelSelectTransition + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelDeSelectTransition + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Name + value: Position + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Id + value: 26d2aaa4-6518-4d33-8fae-419043a723d4 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Reference + value: + objectReference: {fileID: -2024308242397127297, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Name + value: Rotation + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Id + value: d7a15530-737b-416a-9d5d-a8b51ba6c682 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Reference + value: + objectReference: {fileID: 8248158260566104461, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Name + value: Select + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Id + value: 05483079-4b7c-4369-9176-fb8514428e98 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Reference + value: + objectReference: {fileID: -6131295136447488360, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Name + value: Activate + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Id + value: 38e5c09b-96d2-40e4-ae8e-3bfb9eb16727 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Reference + value: + objectReference: {fileID: -5982496924579745919, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Name + value: UI Press + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Id + value: 347fe4ac-83bc-44f7-a0d2-2793a5775161 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Reference + value: + objectReference: {fileID: -6395602842196007441, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Name + value: Haptic Device + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Id + value: 35cfed17-bcaf-4ff9-9fe0-fa1727b7619b + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Reference + value: + objectReference: {fileID: -8785819595477538065, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Name + value: Rotate Anchor + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Id + value: 4fcd4b62-1769-4cc4-aaee-aea2fc40d24f + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Reference + value: + objectReference: {fileID: -7363382999065477798, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Name + value: Translate Anchor + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Id + value: 7bfe4461-8d15-4a61-9fa6-28ce950c9996 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Reference + value: + objectReference: {fileID: 7779212132400271959, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_ButtonPressPoint + value: 0.5 + objectReference: {fileID: 0} diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset.meta b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset.meta index 23df2224c..569f8bbc2 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset.meta +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Left Controller.preset.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: ffd8268f7307a0c48a067dad4a8fe060 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: ffd8268f7307a0c48a067dad4a8fe060 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset index 8d77cb2f6..30f39aff9 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset @@ -1,359 +1,359 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!181963792 &2655988077585873504 -Preset: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: XRI Default Right Controller - m_TargetType: - m_NativeTypeID: 114 - m_ManagedTypePPtr: {fileID: 11500000, guid: caff514de9b15ad48ab85dcff5508221, - type: 3} - m_ManagedTypeFallback: - m_Properties: - - target: {fileID: 0} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorHideFlags - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorClassIdentifier - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UpdateTrackingType - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableInputTracking - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableInputActions - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelPrefab - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelTransform - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_AnimateModel - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelSelectTransition - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ModelDeSelectTransition - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Name - value: Position - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Id - value: 93ead265-4bff-4199-8ddf-33c028dcfee9 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_PositionAction.m_Reference - value: - objectReference: {fileID: -3326005586356538449, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Name - value: Rotation - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Id - value: cd9a8368-32d3-4e58-86a0-6fe78d199369 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotationAction.m_Reference - value: - objectReference: {fileID: 5101698808175986029, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Name - value: Select - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Id - value: 3207346a-8b2f-4b24-b45a-90ea1cdef7fb - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_SelectAction.m_Reference - value: - objectReference: {fileID: 187161793506945269, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Name - value: Activate - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Id - value: ed3be3cd-637e-48d6-ae4b-dd97305eaa40 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_ActivateAction.m_Reference - value: - objectReference: {fileID: 83097790271614945, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Name - value: UI Press - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Id - value: 55ce5c5d-aad8-4ebf-9f21-899ff595a062 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_UIPressAction.m_Reference - value: - objectReference: {fileID: 3279264004350380116, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Name - value: Haptic Device - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Id - value: 60f81e0e-3fab-4e26-90b6-a5ab762e2bb1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_HapticDeviceAction.m_Reference - value: - objectReference: {fileID: -8222252007134549311, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Name - value: Rotate Anchor - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Id - value: aca8fec0-a925-428d-a6b7-25cfbd478258 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RotateAnchorAction.m_Reference - value: - objectReference: {fileID: -5913262927076077117, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Name - value: Translate Anchor - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Id - value: 161874b5-2545-4bb2-bea4-eeddeb4fabf6 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TranslateAnchorAction.m_Reference - value: - objectReference: {fileID: 875253871413052681, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_ButtonPressPoint - value: 0.5 - objectReference: {fileID: 0} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: XRI Default Right Controller + m_TargetType: + m_NativeTypeID: 114 + m_ManagedTypePPtr: {fileID: 11500000, guid: caff514de9b15ad48ab85dcff5508221, + type: 3} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorHideFlags + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorClassIdentifier + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UpdateTrackingType + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableInputTracking + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableInputActions + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelPrefab + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelTransform + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_AnimateModel + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelSelectTransition + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ModelDeSelectTransition + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Name + value: Position + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Id + value: 93ead265-4bff-4199-8ddf-33c028dcfee9 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_PositionAction.m_Reference + value: + objectReference: {fileID: -3326005586356538449, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Name + value: Rotation + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Id + value: cd9a8368-32d3-4e58-86a0-6fe78d199369 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotationAction.m_Reference + value: + objectReference: {fileID: 5101698808175986029, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Name + value: Select + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Id + value: 3207346a-8b2f-4b24-b45a-90ea1cdef7fb + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_SelectAction.m_Reference + value: + objectReference: {fileID: 187161793506945269, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Name + value: Activate + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Id + value: ed3be3cd-637e-48d6-ae4b-dd97305eaa40 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_ActivateAction.m_Reference + value: + objectReference: {fileID: 83097790271614945, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Name + value: UI Press + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Id + value: 55ce5c5d-aad8-4ebf-9f21-899ff595a062 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_UIPressAction.m_Reference + value: + objectReference: {fileID: 3279264004350380116, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Name + value: Haptic Device + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Id + value: 60f81e0e-3fab-4e26-90b6-a5ab762e2bb1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_HapticDeviceAction.m_Reference + value: + objectReference: {fileID: -8222252007134549311, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Name + value: Rotate Anchor + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Id + value: aca8fec0-a925-428d-a6b7-25cfbd478258 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RotateAnchorAction.m_Reference + value: + objectReference: {fileID: -5913262927076077117, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Name + value: Translate Anchor + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Id + value: 161874b5-2545-4bb2-bea4-eeddeb4fabf6 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TranslateAnchorAction.m_Reference + value: + objectReference: {fileID: 875253871413052681, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_ButtonPressPoint + value: 0.5 + objectReference: {fileID: 0} diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset.meta b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset.meta index 3e45cf75c..82b2e982e 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset.meta +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Right Controller.preset.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 1421ad86ff3787b4dae70fe9e699a25f -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 1421ad86ff3787b4dae70fe9e699a25f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset index b48934eed..1467a2c65 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset @@ -1,121 +1,121 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!181963792 &2655988077585873504 -Preset: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: XRI Default Snap Turn - m_TargetType: - m_NativeTypeID: 114 - m_ManagedTypePPtr: {fileID: 11500000, guid: 2213c36610e3b1c4bbf886810ed9db12, - type: 3} - m_ManagedTypeFallback: - m_Properties: - - target: {fileID: 0} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorHideFlags - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EditorClassIdentifier - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_System - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_TurnAmount - value: 45 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_DebounceTime - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableTurnLeftRight - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_EnableTurnAround - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Name - value: Left Hand Snap Turn - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Id - value: a1d07c24-ca50-422a-a23f-685d9fabf63b - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_LeftHandSnapTurnAction.m_Reference - value: - objectReference: {fileID: 1010738217276881514, guid: c348712bda248c246b8c49b3db54643f, - type: 3} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_UseReference - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_Name - value: Right Hand Snap Turn - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_Type - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_ExpectedControlType - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_Id - value: a7b54797-6974-4f75-81d0-42b9c15ef1e0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_Processors - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_Interactions - value: - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Action.m_SingletonActionBindings.Array.size - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 0} - propertyPath: m_RightHandSnapTurnAction.m_Reference - value: - objectReference: {fileID: -6493913391331992944, guid: c348712bda248c246b8c49b3db54643f, - type: 3} +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!181963792 &2655988077585873504 +Preset: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: XRI Default Snap Turn + m_TargetType: + m_NativeTypeID: 114 + m_ManagedTypePPtr: {fileID: 11500000, guid: 2213c36610e3b1c4bbf886810ed9db12, + type: 3} + m_ManagedTypeFallback: + m_Properties: + - target: {fileID: 0} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorHideFlags + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EditorClassIdentifier + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_System + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_TurnAmount + value: 45 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_DebounceTime + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableTurnLeftRight + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_EnableTurnAround + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Name + value: Left Hand Snap Turn + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Id + value: a1d07c24-ca50-422a-a23f-685d9fabf63b + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_LeftHandSnapTurnAction.m_Reference + value: + objectReference: {fileID: 1010738217276881514, guid: c348712bda248c246b8c49b3db54643f, + type: 3} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_UseReference + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_Name + value: Right Hand Snap Turn + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_Type + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_ExpectedControlType + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_Id + value: a7b54797-6974-4f75-81d0-42b9c15ef1e0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_Processors + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_Interactions + value: + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Action.m_SingletonActionBindings.Array.size + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 0} + propertyPath: m_RightHandSnapTurnAction.m_Reference + value: + objectReference: {fileID: -6493913391331992944, guid: c348712bda248c246b8c49b3db54643f, + type: 3} diff --git a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset.meta b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset.meta index dda21ddc4..db2471575 100644 --- a/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset.meta +++ b/Assets/Samples/XR Interaction Toolkit/1.0.0-pre.5/Default Input Actions/XRI Default Snap Turn.preset.meta @@ -1,8 +1,8 @@ -fileFormatVersion: 2 -guid: 18697d253d848974aa7052cba872c9f0 -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 0 - userData: - assetBundleName: - assetBundleVariant: +fileFormatVersion: 2 +guid: 18697d253d848974aa7052cba872c9f0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Field Testing.unity b/Assets/Scenes/Field Testing.unity new file mode 100644 index 000000000..6510ec369 --- /dev/null +++ b/Assets/Scenes/Field Testing.unity @@ -0,0 +1,999 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!29 &1 +OcclusionCullingSettings: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_OcclusionBakeSettings: + smallestOccluder: 5 + smallestHole: 0.25 + backfaceThreshold: 100 + m_SceneGUID: 00000000000000000000000000000000 + m_OcclusionCullingData: {fileID: 0} +--- !u!104 &2 +RenderSettings: + m_ObjectHideFlags: 0 + serializedVersion: 9 + m_Fog: 0 + m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} + m_FogMode: 3 + m_FogDensity: 0.01 + m_LinearFogStart: 0 + m_LinearFogEnd: 300 + m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} + m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} + m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} + m_AmbientIntensity: 1 + m_AmbientMode: 0 + m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} + m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} + m_HaloStrength: 0.5 + m_FlareStrength: 1 + m_FlareFadeSpeed: 3 + m_HaloTexture: {fileID: 0} + m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} + m_DefaultReflectionMode: 0 + m_DefaultReflectionResolution: 128 + m_ReflectionBounces: 1 + m_ReflectionIntensity: 1 + m_CustomReflection: {fileID: 0} + m_Sun: {fileID: 0} + m_IndirectSpecularColor: {r: 0, g: 0.99999905, b: 0.99999905, a: 1} + m_UseRadianceAmbientProbe: 0 +--- !u!157 &3 +LightmapSettings: + m_ObjectHideFlags: 0 + serializedVersion: 12 + m_GIWorkflowMode: 1 + m_GISettings: + serializedVersion: 2 + m_BounceScale: 1 + m_IndirectOutputScale: 1 + m_AlbedoBoost: 1 + m_EnvironmentLightingMode: 0 + m_EnableBakedLightmaps: 1 + m_EnableRealtimeLightmaps: 0 + m_LightmapEditorSettings: + serializedVersion: 12 + m_Resolution: 2 + m_BakeResolution: 40 + m_AtlasSize: 1024 + m_AO: 0 + m_AOMaxDistance: 1 + m_CompAOExponent: 1 + m_CompAOExponentDirect: 0 + m_ExtractAmbientOcclusion: 0 + m_Padding: 2 + m_LightmapParameters: {fileID: 0} + m_LightmapsBakeMode: 1 + m_TextureCompression: 1 + m_FinalGather: 0 + m_FinalGatherFiltering: 1 + m_FinalGatherRayCount: 256 + m_ReflectionCompression: 2 + m_MixedBakeMode: 2 + m_BakeBackend: 1 + m_PVRSampling: 1 + m_PVRDirectSampleCount: 32 + m_PVRSampleCount: 512 + m_PVRBounces: 2 + m_PVREnvironmentSampleCount: 256 + m_PVREnvironmentReferencePointCount: 2048 + m_PVRFilteringMode: 1 + m_PVRDenoiserTypeDirect: 1 + m_PVRDenoiserTypeIndirect: 1 + m_PVRDenoiserTypeAO: 1 + m_PVRFilterTypeDirect: 0 + m_PVRFilterTypeIndirect: 0 + m_PVRFilterTypeAO: 0 + m_PVREnvironmentMIS: 1 + m_PVRCulling: 1 + m_PVRFilteringGaussRadiusDirect: 1 + m_PVRFilteringGaussRadiusIndirect: 5 + m_PVRFilteringGaussRadiusAO: 2 + m_PVRFilteringAtrousPositionSigmaDirect: 0.5 + m_PVRFilteringAtrousPositionSigmaIndirect: 2 + m_PVRFilteringAtrousPositionSigmaAO: 1 + m_ExportTrainingData: 0 + m_TrainingDataDestination: TrainingData + m_LightProbeSampleCountMultiplier: 4 + m_LightingDataAsset: {fileID: 0} + m_LightingSettings: {fileID: 0} +--- !u!196 &4 +NavMeshSettings: + serializedVersion: 2 + m_ObjectHideFlags: 0 + m_BuildSettings: + serializedVersion: 2 + agentTypeID: 0 + agentRadius: 0.5 + agentHeight: 2 + agentSlope: 45 + agentClimb: 0.4 + ledgeDropHeight: 0 + maxJumpAcrossDistance: 0 + minRegionArea: 2 + manualCellSize: 0 + cellSize: 0.16666667 + manualTileSize: 0 + tileSize: 256 + accuratePlacement: 0 + maxJobWorkers: 0 + preserveTilesOutsideBounds: 0 + debug: + m_Flags: 0 + m_NavMeshData: {fileID: 0} +--- !u!1001 &795372929 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 6972975766535982195, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_Name + value: SeaQuark + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982195, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_RootOrder + value: 6 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 7010178284438975856, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} +--- !u!1 &829748222 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 6972975765442666722, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + m_PrefabInstance: {fileID: 795372929} + m_PrefabAsset: {fileID: 0} +--- !u!114 &829748224 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 829748222} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: 1, y: 0, z: 0} +--- !u!1 &1356883387 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1356883390} + - component: {fileID: 1356883389} + - component: {fileID: 1356883388} + - component: {fileID: 1356883391} + - component: {fileID: 1356883392} + m_Layer: 0 + m_Name: Main Camera + m_TagString: MainCamera + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!81 &1356883388 +AudioListener: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883387} + m_Enabled: 1 +--- !u!20 &1356883389 +Camera: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883387} + m_Enabled: 1 + serializedVersion: 2 + m_ClearFlags: 2 + m_BackGroundColor: {r: 0, g: 0, b: 0, a: 0} + m_projectionMatrixMode: 1 + m_GateFitMode: 2 + m_FOVAxisMode: 0 + m_SensorSize: {x: 36, y: 24} + m_LensShift: {x: 0, y: 0} + m_FocalLength: 50 + m_NormalizedViewPortRect: + serializedVersion: 2 + x: 0 + y: 0 + width: 1 + height: 1 + near clip plane: 0.01 + far clip plane: 1000 + field of view: 60 + orthographic: 0 + orthographic size: 5 + m_Depth: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingPath: -1 + m_TargetTexture: {fileID: 0} + m_TargetDisplay: 0 + m_TargetEye: 3 + m_HDR: 1 + m_AllowMSAA: 1 + m_AllowDynamicResolution: 0 + m_ForceIntoRT: 0 + m_OcclusionCulling: 1 + m_StereoConvergence: 10 + m_StereoSeparation: 0.022 +--- !u!4 &1356883390 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883387} + m_LocalRotation: {x: 0.56511104, y: 0, z: 0, w: 0.8250149} + m_LocalPosition: {x: 0, y: 5.47, z: -2} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 68.82, y: 0, z: 0} +--- !u!114 &1356883391 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883387} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + m_Name: + m_EditorClassIdentifier: + m_RenderShadows: 1 + m_RequiresDepthTextureOption: 2 + m_RequiresOpaqueTextureOption: 2 + m_CameraType: 0 + m_Cameras: [] + m_RendererIndex: -1 + m_VolumeLayerMask: + serializedVersion: 2 + m_Bits: 1 + m_VolumeTrigger: {fileID: 0} + m_RenderPostProcessing: 0 + m_Antialiasing: 0 + m_AntialiasingQuality: 2 + m_StopNaN: 0 + m_Dithering: 0 + m_ClearDepth: 1 + m_AllowXRRendering: 1 + m_RequiresDepthTexture: 0 + m_RequiresColorTexture: 0 + m_Version: 2 +--- !u!114 &1356883392 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1356883387} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6f3f71b7d9752e742b6bbc2338ff0452, type: 3} + m_Name: + m_EditorClassIdentifier: + interest: {fileID: 1997008536} + speed: 40 +--- !u!1 &1432088166 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1432088173} + - component: {fileID: 1432088172} + - component: {fileID: 1432088171} + - component: {fileID: 1432088170} + - component: {fileID: 1432088169} + - component: {fileID: 1432088168} + - component: {fileID: 1432088167} + m_Layer: 0 + m_Name: Point Charge (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1432088167 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: 0, y: 0, z: 10} +--- !u!54 &1432088168 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 1 +--- !u!135 &1432088169 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!114 &1432088170 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0f0d6c4724a4d8c46be4bfff596fcb2b, type: 3} + m_Name: + m_EditorClassIdentifier: + isPositive: 1 + chargeType: 3 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + forceLine: {fileID: 0} + spinLine: {fileID: 0} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} +--- !u!23 &1432088171 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 90b620c6d5f5975469d15f18411d69cc, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1432088172 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1432088173 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1432088166} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 5, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 7 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1454969890 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1454969892} + - component: {fileID: 1454969891} + m_Layer: 0 + m_Name: Directional Light + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!108 &1454969891 +Light: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1454969890} + m_Enabled: 1 + serializedVersion: 10 + m_Type: 1 + m_Shape: 0 + m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} + m_Intensity: 1 + m_Range: 10 + m_SpotAngle: 30 + m_InnerSpotAngle: 21.80208 + m_CookieSize: 10 + m_Shadows: + m_Type: 2 + m_Resolution: -1 + m_CustomResolution: -1 + m_Strength: 1 + m_Bias: 0.05 + m_NormalBias: 0.4 + m_NearPlane: 0.2 + m_CullingMatrixOverride: + e00: 1 + e01: 0 + e02: 0 + e03: 0 + e10: 0 + e11: 1 + e12: 0 + e13: 0 + e20: 0 + e21: 0 + e22: 1 + e23: 0 + e30: 0 + e31: 0 + e32: 0 + e33: 1 + m_UseCullingMatrixOverride: 0 + m_Cookie: {fileID: 0} + m_DrawHalo: 0 + m_Flare: {fileID: 0} + m_RenderMode: 0 + m_CullingMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RenderingLayerMask: 1 + m_Lightmapping: 4 + m_LightShadowCasterMode: 0 + m_AreaSize: {x: 1, y: 1} + m_BounceIntensity: 1 + m_ColorTemperature: 6570 + m_UseColorTemperature: 0 + m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} + m_UseBoundingSphereOverride: 0 + m_UseViewFrustumForShadowCasterCull: 1 + m_ShadowRadius: 0 + m_ShadowAngle: 0 +--- !u!4 &1454969892 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1454969890} + m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} + m_LocalPosition: {x: 0, y: 3, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} +--- !u!1 &1640171238 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 6972975765354548856, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + m_PrefabInstance: {fileID: 795372929} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1640171240 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1640171238} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: -1, y: 0, z: 0} +--- !u!1 &1716612497 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1716612499} + - component: {fileID: 1716612498} + m_Layer: 0 + m_Name: EM Field Manager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1716612498 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1716612497} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d0ce8d030f21b9347b244cf1f82e860c, type: 3} + m_Name: + m_EditorClassIdentifier: + u0Pi: 0.0000001 + k: 8.987552e+9 + scale: 2.7778e-16 + cScale: 1.6021766e-19 + vScale: 1 + strength: 100 + cancelThreshold: 0.0001 +--- !u!4 &1716612499 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1716612497} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1997008532 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1997008536} + - component: {fileID: 1997008535} + - component: {fileID: 1997008534} + - component: {fileID: 1997008537} + - component: {fileID: 1997008533} + - component: {fileID: 1997008538} + - component: {fileID: 1997008539} + m_Layer: 0 + m_Name: Point Charge + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!135 &1997008533 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1997008534 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 90b620c6d5f5975469d15f18411d69cc, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &1997008535 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &1997008536 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1997008537 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0f0d6c4724a4d8c46be4bfff596fcb2b, type: 3} + m_Name: + m_EditorClassIdentifier: + isPositive: 0 + chargeType: 3 + quarkColor: 0 + sphereMaterial: {fileID: 0} + coreMaterial: {fileID: 0} + glowMaterial: {fileID: 0} + forceLine: {fileID: 0} + spinLine: {fileID: 0} + trailWidth: 3.5 + trailTime: 0.8 + partSys1: {fileID: 0} + partSys2: {fileID: 0} + partSys3: {fileID: 0} +--- !u!54 &1997008538 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + serializedVersion: 2 + m_Mass: 10000 + m_Drag: 0 + m_AngularDrag: 0 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 1 +--- !u!114 &1997008539 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1997008532} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: 10, y: 0, z: 0} +--- !u!1001 &3521859705158906004 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: type + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: Value + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: scope + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: charge + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: isCharged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223409, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_Name + value: Magnetic Field + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223409, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_RootOrder + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalScale.x + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalScale.y + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalScale.z + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223422, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 1344843524751223423, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} +--- !u!1001 &8532869925687188124 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 8532869926823315429, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_RootOrder + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315431, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315434, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_Name + value: Electric Field + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315434, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315435, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: type + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315435, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: Value + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315435, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: scope + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315435, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: charge + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 8532869926823315435, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} + propertyPath: isCharged + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: a8beb0aaaee06904f975f995ea4f871d, type: 3} diff --git a/Assets/Scenes/Field Testing.unity.meta b/Assets/Scenes/Field Testing.unity.meta new file mode 100644 index 000000000..5be0cde2c --- /dev/null +++ b/Assets/Scenes/Field Testing.unity.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: de4074a33b9c870498efda45aa5d2679 +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 62e10a5d3..08c3d21b3 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -136,7 +136,7 @@ GameObject: - component: {fileID: 66950554} - component: {fileID: 66950553} m_Layer: 5 - m_Name: Toggle Polarized (1) + m_Name: Toggle Polarized (X) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -150,16 +150,16 @@ RectTransform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 66950551} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0.0000011175871} + m_LocalPosition: {x: 0, y: 0, z: -0.00001738469} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 672041492} m_Father: {fileID: 947553447} - m_RootOrder: 7 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -24.000002, y: 57.999996} + m_AnchoredPosition: {x: 0, y: 23} m_SizeDelta: {x: 40, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &66950553 @@ -208,8 +208,8 @@ MonoBehaviour: m_Calls: - m_Target: {fileID: 775782547} m_TargetAssemblyTypeName: AllQuarkScript, Assembly-CSharp - m_MethodName: TogglePolX - m_Mode: 1 + m_MethodName: TogglePolDir + m_Mode: 3 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine @@ -256,6 +256,110 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 66950551} m_CullTransparentMesh: 1 +--- !u!1 &100114485 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 100114486} + - component: {fileID: 100114487} + m_Layer: 5 + m_Name: TISlider (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!224 &100114486 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100114485} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 238730835} + - {fileID: 1185038650} + - {fileID: 1007596527} + - {fileID: 632810298} + - {fileID: 1174168789} + m_Father: {fileID: 947553447} + m_RootOrder: 5 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 20.999998, y: 87} + m_SizeDelta: {x: 160, y: 20} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &100114487 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 100114485} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1186566526} + m_FillRect: {fileID: 2057569447} + m_HandleRect: {fileID: 1186566525} + m_Direction: 0 + m_MinValue: 0 + m_MaxValue: 5 + m_WholeNumbers: 0 + m_Value: 1 + m_OnValueChanged: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 0} + m_TargetAssemblyTypeName: + m_MethodName: + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 --- !u!1 &122554572 GameObject: m_ObjectHideFlags: 0 @@ -465,6 +569,27 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 162911556} m_CullTransparentMesh: 1 +--- !u!1 &162994102 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 9007512959689673799, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + m_PrefabInstance: {fileID: 1908597805} + m_PrefabAsset: {fileID: 0} +--- !u!54 &162994103 +Rigidbody: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 162994102} + serializedVersion: 2 + m_Mass: 1 + m_Drag: 0 + m_AngularDrag: 0.05 + m_UseGravity: 0 + m_IsKinematic: 0 + m_Interpolate: 0 + m_Constraints: 0 + m_CollisionDetection: 1 --- !u!1 &168868922 GameObject: m_ObjectHideFlags: 0 @@ -569,6 +694,140 @@ MonoBehaviour: m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!1 &176073069 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 176073070} + - component: {fileID: 176073072} + - component: {fileID: 176073071} + m_Layer: 5 + m_Name: Text (TMP) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &176073070 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 176073069} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 492909543} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &176073071 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 176073069} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Toggle F Lines + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4285493103 + m_fontColor: {r: 0.4339623, g: 0.4339623, b: 0.4339623, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 20 + m_fontSizeBase: 20 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &176073072 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 176073069} + m_CullTransparentMesh: 1 --- !u!4 &190211204 stripped Transform: m_CorrespondingSourceObject: {fileID: 264284009461599840, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} @@ -708,6 +967,17 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 207824561} m_CullTransparentMesh: 1 +--- !u!114 &209670142 stripped +MonoBehaviour: + m_CorrespondingSourceObject: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + m_PrefabInstance: {fileID: 2080639878} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 5f51c2242944b29468ecc7559a663e15, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &225859690 GameObject: m_ObjectHideFlags: 0 @@ -744,7 +1014,7 @@ RectTransform: m_AnchoredPosition: {x: -5, y: -0.000015258789} m_SizeDelta: {x: -20, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &230760463 +--- !u!1 &228031843 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -752,34 +1022,83 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 230760464} - - component: {fileID: 230760466} - - component: {fileID: 230760465} - m_Layer: 5 - m_Name: Background + - component: {fileID: 228031845} + - component: {fileID: 228031844} + m_Layer: 0 + m_Name: Music m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &230760464 -RectTransform: +--- !u!114 &228031844 +MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 230760463} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_GameObject: {fileID: 228031843} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3e7d903707ded584182cfee2cafc655d, type: 3} + m_Name: + m_EditorClassIdentifier: + intros: + - {fileID: 8300000, guid: 2c3f58fea85a63649ae932febddf9156, type: 3} + loops: + - {fileID: 8300000, guid: eec11d2ebf9f13c4090599b53a1eb50c, type: 3} + fulls: [] + autoPlay: 0 +--- !u!4 &228031845 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 228031843} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 168868923} + m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0.25} - m_AnchorMax: {x: 1, y: 0.75} - m_AnchoredPosition: {x: 0, y: -0.000015258789} - m_SizeDelta: {x: 0, y: 0} +--- !u!1 &230760463 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 230760464} + - component: {fileID: 230760466} + - component: {fileID: 230760465} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &230760464 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 230760463} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 168868923} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.25} + m_AnchorMax: {x: 1, y: 0.75} + m_AnchoredPosition: {x: 0, y: -0.000015258789} + m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &230760465 MonoBehaviour: @@ -819,6 +1138,81 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230760463} m_CullTransparentMesh: 1 +--- !u!1 &238730834 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 238730835} + - component: {fileID: 238730837} + - component: {fileID: 238730836} + m_Layer: 5 + m_Name: Background + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &238730835 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 238730834} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000009313226} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 100114486} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.25} + m_AnchorMax: {x: 1, y: 0.75} + m_AnchoredPosition: {x: -7.000013, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &238730836 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 238730834} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &238730837 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 238730834} + m_CullTransparentMesh: 1 --- !u!1 &282355453 GameObject: m_ObjectHideFlags: 0 @@ -883,7 +1277,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 5 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &301485162 GameObject: @@ -1063,6 +1457,19 @@ GameObject: m_CorrespondingSourceObject: {fileID: 264284009930100687, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} m_PrefabInstance: {fileID: 1908597805} m_PrefabAsset: {fileID: 0} +--- !u!114 &352734253 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 352734245} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: 1, y: 0, z: 0} --- !u!198 &415316939 stripped ParticleSystem: m_CorrespondingSourceObject: {fileID: 5663761653767242486, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} @@ -1120,7 +1527,7 @@ Transform: m_Children: - {fileID: 487143851} m_Father: {fileID: 0} - m_RootOrder: 2 + m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &417999588 MonoBehaviour: @@ -1163,6 +1570,11 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_System: {fileID: 0} +--- !u!4 &420430033 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 5070983016874416145, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + m_PrefabInstance: {fileID: 1908597805} + m_PrefabAsset: {fileID: 0} --- !u!1 &441745332 GameObject: m_ObjectHideFlags: 0 @@ -1289,6 +1701,38 @@ GameObject: m_CorrespondingSourceObject: {fileID: 264284009461599842, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} m_PrefabInstance: {fileID: 1908597805} m_PrefabAsset: {fileID: 0} +--- !u!114 &445006295 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 445006287} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: -1, y: 0, z: 0} +--- !u!1 &472140677 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 850262250608000763, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + m_PrefabInstance: {fileID: 1908597805} + m_PrefabAsset: {fileID: 0} +--- !u!64 &472140679 +MeshCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 472140677} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 4 + m_Convex: 0 + m_CookingOptions: 30 + m_Mesh: {fileID: 0} --- !u!1 &487143850 GameObject: m_ObjectHideFlags: 0 @@ -1322,6 +1766,139 @@ Transform: m_Father: {fileID: 417999587} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &492909542 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 492909543} + - component: {fileID: 492909546} + - component: {fileID: 492909545} + - component: {fileID: 492909544} + m_Layer: 5 + m_Name: Toggle Force Lines + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &492909543 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 492909542} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 176073070} + m_Father: {fileID: 947553447} + m_RootOrder: 12 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -58, y: -31.6} + m_SizeDelta: {x: 80, y: 53.52} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &492909544 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 492909542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 492909545} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 775782547} + m_TargetAssemblyTypeName: AllQuarkScript, Assembly-CSharp + m_MethodName: Disable + m_Mode: 1 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &492909545 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 492909542} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &492909546 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 492909542} + m_CullTransparentMesh: 1 --- !u!4 &539987343 stripped Transform: m_CorrespondingSourceObject: {fileID: 264284010269365239, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} @@ -1622,7 +2199,7 @@ RectTransform: m_AnchoredPosition: {x: 0, y: -0.000015258789} m_SizeDelta: {x: -20, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &641194170 +--- !u!1 &632810297 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -1630,9 +2207,143 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 641194171} + - component: {fileID: 632810298} + - component: {fileID: 632810300} + - component: {fileID: 632810299} m_Layer: 5 - m_Name: Fill Area + m_Name: TITest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &632810298 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 632810297} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 100114486} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -1.3, y: 7} + m_SizeDelta: {x: 400, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &632810299 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 632810297} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Centripetal Intensity + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4286282619 + m_fontColor: {r: 0.4811321, g: 0.4811321, b: 0.4811321, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 20 + m_fontSizeBase: 20 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &632810300 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 632810297} + m_CullTransparentMesh: 1 +--- !u!1 &641194170 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 641194171} + m_Layer: 5 + m_Name: Fill Area m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -1826,17 +2537,17 @@ RectTransform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 654961366} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -0.0000011641532} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 1446044119} m_Father: {fileID: 947553447} - m_RootOrder: 5 + m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -37.999973, y: -14} - m_SizeDelta: {x: 120, y: 53.52} + m_AnchoredPosition: {x: -50, y: 23} + m_SizeDelta: {x: 40, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &654961368 MonoBehaviour: @@ -1932,6 +2643,36 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 654961366} m_CullTransparentMesh: 1 +--- !u!1 &666457201 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 666457202} + m_Layer: 0 + m_Name: mv + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &666457202 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 666457201} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1877326014} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &672041491 GameObject: m_ObjectHideFlags: 0 @@ -2305,7 +3046,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!1 &712380738 GameObject: @@ -2474,7 +3215,7 @@ Transform: m_LocalScale: {x: 0.5, y: 0.021912, z: 0.5} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 8 + m_RootOrder: 9 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &738202710 GameObject: @@ -2610,6 +3351,11 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 738202710} m_CullTransparentMesh: 1 +--- !u!4 &760849798 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + m_PrefabInstance: {fileID: 1809781572} + m_PrefabAsset: {fileID: 0} --- !u!114 &775782547 stripped MonoBehaviour: m_CorrespondingSourceObject: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} @@ -2634,6 +3380,7 @@ GameObject: - component: {fileID: 793412745} - component: {fileID: 793412744} - component: {fileID: 793412748} + - component: {fileID: 793412749} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera @@ -2784,6 +3531,20 @@ MonoBehaviour: m_RequiresDepthTexture: 0 m_RequiresColorTexture: 0 m_Version: 2 +--- !u!114 &793412749 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 793412743} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6f3f71b7d9752e742b6bbc2338ff0452, type: 3} + m_Name: + m_EditorClassIdentifier: + interest: {fileID: 420430033} + speed: 100 --- !u!1 &818670344 GameObject: m_ObjectHideFlags: 0 @@ -2951,7 +3712,7 @@ Transform: m_LocalScale: {x: 0.5, y: 0.021912, z: 0.5} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 7 + m_RootOrder: 8 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &829935831 GameObject: @@ -3657,7 +4418,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 1 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &916310745 GameObject: @@ -3766,12 +4527,16 @@ RectTransform: - {fileID: 168868923} - {fileID: 648929120} - {fileID: 2055267813} + - {fileID: 100114486} - {fileID: 654961367} - {fileID: 2118957717} - {fileID: 66950552} - {fileID: 1955945213} - {fileID: 1325398964} - {fileID: 969658760} + - {fileID: 492909543} + - {fileID: 1765521019} + - {fileID: 2112951527} m_Father: {fileID: 1175693937} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -3946,12 +4711,12 @@ RectTransform: m_Children: - {fileID: 1578095670} m_Father: {fileID: 947553447} - m_RootOrder: 10 + m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 88, y: -14} - m_SizeDelta: {x: 120, y: 53.52} + m_AnchoredPosition: {x: 108, y: -31.6} + m_SizeDelta: {x: 80, y: 53.52} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &969658761 MonoBehaviour: @@ -4181,11 +4946,60 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 986606630} m_CullTransparentMesh: 1 +--- !u!1 &1007596526 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1007596527} + m_Layer: 5 + m_Name: Handle Slide Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1007596527 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1007596526} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1186566525} + m_Father: {fileID: 100114486} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: -7, y: 0} + m_SizeDelta: {x: -20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} --- !u!1 &1036100726 stripped GameObject: m_CorrespondingSourceObject: {fileID: 264284010244169450, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} m_PrefabInstance: {fileID: 1908597805} m_PrefabAsset: {fileID: 0} +--- !u!114 &1036100734 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1036100726} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d93ba4e1f8c839348adb941388d73dea, type: 3} + m_Name: + m_EditorClassIdentifier: + force: {x: 0, y: 1, z: 0} --- !u!198 &1036746653 stripped ParticleSystem: m_CorrespondingSourceObject: {fileID: 2009051508668605832, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} @@ -4320,7 +5134,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: -84.80002, y: 202} + m_AnchoredPosition: {x: 128.1, y: 202} m_SizeDelta: {x: 76.2, y: 53.52} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1137225809 @@ -4417,6 +5231,55 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1137225807} m_CullTransparentMesh: 1 +--- !u!1 &1140408395 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1140408397} + - component: {fileID: 1140408396} + m_Layer: 0 + m_Name: SeaQuarkSpawner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1140408396 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1140408395} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ca12938c608c4b84ba81edb3cb7e167a, type: 3} + m_Name: + m_EditorClassIdentifier: + prefab: {fileID: 6972975766535982195, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + virtuality: 0.1 + x: 0 + spawnIntervalSeconds: 0.1 + cageRadius: 1.8 + Energy: 10000 +--- !u!4 &1140408397 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1140408395} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 12 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1160112377 GameObject: m_ObjectHideFlags: 0 @@ -4453,7 +5316,7 @@ RectTransform: m_AnchoredPosition: {x: -5, y: 0} m_SizeDelta: {x: -20, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!1 &1175693932 +--- !u!1 &1174168788 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -4461,26 +5324,174 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1175693937} - - component: {fileID: 1175693936} - - component: {fileID: 1175693935} - - component: {fileID: 1175693934} - - component: {fileID: 1175693933} - - component: {fileID: 1175693938} + - component: {fileID: 1174168789} + - component: {fileID: 1174168792} + - component: {fileID: 1174168791} + - component: {fileID: 1174168790} m_Layer: 5 - m_Name: Canvas + m_Name: TINum m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!114 &1175693933 -MonoBehaviour: +--- !u!224 &1174168789 +RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1175693932} + m_GameObject: {fileID: 1174168788} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000009313226} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 100114486} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 182.19998, y: -13.5} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1174168790 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1174168788} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dea178266131e4eb087442f65d834c69, type: 3} + m_Name: + m_EditorClassIdentifier: + slider: {fileID: 0} +--- !u!114 &1174168791 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1174168788} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: 0 + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4286282619 + m_fontColor: {r: 0.4811321, g: 0.4811321, b: 0.4811321, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 20 + m_fontSizeBase: 20 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1174168792 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1174168788} + m_CullTransparentMesh: 1 +--- !u!1 &1175693932 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1175693937} + - component: {fileID: 1175693936} + - component: {fileID: 1175693935} + - component: {fileID: 1175693934} + - component: {fileID: 1175693933} + - component: {fileID: 1175693938} + m_Layer: 5 + m_Name: Canvas + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1175693933 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1175693932} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7951c64acb0fa62458bf30a60089fe2d, type: 3} @@ -4601,6 +5612,117 @@ MonoBehaviour: menuActive: 0 openMenuButtonActive: 1 closeMenuButtonActive: 0 +--- !u!1 &1185038649 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1185038650} + m_Layer: 5 + m_Name: Fill Area + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1185038650 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1185038649} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000009313226} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 2057569447} + m_Father: {fileID: 100114486} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0.25} + m_AnchorMax: {x: 1, y: 0.75} + m_AnchoredPosition: {x: -12.000013, y: 0} + m_SizeDelta: {x: -20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1186566524 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1186566525} + - component: {fileID: 1186566527} + - component: {fileID: 1186566526} + m_Layer: 5 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1186566525 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1186566524} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1007596527} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.2, y: 0} + m_AnchorMax: {x: 0.2, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1186566526 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1186566524} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1186566527 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1186566524} + m_CullTransparentMesh: 1 --- !u!1 &1325398963 GameObject: m_ObjectHideFlags: 0 @@ -4614,7 +5736,7 @@ GameObject: - component: {fileID: 1325398966} - component: {fileID: 1325398965} m_Layer: 5 - m_Name: Toggle Polarized (3) + m_Name: Toggle Polarized (Z) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -4628,16 +5750,16 @@ RectTransform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1325398963} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0.00001937151} + m_LocalPosition: {x: 0, y: 0, z: -0.00001738469} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 738202711} m_Father: {fileID: 947553447} - m_RootOrder: 9 + m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 75.99998, y: 57.999996} + m_AnchoredPosition: {x: 100, y: 23} m_SizeDelta: {x: 40, y: 40} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &1325398965 @@ -4686,12 +5808,12 @@ MonoBehaviour: m_Calls: - m_Target: {fileID: 775782547} m_TargetAssemblyTypeName: AllQuarkScript, Assembly-CSharp - m_MethodName: TogglePolZ - m_Mode: 1 + m_MethodName: TogglePolDir + m_Mode: 3 m_Arguments: m_ObjectArgument: {fileID: 0} m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine - m_IntArgument: 0 + m_IntArgument: 2 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 @@ -4734,6 +5856,11 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1325398963} m_CullTransparentMesh: 1 +--- !u!4 &1346629919 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + m_PrefabInstance: {fileID: 3996239516574743790} + m_PrefabAsset: {fileID: 0} --- !u!1 &1376224126 GameObject: m_ObjectHideFlags: 0 @@ -5020,7 +6147,9 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: Toggle Polarized + m_text: 'On + +' m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} @@ -5107,7 +6236,7 @@ ParticleSystem: m_CorrespondingSourceObject: {fileID: 5663761653720592848, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} m_PrefabInstance: {fileID: 1908597805} m_PrefabAsset: {fileID: 0} ---- !u!1 &1572141028 +--- !u!1 &1555448209 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -5115,29 +6244,163 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1572141029} - - component: {fileID: 1572141031} - - component: {fileID: 1572141030} + - component: {fileID: 1555448210} + - component: {fileID: 1555448212} + - component: {fileID: 1555448211} m_Layer: 5 - m_Name: bg + m_Name: Text (TMP) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &1572141029 +--- !u!224 &1555448210 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1572141028} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_GameObject: {fileID: 1555448209} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 2.7400002, y: 2.61, z: 1} + m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 947553447} - m_RootOrder: 1 + m_Father: {fileID: 2112951527} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 1, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 0, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1555448211 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555448209} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Toggle S Lines + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4285493103 + m_fontColor: {r: 0.4339623, g: 0.4339623, b: 0.4339623, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 20 + m_fontSizeBase: 20 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 2 + m_VerticalAlignment: 512 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1555448212 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1555448209} + m_CullTransparentMesh: 1 +--- !u!1 &1572141028 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1572141029} + - component: {fileID: 1572141031} + - component: {fileID: 1572141030} + m_Layer: 5 + m_Name: bg + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1572141029 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1572141028} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 2.7400002, y: 2.61, z: 1} + m_Children: [] + m_Father: {fileID: 947553447} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -5558,7 +6821,7 @@ Transform: m_LocalScale: {x: 2, y: 2, z: 2} m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 6 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &1643749894 stripped Transform: @@ -5761,6 +7024,30 @@ RectTransform: m_AnchoredPosition: {x: -7, y: 0} m_SizeDelta: {x: -20, y: 0} m_Pivot: {x: 0.5, y: 0.5} +--- !u!1 &1750303605 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 264284010269365235, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + m_PrefabInstance: {fileID: 1908597805} + m_PrefabAsset: {fileID: 0} +--- !u!114 &1750303606 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1750303605} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: d036901358a581942b726002ee0dc9c0, type: 3} + m_Name: + m_EditorClassIdentifier: + Threshold: 0.1 + Scale: 0.001 + polarizationField: {fileID: 209670142} + aligners: + - {fileID: 1877326014} + - {fileID: 666457202} + - {fileID: 2042592941} --- !u!1 &1758894654 GameObject: m_ObjectHideFlags: 0 @@ -5909,7 +7196,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: slider: {fileID: 0} ---- !u!1 &1772162130 +--- !u!1 &1765521018 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -5917,117 +7204,43 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1772162131} - - component: {fileID: 1772162133} - - component: {fileID: 1772162132} + - component: {fileID: 1765521019} + - component: {fileID: 1765521021} + - component: {fileID: 1765521020} + - component: {fileID: 1765521022} m_Layer: 5 - m_Name: Handle + m_Name: FPS m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &1772162131 +--- !u!224 &1765521019 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1772162130} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_GameObject: {fileID: 1765521018} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 653205744} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 20, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1772162132 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1772162130} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1772162133 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1772162130} - m_CullTransparentMesh: 1 ---- !u!1 &1778281980 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1778281981} - - component: {fileID: 1778281983} - - component: {fileID: 1778281982} - m_Layer: 5 - m_Name: TITest - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1778281981 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1778281980} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0.000011920929} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 2055267813} - m_RootOrder: 3 + m_Father: {fileID: 947553447} + m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 29.1, y: 7} + m_AnchoredPosition: {x: 1.2, y: 204.2} m_SizeDelta: {x: 200, y: 50} m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1778281982 +--- !u!114 &1765521020 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1778281980} + m_GameObject: {fileID: 1765521018} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} @@ -6041,7 +7254,7 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_text: Trail Intensity + m_text: 'FPS: ' m_isRightToLeft: 0 m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} @@ -6050,8 +7263,8 @@ MonoBehaviour: m_fontMaterials: [] m_fontColor32: serializedVersion: 2 - rgba: 4286282619 - m_fontColor: {r: 0.4811321, g: 0.4811321, b: 0.4811321, a: 1} + rgba: 4285493103 + m_fontColor: {r: 0.4339623, g: 0.4339623, b: 0.4339623, a: 1} m_enableVertexGradient: 0 m_colorMode: 3 m_fontColorGradient: @@ -6076,7 +7289,7 @@ MonoBehaviour: m_fontSizeMax: 72 m_fontStyle: 0 m_HorizontalAlignment: 1 - m_VerticalAlignment: 256 + m_VerticalAlignment: 512 m_textAlignment: 65535 m_characterSpacing: 0 m_wordSpacing: 0 @@ -6110,15 +7323,27 @@ MonoBehaviour: m_hasFontAssetChanged: 0 m_baseMaterial: {fileID: 0} m_maskOffset: {x: 0, y: 0, z: 0, w: 0} ---- !u!222 &1778281983 +--- !u!222 &1765521021 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1778281980} + m_GameObject: {fileID: 1765521018} m_CullTransparentMesh: 1 ---- !u!1 &1880543037 +--- !u!114 &1765521022 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1765521018} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0d621987c6d82f04ca7f9d3b089be0b7, type: 3} + m_Name: + m_EditorClassIdentifier: +--- !u!1 &1772162130 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -6126,569 +7351,879 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1880543038} - - component: {fileID: 1880543041} - - component: {fileID: 1880543040} - - component: {fileID: 1880543039} - - component: {fileID: 1880543042} - m_Layer: 0 - m_Name: LeftHand Controller + - component: {fileID: 1772162131} + - component: {fileID: 1772162133} + - component: {fileID: 1772162132} + m_Layer: 5 + m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &1880543038 -Transform: +--- !u!224 &1772162131 +RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880543037} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -0.9, y: 0, z: 0.7} + m_GameObject: {fileID: 1772162130} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 1175693937} - m_Father: {fileID: 487143851} - m_RootOrder: 1 + m_Children: [] + m_Father: {fileID: 653205744} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &1880543039 + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1772162132 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880543037} + m_GameObject: {fileID: 1772162130} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: e988983f96fe1dd48800bcdfc82f23e9, type: 3} + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: - m_LineWidth: 0.02 - m_OverrideInteractorLineLength: 1 - m_LineLength: 10 - m_WidthCurve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0 - outWeight: 0 - - serializedVersion: 3 - time: 1 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0 - outWeight: 0 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - m_ValidColorGradient: - serializedVersion: 2 - key0: {r: 1, g: 1, b: 1, a: 1} - key1: {r: 1, g: 1, b: 1, a: 1} - key2: {r: 0, g: 0, b: 0, a: 0} - key3: {r: 0, g: 0, b: 0, a: 0} - key4: {r: 0, g: 0, b: 0, a: 0} - key5: {r: 0, g: 0, b: 0, a: 0} - key6: {r: 0, g: 0, b: 0, a: 0} - key7: {r: 0, g: 0, b: 0, a: 0} - ctime0: 0 - ctime1: 65535 - ctime2: 0 - ctime3: 0 - ctime4: 0 - ctime5: 0 - ctime6: 0 - ctime7: 0 - atime0: 0 - atime1: 65535 - atime2: 0 - atime3: 0 - atime4: 0 - atime5: 0 - atime6: 0 - atime7: 0 - m_Mode: 0 - m_NumColorKeys: 2 - m_NumAlphaKeys: 2 - m_InvalidColorGradient: - serializedVersion: 2 - key0: {r: 1, g: 0, b: 0, a: 1} - key1: {r: 1, g: 0, b: 0, a: 1} - key2: {r: 0, g: 0, b: 0, a: 0} - key3: {r: 0, g: 0, b: 0, a: 0} - key4: {r: 0, g: 0, b: 0, a: 0} - key5: {r: 0, g: 0, b: 0, a: 0} - key6: {r: 0, g: 0, b: 0, a: 0} - key7: {r: 0, g: 0, b: 0, a: 0} - ctime0: 0 - ctime1: 65535 - ctime2: 0 - ctime3: 0 - ctime4: 0 - ctime5: 0 - ctime6: 0 - ctime7: 0 - atime0: 0 - atime1: 65535 - atime2: 0 - atime3: 0 - atime4: 0 - atime5: 0 - atime6: 0 - atime7: 0 - m_Mode: 0 - m_NumColorKeys: 2 - m_NumAlphaKeys: 2 - m_SmoothMovement: 0 - m_FollowTightness: 10 - m_SnapThresholdDistance: 10 - m_Reticle: {fileID: 0} - m_StopLineAtFirstRaycastHit: 1 ---- !u!120 &1880543040 -LineRenderer: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1772162133 +CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880543037} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_MotionVectors: 0 - m_LightProbeUsage: 0 - m_ReflectionProbeUsage: 0 - m_RayTracingMode: 0 - m_RayTraceProcedural: 0 - m_RenderingLayerMask: 1 - m_RendererPriority: 0 - m_Materials: - - {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0} - m_StaticBatchInfo: - firstSubMesh: 0 - subMeshCount: 0 - m_StaticBatchRoot: {fileID: 0} - m_ProbeAnchor: {fileID: 0} - m_LightProbeVolumeOverride: {fileID: 0} - m_ScaleInLightmap: 1 - m_ReceiveGI: 1 - m_PreserveUVs: 0 - m_IgnoreNormalsForChartDetection: 0 - m_ImportantGI: 0 - m_StitchLightmapSeams: 1 - m_SelectedEditorRenderState: 3 - m_MinimumChartSize: 4 - m_AutoUVMaxDistance: 0.5 - m_AutoUVMaxAngle: 89 - m_LightmapParameters: {fileID: 0} - m_SortingLayerID: 0 - m_SortingLayer: 0 - m_SortingOrder: 5 - m_Positions: [] - m_Parameters: - serializedVersion: 3 - widthMultiplier: 0.02 - widthCurve: - serializedVersion: 2 - m_Curve: - - serializedVersion: 3 - time: 0 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0 - outWeight: 0 - - serializedVersion: 3 - time: 1 - value: 1 - inSlope: 0 - outSlope: 0 - tangentMode: 0 - weightedMode: 0 - inWeight: 0 - outWeight: 0 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - colorGradient: - serializedVersion: 2 - key0: {r: 0, g: 0, b: 1, a: 1} - key1: {r: 0, g: 0, b: 1, a: 1} - key2: {r: 0, g: 0, b: 0, a: 0} - key3: {r: 0, g: 0, b: 0, a: 0} - key4: {r: 0, g: 0, b: 0, a: 0} - key5: {r: 0, g: 0, b: 0, a: 0} - key6: {r: 0, g: 0, b: 0, a: 0} - key7: {r: 0, g: 0, b: 0, a: 0} - ctime0: 0 - ctime1: 65535 - ctime2: 0 - ctime3: 0 - ctime4: 0 - ctime5: 0 - ctime6: 0 - ctime7: 0 - atime0: 0 - atime1: 65535 - atime2: 0 - atime3: 0 - atime4: 0 - atime5: 0 - atime6: 0 - atime7: 0 - m_Mode: 0 - m_NumColorKeys: 2 - m_NumAlphaKeys: 2 - numCornerVertices: 4 - numCapVertices: 4 - alignment: 0 - textureMode: 0 - shadowBias: 0.5 - generateLightingData: 0 - m_UseWorldSpace: 1 - m_Loop: 0 ---- !u!114 &1880543041 -MonoBehaviour: + m_GameObject: {fileID: 1772162130} + m_CullTransparentMesh: 1 +--- !u!1 &1778281980 +GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880543037} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 6803edce0201f574f923fd9d10e5b30a, type: 3} - m_Name: - m_EditorClassIdentifier: - m_InteractionManager: {fileID: 850389558} - m_InteractionLayerMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_AttachTransform: {fileID: 0} - m_StartingSelectedInteractable: {fileID: 0} - m_HoverEntered: - m_PersistentCalls: - m_Calls: [] - m_HoverExited: - m_PersistentCalls: - m_Calls: [] - m_SelectEntered: - m_PersistentCalls: - m_Calls: [] - m_SelectExited: - m_PersistentCalls: - m_Calls: [] - m_OnHoverEntered: - m_PersistentCalls: - m_Calls: [] - m_OnHoverExited: - m_PersistentCalls: - m_Calls: [] - m_OnSelectEntered: - m_PersistentCalls: - m_Calls: [] - m_OnSelectExited: - m_PersistentCalls: - m_Calls: [] - m_SelectActionTrigger: 0 - m_HideControllerOnSelect: 0 - m_PlayAudioClipOnSelectEntered: 0 - m_AudioClipForOnSelectEntered: {fileID: 0} - m_PlayAudioClipOnSelectExited: 0 - m_AudioClipForOnSelectExited: {fileID: 0} - m_PlayAudioClipOnSelectCanceled: 0 - m_AudioClipForOnSelectCanceled: {fileID: 0} - m_PlayAudioClipOnHoverEntered: 0 - m_AudioClipForOnHoverEntered: {fileID: 0} - m_PlayAudioClipOnHoverExited: 0 - m_AudioClipForOnHoverExited: {fileID: 0} - m_PlayAudioClipOnHoverCanceled: 0 - m_AudioClipForOnHoverCanceled: {fileID: 0} - m_PlayHapticsOnSelectEntered: 0 - m_HapticSelectEnterIntensity: 0 - m_HapticSelectEnterDuration: 0 - m_PlayHapticsOnSelectExited: 0 - m_HapticSelectExitIntensity: 0 - m_HapticSelectExitDuration: 0 - m_PlayHapticsOnSelectCanceled: 0 - m_HapticSelectCancelIntensity: 0 - m_HapticSelectCancelDuration: 0 - m_PlayHapticsOnHoverEntered: 0 - m_HapticHoverEnterIntensity: 0 - m_HapticHoverEnterDuration: 0 - m_PlayHapticsOnHoverExited: 0 - m_HapticHoverExitIntensity: 0 - m_HapticHoverExitDuration: 0 - m_PlayHapticsOnHoverCanceled: 0 - m_HapticHoverCancelIntensity: 0 - m_HapticHoverCancelDuration: 0 - m_LineType: 0 - m_BlendVisualLinePoints: 1 - m_MaxRaycastDistance: 30 - m_ReferenceFrame: {fileID: 0} - m_Velocity: 16 - m_Acceleration: 9.8 - m_AdditionalGroundHeight: 0.1 - m_AdditionalFlightTime: 0.5 - m_EndPointDistance: 30 - m_EndPointHeight: -10 - m_ControlPointDistance: 10 - m_ControlPointHeight: 5 - m_SampleFrequency: 20 - m_HitDetectionType: 0 - m_SphereCastRadius: 0.1 - m_RaycastMask: - serializedVersion: 2 - m_Bits: 4294967295 - m_RaycastTriggerInteraction: 1 - m_HitClosestOnly: 0 - m_KeepSelectedTargetValid: 1 - m_HoverToSelect: 0 - m_HoverTimeToSelect: 0.5 - m_EnableUIInteraction: 1 - m_AllowAnchorControl: 1 - m_UseForceGrab: 1 - m_RotateSpeed: 180 - m_TranslateSpeed: 1 - m_AnchorRotateReferenceFrame: {fileID: 0} ---- !u!114 &1880543042 + serializedVersion: 6 + m_Component: + - component: {fileID: 1778281981} + - component: {fileID: 1778281983} + - component: {fileID: 1778281982} + m_Layer: 5 + m_Name: TITest + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1778281981 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1778281980} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000011920929} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2055267813} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 29.1, y: 7} + m_SizeDelta: {x: 200, y: 50} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1778281982 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1880543037} + m_GameObject: {fileID: 1778281980} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: caff514de9b15ad48ab85dcff5508221, type: 3} + m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} m_Name: m_EditorClassIdentifier: - m_UpdateTrackingType: 0 - m_EnableInputTracking: 1 - m_EnableInputActions: 1 - m_ModelPrefab: {fileID: 0} - m_ModelParent: {fileID: 0} - m_Model: {fileID: 0} - m_AnimateModel: 0 - m_ModelSelectTransition: - m_ModelDeSelectTransition: - m_PositionAction: - m_UseReference: 1 - m_Action: - m_Name: Position - m_Type: 0 - m_ExpectedControlType: - m_Id: 26d2aaa4-6518-4d33-8fae-419043a723d4 - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: -2024308242397127297, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_RotationAction: - m_UseReference: 1 - m_Action: - m_Name: Rotation - m_Type: 0 - m_ExpectedControlType: - m_Id: d7a15530-737b-416a-9d5d-a8b51ba6c682 - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: 8248158260566104461, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_SelectAction: - m_UseReference: 1 - m_Action: - m_Name: Select - m_Type: 0 - m_ExpectedControlType: - m_Id: 05483079-4b7c-4369-9176-fb8514428e98 - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: -6131295136447488360, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_ActivateAction: - m_UseReference: 1 - m_Action: - m_Name: Activate - m_Type: 0 - m_ExpectedControlType: - m_Id: 38e5c09b-96d2-40e4-ae8e-3bfb9eb16727 - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: -5982496924579745919, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_UIPressAction: - m_UseReference: 1 - m_Action: - m_Name: UI Press - m_Type: 0 - m_ExpectedControlType: - m_Id: 347fe4ac-83bc-44f7-a0d2-2793a5775161 - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: -6395602842196007441, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_HapticDeviceAction: - m_UseReference: 1 - m_Action: - m_Name: Haptic Device - m_Type: 0 - m_ExpectedControlType: - m_Id: 35cfed17-bcaf-4ff9-9fe0-fa1727b7619b - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: -8785819595477538065, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_RotateAnchorAction: - m_UseReference: 1 - m_Action: - m_Name: Rotate Anchor - m_Type: 0 - m_ExpectedControlType: - m_Id: 4fcd4b62-1769-4cc4-aaee-aea2fc40d24f - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: -7363382999065477798, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_TranslateAnchorAction: - m_UseReference: 1 - m_Action: - m_Name: Translate Anchor - m_Type: 0 - m_ExpectedControlType: - m_Id: 7bfe4461-8d15-4a61-9fa6-28ce950c9996 - m_Processors: - m_Interactions: - m_SingletonActionBindings: [] - m_Reference: {fileID: 7779212132400271959, guid: c348712bda248c246b8c49b3db54643f, type: 3} - m_ButtonPressPoint: 0.5 ---- !u!198 &1901364837 stripped -ParticleSystem: - m_CorrespondingSourceObject: {fileID: 2009051508441775260, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - m_PrefabInstance: {fileID: 1908597805} - m_PrefabAsset: {fileID: 0} ---- !u!1001 &1908597805 -PrefabInstance: - m_ObjectHideFlags: 0 - serializedVersion: 2 - m_Modification: - m_TransformParent: {fileID: 2048687199} - m_Modifications: - - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: partSys1 - value: - objectReference: {fileID: 1530999637} - - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: partSys2 - value: - objectReference: {fileID: 322493382} - - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: partSys3 - value: - objectReference: {fileID: 415316939} - - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: trailTime - value: 0.15 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: trailWidth - value: 1 + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_text: Trail Intensity + m_isRightToLeft: 0 + m_fontAsset: {fileID: 11400000, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_sharedMaterial: {fileID: -2224859720479442044, guid: 3b6016b5be1fa474f81634e2b33be668, type: 2} + m_fontSharedMaterials: [] + m_fontMaterial: {fileID: 0} + m_fontMaterials: [] + m_fontColor32: + serializedVersion: 2 + rgba: 4286282619 + m_fontColor: {r: 0.4811321, g: 0.4811321, b: 0.4811321, a: 1} + m_enableVertexGradient: 0 + m_colorMode: 3 + m_fontColorGradient: + topLeft: {r: 1, g: 1, b: 1, a: 1} + topRight: {r: 1, g: 1, b: 1, a: 1} + bottomLeft: {r: 1, g: 1, b: 1, a: 1} + bottomRight: {r: 1, g: 1, b: 1, a: 1} + m_fontColorGradientPreset: {fileID: 0} + m_spriteAsset: {fileID: 0} + m_tintAllSprites: 0 + m_StyleSheet: {fileID: 0} + m_TextStyleHashCode: -1183493901 + m_overrideHtmlColors: 0 + m_faceColor: + serializedVersion: 2 + rgba: 4294967295 + m_fontSize: 20 + m_fontSizeBase: 20 + m_fontWeight: 400 + m_enableAutoSizing: 0 + m_fontSizeMin: 18 + m_fontSizeMax: 72 + m_fontStyle: 0 + m_HorizontalAlignment: 1 + m_VerticalAlignment: 256 + m_textAlignment: 65535 + m_characterSpacing: 0 + m_wordSpacing: 0 + m_lineSpacing: 0 + m_lineSpacingMax: 0 + m_paragraphSpacing: 0 + m_charWidthMaxAdj: 0 + m_enableWordWrapping: 1 + m_wordWrappingRatios: 0.4 + m_overflowMode: 0 + m_linkedTextComponent: {fileID: 0} + parentLinkedComponent: {fileID: 0} + m_enableKerning: 1 + m_enableExtraPadding: 0 + checkPaddingRequired: 0 + m_isRichText: 1 + m_parseCtrlCharacters: 1 + m_isOrthographic: 1 + m_isCullingEnabled: 0 + m_horizontalMapping: 0 + m_verticalMapping: 0 + m_uvLineOffset: 0 + m_geometrySortingOrder: 0 + m_IsTextObjectScaleStatic: 0 + m_VertexBufferAutoSizeReduction: 0 + m_useMaxVisibleDescender: 1 + m_pageToDisplay: 1 + m_margin: {x: 0, y: 0, z: 0, w: 0} + m_isUsingLegacyAnimationComponent: 0 + m_isVolumetricText: 0 + m_hasFontAssetChanged: 0 + m_baseMaterial: {fileID: 0} + m_maskOffset: {x: 0, y: 0, z: 0, w: 0} +--- !u!222 &1778281983 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1778281980} + m_CullTransparentMesh: 1 +--- !u!1001 &1809781572 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2019017292} + m_Modifications: + - target: {fileID: 3996239516044172320, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_Name + value: Force Probe (1) objectReference: {fileID: 0} - - target: {fileID: 264284009461599844, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Enabled + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_RootOrder value: 0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Time - value: 0.2 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Enabled - value: 1 + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalPosition.x + value: -0.363 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.colorGradient.atime1 - value: 65535 + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalPosition.y + value: -0.573 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.colorGradient.key0.a - value: 1 + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalPosition.z + value: -0.6929861 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.colorGradient.key1.a + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.w value: 1 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.colorGradient.m_NumAlphaKeys - value: 2 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.size - value: 2 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].time - value: 1 + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.x + value: -0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[0].value - value: 0.09351158 + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.y + value: -0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].value - value: 0 + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.z + value: -0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].inSlope + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.x value: 0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].inWeight + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.y value: 0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].outSlope + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Enabled - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: currentRadius + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} +--- !u!1 &1877326013 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1877326014} + m_Layer: 0 + m_Name: SpinAligner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1877326014 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1877326013} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 666457202} + - {fileID: 2042592941} + m_Father: {fileID: 0} + m_RootOrder: 15 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1880543037 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1880543038} + - component: {fileID: 1880543041} + - component: {fileID: 1880543040} + - component: {fileID: 1880543039} + - component: {fileID: 1880543042} + m_Layer: 0 + m_Name: LeftHand Controller + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1880543038 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880543037} + m_LocalRotation: {x: 0, y: 0.0861125, z: 0, w: 0.99628544} + m_LocalPosition: {x: -0.8, y: 0, z: 1.109} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1175693937} + m_Father: {fileID: 487143851} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 9.88, z: 0} +--- !u!114 &1880543039 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880543037} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e988983f96fe1dd48800bcdfc82f23e9, type: 3} + m_Name: + m_EditorClassIdentifier: + m_LineWidth: 0.02 + m_OverrideInteractorLineLength: 1 + m_LineLength: 10 + m_WidthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 value: 1 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: maxOrbitRadius - value: 1.5 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: minOrbitRadius - value: 0.5 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: orbitalVelocity - value: -600 - objectReference: {fileID: 0} - - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: timeOnTheSameOrbit + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 value: 1 - objectReference: {fileID: 0} + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + m_ValidColorGradient: + serializedVersion: 2 + key0: {r: 1, g: 1, b: 1, a: 1} + key1: {r: 1, g: 1, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + m_InvalidColorGradient: + serializedVersion: 2 + key0: {r: 1, g: 0, b: 0, a: 1} + key1: {r: 1, g: 0, b: 0, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + m_SmoothMovement: 0 + m_FollowTightness: 10 + m_SnapThresholdDistance: 10 + m_Reticle: {fileID: 0} + m_StopLineAtFirstRaycastHit: 1 +--- !u!120 &1880543040 +LineRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880543037} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 0 + m_LightProbeUsage: 0 + m_ReflectionProbeUsage: 0 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10306, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 5 + m_Positions: [] + m_Parameters: + serializedVersion: 3 + widthMultiplier: 0.02 + widthCurve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 1 + value: 1 + inSlope: 0 + outSlope: 0 + tangentMode: 0 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + colorGradient: + serializedVersion: 2 + key0: {r: 0, g: 0, b: 1, a: 1} + key1: {r: 0, g: 0, b: 1, a: 1} + key2: {r: 0, g: 0, b: 0, a: 0} + key3: {r: 0, g: 0, b: 0, a: 0} + key4: {r: 0, g: 0, b: 0, a: 0} + key5: {r: 0, g: 0, b: 0, a: 0} + key6: {r: 0, g: 0, b: 0, a: 0} + key7: {r: 0, g: 0, b: 0, a: 0} + ctime0: 0 + ctime1: 65535 + ctime2: 0 + ctime3: 0 + ctime4: 0 + ctime5: 0 + ctime6: 0 + ctime7: 0 + atime0: 0 + atime1: 65535 + atime2: 0 + atime3: 0 + atime4: 0 + atime5: 0 + atime6: 0 + atime7: 0 + m_Mode: 0 + m_NumColorKeys: 2 + m_NumAlphaKeys: 2 + numCornerVertices: 4 + numCapVertices: 4 + alignment: 0 + textureMode: 0 + shadowBias: 0.5 + generateLightingData: 0 + m_UseWorldSpace: 1 + m_Loop: 0 +--- !u!114 &1880543041 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880543037} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 6803edce0201f574f923fd9d10e5b30a, type: 3} + m_Name: + m_EditorClassIdentifier: + m_InteractionManager: {fileID: 850389558} + m_InteractionLayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_AttachTransform: {fileID: 0} + m_StartingSelectedInteractable: {fileID: 0} + m_HoverEntered: + m_PersistentCalls: + m_Calls: [] + m_HoverExited: + m_PersistentCalls: + m_Calls: [] + m_SelectEntered: + m_PersistentCalls: + m_Calls: [] + m_SelectExited: + m_PersistentCalls: + m_Calls: [] + m_OnHoverEntered: + m_PersistentCalls: + m_Calls: [] + m_OnHoverExited: + m_PersistentCalls: + m_Calls: [] + m_OnSelectEntered: + m_PersistentCalls: + m_Calls: [] + m_OnSelectExited: + m_PersistentCalls: + m_Calls: [] + m_SelectActionTrigger: 0 + m_HideControllerOnSelect: 0 + m_PlayAudioClipOnSelectEntered: 0 + m_AudioClipForOnSelectEntered: {fileID: 0} + m_PlayAudioClipOnSelectExited: 0 + m_AudioClipForOnSelectExited: {fileID: 0} + m_PlayAudioClipOnSelectCanceled: 0 + m_AudioClipForOnSelectCanceled: {fileID: 0} + m_PlayAudioClipOnHoverEntered: 0 + m_AudioClipForOnHoverEntered: {fileID: 0} + m_PlayAudioClipOnHoverExited: 0 + m_AudioClipForOnHoverExited: {fileID: 0} + m_PlayAudioClipOnHoverCanceled: 0 + m_AudioClipForOnHoverCanceled: {fileID: 0} + m_PlayHapticsOnSelectEntered: 0 + m_HapticSelectEnterIntensity: 0 + m_HapticSelectEnterDuration: 0 + m_PlayHapticsOnSelectExited: 0 + m_HapticSelectExitIntensity: 0 + m_HapticSelectExitDuration: 0 + m_PlayHapticsOnSelectCanceled: 0 + m_HapticSelectCancelIntensity: 0 + m_HapticSelectCancelDuration: 0 + m_PlayHapticsOnHoverEntered: 0 + m_HapticHoverEnterIntensity: 0 + m_HapticHoverEnterDuration: 0 + m_PlayHapticsOnHoverExited: 0 + m_HapticHoverExitIntensity: 0 + m_HapticHoverExitDuration: 0 + m_PlayHapticsOnHoverCanceled: 0 + m_HapticHoverCancelIntensity: 0 + m_HapticHoverCancelDuration: 0 + m_LineType: 0 + m_BlendVisualLinePoints: 1 + m_MaxRaycastDistance: 30 + m_ReferenceFrame: {fileID: 0} + m_Velocity: 16 + m_Acceleration: 9.8 + m_AdditionalGroundHeight: 0.1 + m_AdditionalFlightTime: 0.5 + m_EndPointDistance: 30 + m_EndPointHeight: -10 + m_ControlPointDistance: 10 + m_ControlPointHeight: 5 + m_SampleFrequency: 20 + m_HitDetectionType: 0 + m_SphereCastRadius: 0.1 + m_RaycastMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_RaycastTriggerInteraction: 1 + m_HitClosestOnly: 0 + m_KeepSelectedTargetValid: 1 + m_HoverToSelect: 0 + m_HoverTimeToSelect: 0.5 + m_EnableUIInteraction: 1 + m_AllowAnchorControl: 1 + m_UseForceGrab: 1 + m_RotateSpeed: 180 + m_TranslateSpeed: 1 + m_AnchorRotateReferenceFrame: {fileID: 0} +--- !u!114 &1880543042 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1880543037} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: caff514de9b15ad48ab85dcff5508221, type: 3} + m_Name: + m_EditorClassIdentifier: + m_UpdateTrackingType: 0 + m_EnableInputTracking: 1 + m_EnableInputActions: 1 + m_ModelPrefab: {fileID: 0} + m_ModelParent: {fileID: 0} + m_Model: {fileID: 0} + m_AnimateModel: 0 + m_ModelSelectTransition: + m_ModelDeSelectTransition: + m_PositionAction: + m_UseReference: 1 + m_Action: + m_Name: Position + m_Type: 0 + m_ExpectedControlType: + m_Id: 26d2aaa4-6518-4d33-8fae-419043a723d4 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: -2024308242397127297, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_RotationAction: + m_UseReference: 1 + m_Action: + m_Name: Rotation + m_Type: 0 + m_ExpectedControlType: + m_Id: d7a15530-737b-416a-9d5d-a8b51ba6c682 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: 8248158260566104461, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_SelectAction: + m_UseReference: 1 + m_Action: + m_Name: Select + m_Type: 0 + m_ExpectedControlType: + m_Id: 05483079-4b7c-4369-9176-fb8514428e98 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: -6131295136447488360, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_ActivateAction: + m_UseReference: 1 + m_Action: + m_Name: Activate + m_Type: 0 + m_ExpectedControlType: + m_Id: 38e5c09b-96d2-40e4-ae8e-3bfb9eb16727 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: -5982496924579745919, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_UIPressAction: + m_UseReference: 1 + m_Action: + m_Name: UI Press + m_Type: 0 + m_ExpectedControlType: + m_Id: 347fe4ac-83bc-44f7-a0d2-2793a5775161 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: -6395602842196007441, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_HapticDeviceAction: + m_UseReference: 1 + m_Action: + m_Name: Haptic Device + m_Type: 0 + m_ExpectedControlType: + m_Id: 35cfed17-bcaf-4ff9-9fe0-fa1727b7619b + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: -8785819595477538065, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_RotateAnchorAction: + m_UseReference: 1 + m_Action: + m_Name: Rotate Anchor + m_Type: 0 + m_ExpectedControlType: + m_Id: 4fcd4b62-1769-4cc4-aaee-aea2fc40d24f + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: -7363382999065477798, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_TranslateAnchorAction: + m_UseReference: 1 + m_Action: + m_Name: Translate Anchor + m_Type: 0 + m_ExpectedControlType: + m_Id: 7bfe4461-8d15-4a61-9fa6-28ce950c9996 + m_Processors: + m_Interactions: + m_SingletonActionBindings: [] + m_Reference: {fileID: 7779212132400271959, guid: c348712bda248c246b8c49b3db54643f, type: 3} + m_ButtonPressPoint: 0.5 +--- !u!198 &1901364837 stripped +ParticleSystem: + m_CorrespondingSourceObject: {fileID: 2009051508441775260, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + m_PrefabInstance: {fileID: 1908597805} + m_PrefabAsset: {fileID: 0} +--- !u!1001 &1908597805 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2048687199} + m_Modifications: + - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: partSys1 + value: + objectReference: {fileID: 1530999637} + - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: partSys2 + value: + objectReference: {fileID: 322493382} + - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: partSys3 + value: + objectReference: {fileID: 415316939} + - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: isCharged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: trailTime + value: 0.15 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599841, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: trailWidth + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599844, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599845, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Mass + value: 2.4 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Time + value: 0.2 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.colorGradient.atime1 + value: 65535 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.colorGradient.key0.a + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.colorGradient.key1.a + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.colorGradient.m_NumAlphaKeys + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.size + value: 2 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].time + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[0].value + value: 0.09351158 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].value + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].inSlope + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].inWeight + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599846, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Parameters.widthCurve.m_Curve.Array.data[1].outSlope + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: currentRadius + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: maxOrbitRadius + value: 1.5 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: minOrbitRadius + value: 0.5 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: orbitalVelocity + value: -600 + objectReference: {fileID: 0} + - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: timeOnTheSameOrbit + value: 1 + objectReference: {fileID: 0} - target: {fileID: 264284009461599847, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: orbitChangeVelocity value: 0.2 objectReference: {fileID: 0} + - target: {fileID: 264284009461599865, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} - target: {fileID: 264284009783771359, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_IsActive value: 0 @@ -6697,9 +8232,13 @@ PrefabInstance: propertyPath: m_Enabled value: 0 objectReference: {fileID: 0} + - target: {fileID: 264284009930100675, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} - target: {fileID: 264284009930100684, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_Enabled - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 264284009930100684, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: currentRadius @@ -6737,6 +8276,10 @@ PrefabInstance: propertyPath: partSys3 value: objectReference: {fileID: 1681040412} + - target: {fileID: 264284009930100685, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: isCharged + value: 1 + objectReference: {fileID: 0} - target: {fileID: 264284009930100685, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: trailTime value: 0.15 @@ -6801,6 +8344,10 @@ PrefabInstance: propertyPath: m_IsActive value: 0 objectReference: {fileID: 0} + - target: {fileID: 264284010244169441, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} - target: {fileID: 264284010244169448, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: partSys1 value: @@ -6813,6 +8360,10 @@ PrefabInstance: propertyPath: partSys3 value: objectReference: {fileID: 1901364837} + - target: {fileID: 264284010244169448, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: isCharged + value: 1 + objectReference: {fileID: 0} - target: {fileID: 264284010244169448, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: trailTime value: 0.15 @@ -6879,7 +8430,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 264284010244169455, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_Enabled - value: 1 + value: 0 objectReference: {fileID: 0} - target: {fileID: 264284010244169455, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: currentRadius @@ -6905,6 +8456,10 @@ PrefabInstance: propertyPath: orbitChangeVelocity value: 0.2 objectReference: {fileID: 0} + - target: {fileID: 264284010269365234, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: Energy + value: 10 + objectReference: {fileID: 0} - target: {fileID: 264284010269365235, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_Name value: Proton @@ -6985,6 +8540,34 @@ PrefabInstance: propertyPath: simulationSpeed value: 25 objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: A + value: 3 + objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: B + value: 1.8 + objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: C + value: 2.9 + objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: kConstant + value: 1000 + objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: threshold + value: 100000 + objectReference: {fileID: 0} + - target: {fileID: 4658782103055338294, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: fluxCenter + value: + objectReference: {fileID: 162994102} - target: {fileID: 5040877580958502877, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_LocalPosition.y value: 0 @@ -7025,6 +8608,42 @@ PrefabInstance: propertyPath: simulationSpeed value: 25 objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: vScale + value: 10000000 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: seaLines + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: strength + value: 10 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: fastField + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: physQuarks + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: seaStrength + value: 0.00005 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: forceThreshold + value: 10000 + objectReference: {fileID: 0} + - target: {fileID: 6286276693454516955, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: cancelThreshold + value: 0.01 + objectReference: {fileID: 0} - target: {fileID: 8125098693503326300, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_LocalPosition.x value: 0 @@ -7059,63 +8678,402 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8125098693815725991, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} propertyPath: m_Name - value: Spin Particles + value: Spin Particles + objectReference: {fileID: 0} + - target: {fileID: 8125098693927739081, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: simulationSpeed + value: 25 + objectReference: {fileID: 0} + - target: {fileID: 8125098693927739124, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Name + value: Glow + objectReference: {fileID: 0} + - target: {fileID: 8125098694077733404, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8125098694077733404, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8125098694077733404, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8125098694077733405, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8125098694338459284, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Name + value: Cloud + objectReference: {fileID: 0} + - target: {fileID: 8125098694338459369, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: simulationSpeed + value: 25 + objectReference: {fileID: 0} + - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: quark1 + value: + objectReference: {fileID: 1643749894} + - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: quark2 + value: + objectReference: {fileID: 190211204} + - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: quark3 + value: + objectReference: {fileID: 1453999958} + - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: forceSlider + value: + objectReference: {fileID: 100114487} + - target: {fileID: 8125098694876102903, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8125098694876102903, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 8871818237558183125, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: factor + value: 0.99 + objectReference: {fileID: 0} + - target: {fileID: 8871818237558183125, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: logBase + value: 1.3 + objectReference: {fileID: 0} + - target: {fileID: 8871818237558183125, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: strength + value: 100000 + objectReference: {fileID: 0} + - target: {fileID: 8871818237558183125, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 9007512959689673799, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + propertyPath: m_TagString + value: FluxCenter + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} +--- !u!1 &1909472727 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1909472729} + - component: {fileID: 1909472728} + m_Layer: 0 + m_Name: GluonSpawner + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1909472728 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1909472727} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: ab465ccecf3c9c54d8da1f4f9bf3637c, type: 3} + m_Name: + m_EditorClassIdentifier: + seaGluonMovementComponent: + boidSpeed: 1 + perceptionRadius: 0.14 + repelWeight: 0.95 + momentum: 7 + cageRadius: 1.5 + avoidCageWeight: 3.5 + valenceQuarkWeight: 3.2 + oldVelocity: + x: 0 + y: 0 + z: 0 + gluonsNearby: 0 + gluonsToSpawn: 10000 + gluonPrefab: {fileID: 2827098300969378373, guid: ca26986b491255841988c0e263726c39, type: 3} +--- !u!4 &1909472729 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1909472727} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: -0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 0} + m_RootOrder: 10 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1946731470 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1946731471} + - component: {fileID: 1946731473} + - component: {fileID: 1946731472} + m_Layer: 5 + m_Name: Handle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1946731471 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1946731470} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0.000009313226} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 648929120} + m_RootOrder: 3 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 1.3333282, y: 0} + m_SizeDelta: {x: 20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1946731472 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1946731470} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1946731473 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1946731470} + m_CullTransparentMesh: 1 +--- !u!1 &1955945212 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1955945213} + - component: {fileID: 1955945216} + - component: {fileID: 1955945215} + - component: {fileID: 1955945214} + m_Layer: 5 + m_Name: Toggle Polarized (Y) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1955945213 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1955945212} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.00001738469} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1376224127} + m_Father: {fileID: 947553447} + m_RootOrder: 9 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 50, y: 23} + m_SizeDelta: {x: 40, y: 40} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1955945214 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1955945212} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Navigation: + m_Mode: 3 + m_WrapAround: 0 + m_SelectOnUp: {fileID: 0} + m_SelectOnDown: {fileID: 0} + m_SelectOnLeft: {fileID: 0} + m_SelectOnRight: {fileID: 0} + m_Transition: 1 + m_Colors: + m_NormalColor: {r: 1, g: 1, b: 1, a: 1} + m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1} + m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1} + m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608} + m_ColorMultiplier: 1 + m_FadeDuration: 0.1 + m_SpriteState: + m_HighlightedSprite: {fileID: 0} + m_PressedSprite: {fileID: 0} + m_SelectedSprite: {fileID: 0} + m_DisabledSprite: {fileID: 0} + m_AnimationTriggers: + m_NormalTrigger: Normal + m_HighlightedTrigger: Highlighted + m_PressedTrigger: Pressed + m_SelectedTrigger: Selected + m_DisabledTrigger: Disabled + m_Interactable: 1 + m_TargetGraphic: {fileID: 1955945215} + m_OnClick: + m_PersistentCalls: + m_Calls: + - m_Target: {fileID: 775782547} + m_TargetAssemblyTypeName: AllQuarkScript, Assembly-CSharp + m_MethodName: TogglePolDir + m_Mode: 3 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 1 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!114 &1955945215 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1955945212} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1955945216 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1955945212} + m_CullTransparentMesh: 1 +--- !u!1001 &1964330710 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 6972975766535982195, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_Name + value: SeaQuark objectReference: {fileID: 0} - - target: {fileID: 8125098693927739081, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: simulationSpeed - value: 25 + - target: {fileID: 6972975766535982195, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_IsActive + value: 0 objectReference: {fileID: 0} - - target: {fileID: 8125098693927739124, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Name - value: Glow + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_RootOrder + value: 11 objectReference: {fileID: 0} - - target: {fileID: 8125098694077733404, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} propertyPath: m_LocalPosition.x - value: 0 + value: 0.55 objectReference: {fileID: 0} - - target: {fileID: 8125098694077733404, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} propertyPath: m_LocalPosition.y - value: 0 + value: -0.053472012 objectReference: {fileID: 0} - - target: {fileID: 8125098694077733404, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} propertyPath: m_LocalPosition.z - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 8125098694077733405, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_IsActive - value: 0 + value: 1.5 objectReference: {fileID: 0} - - target: {fileID: 8125098694338459284, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_Name - value: Cloud + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.w + value: 1 objectReference: {fileID: 0} - - target: {fileID: 8125098694338459369, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: simulationSpeed - value: 25 + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.x + value: -0 objectReference: {fileID: 0} - - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: quark1 - value: - objectReference: {fileID: 1643749894} - - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: quark2 - value: - objectReference: {fileID: 190211204} - - target: {fileID: 8125098694876102902, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: quark3 - value: - objectReference: {fileID: 1453999958} - - target: {fileID: 8125098694876102903, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_LocalPosition.x - value: 0 + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.y + value: -0 objectReference: {fileID: 0} - - target: {fileID: 8125098694876102903, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - propertyPath: m_LocalPosition.y - value: 0 + - target: {fileID: 6972975766535982204, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} + propertyPath: m_LocalRotation.z + value: -0 objectReference: {fileID: 0} m_RemovedComponents: [] - m_SourcePrefab: {fileID: 100100000, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} ---- !u!1 &1909472727 + m_SourcePrefab: {fileID: 100100000, guid: 87381a99f65d6a144b6fbd52f2b1ee2a, type: 3} +--- !u!1 &1986284172 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -7123,72 +9081,216 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1909472729} - - component: {fileID: 1909472728} + - component: {fileID: 1986284173} + - component: {fileID: 1986284175} + - component: {fileID: 1986284174} + m_Layer: 5 + m_Name: Fill + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1986284173 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1986284172} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1160112378} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 1} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 10, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &1986284174 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1986284172} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &1986284175 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1986284172} + m_CullTransparentMesh: 1 +--- !u!198 &1994630448 stripped +ParticleSystem: + m_CorrespondingSourceObject: {fileID: 2009051508877970722, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} + m_PrefabInstance: {fileID: 1908597805} + m_PrefabAsset: {fileID: 0} +--- !u!1 &2019017291 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2019017292} m_Layer: 0 - m_Name: Spawner + m_Name: Probes + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &2019017292 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2019017291} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 760849798} + - {fileID: 1346629919} + m_Father: {fileID: 0} + m_RootOrder: 13 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &2026433812 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2026433813} + - component: {fileID: 2026433815} + - component: {fileID: 2026433814} + m_Layer: 5 + m_Name: Handle m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!114 &1909472728 +--- !u!224 &2026433813 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2026433812} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 1722373758} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0, y: 0} + m_AnchorMax: {x: 0, y: 0} + m_AnchoredPosition: {x: 0, y: 0} + m_SizeDelta: {x: 20, y: 0} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!114 &2026433814 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1909472727} + m_GameObject: {fileID: 2026433812} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: d2fc70c9c46a0144682aea3d738badb7, type: 3} + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} m_Name: m_EditorClassIdentifier: - seaGluonMovementComponent: - boidSpeed: 1 - perceptionRadius: 0.14 - repelWeight: 0.95 - momentum: 7 - cageRadius: 1.5 - avoidCageWeight: 3.5 - valenceQuarkWeight: 3.2 - oldVelocity: - x: 0 - y: 0 - z: 0 - gluonsNearby: 0 - gluonsToSpawn: 20000 - gluonPrefab: {fileID: 2827098300969378373, guid: ca26986b491255841988c0e263726c39, type: 3} - seaQuarkMovementComponent: - boidSpeed: 1.5 - perceptionRadius: 0.3 - repelWeight: 0.3 - momentum: 40 - cageRadius: 1.5 - avoidCageWeight: 2 - valenceQuarkWeight: 0.5 - oldVelocity: - x: 0 - y: 0 - z: 0 - gluonsNearby: 0 - quarksToSpawn: 0 - quarkPrefab: {fileID: 5561600251957936904, guid: f58b8247b0000944a9347ea55abaea03, type: 3} ---- !u!4 &1909472729 + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &2026433815 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2026433812} + m_CullTransparentMesh: 1 +--- !u!1 &2042592940 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2042592941} + m_Layer: 0 + m_Name: -r + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2042592941 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1909472727} + m_GameObject: {fileID: 2042592940} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: -0, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 9 + m_Father: {fileID: 1877326014} + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &1946731470 +--- !u!1 &2048687197 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -7196,74 +9298,58 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1946731471} - - component: {fileID: 1946731473} - - component: {fileID: 1946731472} - m_Layer: 5 - m_Name: Handle + - component: {fileID: 2048687199} + - component: {fileID: 2048687198} + - component: {fileID: 2048687200} + m_Layer: 0 + m_Name: ProtonNew m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &1946731471 -RectTransform: +--- !u!114 &2048687198 +MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1946731470} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0.000009313226} + m_GameObject: {fileID: 2048687197} + m_Enabled: 0 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3119545598f955aeeb2c1bf4bd9f8534, type: 3} + m_Name: + m_EditorClassIdentifier: + speed: 5 +--- !u!4 &2048687199 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2048687197} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 648929120} - m_RootOrder: 3 + m_Children: + - {fileID: 539987343} + m_Father: {fileID: 0} + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 1.3333282, y: 0} - m_SizeDelta: {x: 20, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1946731472 +--- !u!114 &2048687200 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1946731470} + m_GameObject: {fileID: 2048687197} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Script: {fileID: 11500000, guid: b7fedc2603d6c436a89f183a8fb45c2c, type: 3} m_Name: m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 0 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1946731473 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1946731470} - m_CullTransparentMesh: 1 ---- !u!1 &1955945212 + shell: {fileID: 1092884936} +--- !u!1 &2055267812 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -7271,47 +9357,49 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 1955945213} - - component: {fileID: 1955945216} - - component: {fileID: 1955945215} - - component: {fileID: 1955945214} + - component: {fileID: 2055267813} + - component: {fileID: 2055267814} m_Layer: 5 - m_Name: Toggle Polarized (2) + m_Name: TISlider m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &1955945213 +--- !u!224 &2055267813 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1955945212} + m_GameObject: {fileID: 2055267812} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0.00001937151} + m_LocalPosition: {x: 0, y: 0, z: 0.0000011175871} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 1376224127} + - {fileID: 1661371859} + - {fileID: 602746866} + - {fileID: 1722373758} + - {fileID: 1778281981} + - {fileID: 1758894655} m_Father: {fileID: 947553447} - m_RootOrder: 8 + m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 25.999977, y: 57.999996} - m_SizeDelta: {x: 40, y: 40} + m_AnchoredPosition: {x: 20.999998, y: 130} + m_SizeDelta: {x: 160, y: 20} m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1955945214 +--- !u!114 &2055267814 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1955945212} + m_GameObject: {fileID: 2055267812} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: @@ -7342,141 +9430,30 @@ MonoBehaviour: m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 - m_TargetGraphic: {fileID: 1955945215} - m_OnClick: + m_TargetGraphic: {fileID: 2026433814} + m_FillRect: {fileID: 1631260132} + m_HandleRect: {fileID: 2026433813} + m_Direction: 0 + m_MinValue: 0 + m_MaxValue: 5 + m_WholeNumbers: 0 + m_Value: 1 + m_OnValueChanged: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 775782547} - m_TargetAssemblyTypeName: AllQuarkScript, Assembly-CSharp - m_MethodName: TogglePolY + - m_Target: {fileID: 0} + m_TargetAssemblyTypeName: + m_MethodName: m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_ObjectArgumentAssemblyTypeName: m_IntArgument: 0 - m_FloatArgument: 0 - m_StringArgument: - m_BoolArgument: 0 - m_CallState: 2 ---- !u!114 &1955945215 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1955945212} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1955945216 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1955945212} - m_CullTransparentMesh: 1 ---- !u!1 &1986284172 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 1986284173} - - component: {fileID: 1986284175} - - component: {fileID: 1986284174} - m_Layer: 5 - m_Name: Fill - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!224 &1986284173 -RectTransform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1986284172} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 1160112378} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} - m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 10, y: 0} - m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &1986284174 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1986284172} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} - m_Name: - m_EditorClassIdentifier: - m_Material: {fileID: 0} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_RaycastTarget: 1 - m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} - m_Maskable: 1 - m_OnCullStateChanged: - m_PersistentCalls: - m_Calls: [] - m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 1 - m_PreserveAspect: 0 - m_FillCenter: 1 - m_FillMethod: 4 - m_FillAmount: 1 - m_FillClockwise: 1 - m_FillOrigin: 0 - m_UseSpriteMesh: 0 - m_PixelsPerUnitMultiplier: 1 ---- !u!222 &1986284175 -CanvasRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 1986284172} - m_CullTransparentMesh: 1 ---- !u!198 &1994630448 stripped -ParticleSystem: - m_CorrespondingSourceObject: {fileID: 2009051508877970722, guid: f71a522907c1643a49dd8ce95c95e092, type: 3} - m_PrefabInstance: {fileID: 1908597805} - m_PrefabAsset: {fileID: 0} ---- !u!1 &2026433812 + m_FloatArgument: 0 + m_StringArgument: + m_BoolArgument: 0 + m_CallState: 2 +--- !u!1 &2057569446 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -7484,42 +9461,42 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 2026433813} - - component: {fileID: 2026433815} - - component: {fileID: 2026433814} + - component: {fileID: 2057569447} + - component: {fileID: 2057569449} + - component: {fileID: 2057569448} m_Layer: 5 - m_Name: Handle + m_Name: Fill m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &2026433813 +--- !u!224 &2057569447 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2026433812} + m_GameObject: {fileID: 2057569446} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] - m_Father: {fileID: 1722373758} + m_Father: {fileID: 1185038650} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} - m_AnchorMax: {x: 0, y: 0} + m_AnchorMax: {x: 0.2, y: 1} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 20, y: 0} + m_SizeDelta: {x: 10, y: 0} m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &2026433814 +--- !u!114 &2057569448 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2026433812} + m_GameObject: {fileID: 2057569446} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} @@ -7533,8 +9510,8 @@ MonoBehaviour: m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] - m_Sprite: {fileID: 10913, guid: 0000000000000000f000000000000000, type: 0} - m_Type: 0 + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 m_PreserveAspect: 0 m_FillCenter: 1 m_FillMethod: 4 @@ -7543,74 +9520,113 @@ MonoBehaviour: m_FillOrigin: 0 m_UseSpriteMesh: 0 m_PixelsPerUnitMultiplier: 1 ---- !u!222 &2026433815 +--- !u!222 &2057569449 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2026433812} + m_GameObject: {fileID: 2057569446} m_CullTransparentMesh: 1 ---- !u!1 &2048687197 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 2048687199} - - component: {fileID: 2048687198} - - component: {fileID: 2048687200} - m_Layer: 0 - m_Name: ProtonNew - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!114 &2048687198 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2048687197} - m_Enabled: 0 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 3119545598f955aeeb2c1bf4bd9f8534, type: 3} - m_Name: - m_EditorClassIdentifier: - speed: 5 ---- !u!4 &2048687199 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2048687197} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: - - {fileID: 539987343} - m_Father: {fileID: 0} - m_RootOrder: 3 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &2048687200 -MonoBehaviour: +--- !u!1001 &2080639878 +PrefabInstance: m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2048687197} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: b7fedc2603d6c436a89f183a8fb45c2c, type: 3} - m_Name: - m_EditorClassIdentifier: - shell: {fileID: 1092884936} ---- !u!1 &2055267812 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 0} + m_Modifications: + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: Value + value: 50 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: scope + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: isCharged + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223408, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: chargeType + value: 5 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223409, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_Name + value: Magnetic Field + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223409, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_IsActive + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_RootOrder + value: 14 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalScale.y + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalScale.z + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.w + value: 0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.x + value: -0.7071068 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: -90 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223420, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 1344843524751223422, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5496229184877665167, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + propertyPath: m_Enabled + value: 0 + objectReference: {fileID: 0} + m_RemovedComponents: + - {fileID: 5496229184877665167, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} + m_SourcePrefab: {fileID: 100100000, guid: 42dcf3cefd679484eb3a0d686336e4ff, type: 3} +--- !u!1 &2112951526 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -7618,49 +9634,47 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 2055267813} - - component: {fileID: 2055267814} + - component: {fileID: 2112951527} + - component: {fileID: 2112951530} + - component: {fileID: 2112951529} + - component: {fileID: 2112951528} m_Layer: 5 - m_Name: TISlider + m_Name: Toggle Spin Lines m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!224 &2055267813 +--- !u!224 &2112951527 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2055267812} + m_GameObject: {fileID: 2112951526} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0.0000011175871} + m_LocalPosition: {x: 0, y: 0, z: -0.2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - - {fileID: 1661371859} - - {fileID: 602746866} - - {fileID: 1722373758} - - {fileID: 1778281981} - - {fileID: 1758894655} + - {fileID: 1555448210} m_Father: {fileID: 947553447} - m_RootOrder: 4 + m_RootOrder: 14 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 20.999998, y: 130} - m_SizeDelta: {x: 160, y: 20} + m_AnchoredPosition: {x: 25.3, y: -31.6} + m_SizeDelta: {x: 80, y: 53.52} m_Pivot: {x: 0.5, y: 0.5} ---- !u!114 &2055267814 +--- !u!114 &2112951528 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2055267812} + m_GameObject: {fileID: 2112951526} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 67db9e8f0e2ae9c40bc1e2b64352a6b4, type: 3} + m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} m_Name: m_EditorClassIdentifier: m_Navigation: @@ -7691,29 +9705,60 @@ MonoBehaviour: m_SelectedTrigger: Selected m_DisabledTrigger: Disabled m_Interactable: 1 - m_TargetGraphic: {fileID: 2026433814} - m_FillRect: {fileID: 1631260132} - m_HandleRect: {fileID: 2026433813} - m_Direction: 0 - m_MinValue: 0 - m_MaxValue: 5 - m_WholeNumbers: 0 - m_Value: 1 - m_OnValueChanged: + m_TargetGraphic: {fileID: 2112951529} + m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 0} - m_TargetAssemblyTypeName: - m_MethodName: + - m_Target: {fileID: 775782547} + m_TargetAssemblyTypeName: AllQuarkScript, Assembly-CSharp + m_MethodName: SpinLines m_Mode: 1 m_Arguments: m_ObjectArgument: {fileID: 0} - m_ObjectArgumentAssemblyTypeName: + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine m_IntArgument: 0 m_FloatArgument: 0 m_StringArgument: m_BoolArgument: 0 m_CallState: 2 +--- !u!114 &2112951529 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2112951526} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} + m_Maskable: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + m_Type: 1 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 + m_PixelsPerUnitMultiplier: 1 +--- !u!222 &2112951530 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2112951526} + m_CullTransparentMesh: 1 --- !u!1 &2118957716 GameObject: m_ObjectHideFlags: 0 @@ -7740,15 +9785,15 @@ RectTransform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2118957716} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: -0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 947553447} - m_RootOrder: 6 + m_RootOrder: 7 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} - m_AnchoredPosition: {x: 37, y: 85} + m_AnchoredPosition: {x: 37, y: 50.000004} m_SizeDelta: {x: 200, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!114 &2118957718 @@ -7907,7 +9952,7 @@ RectTransform: m_Children: - {fileID: 5179622213583491912} m_Father: {fileID: 0} - m_RootOrder: 4 + m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: -57.712, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} @@ -8014,6 +10059,67 @@ GameObject: m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 +--- !u!1001 &3996239516574743790 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 2019017292} + m_Modifications: + - target: {fileID: 3996239516044172320, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_Name + value: Force Probe + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_RootOrder + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalPosition.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalPosition.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172348, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 3996239516044172351, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} + propertyPath: charge + value: 1 + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: b338bc23756c3134a9fe3b850fa349bf, type: 3} --- !u!114 &5011159352170099148 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/AllQuarkScript.cs b/Assets/Scripts/AllQuarkScript.cs index ac9e8b207..3d5a310bb 100644 --- a/Assets/Scripts/AllQuarkScript.cs +++ b/Assets/Scripts/AllQuarkScript.cs @@ -6,6 +6,7 @@ public class AllQuarkScript : MonoBehaviour { public Slider speedSlider; + public Slider forceSlider; public float quarkSpeed = 3; public bool polarized = true; public Transform quark1; @@ -15,9 +16,11 @@ public class AllQuarkScript : MonoBehaviour ChangeOrbit c2; ChangeOrbit c3; - public int polarizationAxis = 0; + public PolarizationAxis polarizationAxis = PolarizationAxis.Z; + public bool forceLineVis = true; + PartonSpinAdjuster spinAdjuster; // Start is called before the first frame update void Start() @@ -26,6 +29,7 @@ void Start() c2 = quark2.GetComponent(); c3 = quark3.GetComponent(); + spinAdjuster = FindObjectOfType(); } // Update is called once per frame @@ -34,34 +38,45 @@ void Update() } public void TogglePolarization(){ - if(polarized){ - c1.SetPolarization(false); - c2.SetPolarization(false); - c3.SetPolarization(false); - polarized = false; - } - else if(!polarized){ - c1.SetPolarization(true); - c2.SetPolarization(true); - c3.SetPolarization(true); - polarized = true; - } - + polarized = !polarized; //Invert the current polarization, then set new value to each Orbit + c1.SetPolarization(polarized); + c2.SetPolarization(polarized); + c3.SetPolarization(polarized); + spinAdjuster.SetPolarization(polarized ? polarizationAxis : PolarizationAxis.NONE); //If you are polarized, set the polarization axis of the PSA to the axis, otherwise none + } + + public void TogglePolDir(int XYZ){ + PolarizationAxis direction = getDirection(XYZ); + c1.polarizationAxis = direction; + c2.polarizationAxis = direction; + c3.polarizationAxis = direction; + polarizationAxis = direction; + + if (polarized) spinAdjuster.SetPolarization(direction); //Only set PSA axis if polarized, otherwise keep it none } - public void TogglePolX(){ - c1.polarizationAxis = 0; - c2.polarizationAxis = 0; - c3.polarizationAxis = 0; + PolarizationAxis getDirection(int XYZ) { + switch (XYZ) { + case 0: + return PolarizationAxis.X; + case 1: + return PolarizationAxis.Y; + case 2: + return PolarizationAxis.Z; + default: + return PolarizationAxis.NONE; + } } - public void TogglePolY(){ - c1.polarizationAxis = 1; - c2.polarizationAxis = 1; - c3.polarizationAxis = 1; + + public void Disable() + { + forceLineVis = !forceLineVis; } - public void TogglePolZ(){ - c1.polarizationAxis = 2; - c2.polarizationAxis = 2; - c3.polarizationAxis = 2; + public void SpinLines() { + FindObjectOfType().spinVis(); } } + +public enum PolarizationAxis { + X, Y, Z, NONE +} diff --git a/Assets/Scripts/ChangeOrbit.cs b/Assets/Scripts/ChangeOrbit.cs index 84b2443d9..4509aa2f7 100644 --- a/Assets/Scripts/ChangeOrbit.cs +++ b/Assets/Scripts/ChangeOrbit.cs @@ -1,209 +1,219 @@ -using System.Collections; -using System.Collections.Generic; -using DG.Tweening; -using UnityEngine; - -/// -/// This class implements rotation of quark along it's orbit and transitions between random orbits. -/// -public class ChangeOrbit : MonoBehaviour -{ - [SerializeField] - [Tooltip("Maximum allowed orbit radius.")] - private float maxOrbitRadius = 20f; - - [SerializeField] - [Tooltip("Minimal allowed orbit radius.")] - private float minOrbitRadius = 7.0f; - - [SerializeField] - [Tooltip("Orbital velocity.")] - private float orbitalVelocity = 300f; - - [SerializeField] - [Tooltip("Time for quark to stay on the same orbit.")] - private float timeOnTheSameOrbit = 10f; - - [SerializeField] - [Tooltip("Velocity for orbit transition.")] - private float orbitChangeVelocity = 100.0f; - - [SerializeField] - private bool isPolarized = false; - - private bool isSmallOrbits = false; - - [SerializeField] - private float currentRadius = 1.0f; - - private float targetRadius; - - private Tween tween; - - /// - /// Current speed of the quark. - /// - [SerializeField] - public float EstimatedSpeed { get; private set;} = 0.0f; - - /// - /// Current orbit radius of the quark. - /// - public float CurrentOrbitRadius { get; private set; } - - /// - /// Maximum possible radius for the quark. - /// - public float MaxRadius { get { return maxOrbitRadius; } } - - /// - /// Is quark polarized right now. - /// - public bool IsPolarized { get { return isPolarized; } } - - /// - /// Is quark in small orbits mode. - /// - public bool IsSmallOrbits { get { return isSmallOrbits; } } - - public float rad; - public Vector3 tempRotVector; - public int polarizationAxis = 2; - - /// - /// Enable or disable small orbits mode for this quark. - /// - public void SetSmallRadius(bool isSmall) - { - if (isSmallOrbits == isSmall) - { - return; - } - - StopAllCoroutines(); - - maxOrbitRadius = isSmall ? (maxOrbitRadius / 10.0f) : (maxOrbitRadius * 10.0f); - isSmallOrbits = isSmall; - - StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity * 3.0f)); - } - - /// - /// Enable or polarization small orbits mode for this quark. - /// - public void SetPolarization(bool polarize) - { - if (polarize == isPolarized) - { - return; - } - - StopAllCoroutines(); - - transform.position = polarize ? new Vector3(transform.position.x, transform.position.y, 0.0f) : new Vector3(transform.position.x, 0.0f, transform.position.z); - isPolarized = polarize; - - StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity * 3.0f)); - } - - private void Start() - { - //StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity)); - - // Enable polarization - isPolarized = true; - transform.position = new Vector3(transform.position.x, transform.position.y, 0.0f); - - // Disable small orbits mode - isSmallOrbits = false; - StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity * 3.0f)); - } - - private IEnumerator ChangeOrbitWithDelay(float changeVelocity) - { - - while (true) - { - // Get new radius value - targetRadius = RandomGaussian.Range(minOrbitRadius, maxOrbitRadius); - // Calculate transition time based on velocity - float difference = Mathf.Abs(transform.position.magnitude - targetRadius); - float t = difference / changeVelocity; - - // Initiate new orbit transition - tween?.Kill(); - // Smoothly blend current radius to a new value - tween = DOTween.To(() => currentRadius, v => currentRadius = v, targetRadius, t); - // print("hello"); - tween.SetEase(Ease.InOutQuad); - - yield return new WaitForSeconds(timeOnTheSameOrbit); - } - } - float counter = 0.0f; - float axisChangeTime = .5f; - // Vector3 tempRotVector = Vector3.zero; - private void Update() - { - rad = EstimatedSpeed; - Vector3 pos = transform.position; - - - if(isPolarized){ - if(polarizationAxis == 0){ - tempRotVector = new Vector3(1.0f, 0.0f, 0.0f); - transform.position = new Vector3(0.0f, transform.position.y, transform.position.z); - } - else if(polarizationAxis == 1){ - tempRotVector = new Vector3(0.0f, 1.0f, 0.0f); - transform.position = new Vector3(transform.position.x, 0.0f, transform.position.z); - - } - else if(polarizationAxis == 2){ - tempRotVector = new Vector3(0.0f, 0.0f, 1.0f); - transform.position = new Vector3(transform.position.x , transform.position.y, 0.0f); - - } - } - else if(!isPolarized && counter < axisChangeTime) - counter += Time.deltaTime; - else{ - tempRotVector = Random.insideUnitCircle.normalized; - counter = 0.0f; - axisChangeTime = Random.Range(0.3f, 0.7f); - } - - Vector3 rotationVector = tempRotVector; - // Vector3 rotationVector = isPolarized ? Vector3.forward : Vector3.up; - - // First rotate current position along rotationVector with specified orbital speed - // float speed = orbitalVelocity * QuarkSettings.Instance.GlobalSpeedMultiplier; - float speed = orbitalVelocity; - Vector3 rotated = Quaternion.AngleAxis(speed / pos.magnitude * Time.deltaTime, rotationVector) * pos; - // Vector3 rotated = Quaternion.AngleAxis(speed * Time.deltaTime, rotationVector) * pos; - - - // Then calculate new position based on direction from old rotation position and orbit radius - Vector3 newPosition = rotated.normalized * currentRadius; - // Estimate current seed and orbit radius for public getters - EstimatedSpeed = Vector3.Distance(newPosition, transform.position) / Time.deltaTime; - if(EstimatedSpeed < 6.5) - axisChangeTime = .1f; - CurrentOrbitRadius = newPosition.magnitude; - transform.position = newPosition; - - if(isPolarized){ - if(polarizationAxis == 0){ - transform.position = new Vector3(0.0f, transform.position.y, transform.position.z); - } - else if(polarizationAxis == 1){ - transform.position = new Vector3(transform.position.x, 0.0f, transform.position.z); - - } - else if(polarizationAxis == 2){ - transform.position = new Vector3(transform.position.x , transform.position.y, 0.0f); - - } - } - } -} +using System.Collections; +using System.Collections.Generic; +using DG.Tweening; +using UnityEngine; + +/// +/// This class implements rotation of quark along it's orbit and transitions between random orbits. +/// +public class ChangeOrbit : MonoBehaviour +{ + [SerializeField] + [Tooltip("Maximum allowed orbit radius.")] + private float maxOrbitRadius = 20f; + + [SerializeField] + [Tooltip("Minimal allowed orbit radius.")] + private float minOrbitRadius = 7.0f; + + [SerializeField] + [Tooltip("Orbital velocity.")] + private float orbitalVelocity = 300f; + + [SerializeField] + [Tooltip("Time for quark to stay on the same orbit.")] + private float timeOnTheSameOrbit = 10f; + + [SerializeField] + [Tooltip("Velocity for orbit transition.")] + private float orbitChangeVelocity = 100.0f; + + [SerializeField] + private bool isPolarized = false; + + private bool isSmallOrbits = false; + + [SerializeField] + private float currentRadius = 1.0f; + + private float targetRadius; + + private Tween tween; + + /// + /// Current speed of the quark. + /// + [SerializeField] + public float EstimatedSpeed { get; private set;} = 0.0f; + + /// + /// Current orbit radius of the quark. + /// + public float CurrentOrbitRadius { get; private set; } + + /// + /// Maximum possible radius for the quark. + /// + public float MaxRadius { get { return maxOrbitRadius; } } + + /// + /// Is quark polarized right now. + /// + public bool IsPolarized { get { return isPolarized; } } + + /// + /// Is quark in small orbits mode. + /// + public bool IsSmallOrbits { get { return isSmallOrbits; } } + + public float rad; + public Vector3 tempRotVector; + public PolarizationAxis polarizationAxis = PolarizationAxis.Z; + + /// + /// Enable or disable small orbits mode for this quark. + /// + public void SetSmallRadius(bool isSmall) + { + if (isSmallOrbits == isSmall) + { + return; + } + + StopAllCoroutines(); + + maxOrbitRadius = isSmall ? (maxOrbitRadius / 10.0f) : (maxOrbitRadius * 10.0f); + isSmallOrbits = isSmall; + + StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity * 3.0f)); + } + + /// + /// Enable or polarization small orbits mode for this quark. + /// + public void SetPolarization(bool polarize) + { + if (polarize == isPolarized) + { + return; + } + + StopAllCoroutines(); + + transform.position = polarize ? new Vector3(transform.position.x, transform.position.y, 0.0f) : new Vector3(transform.position.x, 0.0f, transform.position.z); + isPolarized = polarize; + + StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity * 3.0f)); + } + + private void Start() + { + //StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity)); + + // Enable polarization + isPolarized = true; + transform.position = new Vector3(transform.position.x, transform.position.y, 0.0f); + + // Disable small orbits mode + isSmallOrbits = false; + StartCoroutine(ChangeOrbitWithDelay(orbitChangeVelocity * 3.0f)); + } + + private IEnumerator ChangeOrbitWithDelay(float changeVelocity) + { + + while (true) + { + // Get new radius value + targetRadius = RandomGaussian.Range(minOrbitRadius, maxOrbitRadius); + // Calculate transition time based on velocity + float difference = Mathf.Abs(transform.position.magnitude - targetRadius); + float t = difference / changeVelocity; + + // Initiate new orbit transition + tween?.Kill(); + // Smoothly blend current radius to a new value + tween = DOTween.To(() => currentRadius, v => currentRadius = v, targetRadius, t); + // print("hello"); + tween.SetEase(Ease.InOutQuad); + + yield return new WaitForSeconds(timeOnTheSameOrbit); + } + } + float counter = 0.0f; + float axisChangeTime = .5f; + // Vector3 tempRotVector = Vector3.zero; + private void Update() + { + rad = EstimatedSpeed; + Vector3 pos = transform.position; + + + if(isPolarized){ + switch (polarizationAxis) + { + case PolarizationAxis.X: + tempRotVector = new Vector3(1.0f, 0.0f, 0.0f); + transform.position = new Vector3(0.0f, transform.position.y, transform.position.z); + break; + case PolarizationAxis.Y: + tempRotVector = new Vector3(0.0f, 1.0f, 0.0f); + transform.position = new Vector3(transform.position.x, 0.0f, transform.position.z); + break; + case PolarizationAxis.Z: + tempRotVector = new Vector3(0.0f, 0.0f, 1.0f); + transform.position = new Vector3(transform.position.x, transform.position.y, 0.0f); + break; + case PolarizationAxis.NONE: + break; + default: + break; + } + } + else if(!isPolarized && counter < axisChangeTime) + counter += Time.deltaTime; + else{ + tempRotVector = Random.insideUnitCircle.normalized; + counter = 0.0f; + axisChangeTime = Random.Range(0.3f, 0.7f); + } + + Vector3 rotationVector = tempRotVector; + // Vector3 rotationVector = isPolarized ? Vector3.forward : Vector3.up; + + // First rotate current position along rotationVector with specified orbital speed + // float speed = orbitalVelocity * QuarkSettings.Instance.GlobalSpeedMultiplier; + float speed = orbitalVelocity; + Vector3 rotated = Quaternion.AngleAxis(speed / pos.magnitude * Time.deltaTime, rotationVector) * pos; + // Vector3 rotated = Quaternion.AngleAxis(speed * Time.deltaTime, rotationVector) * pos; + + + // Then calculate new position based on direction from old rotation position and orbit radius + Vector3 newPosition = rotated.normalized * currentRadius; + // Estimate current seed and orbit radius for public getters + EstimatedSpeed = Vector3.Distance(newPosition, transform.position) / Time.deltaTime; + if(EstimatedSpeed < 6.5) + axisChangeTime = .1f; + CurrentOrbitRadius = newPosition.magnitude; + transform.position = newPosition; + + if(isPolarized){ + switch (polarizationAxis) + { + case PolarizationAxis.X: + transform.position = new Vector3(0.0f, transform.position.y, transform.position.z); + break; + case PolarizationAxis.Y: + transform.position = new Vector3(transform.position.x, 0.0f, transform.position.z); + break; + case PolarizationAxis.Z: + transform.position = new Vector3(transform.position.x, transform.position.y, 0.0f); + break; + case PolarizationAxis.NONE: + break; + default: + break; + } + } + } +} diff --git a/Assets/Scripts/ECS Particles/Spawner.cs b/Assets/Scripts/ECS Particles/GluonSpawner.cs similarity index 64% rename from Assets/Scripts/ECS Particles/Spawner.cs rename to Assets/Scripts/ECS Particles/GluonSpawner.cs index 0e7cbe9ed..eeb806585 100644 --- a/Assets/Scripts/ECS Particles/Spawner.cs +++ b/Assets/Scripts/ECS Particles/GluonSpawner.cs @@ -3,8 +3,7 @@ using Unity.Transforms; using Unity.Rendering; - -public class Spawner : MonoBehaviour { +public class GluonSpawner : MonoBehaviour { private EntityManager entityManager; @@ -14,12 +13,6 @@ public class Spawner : MonoBehaviour { private EntityArchetype gluonArchetype; private Entity gluonEntity; - public MovementComponent seaQuarkMovementComponent; - public int quarksToSpawn; - public GameObject quarkPrefab; - private EntityArchetype quarkArchetype; - private Entity quarkEntity; - // public Mesh mesh; // public Material material; @@ -43,32 +36,10 @@ private void Start() { var settings = GameObjectConversionSettings.FromWorld(World.DefaultGameObjectInjectionWorld, null); gluonEntity = GameObjectConversionUtility.ConvertGameObjectHierarchy(gluonPrefab, settings); - quarkEntity = GameObjectConversionUtility.ConvertGameObjectHierarchy(quarkPrefab, settings); for(int i=0; i(), ComponentType.ReadOnly()); diff --git a/Assets/Scripts/ECS Particles/PointCharge.cs b/Assets/Scripts/ECS Particles/PointCharge.cs new file mode 100644 index 000000000..a57e07360 --- /dev/null +++ b/Assets/Scripts/ECS Particles/PointCharge.cs @@ -0,0 +1,8 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class PointCharge : TypeQuark +{ + +} diff --git a/Assets/Scripts/ECS Particles/PointCharge.cs.meta b/Assets/Scripts/ECS Particles/PointCharge.cs.meta new file mode 100644 index 000000000..3857eaa3a --- /dev/null +++ b/Assets/Scripts/ECS Particles/PointCharge.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0f0d6c4724a4d8c46be4bfff596fcb2b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ECS Particles/SeaQuark.cs b/Assets/Scripts/ECS Particles/SeaQuark.cs new file mode 100644 index 000000000..315fe43ad --- /dev/null +++ b/Assets/Scripts/ECS Particles/SeaQuark.cs @@ -0,0 +1,99 @@ +using UnityEngine; +using Unity.Mathematics; + +public class SeaQuark : MonoBehaviour { + public float HP; + public float virtuality; + public float x; + public float cageRadius; + public QuarkColor color; + + private GameObject valenceQuarkDown; + private GameObject valenceQuarkUpRed; + private GameObject valenceQuarkUpBlue; + + private Vector3 dirAvg; + + private Vector3 RandomUnitVector() { + return new Vector3(UnityEngine.Random.Range(-1f, 1f), UnityEngine.Random.Range(-1f, 1f), UnityEngine.Random.Range(-1f, 1f)); + } + + private float3 calculateValenceQuarkForce(GameObject quark) { + // valenceQuarkDown.transform.position - transform.position + // return vectorToQuark / math.max(0.1f, math.lengthsq(vectorToQuark)); + if (quark == null) + return 0; + + float3 vectorToQuark = (float3) (quark.transform.position - this.transform.position); + float3 f = vectorToQuark / math.max(0.1f, math.lengthsq(vectorToQuark)); + + if(quark.GetComponent().quarkColor == this.color) { + return f; + } else { + return -1 * f; + } + } + + private Vector3 randomnessFromVirtuality() { + Vector3 r = Vector3.zero; + if(virtuality > 0.1f) { + Vector3 shake = RandomUnitVector() * virtuality * 10f; + r += shake; + + if(UnityEngine.Random.Range(0, 900 - (int)(virtuality * 800)) == 1) { // range(0,~100) good for maximum jumpiness + Vector3 jump = RandomUnitVector() * 150f; + r += jump; + this.dirAvg = r; // reset position history - also makes rotation look random + } + } + return r; + } + + public void Start() { + HP = 1f; + color = QuarkColor.Red; + valenceQuarkDown = GameObject.Find("Quark3_Down"); + valenceQuarkUpRed = GameObject.Find("Quark1_Up_Red"); + valenceQuarkUpBlue = GameObject.Find("Quark2_Up_Blue"); + + dirAvg = RandomUnitVector() * 5; + transform.rotation = Quaternion.LookRotation(dirAvg); + } + + public void Update() { + QuarkPair[] qs = GetComponentsInChildren(); + //Vector3 center = (qs[1].transform.position + qs[0].transform.position) / 2; + + //GetComponentInChildren().transform.parent.position = center; + + //qs[1].transform.position = center + ((qs[1].transform.position - center).normalized * (transform.localScale.z / 2f)); + //qs[0].transform.position = center + ((qs[0].transform.position - center).normalized * (transform.localScale.z / 2f)); + + //GetComponentInChildren().transform.parent.LookAt(qs[1].transform.position, GetComponentInChildren().transform.up); + + float3 valenceQuarkForce = calculateValenceQuarkForce(valenceQuarkDown) + + calculateValenceQuarkForce(valenceQuarkUpRed) + + calculateValenceQuarkForce(valenceQuarkUpBlue); + + Vector3 dir = valenceQuarkForce * 2.3f; + dirAvg = dirAvg * 0.9f + dir * 0.1f; + + // Randomness from virtuality + dir += randomnessFromVirtuality(); + dir *= Time.deltaTime; + + if(math.lengthsq(transform.position + dir) > math.pow(cageRadius, 2)) { + dir = Vector3.zero; + } + + //transform.position += dir; + //transform.rotation = Quaternion.LookRotation(dirAvg, Vector3.up); + + if(HP <= 0) { + FindObjectOfType().Energy++; + Destroy(this.gameObject); + } else { + HP -= virtuality * 1.5f * Time.deltaTime; // TODO determine lifetime scaling with virtuality + } + } +} \ No newline at end of file diff --git a/Assets/Scripts/ECS Particles/SeaQuark.cs.meta b/Assets/Scripts/ECS Particles/SeaQuark.cs.meta new file mode 100644 index 000000000..dab9188df --- /dev/null +++ b/Assets/Scripts/ECS Particles/SeaQuark.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 49fe1b9ea40086244a539f576e425aa1 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ECS Particles/SeaQuarkBridgeSystem.cs b/Assets/Scripts/ECS Particles/SeaQuarkBridgeSystem.cs new file mode 100644 index 000000000..6b40603c7 --- /dev/null +++ b/Assets/Scripts/ECS Particles/SeaQuarkBridgeSystem.cs @@ -0,0 +1,64 @@ +using Unity.Burst; +using Unity.Collections; +using Unity.Entities; +using Unity.Jobs; +using Unity.Mathematics; +using Unity.Transforms; +using UnityEngine; + +// Equivalent to LateUpdate(): +// Necessary to prevent reading the translation array at the same time it's being updated by movementsystem +[UpdateInGroup(typeof(FixedStepSimulationSystemGroup))] +public partial class SeaQuarkBridgeSystem : SystemBase { + + protected override void OnUpdate() { + + var deltaTime = Time.DeltaTime; + + GameObject spawner = GameObject.Find("SeaQuarkSpawner"); + if (spawner == null) + return; + SeaQuarkSpawner spawnerScript = spawner.GetComponent(); + + EntityQuery particleQuery = GetEntityQuery(ComponentType.ReadOnly(), ComponentType.ReadOnly()); + NativeArray entityArray = particleQuery.ToEntityArray(Allocator.TempJob); + // NativeArray oldParticleTranslations = particleQuery.ToComponentDataArray(Allocator.TempJob); + // NativeArray newParticlePositions = new NativeArray(entityArray.Length, Allocator.TempJob); + ComponentDataFromEntity translationArray = GetComponentDataFromEntity(true); + + // Unity.Mathematics.Random r = new Unity.Mathematics.Random(999); + float3 sum = float3.zero; + + // Entities + // .WithName("SeaQuarkBridgeSystem") + // // .WithBurst() + // .ForEach((ref Translation translation, ref MovementComponent movementComponent) => { + // float3 gluonPosition = translation.Value; + // // sum += gluonPosition; + // }) + // .Run(); + + + int count = 0; + for(int i=0; i 0 && t > lastSpawnTime + spawnIntervalSeconds) { + // Debug.Log("Spawning sea quark"); + lastSpawnTime = t; + SpawnQuark(); + } + } + + private void SpawnQuark() { + GameObject q = Instantiate(prefab); + + q.transform.position = UnityEngine.Random.insideUnitCircle;//this.spawnPosition; + + /* + if (FindObjectOfType() && !FindObjectOfType().seaLines) { //If seaquark forcelines are disabled, then disable them + LineRenderer[] lines = q.GetComponentsInChildren(); + Keyframe key = new Keyframe(); + key.value = 0; + foreach (LineRenderer line in lines) { + line.widthCurve = new AnimationCurve(new Keyframe[] { key, key }); //Sets the width curve to 0 (you probably could just remove it entirely, but it might cause problems) + } + } + */ + var script = q.GetComponent(); + script.cageRadius = this.cageRadius; + script.virtuality = this.virtuality; + script.x = this.x; + + /* Currently Disabled until Non-physics based sea quarks implemented + if (FindObjectOfType() && !FindObjectOfType().physQuarks) { + foreach (Rigidbody r in q.GetComponentsInChildren()) { + Destroy(r); + } + }; + */ + QuarkPair[] pair = q.GetComponentsInChildren(); + pair[0].SetColor(QuarkColor.Red); + pair[1].SetColor(QuarkColor.AntiRed); + + Energy--; + } + + public void SetValue(float3 position) { // called by SeaQuarkBridgeSystem + spawnPosition = position; + } + + void OnDrawGizmos() { + // Debug.Log(string.Format("gizmos {0}", Position)); + Gizmos.color = Color.magenta; + Gizmos.DrawSphere(spawnPosition, 0.03f); + } + +} \ No newline at end of file diff --git a/Assets/Scripts/ECS Particles/SeaQuarkSpawner.cs.meta b/Assets/Scripts/ECS Particles/SeaQuarkSpawner.cs.meta new file mode 100644 index 000000000..e660c2669 --- /dev/null +++ b/Assets/Scripts/ECS Particles/SeaQuarkSpawner.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ca12938c608c4b84ba81edb3cb7e167a +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/ECS Particles/TypeQuark.cs b/Assets/Scripts/ECS Particles/TypeQuark.cs new file mode 100644 index 000000000..df417cb4c --- /dev/null +++ b/Assets/Scripts/ECS Particles/TypeQuark.cs @@ -0,0 +1,197 @@ +using DG.Tweening; +using UnityEngine; +using System; + +public class TypeQuark : MonoBehaviour +{ + [Tooltip("Is this particle positive (true) or negative (false)")] public bool isPositive = false; + [Tooltip("What type of charged particle is this?")] public Charges chargeType = Charges.UNCHARGED; + + /// + /// Color of sphere around quark. + /// + + [SerializeField] + [Tooltip("Color of sphere around quark")] + public QuarkColor quarkColor; + + public Material sphereMaterial; + public Material coreMaterial; + public Material glowMaterial; + + protected TrailRenderer trailRenderer; + [SerializeField] protected LineRenderer forceLine; + [SerializeField] protected LineRenderer spinLine; + public float trailWidth = 3.5f; + public float trailTime = 0.8f; + + public ParticleSystem partSys1; + public ParticleSystem partSys2; + public ParticleSystem partSys3; + private ParticleSystem.MainModule ma1; + private ParticleSystem.MainModule ma2; + private ParticleSystem.MainModule ma3; + + public Vector3 spin = Vector3.up * 0.5f; + + private void Awake() + { + LineRenderer[] lines = GetComponentsInChildren(); + trailRenderer = GetComponent(); + + if (!forceLine) + { + if (lines.Length > 0) forceLine = lines[1]; + if (lines.Length > 1) spinLine = lines[0]; + } + UpdateColor(); + } + + /// + /// Set color to quark. + /// + /// + public void SetColor(QuarkColor newColor) + { + quarkColor = newColor; + UpdateColor(); + } + + protected void UpdateColor() + { + // sphereMaterial.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); + // coreMaterial.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); + // glowMaterial.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); + // trailRenderer.material.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); + ma1 = partSys1.main; + ma2 = partSys2.main; + ma3 = partSys3.main; + if (partSys1) ma1.startColor = QuarkSettings.GetColorRGB(quarkColor); + if (partSys2) ma2.startColor = QuarkSettings.GetColorRGB(quarkColor); + if (partSys3) ma3.startColor = QuarkSettings.GetColorRGB(quarkColor); + } + + /// + /// Get quark's color. + /// + /// + public QuarkColor GetColor() + { + return quarkColor; + } + + public void FlashToColor(QuarkColor toColor, Action onComplete = null) + { + Gradient g = new Gradient(); + Gradient gInv = new Gradient(); + + Color[] normal = { QuarkSettings.GetColorRGB(quarkColor), QuarkSettings.GetColorRGB(toColor) }; + g.SetKeys( + new GradientColorKey[] + { + new GradientColorKey(normal[0], 0), + // new GradientColorKey(Color.white * 2f, 0.3f), + new GradientColorKey(normal[1], 1) + }, + new GradientAlphaKey[] + { + new GradientAlphaKey(normal[0].a, 0), + new GradientAlphaKey(1, 0.3f), + new GradientAlphaKey(normal[1].a, 1) + } + ); + Color[] invt = { new Color(1f - normal[0].r, 1f - normal[0].g, 1f - normal[0].b, normal[0].a), new Color(1f - normal[1].r, 1f - normal[1].g, 1f - normal[1].b, normal[1].a) }; + gInv.SetKeys( + new GradientColorKey[] + { + new GradientColorKey(invt[0], 0), + new GradientColorKey(invt[1], 1) + }, + new GradientAlphaKey[] + { + new GradientAlphaKey(invt[0].a, 0), + new GradientAlphaKey(1, 0.3f), + new GradientAlphaKey(invt[1].a, 1) + } + ); + + if (sphereMaterial) + { + sphereMaterial.DOGradientColor(g, "_Color", QuarkSettings.Instance.GluonFlashTime).OnComplete(() => + { + SetColor(toColor); + onComplete?.Invoke(); + }); + } + if (glowMaterial) + { + glowMaterial.DOGradientColor(g, "_Color", QuarkSettings.Instance.GluonFlashTime).OnComplete(() => + { + SetColor(toColor); + onComplete?.Invoke(); + }); + } + if (trailRenderer) trailRenderer.material.DOGradientColor(g, "_Color", QuarkSettings.Instance.TrailColorLerp); + if (forceLine) forceLine.material.DOGradientColor(gInv, "_Color", QuarkSettings.Instance.TrailColorLerp); + } + + public LineRenderer setVisualLine(VisualLines lineType, Vector3 start, Vector3 end) { + LineRenderer lr = getLineType(lineType); + if (lr) lr.SetPositions(new Vector3[] { start, end }); + return lr; + } + + public LineRenderer setVisualLine(VisualLines lineType, Vector3 direction) { + LineRenderer lr = getLineType(lineType); + if (lr) lr.SetPositions(new Vector3[] { transform.position, transform.position + direction }); + return lr; + } + + public LineRenderer getLineType(VisualLines lineType) { + switch (lineType) + { + case VisualLines.FORCELINE: + return forceLine; + case VisualLines.SPINLINE: + return spinLine; + default: + return null; + } + } + + //Returns float value for charge types + public float getCharge() + { + switch (chargeType) + { + case Charges.UNCHARGED: + return 0; + case Charges.DOWN: + return 1 / 3f; + case Charges.UP: + return 2 / 3f; + default: + return 1; + } + } +} +/** + * Type of line + * Used to distinguish different visual lines + * **/ +public enum VisualLines { + FORCELINE, SPINLINE +} + + +/** + * Uncharged = 0 charge + * Down = 1/3 charge + * Up = 2/3 charge + * Full = 1 charge + * Probe = 1 charge, no EM influence + * Field = 1 charge, not EM influenced +**/ +public enum Charges { + UNCHARGED, DOWN, UP, FULL, PROBE, FIELD +} diff --git a/Assets/Scripts/ECS Particles/TypeQuark.cs.meta b/Assets/Scripts/ECS Particles/TypeQuark.cs.meta new file mode 100644 index 000000000..c923dab00 --- /dev/null +++ b/Assets/Scripts/ECS Particles/TypeQuark.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 913c6f40385c94c4e9c03cce389b046b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/EMField.cs b/Assets/Scripts/EMField.cs new file mode 100644 index 000000000..b977a549b --- /dev/null +++ b/Assets/Scripts/EMField.cs @@ -0,0 +1,158 @@ +using System.Collections; +using System.Collections.Generic; +using TMPro; +using UnityEngine; + +public class EMField : MonoBehaviour +{ + //Various scale multipliers that can be changed for more precise measurements + + [Tooltip("Scale multiplier for u0/4pi = 1E-7")] public float u0Pi = Mathf.Pow(10, -7); + [Tooltip("Scale multiplier for electric constant k")] public float k = 8_987_551_792.3f; + [Tooltip("Scale mulitplier for size (model (~3m):proton (~8.33E-16m) = 2.78E-16)")] public float scale = 2.7778f * Mathf.Pow(10, -16); + [Tooltip("Scale multiplier for charge")] public float cScale = 1.602_176_634f * Mathf.Pow(10, -19); + [Tooltip("Scale multiplier for velocity cross products (new B = s^2 * B)")] public float vScale = 1; + [Tooltip("Scale multiplier for force strength (For demonstration)")] public float strength = 1f; + //[Tooltip("Scale multiplier for Sea Quark Pair force strength")] public float seaStrength = 0; + //[Tooltip("Skips magnetic field calculation")] public bool fastField = false; + //[Tooltip("Enables physics based seaquarks")] public bool physQuarks = false; + //[Tooltip("Enables forcelines for seaquarks")] public bool seaLines = false; + [Tooltip("Threshold for how close two seaquarks must be to cancel out")] public float cancelThreshold = 0.0001f; + [Tooltip("Threshold for maximum force a quark can experience")] public float forceThreshold = 1000f; + + private List destroyNext = new List(); + + private void Update() + { + TypeQuark[] quarks = FindObjectsOfType(); //Gets all quarks in the proton + Vector3[] magForces = new Vector3[quarks.Length]; + Vector3[] elecForces = new Vector3[quarks.Length]; + + for (int i = 0; i < quarks.Length; i++) //Iterates through each quark + { + Vector3 vel1 = quarks[i].GetComponent() ? quarks[i].GetComponent().velocity : ((quarks[i] is QuarkPair) ? ((QuarkPair)quarks[i]).getVelocity() : Vector3.zero); + float charge1 = quarks[i].getCharge() * ((quarks[i].isPositive) ? 1 : -1 ); + + Charges cT1 = quarks[i].chargeType; + + for (int j = i + 1; j < quarks.Length; j++) //Iterates through all quarks after target quark + { + float charge2 = quarks[j].getCharge() * ((quarks[j].isPositive) ? 1 : -1); + Charges cT2 = quarks[j].chargeType; + + Vector3 eForce = CalculateElecF(quarks[i], quarks[j]); //Newton's Third Law: + if (cT2 != Charges.PROBE) elecForces[i] += eForce * charge2; //Every action... + if (cT1 != Charges.PROBE) elecForces[j] -= eForce * charge1; //...has an opposite yet equal reaction + Vector3 mForce = CalculateMagF(quarks[i], quarks[j]); + if (cT2 != Charges.PROBE) magForces[i] += mForce * charge2; + if (cT1 != Charges.PROBE) magForces[j] -= mForce * charge1; + } + + //Multiply by the charge and constants afterwords instead of in the calculation + elecForces[i] *= -k * Mathf.Pow(cScale, 2) * charge1 / Mathf.Pow(scale, 2); + magForces[i] = Vector3.Cross(vel1, (charge1 * Mathf.Pow(cScale * vScale / scale, 2) * u0Pi * magForces[i])); + + + + + //Prints EM forces to console + //Debug.Log(quarks[i].gameObject.name + "has net EM force: " + (elecForces[i] + magForces[i]) + " with an electric force of: " + elecForces[i] + " and magnetic force of: " + magForces[i]); + if (true /*|| quarks[i].isCharged*/) + { + Vector3 force = (elecForces[i] + magForces[i]) * strength; + + if (force.magnitude > forceThreshold) force = force.normalized * forceThreshold; + + if (quarks[i].GetComponent()) quarks[i].GetComponent().AddForce(force * Time.deltaTime, ForceMode.Force); + else if (quarks[i] is QuarkPair) + { + //quarks[i].transform.position += Vector3.ClampMagnitude(force * Time.deltaTime * seaStrength, 999999); + //force *= seaStrength; + } + else if (quarks[i].GetComponentInChildren()) { //Force probe + quarks[i].GetComponentInChildren().text = (force * Time.deltaTime) + ""; + } + + LineRenderer lr = quarks[i].getLineType(VisualLines.FORCELINE); + + if (lr) + { + Vector3[] linePos = { quarks[i].transform.position, Vector3.Lerp(lr.GetPosition(1), quarks[i].transform.position + Vector3.ClampMagnitude(force / 50000f + force.normalized / 1.5f, 5f), Time.deltaTime * 20) }; + quarks[i].setVisualLine(VisualLines.FORCELINE, linePos[0], linePos[1]); + } + + } + } + + for (int i = 0; i < destroyNext.Count; i = 0) { + SeaQuark sq = destroyNext[0].transform.parent.GetComponent(); + sq.HP = 0; + destroyNext.Remove(destroyNext[0]); + } + } + + //F = q1(E + v1 x B) + //E = -kq2/r^2 * rhat + //B = u0/4pi * (q2*v2 x rhat)/r^2 + //FE = -kq1q2/r^2 * rhat + //FB = (u0/4pi) * q1q2/r^2 * v1 x (v2 x rhat) + // + //Note: Magnetic Force is pretty weak in comparison to electric force (in terms of current scaling), so skipping magnetic force calculation may be advised for better performance + //Also, q values multiplied to end due to scaling issues + // + //Handles calculations for forces + Vector3 CalculateElecF(TypeQuark quark, TypeQuark quark2) { //F = -(k * q1q2/r^2) * r hat + if (quark2 is StaticField) + { + if ((quark2 as StaticField).type && ((quark2 as StaticField).scope || quark2.GetComponent().bounds.Intersects(quark.GetComponent().bounds))) + return ((quark2 as StaticField).Value * quark2.transform.up); + return Vector3.zero; + } + if (quark is StaticField) + { + if ((quark as StaticField).type && ((quark as StaticField).scope || quark.GetComponent().bounds.Intersects(quark2.GetComponent().bounds))) + return ((quark as StaticField).Value * quark.transform.up); + return Vector3.zero; + } + Vector3 dir = (quark2 is StaticField) ? quark2.transform.up : quark2.transform.position - quark.transform.position; + + if (dir.magnitude <= cancelThreshold) { //Divide by 0 protection & sea/antisea quark annihilation checker + if (quark is QuarkPair && quark2 is QuarkPair) { + if (quark.isPositive != quark2.isPositive) { //Are they opposite? + destroyNext.Add(quark); + destroyNext.Add(quark2); + } + } + return Vector3.zero; //Skips first calculation + } + + return dir.normalized / Mathf.Pow(dir.magnitude, 2); + } + Vector3 CalculateMagF(TypeQuark quark, TypeQuark quark2) { //F = (u0/4pi) * (q1q2/r^2)v1 x (v2 x r hat) + if (quark2 is StaticField) + { + if (!(quark2 as StaticField).type && ((quark2 as StaticField).scope || quark2.GetComponent().bounds.Intersects(quark.GetComponent().bounds))) + return ((quark2 as StaticField).Value * quark2.transform.up); + } + if (quark is StaticField) + { + if (!(quark as StaticField).type && ((quark as StaticField).scope || quark.GetComponent().bounds.Intersects(quark2.GetComponent().bounds))) + return ((quark as StaticField).Value * quark.transform.up); + } + Vector3 dir = quark2.transform.position - quark.transform.position; + + Vector3 vel2 = quark2.GetComponent() ? quark2.GetComponent().velocity : ((quark2 is QuarkPair) ? ((QuarkPair)quark2).getVelocity() : Vector3.zero); + + if (dir.magnitude <= cancelThreshold) { + if (quark is QuarkPair && quark2 is QuarkPair) { //Divide by 0 protection & sea/antisea quark annihilation checker + if (quark.isPositive != quark2.isPositive) { //Are they opposite? + destroyNext.Add(quark); + destroyNext.Add(quark2); + } + } + return Vector3.zero; //Skips first calculation + } + + return (Vector3.Cross(vel2, dir.normalized)) / (Mathf.Pow(dir.magnitude, 2)); + } +} diff --git a/Assets/Scripts/EMField.cs.meta b/Assets/Scripts/EMField.cs.meta new file mode 100644 index 000000000..b8b59faa3 --- /dev/null +++ b/Assets/Scripts/EMField.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d0ce8d030f21b9347b244cf1f82e860c +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/FPSCounter.cs b/Assets/Scripts/FPSCounter.cs new file mode 100644 index 000000000..296c3ee50 --- /dev/null +++ b/Assets/Scripts/FPSCounter.cs @@ -0,0 +1,20 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using TMPro; + +public class FPSCounter : MonoBehaviour +{ + // Start is called before the first frame update + + float time = 0f; + + void Update() { + time -= Time.timeScale; + if (time <= 0) + { + GetComponent().text = "FPS: " + Mathf.RoundToInt(Time.timeScale / Time.deltaTime); + time = 10f; + } + } +} diff --git a/Assets/Scripts/FPSCounter.cs.meta b/Assets/Scripts/FPSCounter.cs.meta new file mode 100644 index 000000000..e73791e01 --- /dev/null +++ b/Assets/Scripts/FPSCounter.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0d621987c6d82f04ca7f9d3b089be0b7 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/FluxTube.cs b/Assets/Scripts/FluxTube.cs index d84cbf816..c50a6e8c7 100644 --- a/Assets/Scripts/FluxTube.cs +++ b/Assets/Scripts/FluxTube.cs @@ -1,136 +1,136 @@ -using PathCreation; -using UnityEngine; - -public class FluxTube : MonoBehaviour -{ - [SerializeField] - private Transform bone1; - private Transform bone1Target; - - [SerializeField] - private Transform bone2; - private Transform bone2Target; - - [SerializeField] - private Transform bone3; - private Transform bone3Target; - - [SerializeField] - public Transform centerBone; - - [SerializeField] - private Transform quark1; - private float quark1InitialDistance; - private float quark1InitialOffset; - - - [SerializeField] - private Transform quark2; - private float quark2InitialDistance; - private float quark2InitialOffset; - - [SerializeField] - private Transform quark3; - private float quark3InitialDistance; - private float quark3InitialOffset; - - private Transform gluonPositionTransform; - private Material fluxTubeMaterial; - - /// - /// Get the position of the flux tube cenetroid in World Space. - /// - /// - public Vector3 GetCenterPosition() - { - return centerBone.position; - } - - // Start is called before the first frame update - void Awake() - { - bone1Target = bone1.GetChild(0); - quark1InitialOffset = Vector3.Distance(quark1.position, bone1Target.position); - quark1InitialDistance = Vector3.Distance(bone1Target.position, centerBone.position); - - bone2Target = bone2.GetChild(0); - quark2InitialOffset = Vector3.Distance(quark2.position, bone2Target.position); - quark2InitialDistance = Vector3.Distance(bone2Target.position, centerBone.position); - - bone3Target = bone3.GetChild(0); - quark3InitialOffset = Vector3.Distance(quark3.position, bone3Target.position); - quark3InitialDistance = Vector3.Distance(bone3Target.position, centerBone.position); - fluxTubeMaterial = GetComponentInChildren().material; - } - - private void LateUpdate() - { - UpdateBonesTransforms(); - UpdateMaterial(); - } - - private void UpdateMaterial() - { - SetGluonPositionProperty("_Q1_Position", quark1); - SetGluonPositionProperty("_Q2_Position", quark2); - SetGluonPositionProperty("_Q3_Position", quark3); - - SetGluonPositionProperty("_GluonAnticolorPosition", gluonPositionTransform); - } - - private void SetGluonPositionProperty(string gluonPositionName, Transform gluonTransform) - { - if (gluonTransform != null) - { - fluxTubeMaterial.SetVector(gluonPositionName, gluonTransform.position); - } - else - { - fluxTubeMaterial.SetVector(gluonPositionName, Vector3.positiveInfinity); - } - } - - private void UpdateBonesTransforms() - { - Vector3 centroid = (quark1.position + quark2.position + quark3.position) / 3.0f; - Vector3 centroidNormal = Vector3.Cross(quark3.position - quark1.position, quark2.position - quark1.position); - - centerBone.position = centroid; - centerBone.rotation = Quaternion.LookRotation(centroidNormal); - - - var q1TargetPos = quark1.position - (quark1.position - centerBone.position).normalized * quark1InitialOffset; - bone1.LookAt(q1TargetPos, centroidNormal); - bone1.Rotate(-90, 90, 0); - var scale1 = Vector3.Distance(centroid, q1TargetPos) / quark1InitialDistance; - bone1.localScale = new Vector3(scale1, 1, 1); - - var q2TargetPos = quark2.position - (quark2.position - centerBone.position).normalized * quark2InitialOffset; - bone2.LookAt(q2TargetPos, centroidNormal); - bone2.Rotate(-90, 90, 0); - var scale2 = Vector3.Distance(centroid, q2TargetPos) / quark2InitialDistance; - bone2.localScale = new Vector3(scale2, 1, 1); - - var q3TargetPos = quark3.position - (quark3.position - centerBone.position).normalized * quark3InitialOffset; - bone3.LookAt(q3TargetPos, centroidNormal); - bone3.Rotate(-90, 90, 0); - var scale3 = Vector3.Distance(centroid, q3TargetPos) / quark3InitialDistance; - bone3.localScale = new Vector3(scale3, 1, 1); - } - - public void SetGluon(Gluon gluon) - { - if (gluon != null) - { - fluxTubeMaterial.SetColor("_GluonAnticolor", QuarkSettings.GetColorRGB(gluon.AntiColor)); - gluonPositionTransform = gluon.transform; - UpdateMaterial(); - } - else - { - fluxTubeMaterial.SetColor("_GluonAnticolor", Color.clear); - gluonPositionTransform = null; - UpdateMaterial(); - } - } -} +using PathCreation; +using UnityEngine; + +public class FluxTube : MonoBehaviour +{ + [SerializeField] + private Transform bone1; + private Transform bone1Target; + + [SerializeField] + private Transform bone2; + private Transform bone2Target; + + [SerializeField] + private Transform bone3; + private Transform bone3Target; + + [SerializeField] + public Transform centerBone; + + [SerializeField] + private Transform quark1; + private float quark1InitialDistance; + private float quark1InitialOffset; + + + [SerializeField] + private Transform quark2; + private float quark2InitialDistance; + private float quark2InitialOffset; + + [SerializeField] + private Transform quark3; + private float quark3InitialDistance; + private float quark3InitialOffset; + + private Transform gluonPositionTransform; + private Material fluxTubeMaterial; + + /// + /// Get the position of the flux tube cenetroid in World Space. + /// + /// + public Vector3 GetCenterPosition() + { + return centerBone.position; + } + + // Start is called before the first frame update + void Awake() + { + bone1Target = bone1.GetChild(0); + quark1InitialOffset = Vector3.Distance(quark1.position, bone1Target.position); + quark1InitialDistance = Vector3.Distance(bone1Target.position, centerBone.position); + + bone2Target = bone2.GetChild(0); + quark2InitialOffset = Vector3.Distance(quark2.position, bone2Target.position); + quark2InitialDistance = Vector3.Distance(bone2Target.position, centerBone.position); + + bone3Target = bone3.GetChild(0); + quark3InitialOffset = Vector3.Distance(quark3.position, bone3Target.position); + quark3InitialDistance = Vector3.Distance(bone3Target.position, centerBone.position); + fluxTubeMaterial = GetComponentInChildren().material; + } + + private void LateUpdate() + { + UpdateBonesTransforms(); + UpdateMaterial(); + } + + private void UpdateMaterial() + { + SetGluonPositionProperty("_Q1_Position", quark1); + SetGluonPositionProperty("_Q2_Position", quark2); + SetGluonPositionProperty("_Q3_Position", quark3); + + SetGluonPositionProperty("_GluonAnticolorPosition", gluonPositionTransform); + } + + private void SetGluonPositionProperty(string gluonPositionName, Transform gluonTransform) + { + if (gluonTransform != null) + { + fluxTubeMaterial.SetVector(gluonPositionName, gluonTransform.position); + } + else + { + fluxTubeMaterial.SetVector(gluonPositionName, Vector3.positiveInfinity); + } + } + + private void UpdateBonesTransforms() + { + Vector3 centroid = (quark1.position + quark2.position + quark3.position) / 3.0f; + Vector3 centroidNormal = Vector3.Cross(quark3.position - quark1.position, quark2.position - quark1.position); + + centerBone.position = centroid; + centerBone.rotation = Quaternion.LookRotation(centroidNormal); + + + var q1TargetPos = quark1.position - (quark1.position - centerBone.position).normalized * quark1InitialOffset; + bone1.LookAt(q1TargetPos, centroidNormal); + bone1.Rotate(-90, 90, 0); + var scale1 = Vector3.Distance(centroid, q1TargetPos) / quark1InitialDistance; + bone1.localScale = new Vector3(scale1, 1, 1); + + var q2TargetPos = quark2.position - (quark2.position - centerBone.position).normalized * quark2InitialOffset; + bone2.LookAt(q2TargetPos, centroidNormal); + bone2.Rotate(-90, 90, 0); + var scale2 = Vector3.Distance(centroid, q2TargetPos) / quark2InitialDistance; + bone2.localScale = new Vector3(scale2, 1, 1); + + var q3TargetPos = quark3.position - (quark3.position - centerBone.position).normalized * quark3InitialOffset; + bone3.LookAt(q3TargetPos, centroidNormal); + bone3.Rotate(-90, 90, 0); + var scale3 = Vector3.Distance(centroid, q3TargetPos) / quark3InitialDistance; + bone3.localScale = new Vector3(scale3, 1, 1); + } + + public void SetGluon(Gluon gluon) + { + if (gluon != null) + { + fluxTubeMaterial.SetColor("_GluonAnticolor", QuarkSettings.GetColorRGB(gluon.AntiColor)); + gluonPositionTransform = gluon.transform; + UpdateMaterial(); + } + else + { + fluxTubeMaterial.SetColor("_GluonAnticolor", Color.clear); + gluonPositionTransform = null; + UpdateMaterial(); + } + } +} diff --git a/Assets/Scripts/Gluon.cs b/Assets/Scripts/Gluon.cs index d363fe1b7..af3daca0d 100644 --- a/Assets/Scripts/Gluon.cs +++ b/Assets/Scripts/Gluon.cs @@ -1,144 +1,144 @@ -using UnityEngine; -using System; -using PathCreation; -using DG.Tweening; - -/// -/// This class implements gluon movement through flux tube. -/// -public class Gluon : MonoBehaviour -{ - public event Action OnColorReachedQuark; - - public QuarkColor Color { get; private set; } - public QuarkColor AntiColor { get; private set; } - - private GameObject colorGObj; - private GameObject antiColorGObj; - - private Material colorMat; - private Material anticolorSpiderMat; - private Material anticolorGlowMat; - - private Quark sourceQuark; - private Quark targetQuark; - private FluxTube fluxTube; - - private QuarkColor sourceQuarkColor; - private QuarkColor targetQuarkColor; - - private PathCreator pathCreator; - - private float normalizedDistanceTravelled; - - /// - /// Create gluon. - /// - public static Gluon CreateGluon(QuarkColor color, QuarkColor antiColor, FluxTube fluxTube, Quark sourceQuark, Quark targetQuark) - { - var go = Instantiate(Resources.Load("Gluon")); - - var result = go.AddComponent(); - - result.colorGObj = result.transform.Find("GluonColor").gameObject; - result.colorMat = result.colorGObj.GetComponentInChildren().material; - result.colorMat.SetColor("_EmissionColor", QuarkSettings.GetColorRGB(color, true)); - - result.anticolorSpiderMat = result.transform.Find("Spider").GetComponent().material; - result.anticolorSpiderMat.SetColor("_Color", QuarkSettings.GetColorRGB(antiColor, true) + new Color(1, 0.5f, 0.5f, 0)); - - result.anticolorGlowMat = result.transform.Find("Glow").GetComponent().material; - result.anticolorGlowMat.SetColor("_Color", QuarkSettings.GetColorRGB(antiColor, true)); - - result.Color = color; - result.AntiColor = antiColor; - - result.sourceQuark = sourceQuark; - result.targetQuark = targetQuark; - result.fluxTube = fluxTube; - fluxTube.SetGluon(result); - - result.InitGluon(); - - return result; - } - - private void InitGluon() - { - transform.position = targetQuark.transform.position; - - sourceQuarkColor = sourceQuark.GetColor(); - targetQuarkColor = targetQuark.GetColor(); - sourceQuark.FlashToColor(targetQuarkColor); - - CreatePath(); - UpdatePath(); - - // To move gluon through flux tube we estimate time based on initial path length. - // Then we tween normalized coefficient with that time. - // Then each frame we compute gluon position based on that normalized value and current path - normalizedDistanceTravelled = 0.0f; - float t = pathCreator.path.length / QuarkSettings.Instance.GluonSpeed; - - var tween = DOTween.To(() => normalizedDistanceTravelled, v => normalizedDistanceTravelled = v, 1.0f, t); - tween.SetEase(Ease.InOutQuad); - tween.OnComplete(() => { GluonReachedQuark(); }); - } - - private void CreatePath() - { - var pathGO = new GameObject("GluonPath"); - pathCreator = pathGO.AddComponent(); - - Vector3[] points = new Vector3[3]; - BezierPath bezierPath = new BezierPath(points); - bezierPath.ControlPointMode = BezierPath.ControlMode.Mirrored; - pathCreator.bezierPath = bezierPath; - } - - private void UpdatePath() - { - var d = (sourceQuark.transform.position + targetQuark.transform.position) / 2f; // Center point between quarks. - var v = d - fluxTube.GetCenterPosition(); // Vector between d and center of flux tube - var c = fluxTube.GetCenterPosition() + v.normalized * 0.1f; // the point for center point of the curve - - var b = (targetQuark.transform.position - sourceQuark.transform.position); - var c1 = c - b.normalized * 0.25f; - - - pathCreator.bezierPath.MovePoint(0, sourceQuark.transform.position); - pathCreator.bezierPath.MovePoint(2, c1); - pathCreator.bezierPath.MovePoint(3, c); - pathCreator.bezierPath.MovePoint(6, targetQuark.transform.position); - } - - private void GluonReachedQuark() - { - targetQuark.FlashToColor(sourceQuarkColor, OnColorReachedQuark); - float destroyDelay = QuarkSettings.Instance.GluonFlashTime; - GameObject.Destroy(gameObject, destroyDelay); - } - - private void OnDisable() - { - if (pathCreator != null) - Destroy(pathCreator.gameObject); - } - - private void LateUpdate() - { - if (Camera.main != null) - transform.LookAt(Camera.main.transform); - - UpdatePath(); - UpdateGluonPosition(); - } - - private void UpdateGluonPosition() - { - // Get current normalized distance which is tweened by DoTween and project it onto current path. - float pathDistance = pathCreator.path.length * Mathf.Clamp(normalizedDistanceTravelled, 0.0f, 1.0f); - Vector3 newPos = pathCreator.path.GetPointAtDistance(pathDistance, EndOfPathInstruction.Stop); - transform.position = newPos; - } -} +using UnityEngine; +using System; +using PathCreation; +using DG.Tweening; + +/// +/// This class implements gluon movement through flux tube. +/// +public class Gluon : MonoBehaviour +{ + public event Action OnColorReachedQuark; + + public QuarkColor Color { get; private set; } + public QuarkColor AntiColor { get; private set; } + + private GameObject colorGObj; + private GameObject antiColorGObj; + + private Material colorMat; + private Material anticolorSpiderMat; + private Material anticolorGlowMat; + + private Quark sourceQuark; + private Quark targetQuark; + private FluxTube fluxTube; + + private QuarkColor sourceQuarkColor; + private QuarkColor targetQuarkColor; + + private PathCreator pathCreator; + + private float normalizedDistanceTravelled; + + /// + /// Create gluon. + /// + public static Gluon CreateGluon(QuarkColor color, QuarkColor antiColor, FluxTube fluxTube, Quark sourceQuark, Quark targetQuark) + { + var go = Instantiate(Resources.Load("Gluon")); + + var result = go.AddComponent(); + + result.colorGObj = result.transform.Find("GluonColor").gameObject; + result.colorMat = result.colorGObj.GetComponentInChildren().material; + result.colorMat.SetColor("_EmissionColor", QuarkSettings.GetColorRGB(color, true)); + + result.anticolorSpiderMat = result.transform.Find("Spider").GetComponent().material; + result.anticolorSpiderMat.SetColor("_Color", QuarkSettings.GetColorRGB(antiColor, true) + new Color(1, 0.5f, 0.5f, 0)); + + result.anticolorGlowMat = result.transform.Find("Glow").GetComponent().material; + result.anticolorGlowMat.SetColor("_Color", QuarkSettings.GetColorRGB(antiColor, true)); + + result.Color = color; + result.AntiColor = antiColor; + + result.sourceQuark = sourceQuark; + result.targetQuark = targetQuark; + result.fluxTube = fluxTube; + fluxTube.SetGluon(result); + + result.InitGluon(); + + return result; + } + + private void InitGluon() + { + transform.position = targetQuark.transform.position; + + sourceQuarkColor = sourceQuark.GetColor(); + targetQuarkColor = targetQuark.GetColor(); + sourceQuark.FlashToColor(targetQuarkColor); + + CreatePath(); + UpdatePath(); + + // To move gluon through flux tube we estimate time based on initial path length. + // Then we tween normalized coefficient with that time. + // Then each frame we compute gluon position based on that normalized value and current path + normalizedDistanceTravelled = 0.0f; + float t = pathCreator.path.length / QuarkSettings.Instance.GluonSpeed; + + var tween = DOTween.To(() => normalizedDistanceTravelled, v => normalizedDistanceTravelled = v, 1.0f, t); + tween.SetEase(Ease.InOutQuad); + tween.OnComplete(() => { GluonReachedQuark(); }); + } + + private void CreatePath() + { + var pathGO = new GameObject("GluonPath"); + pathCreator = pathGO.AddComponent(); + + Vector3[] points = new Vector3[3]; + BezierPath bezierPath = new BezierPath(points); + bezierPath.ControlPointMode = BezierPath.ControlMode.Mirrored; + pathCreator.bezierPath = bezierPath; + } + + private void UpdatePath() + { + var d = (sourceQuark.transform.position + targetQuark.transform.position) / 2f; // Center point between quarks. + var v = d - fluxTube.GetCenterPosition(); // Vector between d and center of flux tube + var c = fluxTube.GetCenterPosition() + v.normalized * 0.1f; // the point for center point of the curve + + var b = (targetQuark.transform.position - sourceQuark.transform.position); + var c1 = c - b.normalized * 0.25f; + + + pathCreator.bezierPath.MovePoint(0, sourceQuark.transform.position); + pathCreator.bezierPath.MovePoint(2, c1); + pathCreator.bezierPath.MovePoint(3, c); + pathCreator.bezierPath.MovePoint(6, targetQuark.transform.position); + } + + private void GluonReachedQuark() + { + targetQuark.FlashToColor(sourceQuarkColor, OnColorReachedQuark); + float destroyDelay = QuarkSettings.Instance.GluonFlashTime; + GameObject.Destroy(gameObject, destroyDelay); + } + + private void OnDisable() + { + if (pathCreator != null) + Destroy(pathCreator.gameObject); + } + + private void LateUpdate() + { + if (Camera.main != null) + transform.LookAt(Camera.main.transform); + + UpdatePath(); + UpdateGluonPosition(); + } + + private void UpdateGluonPosition() + { + // Get current normalized distance which is tweened by DoTween and project it onto current path. + float pathDistance = pathCreator.path.length * Mathf.Clamp(normalizedDistanceTravelled, 0.0f, 1.0f); + Vector3 newPos = pathCreator.path.GetPointAtDistance(pathDistance, EndOfPathInstruction.Stop); + transform.position = newPos; + } +} diff --git a/Assets/Scripts/MoveRandomInsideSphere.cs b/Assets/Scripts/MoveRandomInsideSphere.cs index 45a350688..c7aa6613b 100644 --- a/Assets/Scripts/MoveRandomInsideSphere.cs +++ b/Assets/Scripts/MoveRandomInsideSphere.cs @@ -1,80 +1,80 @@ -using UnityEngine; - -public class MoveRandomInsideSphere : MonoBehaviour -{ - [SerializeField] - public float radius = 0.5f; - - [SerializeField] - public float speed = 5f; - - [SerializeField] - private float changeRotationSpeed = 100; - - private Vector3 target; - - [SerializeField] - private float distanceThreshold = 0.1f; - - [SerializeField] - private Vector2 changeIntervalMinMax = new Vector2(1, 3); - - [SerializeField] - private bool gausian; - - private float curChangeInterval = 1; - - private float lastChangeTargetTime; - - private Vector3 force; - - private void Start() - { - target = GetRandomTarget(); - force = target.normalized; - } - - // Update is called once per frame - void Update() - { - force = Vector3.Slerp(force, target - transform.localPosition, Time.deltaTime * changeRotationSpeed); - force.Normalize(); - - transform.localPosition += force * speed * Time.deltaTime; - - var curDistance = Vector3.Distance(transform.localPosition, target); - - if (curDistance <= distanceThreshold || Time.time - lastChangeTargetTime > curChangeInterval) - { - target = GetRandomTarget(); - } - } - - public Vector3 GetRandomTarget() - { - lastChangeTargetTime = Time.time; - if (changeIntervalMinMax.x != changeIntervalMinMax.y) - { - curChangeInterval = Random.Range(changeIntervalMinMax.x, changeIntervalMinMax.y); - } - else - { - curChangeInterval = changeIntervalMinMax.x; - } - - Vector3 result = Vector3.zero; - - if (gausian) - { - var x = RandomGaussian.Range(-1f, 1); - var y = RandomGaussian.Range(-1f, 1f); - var z = RandomGaussian.Range(-1f, 1f); - result = new Vector3(x, y, z); - } - else - { - result = Random.insideUnitSphere; - } - return result * radius; - } -} +using UnityEngine; + +public class MoveRandomInsideSphere : MonoBehaviour +{ + [SerializeField] + public float radius = 0.5f; + + [SerializeField] + public float speed = 5f; + + [SerializeField] + private float changeRotationSpeed = 100; + + private Vector3 target; + + [SerializeField] + private float distanceThreshold = 0.1f; + + [SerializeField] + private Vector2 changeIntervalMinMax = new Vector2(1, 3); + + [SerializeField] + private bool gausian; + + private float curChangeInterval = 1; + + private float lastChangeTargetTime; + + private Vector3 force; + + private void Start() + { + target = GetRandomTarget(); + force = target.normalized; + } + + // Update is called once per frame + void Update() + { + force = Vector3.Slerp(force, target - transform.localPosition, Time.deltaTime * changeRotationSpeed); + force.Normalize(); + + transform.localPosition += force * speed * Time.deltaTime; + + var curDistance = Vector3.Distance(transform.localPosition, target); + + if (curDistance <= distanceThreshold || Time.time - lastChangeTargetTime > curChangeInterval) + { + target = GetRandomTarget(); + } + } + + public Vector3 GetRandomTarget() + { + lastChangeTargetTime = Time.time; + if (changeIntervalMinMax.x != changeIntervalMinMax.y) + { + curChangeInterval = Random.Range(changeIntervalMinMax.x, changeIntervalMinMax.y); + } + else + { + curChangeInterval = changeIntervalMinMax.x; + } + + Vector3 result = Vector3.zero; + + if (gausian) + { + var x = RandomGaussian.Range(-1f, 1); + var y = RandomGaussian.Range(-1f, 1f); + var z = RandomGaussian.Range(-1f, 1f); + result = new Vector3(x, y, z); + } + else + { + result = Random.insideUnitSphere; + } + return result * radius; + } +} diff --git a/Assets/Scripts/PartonSpinAdjuster.cs b/Assets/Scripts/PartonSpinAdjuster.cs new file mode 100644 index 000000000..9c902d8a6 --- /dev/null +++ b/Assets/Scripts/PartonSpinAdjuster.cs @@ -0,0 +1,234 @@ +///Sets spin values for each quark every update frame +///Note: values can only be spin up or spin down at current moment and only works along z-axis + +using System.Collections; +using System.Collections.Generic; +using System.Linq; +using UnityEngine; + +public class PartonSpinAdjuster : MonoBehaviour +{ + Vector3 position = Vector3.zero; + + [Tooltip("Threshold for total parton spin error allowed (Larger values are less realistic but usually slower to calculate)")] public float Threshold = 0.1f; + [Tooltip("Scale multiplier for momentum contribution to total parton spin")] public float Scale = 1; + [Tooltip("Randomizes quark order when iterating to make spin appear random")] bool pseudoRandomSpin = true; + + [Tooltip("Use the old parton spin sum rule?")] bool oldSystem = false; + + float mostSpin = 0; + + float average = 0; + int totalFrames = 0; + + Vector3 spinDir = Vector3.up * 0.5f; + + bool spinLinesVis = true; + + [Tooltip("Magnetic Field used for polarization")] [SerializeField] StaticField polarizationField; + float value = 2000; + + List pairs = new List(); + List values = new List(); + + Vector3 totalSpin = Vector3.zero; + + private void Awake() + { + position = transform.position; + if (polarizationField) value = polarizationField.Value; + + addPair(FindObjectOfType().gameObject, Vector3.forward * 0.5f); + } + + public void addPair(GameObject obj, Vector3 value) { + pairs.Add(obj); values.Add(value); + totalSpin += value; + values = SnapVectors(values, spinDir - totalSpin); + totalSpin = spinDir; + } + public void removePair(GameObject obj) { + int i; + for (i = 0; i < pairs.Count; i++) { + if (pairs[i] == obj) break; + } + pairs.RemoveAt(i); + Vector3 shift = values[i]; values.RemoveAt(i); + values = SnapVectors(values, shift); + } + List SnapVectors(List vectorParts, Vector3 shift) { + if (values.Count < 1) return null; + Vector3 tweakAmount = shift / vectorParts.Count; + for (int i = 0; i < vectorParts.Count; i++) vectorParts[i] += tweakAmount; + return vectorParts; + } + + public void spinVis() { + spinLinesVis = !spinLinesVis; + } + + public void SetPolarization(PolarizationAxis direction) { + Vector3 spinOld = spinDir; + switch (direction) + { + case PolarizationAxis.X: + spinDir = Vector3.right * 0.5f; + break; + case PolarizationAxis.Y: + spinDir = Vector3.up * 0.5f; + break; + case PolarizationAxis.Z: + spinDir = Vector3.forward * 0.5f; + break; + case PolarizationAxis.NONE: + spinDir = Vector3.zero; + break; + default: + break; + } + + if (spinDir != spinOld) values = SnapVectors(values, spinDir - spinOld); + + if (polarizationField) { + if (spinDir.magnitude > 0) + { + polarizationField.Value = value; + //polarizationField.transform.LookAt(transform.position + spinDir); + polarizationField.transform.up = spinDir; + } + else + polarizationField.Value = 0; + } + } + + //1: Figure out the total spin + ang momentum each pair currently has + //2: Subtract that value from the total value the pair should have to get the shift + //3: Add shift/[# of quarks in pair/triad] to each spin to get to preferred value + //4: Normalize spins to 1/2 + //5: Repeat steps 1 and 2 + //6: Repeat step 3 but for angular momentums instead of spins + + Vector3[] spinValues = new Vector3[3]; + Vector3[] momentums = new Vector3[3]; + Vector3 calculatedSpin = Vector3.zero; + Vector3 totalShift = Vector3.zero; + + List allmomentums = new List(); + List oldmomentums = new List(); + + public Transform[] aligners = new Transform[3]; + + // Update is called once per frame + void Update() + { + if (oldSystem) { Old(); return; } + + for (int i = 0; i < pairs.Count; i++) { + allmomentums.Clear(); + oldmomentums.Clear(); + + TypeQuark[] quarkPairs = pairs[i].GetComponentsInChildren(); + totalShift = values[i] - getTotalSpin(quarkPairs, false); //1 and 2 + + spinValues = SnapVectors(spinValues.ToList(), totalShift).ToArray(); //3 + for (int j = 0; j < quarkPairs.Length; j++) { + quarkPairs[j].spin = spinValues[j].normalized * 0.5f; //4 + } + totalShift = values[i] - getTotalSpin(quarkPairs, true); //5 + + allmomentums = SnapVectors(allmomentums, totalShift/Scale); //6 + + for (int j = 0; j < allmomentums.Count; j++) { //Re-orient cross product direction + aligners[0].LookAt(oldmomentums[j]); + aligners[1].LookAt(quarkPairs[j].GetComponent().velocity, aligners[0].transform.up); + aligners[2].LookAt(transform.position - quarkPairs[j].transform.position, aligners[0].transform.up); + aligners[0].LookAt(allmomentums[j], aligners[0].transform.up); + + quarkPairs[j].GetComponent().velocity = aligners[1].transform.forward; + quarkPairs[j].transform.position = transform.position - aligners[2].forward; + + float magnitude = (oldmomentums[j].magnitude > 0) ? allmomentums[j].magnitude / oldmomentums[j].magnitude : 0; + quarkPairs[j].GetComponent().velocity *= magnitude; + } + } + } + + Vector3 getTotalSpin(TypeQuark[] quarkPairs, bool momentumsCalculated) { + calculatedSpin = Vector3.zero; + for (int j = 0; j < quarkPairs.Length; j++) { //1 + if (!momentumsCalculated) { + momentums[j] = Vector3.Cross(quarkPairs[j].GetComponent().mass * quarkPairs[j].GetComponent().velocity, quarkPairs[j].transform.position - position); + allmomentums.Add(momentums[j]); + oldmomentums.Add(momentums[j]); + } + calculatedSpin += momentums[j]; + } + calculatedSpin *= Scale; + for (int j = 0; j < quarkPairs.Length; j++) { + spinValues[j] = quarkPairs[j].spin; + calculatedSpin += quarkPairs[j].spin; + } + return calculatedSpin; //2 + } + + void Old() { + float totalSpin = 0; + + TypeQuark[] quarks = FindObjectsOfType(); + + if (pseudoRandomSpin) + { + for (int i = 0; i < quarks.Length; i++) + { + TypeQuark q = quarks[i]; + int o = Mathf.RoundToInt(Random.value * (quarks.Length - 1)); + quarks[i] = quarks[o]; + quarks[o] = q; + } + } + Vector3 angMom = new Vector3(); + Vector3 spinLeft = (spinDir.magnitude == 0) ? Random.onUnitSphere * 0.5f : spinDir; //If not polarized, pick a random spin direction for the proton! + Vector3 pointTo = spinLeft; + Vector3[] spins = new Vector3[quarks.Length]; + + for (int i = 0; i < quarks.Length; i++) { + if (quarks[i].GetComponent()) { + Vector3 vel = quarks[i].GetComponent().velocity; + angMom += Vector3.Cross(quarks[i].GetComponent().mass * vel, quarks[i].transform.position - position); + } + } + angMom *= Scale; + spinLeft -= angMom; + + Vector3 euler = transform.eulerAngles; + + for (int i = 0; i < quarks.Length; i++) { + Vector3 dir = pointTo - spinLeft; + if (i != quarks.Length - 1 && dir.magnitude < 1f) //If the next spin can take us on or inside of the 1/2 radius sphere, orbit the sphere + { + Vector2 ortho = Random.insideUnitCircle.normalized * (Mathf.Sqrt((1f - Mathf.Pow(dir.magnitude, 2)) / 4f)); + transform.LookAt(dir); + spins[i] = (transform.right * ortho.x + transform.up * ortho.y + dir / 2).normalized * 0.5f; + //Debug.Log(spins[i]); + spinLeft += spins[i]; + + } + else //Otherwise go towards the center + { + spins[i] = dir.normalized * 0.5f; + spinLeft += spins[i]; + } + transform.eulerAngles = euler; + quarks[i].setVisualLine(VisualLines.SPINLINE, (spinLinesVis) ? spins[i] : Vector3.zero); + } + + average = (totalFrames * average + Mathf.Abs(totalSpin)) / (totalFrames + 1); + totalFrames++; + + Debug.Log(angMom.magnitude + " | " + spinLeft + " | " + spinLeft.magnitude); + + //Debug.Log(totalSpin + " spin | " + ups + " ^ " + (quarks.Length - ups) + " v | " + angMom[most][2] + " " + quarks[most].GetType() + " | " + average + " | " + mostSpin); + + if (Mathf.Abs(totalSpin) > Mathf.Abs(mostSpin)) mostSpin = totalSpin; + } +} diff --git a/Assets/Scripts/PartonSpinAdjuster.cs.meta b/Assets/Scripts/PartonSpinAdjuster.cs.meta new file mode 100644 index 000000000..26d4a9cf2 --- /dev/null +++ b/Assets/Scripts/PartonSpinAdjuster.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: d036901358a581942b726002ee0dc9c0 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Probe.meta b/Assets/Scripts/Probe.meta new file mode 100644 index 000000000..3be8c1452 --- /dev/null +++ b/Assets/Scripts/Probe.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 320deee762ca1cd4eadc06c7b0b728ab +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Probe/ForceProbe.cs b/Assets/Scripts/Probe/ForceProbe.cs new file mode 100644 index 000000000..71c0c094a --- /dev/null +++ b/Assets/Scripts/Probe/ForceProbe.cs @@ -0,0 +1,20 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class ForceProbe : TypeQuark +{ + + private void Update() + { + + Keyframe key = new Keyframe(); + key.value = .1f; + if (!FindObjectOfType().forceLineVis) { + key.value = 0; + } + + GetComponent().widthCurve = new AnimationCurve(new Keyframe[] { key, key }); //Sets the width curve to 0 (you probably could just remove it entirely, but it might cause problems) + } + +} diff --git a/Assets/Scripts/Probe/ForceProbe.cs.meta b/Assets/Scripts/Probe/ForceProbe.cs.meta new file mode 100644 index 000000000..a2c42e66c --- /dev/null +++ b/Assets/Scripts/Probe/ForceProbe.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 0edbac64f175eac49b8cb89df09814bd +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Proton.cs b/Assets/Scripts/Proton.cs index 651277f77..dec4b8563 100644 --- a/Assets/Scripts/Proton.cs +++ b/Assets/Scripts/Proton.cs @@ -1,98 +1,98 @@ -using System.Collections.Generic; -using UnityEngine; -// using VRTK; - -/// -/// Logic of movement and color swap quarks inside proton. -/// -public class Proton : MonoBehaviour -{ - [SerializeField] - private List quarks = new List(); - - [SerializeField] - private FluxTube fluxTube; - - // [SerializeField] - // private MouseOrbit mouseOrbitControl; - - // private bool isZoomed = true; - - private Gluon gluon = null; - - private bool gluonIsInProcess; - - private int currentZoom = 0; - - [SerializeField] - private Vector2[] zoomValues; - - private void Start() - { - // UpdateMouseOrbit(); - GenerateQuark(); - } - - public void ZoomIn() - { - if (zoomValues.Length == 0) return; - - currentZoom = Mathf.Min(currentZoom + 1, zoomValues.Length - 1); - - // UpdateMouseOrbit(); - } - - public void ZoomOut() - { - if (zoomValues.Length == 0) return; - - currentZoom = Mathf.Max(currentZoom - 1, 0); - - // UpdateMouseOrbit(); - } - - // private void UpdateMouseOrbit() - // { - // if (zoomValues.Length == 0) return; - - // mouseOrbitControl.MinDistance = zoomValues[currentZoom].x; - // mouseOrbitControl.MaxDistance = zoomValues[currentZoom].y; - // mouseOrbitControl.Distance = zoomValues[currentZoom].y; - // } - - public void GenerateQuark() - { - if (gluonIsInProcess) return; - - // Debug.Log("Generate Quarks"); - int sourceID = Random.Range(0, 3); - int targetID = Random.Range(0, 3); - - while (sourceID == targetID) - targetID = Random.Range(0, 3); - - var sourceQuark = quarks[sourceID]; - var targetQuark = quarks[targetID]; - - var color = sourceQuark.GetColor(); - - var anticolor = QuarkColor.AntiBlue; - switch(targetQuark.GetColor()) - { - case QuarkColor.Red: anticolor = QuarkColor.AntiRed; break; - case QuarkColor.Green: anticolor = QuarkColor.AntiGreen; break; - case QuarkColor.Blue: anticolor = QuarkColor.AntiBlue; break; - } - - gluon = Gluon.CreateGluon(color, anticolor, fluxTube, sourceQuark, targetQuark); - gluon.OnColorReachedQuark += OnGluonTransitionComplete; - gluonIsInProcess = true; - } - - private void OnGluonTransitionComplete() - { - gluonIsInProcess = false; - fluxTube.SetGluon(null); - Invoke("GenerateQuark", .05f); - } +using System.Collections.Generic; +using UnityEngine; +// using VRTK; + +/// +/// Logic of movement and color swap quarks inside proton. +/// +public class Proton : MonoBehaviour +{ + [SerializeField] + private List quarks = new List(); + + [SerializeField] + private FluxTube fluxTube; + + // [SerializeField] + // private MouseOrbit mouseOrbitControl; + + // private bool isZoomed = true; + + private Gluon gluon = null; + + private bool gluonIsInProcess; + + private int currentZoom = 0; + + [SerializeField] + private Vector2[] zoomValues; + + private void Start() + { + // UpdateMouseOrbit(); + GenerateQuark(); + } + + public void ZoomIn() + { + if (zoomValues.Length == 0) return; + + currentZoom = Mathf.Min(currentZoom + 1, zoomValues.Length - 1); + + // UpdateMouseOrbit(); + } + + public void ZoomOut() + { + if (zoomValues.Length == 0) return; + + currentZoom = Mathf.Max(currentZoom - 1, 0); + + // UpdateMouseOrbit(); + } + + // private void UpdateMouseOrbit() + // { + // if (zoomValues.Length == 0) return; + + // mouseOrbitControl.MinDistance = zoomValues[currentZoom].x; + // mouseOrbitControl.MaxDistance = zoomValues[currentZoom].y; + // mouseOrbitControl.Distance = zoomValues[currentZoom].y; + // } + + public void GenerateQuark() + { + if (gluonIsInProcess) return; + + // Debug.Log("Generate Quarks"); + int sourceID = Random.Range(0, 3); + int targetID = Random.Range(0, 3); + + while (sourceID == targetID) + targetID = Random.Range(0, 3); + + var sourceQuark = quarks[sourceID]; + var targetQuark = quarks[targetID]; + + var color = sourceQuark.GetColor(); + + var anticolor = QuarkColor.AntiBlue; + switch(targetQuark.GetColor()) + { + case QuarkColor.Red: anticolor = QuarkColor.AntiRed; break; + case QuarkColor.Green: anticolor = QuarkColor.AntiGreen; break; + case QuarkColor.Blue: anticolor = QuarkColor.AntiBlue; break; + } + + gluon = Gluon.CreateGluon(color, anticolor, fluxTube, sourceQuark, targetQuark); + gluon.OnColorReachedQuark += OnGluonTransitionComplete; + gluonIsInProcess = true; + } + + private void OnGluonTransitionComplete() + { + gluonIsInProcess = false; + fluxTube.SetGluon(null); + Invoke("GenerateQuark", .05f); + } } \ No newline at end of file diff --git a/Assets/Scripts/Quark.cs b/Assets/Scripts/Quark.cs index efb511423..27893ed30 100644 --- a/Assets/Scripts/Quark.cs +++ b/Assets/Scripts/Quark.cs @@ -1,172 +1,67 @@ -using DG.Tweening; -using System; -using UnityEngine; - -public enum QuarkColor -{ - Red, - Green, - Blue, - GluonRed, - GluonGreen, - GluonBlue, - AntiRed, - AntiGreen, - AntiBlue -} - -/// -/// Set color and flavor of quark. -/// -public class Quark : MonoBehaviour -{ - /// - /// Color of sphere around quark. - /// - - [SerializeField] - [Tooltip("Color of sphere around quark")] - public QuarkColor quarkColor; - - [SerializeField] - private GameObject quarkSphere; - - [SerializeField] - private GameObject quarkCore; - - [SerializeField] - private GameObject quarkGlow; - - private TrailRenderer trailRenderer; - - public Material sphereMaterial; - - public Material coreMaterial; - - public Material glowMaterial; - - public float Radius = 0.5f; - - private ChangeOrbit changeOrbit; - - public float trailWidth = 3.5f; - - public float trailTime = 0.8f; - - public float f = 0.0f; - - public ParticleSystem partSys1; - public ParticleSystem partSys2; - public ParticleSystem partSys3; - private ParticleSystem.MainModule ma1; - private ParticleSystem.MainModule ma2; - private ParticleSystem.MainModule ma3; - - [SerializeField] - private AnimationCurve trailSizeCorrectionCurve; - - /// - /// Set color to quark. - /// - /// - public void SetColor(QuarkColor newColor) - { - quarkColor = newColor; - UpdateColor(); - } - - public float GetEstimatedSpeed() - { - return changeOrbit.EstimatedSpeed; - } - - private void UpdateColor() - { - // sphereMaterial.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); - // coreMaterial.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); - // glowMaterial.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); - // trailRenderer.material.SetColor("_Color", QuarkSettings.GetColorRGB(quarkColor)); - ma1 = partSys1.main; - ma2 = partSys2.main; - ma3 = partSys3.main; - ma1.startColor = QuarkSettings.GetColorRGB(quarkColor); - ma2.startColor = QuarkSettings.GetColorRGB(quarkColor); - ma3.startColor = QuarkSettings.GetColorRGB(quarkColor); - - - - - - - } - - /// - /// Get quark's color. - /// - /// - public QuarkColor GetColor() - { - return quarkColor; - } - - private void Awake() - { - sphereMaterial = quarkSphere.GetComponent().material; - coreMaterial = quarkCore.GetComponent().material; - glowMaterial = quarkGlow.GetComponent().material; - trailRenderer = GetComponent(); - - changeOrbit = GetComponent(); - - UpdateColor(); - } - - private void Start() - { - - } - - private void Update() - { - float tNormalized = Mathf.Clamp01(changeOrbit.CurrentOrbitRadius / changeOrbit.MaxRadius); - float coeff = trailSizeCorrectionCurve.Evaluate(tNormalized); - - trailRenderer.time = trailTime * coeff; - trailRenderer.widthMultiplier = trailWidth; - - } - - public void FlashToColor(QuarkColor toColor, Action onComplete = null) - { - Gradient g = new Gradient(); - g.SetKeys( - new GradientColorKey[] - { - new GradientColorKey(QuarkSettings.GetColorRGB(quarkColor), 0), - // new GradientColorKey(Color.white * 2f, 0.3f), - new GradientColorKey(QuarkSettings.GetColorRGB(toColor), 1) - }, - new GradientAlphaKey[] - { - new GradientAlphaKey(QuarkSettings.GetColorRGB(quarkColor).a, 0), - new GradientAlphaKey(1, 0.3f), - new GradientAlphaKey(QuarkSettings.GetColorRGB(toColor).a, 1) - } - ); - - sphereMaterial.DOGradientColor(g, "_Color", QuarkSettings.Instance.GluonFlashTime).OnComplete(()=> - { - SetColor(toColor); - onComplete?.Invoke(); - }); - - glowMaterial.DOGradientColor(g, "_Color", QuarkSettings.Instance.GluonFlashTime).OnComplete(()=> - { - SetColor(toColor); - onComplete?.Invoke(); - }); - - trailRenderer.material.DOGradientColor(g, "_Color", QuarkSettings.Instance.TrailColorLerp); - - } +using DG.Tweening; +using System; +using UnityEngine; + +public enum QuarkColor +{ + Red, + Green, + Blue, + GluonRed, + GluonGreen, + GluonBlue, + AntiRed, + AntiGreen, + AntiBlue +} + +/// +/// Set color and flavor of quark. +/// +public class Quark : TypeQuark +{ + [SerializeField] + private GameObject quarkSphere; + + [SerializeField] + private GameObject quarkCore; + + [SerializeField] + private GameObject quarkGlow; + + public float Radius = 0.5f; + + private ChangeOrbit changeOrbit; + + public float f = 0.0f; + + [SerializeField] + private AnimationCurve trailSizeCorrectionCurve; + + public float GetEstimatedSpeed() + { + return changeOrbit.EstimatedSpeed; + } + + private void Awake() + { + sphereMaterial = quarkSphere.GetComponent().material; + coreMaterial = quarkCore.GetComponent().material; + glowMaterial = quarkGlow.GetComponent().material; + trailRenderer = GetComponent(); + + changeOrbit = GetComponent(); + + UpdateColor(); + } + + private void Update() + { + float tNormalized = Mathf.Clamp01(changeOrbit.CurrentOrbitRadius / changeOrbit.MaxRadius); + float coeff = trailSizeCorrectionCurve.Evaluate(tNormalized); + + trailRenderer.time = trailTime * coeff; + trailRenderer.widthMultiplier = trailWidth; + if (forceLine) forceLine.widthMultiplier = trailWidth / 10f; + } } \ No newline at end of file diff --git a/Assets/Scripts/QuarkPair.cs b/Assets/Scripts/QuarkPair.cs new file mode 100644 index 000000000..095d3a010 --- /dev/null +++ b/Assets/Scripts/QuarkPair.cs @@ -0,0 +1,50 @@ +using System; +using DG.Tweening; +using UnityEngine; + +public class QuarkPair : TypeQuark +{ + Vector3 averageVelocity; + Vector3 oldPos; + + private void Awake() + { + oldPos = transform.position; + partSys1 = GetComponent(); + UpdateColor(); + } + + [Obsolete] + private void Start() + { + FlashToColor(quarkColor); + + //TODO: fix anti-color to have 157 opacity by default + Color c = GetComponent().startColor; + c.a = 157f / 255f; + GetComponent().startColor = c; + } + + // Update is called once per frame + void Update() + { + averageVelocity = (transform.position - oldPos) / Time.deltaTime; + oldPos = transform.position; + + Keyframe key = new Keyframe(); + key.value = 1f; + if (!FindObjectOfType() || !FindObjectOfType().forceLineVis) + { + key.value = 0; + } + + GetComponent().widthCurve = new AnimationCurve(new Keyframe[] { key, key }); //Sets the width curve to 0 (you probably could just remove it entirely, but it might cause problems) + + Vector3 pos = (!FindObjectOfType()) ? Vector3.zero : transform.position - FindObjectOfType().transform.position; + + if (pos.magnitude >= 0.01f) GetComponent().AddForce(-pos.normalized * FindObjectOfType().forceSlider.value * 20000 / pos.magnitude * Time.deltaTime, ForceMode.Force); + + if (pos.magnitude > 50) { transform.parent.GetComponent().HP = 0; } //If a certain distance away from proton, delete it + } + public Vector3 getVelocity() { return averageVelocity; } +} diff --git a/Assets/Scripts/QuarkPair.cs.meta b/Assets/Scripts/QuarkPair.cs.meta new file mode 100644 index 000000000..6c8a483bf --- /dev/null +++ b/Assets/Scripts/QuarkPair.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: ed2439ec6edf4f441b25040894c3982d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/QuarkSettings.cs b/Assets/Scripts/QuarkSettings.cs index 8d555383c..ae9bdfaa4 100644 --- a/Assets/Scripts/QuarkSettings.cs +++ b/Assets/Scripts/QuarkSettings.cs @@ -1,106 +1,106 @@ -using DG.Tweening; -using UnityEngine; - -[CreateAssetMenu(fileName = "Color", menuName = "ScriptableObjects/QuarkColor", order = 1)] -public class QuarkSettings : ScriptableObject -{ - [Header("Quark Red Color")] - [ColorUsage(true, true)] - public Color QuarkRed; - - [ColorUsage(true, true)] - public Color GluonRed; - - [ColorUsage(true, true)] - public Color AntiRed; - - [Header("Quark Green Color")] - [ColorUsage(true, true)] - public Color QuarkGreen; - - [ColorUsage(true, true)] - public Color GluonGreen; - - [ColorUsage(true, true)] - public Color AntiGreen; - - [Header("Quark Blue Color")] - [ColorUsage(true, true)] - public Color QuarkBlue; - - [ColorUsage(true, true)] - public Color GluonBlue; - - [ColorUsage(true, true)] - public Color AntiBlue; - - public float GluonSpeed = 400.0f; - - public float GluonFlashTime = 0.2f; - - public float QuarkSpeed = 10; - - public float QuarkMoveRadius = 1000; - - public float GlobalSpeedMultiplier = 1.0f; - - public float GlobalSlowdownCoefficient = 0.2f; - - public float TrailColorLerp = 0.2f; - - private bool slowMode = false; - - public void ToggleSlowMode() - { - if (!slowMode) - { - GlobalSpeedMultiplier *= GlobalSlowdownCoefficient; - slowMode = true; - } - else - { - GlobalSpeedMultiplier /= GlobalSlowdownCoefficient; - slowMode = false; - } - } - - public static QuarkSettings Instance - { - get - { - return Resources.Load("QuarkSettings"); - } - } - - public static Color GetColorRGB(QuarkColor quarkColor, bool gluon = false) - { - if (!gluon) - { - switch (quarkColor) - { - case QuarkColor.Red: return Instance.QuarkRed; - case QuarkColor.Green: return Instance.QuarkGreen; - case QuarkColor.Blue: return Instance.QuarkBlue; - case QuarkColor.AntiRed: return Instance.AntiRed; - case QuarkColor.AntiGreen: return Instance.AntiGreen; - case QuarkColor.AntiBlue: return Instance.AntiBlue; - - default: return Instance.QuarkBlue; - } - } - else - { - switch (quarkColor) - { - case QuarkColor.Red: return Instance.GluonRed; - case QuarkColor.Green: return Instance.GluonGreen; - case QuarkColor.Blue: return Instance.GluonBlue; - case QuarkColor.AntiRed: return Instance.AntiRed; - case QuarkColor.AntiGreen: return Instance.AntiGreen; - case QuarkColor.AntiBlue: return Instance.AntiBlue; - - default: return Instance.QuarkBlue; - } - } - } +using DG.Tweening; +using UnityEngine; + +[CreateAssetMenu(fileName = "Color", menuName = "ScriptableObjects/QuarkColor", order = 1)] +public class QuarkSettings : ScriptableObject +{ + [Header("Quark Red Color")] + [ColorUsage(true, true)] + public Color QuarkRed; + + [ColorUsage(true, true)] + public Color GluonRed; + + [ColorUsage(true, true)] + public Color AntiRed; + + [Header("Quark Green Color")] + [ColorUsage(true, true)] + public Color QuarkGreen; + + [ColorUsage(true, true)] + public Color GluonGreen; + + [ColorUsage(true, true)] + public Color AntiGreen; + + [Header("Quark Blue Color")] + [ColorUsage(true, true)] + public Color QuarkBlue; + + [ColorUsage(true, true)] + public Color GluonBlue; + + [ColorUsage(true, true)] + public Color AntiBlue; + + public float GluonSpeed = 400.0f; + + public float GluonFlashTime = 0.2f; + + public float QuarkSpeed = 10; + + public float QuarkMoveRadius = 1000; + + public float GlobalSpeedMultiplier = 1.0f; + + public float GlobalSlowdownCoefficient = 0.2f; + + public float TrailColorLerp = 0.2f; + + private bool slowMode = false; + + public void ToggleSlowMode() + { + if (!slowMode) + { + GlobalSpeedMultiplier *= GlobalSlowdownCoefficient; + slowMode = true; + } + else + { + GlobalSpeedMultiplier /= GlobalSlowdownCoefficient; + slowMode = false; + } + } + + public static QuarkSettings Instance + { + get + { + return Resources.Load("QuarkSettings"); + } + } + + public static Color GetColorRGB(QuarkColor quarkColor, bool gluon = false) + { + if (!gluon) + { + switch (quarkColor) + { + case QuarkColor.Red: return Instance.QuarkRed; + case QuarkColor.Green: return Instance.QuarkGreen; + case QuarkColor.Blue: return Instance.QuarkBlue; + case QuarkColor.AntiRed: return Instance.AntiRed; + case QuarkColor.AntiGreen: return Instance.AntiGreen; + case QuarkColor.AntiBlue: return Instance.AntiBlue; + + default: return Instance.QuarkBlue; + } + } + else + { + switch (quarkColor) + { + case QuarkColor.Red: return Instance.GluonRed; + case QuarkColor.Green: return Instance.GluonGreen; + case QuarkColor.Blue: return Instance.GluonBlue; + case QuarkColor.AntiRed: return Instance.AntiRed; + case QuarkColor.AntiGreen: return Instance.AntiGreen; + case QuarkColor.AntiBlue: return Instance.AntiBlue; + + default: return Instance.QuarkBlue; + } + } + } } \ No newline at end of file diff --git a/Assets/Scripts/RandomGaussian.cs b/Assets/Scripts/RandomGaussian.cs index 3c59b8026..d3cae75a9 100644 --- a/Assets/Scripts/RandomGaussian.cs +++ b/Assets/Scripts/RandomGaussian.cs @@ -1,35 +1,35 @@ -using System; -using UnityEngine; - -public static class RandomGaussian -{ - private static bool initialized = false; - - public static float Range(float minValue = 0.0f, float maxValue = 1.0f) - { - if (!initialized) - { - UnityEngine.Random.InitState(DateTime.UtcNow.GetHashCode()); - initialized = true; - } - - float u, v, S; - - do - { - u = 2.0f * UnityEngine.Random.value - 1.0f; - v = 2.0f * UnityEngine.Random.value - 1.0f; - S = u * u + v * v; - } - while (S >= 1.0f); - - // Standard Normal Distribution - float std = u * Mathf.Sqrt(-2.0f * Mathf.Log(S) / S); - - // Normal Distribution centered between the min and max value - // and clamped following the "three-sigma rule" - float mean = (minValue + maxValue) / 2.0f; - float sigma = (maxValue - mean) / 3.0f; - return Mathf.Clamp(std * sigma + mean, minValue, maxValue); - } -} +using System; +using UnityEngine; + +public static class RandomGaussian +{ + private static bool initialized = false; + + public static float Range(float minValue = 0.0f, float maxValue = 1.0f) + { + if (!initialized) + { + UnityEngine.Random.InitState(DateTime.UtcNow.GetHashCode()); + initialized = true; + } + + float u, v, S; + + do + { + u = 2.0f * UnityEngine.Random.value - 1.0f; + v = 2.0f * UnityEngine.Random.value - 1.0f; + S = u * u + v * v; + } + while (S >= 1.0f); + + // Standard Normal Distribution + float std = u * Mathf.Sqrt(-2.0f * Mathf.Log(S) / S); + + // Normal Distribution centered between the min and max value + // and clamped following the "three-sigma rule" + float mean = (minValue + maxValue) / 2.0f; + float sigma = (maxValue - mean) / 3.0f; + return Mathf.Clamp(std * sigma + mean, minValue, maxValue); + } +} diff --git a/Assets/Scripts/Sound.meta b/Assets/Scripts/Sound.meta new file mode 100644 index 000000000..3227426f2 --- /dev/null +++ b/Assets/Scripts/Sound.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a3c56907d85d64c40b3970a4753b742b +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Sound/Music.cs b/Assets/Scripts/Sound/Music.cs new file mode 100644 index 000000000..23514359b --- /dev/null +++ b/Assets/Scripts/Sound/Music.cs @@ -0,0 +1,23 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class Music : MonoBehaviour +{ + AudioSource source; + public AudioClip[] intros; + public AudioClip[] loops; + public AudioClip[] fulls; + public bool autoPlay = false; + + private void Awake() + { + source = gameObject.AddComponent(); + if (autoPlay && (loops.Length > 0 && intros.Length > 0)) { + source.clip = loops[0]; + source.PlayOneShot(intros[0]); + source.loop = true; + source.PlayScheduled(intros[0].length + AudioSettings.dspTime); + } + } +} diff --git a/Assets/Scripts/Sound/Music.cs.meta b/Assets/Scripts/Sound/Music.cs.meta new file mode 100644 index 000000000..7140f1512 --- /dev/null +++ b/Assets/Scripts/Sound/Music.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 3e7d903707ded584182cfee2cafc655d +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Shaders/Field.shadergraph b/Assets/Shaders/Field.shadergraph new file mode 100644 index 000000000..cb54aca3b --- /dev/null +++ b/Assets/Shaders/Field.shadergraph @@ -0,0 +1,2009 @@ +{ + "m_SGVersion": 2, + "m_Type": "UnityEditor.ShaderGraph.GraphData", + "m_ObjectId": "e433bd8a5f9644ac820bc88e1f7f4490", + "m_Properties": [ + { + "m_Id": "76634227db204b76af2d91e61eac5e6b" + }, + { + "m_Id": "6f92dc3ff16947f5817b5cb574051c92" + } + ], + "m_Keywords": [], + "m_Nodes": [ + { + "m_Id": "1f1f27aafb1f449d9ff410ddfeafb51c" + }, + { + "m_Id": "c34fd253240a4b2fa468f44afd0e5163" + }, + { + "m_Id": "d74a40d8e49649759c641852f6471fb2" + }, + { + "m_Id": "a1085d0588db40d9b2e8126070898472" + }, + { + "m_Id": "875070478abb4395967fd561451fd6db" + }, + { + "m_Id": "4c599fc70a0c46da95bf38e059653b9d" + }, + { + "m_Id": "7c7cccf018ee44e88d9558442596da52" + }, + { + "m_Id": "e42f55f709ee4cf0babae230db016e02" + }, + { + "m_Id": "5e7c2a703c8847a798c0e7c7354fd816" + }, + { + "m_Id": "60302bd738bd4574b5353aa86949bbb8" + }, + { + "m_Id": "d2fa17ff814246e6be0be98753a95f89" + }, + { + "m_Id": "6ff782fb6f6346dc8ecc60ec3684e519" + }, + { + "m_Id": "304075618c9644b282b9d8c37d54df44" + }, + { + "m_Id": "9d922b06d7ee40f59915cc7fd3a0ddd0" + }, + { + "m_Id": "6576138131f34391a31fd2e501211b5d" + }, + { + "m_Id": "c1146af25930420cb2fda4e6a0a5ce48" + }, + { + "m_Id": "86587fceb2b6415089c8977484eed594" + } + ], + "m_GroupDatas": [], + "m_StickyNoteDatas": [], + "m_Edges": [ + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "304075618c9644b282b9d8c37d54df44" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "4c599fc70a0c46da95bf38e059653b9d" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "4c599fc70a0c46da95bf38e059653b9d" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "60302bd738bd4574b5353aa86949bbb8" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "5e7c2a703c8847a798c0e7c7354fd816" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "86587fceb2b6415089c8977484eed594" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "60302bd738bd4574b5353aa86949bbb8" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "d2fa17ff814246e6be0be98753a95f89" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "60302bd738bd4574b5353aa86949bbb8" + }, + "m_SlotId": 1 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "e42f55f709ee4cf0babae230db016e02" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6576138131f34391a31fd2e501211b5d" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9d922b06d7ee40f59915cc7fd3a0ddd0" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "6ff782fb6f6346dc8ecc60ec3684e519" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "9d922b06d7ee40f59915cc7fd3a0ddd0" + }, + "m_SlotId": 1 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "7c7cccf018ee44e88d9558442596da52" + }, + "m_SlotId": 5 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5e7c2a703c8847a798c0e7c7354fd816" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "86587fceb2b6415089c8977484eed594" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "875070478abb4395967fd561451fd6db" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "9d922b06d7ee40f59915cc7fd3a0ddd0" + }, + "m_SlotId": 2 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "304075618c9644b282b9d8c37d54df44" + }, + "m_SlotId": 2 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "c1146af25930420cb2fda4e6a0a5ce48" + }, + "m_SlotId": 0 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "a1085d0588db40d9b2e8126070898472" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "d2fa17ff814246e6be0be98753a95f89" + }, + "m_SlotId": 3 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "7c7cccf018ee44e88d9558442596da52" + }, + "m_SlotId": 0 + } + }, + { + "m_OutputSlot": { + "m_Node": { + "m_Id": "e42f55f709ee4cf0babae230db016e02" + }, + "m_SlotId": 4 + }, + "m_InputSlot": { + "m_Node": { + "m_Id": "5e7c2a703c8847a798c0e7c7354fd816" + }, + "m_SlotId": 1 + } + } + ], + "m_VertexContext": { + "m_Position": { + "x": 392.800048828125, + "y": -189.5999755859375 + }, + "m_Blocks": [ + { + "m_Id": "1f1f27aafb1f449d9ff410ddfeafb51c" + }, + { + "m_Id": "c34fd253240a4b2fa468f44afd0e5163" + }, + { + "m_Id": "d74a40d8e49649759c641852f6471fb2" + } + ] + }, + "m_FragmentContext": { + "m_Position": { + "x": 392.8000183105469, + "y": 194.39999389648438 + }, + "m_Blocks": [ + { + "m_Id": "a1085d0588db40d9b2e8126070898472" + }, + { + "m_Id": "875070478abb4395967fd561451fd6db" + } + ] + }, + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"fileID\":10206,\"guid\":\"0000000000000000e000000000000000\",\"type\":0}}", + "m_Guid": "" + } + }, + "m_Path": "Shader Graphs", + "m_ConcretePrecision": 0, + "m_PreviewMode": 2, + "m_OutputNode": { + "m_Id": "" + }, + "m_ActiveTargets": [ + { + "m_Id": "e3bb0393a7ce47d38824dccc0f5342e0" + } + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "032e281de7eb4578b4cbbc21c2554dd1", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "e00": 0.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TangentMaterialSlot", + "m_ObjectId": "036c35c5550f4f92b31abf24ff44a397", + "m_Id": 0, + "m_DisplayName": "Tangent", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tangent", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0e933d8de28440a98af618c519c510e9", + "m_Id": 3, + "m_DisplayName": "Delta Time", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Delta Time", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "0f773e87a49a41189619c91bfc3ece07", + "m_Id": 1, + "m_DisplayName": "X", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "X", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "10058ee679214e90bc3c7d9793593de7", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "10a6313a9d2444cfbbab3a31d422947c", + "m_Id": 1, + "m_DisplayName": "Width", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.10000000149011612, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "1dc629f7743d498ab1588e46f31b6e2d", + "m_Id": 2, + "m_DisplayName": "Max", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Max", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0, + "z": 1.0, + "w": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "1f1f27aafb1f449d9ff410ddfeafb51c", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Position", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "6165d6091c3c4c9c81e2796b00386c37" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Position" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "20378af2a4fb471089f3fabe5a42358e", + "m_Id": 4, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 2, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "204ff08d15684efc9ff3dd7c4648c825", + "m_Id": 1, + "m_DisplayName": "Tiling", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tiling", + "m_StageCapability": 3, + "m_Value": { + "x": 4.0, + "y": 4.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "2246324f042b43d3ba6959b8750cc6fa", + "m_Id": 3, + "m_DisplayName": "Radius", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Radius", + "m_StageCapability": 3, + "m_Value": 0.10000000149011612, + "m_DefaultValue": 0.10000000149011612, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "2ab417a422f74a97b5fe6d2d4ee17ee3", + "m_Id": 2, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "2b9d575981b944c68b54d926a7b0b96e", + "m_Id": 2, + "m_DisplayName": "Y", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Y", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [ + "Y" + ] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "2bf7334e9ccd4ecaa522afd05ffd8fd1", + "m_Id": 0, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2Node", + "m_ObjectId": "304075618c9644b282b9d8c37d54df44", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Vector 2", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1384.0, + "y": 119.99999237060547, + "width": 128.0, + "height": 100.79999542236328 + } + }, + "m_Slots": [ + { + "m_Id": "0f773e87a49a41189619c91bfc3ece07" + }, + { + "m_Id": "2b9d575981b944c68b54d926a7b0b96e" + }, + { + "m_Id": "2bf7334e9ccd4ecaa522afd05ffd8fd1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Value": { + "x": 0.0, + "y": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3adc4642dff448a0ad3419d8c99ecba0", + "m_Id": 0, + "m_DisplayName": "Speed", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "3c837ddf82ff4c15b30d0264d406a596", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.5, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "3d4bff27edec425cb53669183f9511dd", + "m_Id": 2, + "m_DisplayName": "Offset", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Offset", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": -0.10000000149011612 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector4MaterialSlot", + "m_ObjectId": "43632020f51e42e28dae1d649982cb56", + "m_Id": 0, + "m_DisplayName": "Color", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "4433cf1766104ece83055e60742460ca", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "477f0715f5a049e7bb1272fcce6c0470", + "m_Id": 0, + "m_DisplayName": "A", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "A", + "m_StageCapability": 3, + "m_Value": { + "e00": -3.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 0.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 0.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 0.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TilingAndOffsetNode", + "m_ObjectId": "4c599fc70a0c46da95bf38e059653b9d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Tiling And Offset", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1222.4000244140625, + "y": -18.400007247924806, + "width": 208.00001525878907, + "height": 325.6000061035156 + } + }, + "m_Slots": [ + { + "m_Id": "f6c2ed531d17417ba6c387a1b2a6abca" + }, + { + "m_Id": "204ff08d15684efc9ff3dd7c4648c825" + }, + { + "m_Id": "523b364f42da43b69c1641e74ed99c52" + }, + { + "m_Id": "4f6ecd41e5234689a50b00da36422689" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "4f6ecd41e5234689a50b00da36422689", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "523b364f42da43b69c1641e74ed99c52", + "m_Id": 2, + "m_DisplayName": "Offset", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Offset", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "53a4674bdaaf4102b68744aa489708dd", + "m_Id": 1, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "5b998f2049424a5aac43528cd267b9ff", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.AddNode", + "m_ObjectId": "5e7c2a703c8847a798c0e7c7354fd816", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Add", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -222.4000244140625, + "y": 260.79998779296877, + "width": 208.00001525878907, + "height": 301.60003662109377 + } + }, + "m_Slots": [ + { + "m_Id": "10058ee679214e90bc3c7d9793593de7" + }, + { + "m_Id": "937b4e9575684f2a99bb97d3f1ca75a5" + }, + { + "m_Id": "2ab417a422f74a97b5fe6d2d4ee17ee3" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.FractionNode", + "m_ObjectId": "60302bd738bd4574b5353aa86949bbb8", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Fraction", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -968.0, + "y": -18.399991989135743, + "width": 208.00001525878907, + "height": 277.6000061035156 + } + }, + "m_Slots": [ + { + "m_Id": "df9036cbf1534afc86d4d1de98602bff" + }, + { + "m_Id": "53a4674bdaaf4102b68744aa489708dd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PositionMaterialSlot", + "m_ObjectId": "6165d6091c3c4c9c81e2796b00386c37", + "m_Id": 0, + "m_DisplayName": "Position", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Position", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "6576138131f34391a31fd2e501211b5d", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1830.8690185546875, + "y": 288.833984375, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "3adc4642dff448a0ad3419d8c99ecba0" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "76634227db204b76af2d91e61eac5e6b" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "66a6cb3acf7e4655874f151b0d83994b", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "6eed5aa148d148dc9cf27cb2d3a3f33a", + "m_Id": 0, + "m_DisplayName": "Alpha", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Alpha", + "m_StageCapability": 2, + "m_Value": 1.0, + "m_DefaultValue": 1.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 3, + "m_Type": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty", + "m_ObjectId": "6f92dc3ff16947f5817b5cb574051c92", + "m_Guid": { + "m_GuidSerialized": "5c6869c9-7605-4f7f-86ec-383cad682d4b" + }, + "m_Name": "Color", + "m_DefaultReferenceName": "Color_6f92dc3ff16947f5817b5cb574051c92", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": { + "r": 1.0, + "g": 1.0, + "b": 1.0, + "a": 0.0 + }, + "m_ColorMode": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TimeNode", + "m_ObjectId": "6ff782fb6f6346dc8ecc60ec3684e519", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Time", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1768.0, + "y": 376.800048828125, + "width": 128.0, + "height": 172.79998779296876 + } + }, + "m_Slots": [ + { + "m_Id": "9f4fc21120df434fa5118e069240c899" + }, + { + "m_Id": "89a89334862140938f795ac3b1c627b3" + }, + { + "m_Id": "dc442011ffdc4451b501a09ff0979cd1" + }, + { + "m_Id": "0e933d8de28440a98af618c519c510e9" + }, + { + "m_Id": "e4e7e4bd6ea9413d841ca730010f7dde" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 1, + "m_Type": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty", + "m_ObjectId": "76634227db204b76af2d91e61eac5e6b", + "m_Guid": { + "m_GuidSerialized": "fe6398bd-0a60-4ada-baa3-35737b1a9e39" + }, + "m_Name": "Speed", + "m_DefaultReferenceName": "Vector1_76634227db204b76af2d91e61eac5e6b", + "m_OverrideReferenceName": "", + "m_GeneratePropertyBlock": true, + "m_Precision": 0, + "overrideHLSLDeclaration": false, + "hlslDeclarationOverride": 0, + "m_Hidden": false, + "m_Value": -3.0, + "m_FloatType": 0, + "m_RangeValues": { + "x": 0.0, + "y": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.RoundedPolygonNode", + "m_ObjectId": "7c7cccf018ee44e88d9558442596da52", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Rounded Polygon", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -481.60003662109377, + "y": 38.40000915527344, + "width": 208.00001525878907, + "height": 373.60003662109377 + } + }, + "m_Slots": [ + { + "m_Id": "5b998f2049424a5aac43528cd267b9ff" + }, + { + "m_Id": "f700ca42400b45adaa1fdce056bbddac" + }, + { + "m_Id": "3c837ddf82ff4c15b30d0264d406a596" + }, + { + "m_Id": "85a11c6d1ab94ae78c7c759e3a76941b" + }, + { + "m_Id": "f8e0c02131e0422f867f3779e0c8a83f" + }, + { + "m_Id": "dac2a96a5c82476d8902354ce16023ac" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.NormalMaterialSlot", + "m_ObjectId": "831c990b6a2f4a80b2d835a4e8639564", + "m_Id": 0, + "m_DisplayName": "Normal", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Normal", + "m_StageCapability": 1, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_Space": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "85a11c6d1ab94ae78c7c759e3a76941b", + "m_Id": 3, + "m_DisplayName": "Sides", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Sides", + "m_StageCapability": 3, + "m_Value": 3.0, + "m_DefaultValue": 5.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ClampNode", + "m_ObjectId": "86587fceb2b6415089c8977484eed594", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Clamp", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 13.632505416870118, + "y": 616.8323974609375, + "width": 208.0, + "height": 326.4000244140625 + } + }, + "m_Slots": [ + { + "m_Id": "a6715fcfabf948599ede806972111620" + }, + { + "m_Id": "c93ac230409c4ae18400c3107fd56831" + }, + { + "m_Id": "1dc629f7743d498ab1588e46f31b6e2d" + }, + { + "m_Id": "66a6cb3acf7e4655874f151b0d83994b" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "875070478abb4395967fd561451fd6db", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.Alpha", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "6eed5aa148d148dc9cf27cb2d3a3f33a" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.Alpha" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "89a89334862140938f795ac3b1c627b3", + "m_Id": 1, + "m_DisplayName": "Sine Time", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Sine Time", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "937b4e9575684f2a99bb97d3f1ca75a5", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.ColorRGBMaterialSlot", + "m_ObjectId": "992cb98043e94452a22d738da2b11edd", + "m_Id": 0, + "m_DisplayName": "Base Color", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "BaseColor", + "m_StageCapability": 2, + "m_Value": { + "x": 0.5, + "y": 0.5, + "z": 0.5 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0 + }, + "m_Labels": [], + "m_ColorMode": 0, + "m_DefaultColor": { + "r": 0.5, + "g": 0.5, + "b": 0.5, + "a": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "99c203f043a043829a7a9f1c149b436d", + "m_Id": 2, + "m_DisplayName": "Height", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Height", + "m_StageCapability": 3, + "m_Value": 0.5, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "9a58b7b33e084d5abed6b5ce0c054bcb", + "m_Id": 1, + "m_DisplayName": "Tiling", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Tiling", + "m_StageCapability": 3, + "m_Value": { + "x": 1.0, + "y": 1.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalUnlitSubTarget", + "m_ObjectId": "9b8e221a0e694b31be81385b2e3bb0b2" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.MultiplyNode", + "m_ObjectId": "9d922b06d7ee40f59915cc7fd3a0ddd0", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Multiply", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -1614.39990234375, + "y": 248.00001525878907, + "width": 208.00001525878907, + "height": 301.5999755859375 + } + }, + "m_Slots": [ + { + "m_Id": "477f0715f5a049e7bb1272fcce6c0470" + }, + { + "m_Id": "ae3275f1bfb54dfa81f109efa18a0169" + }, + { + "m_Id": "032e281de7eb4578b4cbbc21c2554dd1" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "9f4fc21120df434fa5118e069240c899", + "m_Id": 0, + "m_DisplayName": "Time", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Time", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "a1085d0588db40d9b2e8126070898472", + "m_Group": { + "m_Id": "" + }, + "m_Name": "SurfaceDescription.BaseColor", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "992cb98043e94452a22d738da2b11edd" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "SurfaceDescription.BaseColor" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "a6715fcfabf948599ede806972111620", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "add04ca649814514b06ba203dd35aa1d", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicValueMaterialSlot", + "m_ObjectId": "ae3275f1bfb54dfa81f109efa18a0169", + "m_Id": 1, + "m_DisplayName": "B", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "B", + "m_StageCapability": 3, + "m_Value": { + "e00": 2.0, + "e01": 2.0, + "e02": 2.0, + "e03": 2.0, + "e10": 2.0, + "e11": 2.0, + "e12": 2.0, + "e13": 2.0, + "e20": 2.0, + "e21": 2.0, + "e22": 2.0, + "e23": 2.0, + "e30": 2.0, + "e31": 2.0, + "e32": 2.0, + "e33": 2.0 + }, + "m_DefaultValue": { + "e00": 1.0, + "e01": 0.0, + "e02": 0.0, + "e03": 0.0, + "e10": 0.0, + "e11": 1.0, + "e12": 0.0, + "e13": 0.0, + "e20": 0.0, + "e21": 0.0, + "e22": 1.0, + "e23": 0.0, + "e30": 0.0, + "e31": 0.0, + "e32": 0.0, + "e33": 1.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.PropertyNode", + "m_ObjectId": "c1146af25930420cb2fda4e6a0a5ce48", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Property", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 4.496526718139648, + "y": 37.29452133178711, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "43632020f51e42e28dae1d649982cb56" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_Property": { + "m_Id": "6f92dc3ff16947f5817b5cb574051c92" + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "c34fd253240a4b2fa468f44afd0e5163", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Normal", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "831c990b6a2f4a80b2d835a4e8639564" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Normal" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "c93ac230409c4ae18400c3107fd56831", + "m_Id": 1, + "m_DisplayName": "Min", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Min", + "m_StageCapability": 3, + "m_Value": { + "x": 0.125, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.TilingAndOffsetNode", + "m_ObjectId": "d2fa17ff814246e6be0be98753a95f89", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Tiling And Offset", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -714.4000854492188, + "y": -299.2000427246094, + "width": 208.00003051757813, + "height": 326.4000244140625 + } + }, + "m_Slots": [ + { + "m_Id": "4433cf1766104ece83055e60742460ca" + }, + { + "m_Id": "9a58b7b33e084d5abed6b5ce0c054bcb" + }, + { + "m_Id": "3d4bff27edec425cb53669183f9511dd" + }, + { + "m_Id": "ddb4d63d7bc84211be85196ab4ec1807" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.BlockNode", + "m_ObjectId": "d74a40d8e49649759c641852f6471fb2", + "m_Group": { + "m_Id": "" + }, + "m_Name": "VertexDescription.Tangent", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": 0.0, + "y": 0.0, + "width": 0.0, + "height": 0.0 + } + }, + "m_Slots": [ + { + "m_Id": "036c35c5550f4f92b31abf24ff44a397" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + }, + "m_SerializedDescriptor": "VertexDescription.Tangent" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "dac2a96a5c82476d8902354ce16023ac", + "m_Id": 5, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "dc442011ffdc4451b501a09ff0979cd1", + "m_Id": 2, + "m_DisplayName": "Cosine Time", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Cosine Time", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector2MaterialSlot", + "m_ObjectId": "ddb4d63d7bc84211be85196ab4ec1807", + "m_Id": 3, + "m_DisplayName": "Out", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Out", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.DynamicVectorMaterialSlot", + "m_ObjectId": "df9036cbf1534afc86d4d1de98602bff", + "m_Id": 0, + "m_DisplayName": "In", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "In", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0, + "z": 0.0, + "w": 0.0 + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.Rendering.Universal.ShaderGraph.UniversalTarget", + "m_ObjectId": "e3bb0393a7ce47d38824dccc0f5342e0", + "m_ActiveSubTarget": { + "m_Id": "9b8e221a0e694b31be81385b2e3bb0b2" + }, + "m_SurfaceType": 1, + "m_AlphaMode": 0, + "m_TwoSided": false, + "m_AlphaClip": false, + "m_CustomEditorGUI": "" +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.RoundedRectangleNode", + "m_ObjectId": "e42f55f709ee4cf0babae230db016e02", + "m_Group": { + "m_Id": "" + }, + "m_Name": "Rounded Rectangle", + "m_DrawState": { + "m_Expanded": true, + "m_Position": { + "serializedVersion": "2", + "x": -481.60003662109377, + "y": 411.9999694824219, + "width": 208.00001525878907, + "height": 349.5999755859375 + } + }, + "m_Slots": [ + { + "m_Id": "add04ca649814514b06ba203dd35aa1d" + }, + { + "m_Id": "10a6313a9d2444cfbbab3a31d422947c" + }, + { + "m_Id": "99c203f043a043829a7a9f1c149b436d" + }, + { + "m_Id": "2246324f042b43d3ba6959b8750cc6fa" + }, + { + "m_Id": "20378af2a4fb471089f3fabe5a42358e" + } + ], + "synonyms": [], + "m_Precision": 0, + "m_PreviewExpanded": true, + "m_PreviewMode": 0, + "m_CustomColors": { + "m_SerializableColors": [] + } +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "e4e7e4bd6ea9413d841ca730010f7dde", + "m_Id": 4, + "m_DisplayName": "Smooth Delta", + "m_SlotType": 1, + "m_Hidden": false, + "m_ShaderOutputName": "Smooth Delta", + "m_StageCapability": 3, + "m_Value": 0.0, + "m_DefaultValue": 0.0, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.UVMaterialSlot", + "m_ObjectId": "f6c2ed531d17417ba6c387a1b2a6abca", + "m_Id": 0, + "m_DisplayName": "UV", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "UV", + "m_StageCapability": 3, + "m_Value": { + "x": 0.0, + "y": 0.0 + }, + "m_DefaultValue": { + "x": 0.0, + "y": 0.0 + }, + "m_Labels": [], + "m_Channel": 0 +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f700ca42400b45adaa1fdce056bbddac", + "m_Id": 1, + "m_DisplayName": "Width", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Width", + "m_StageCapability": 3, + "m_Value": 0.5, + "m_DefaultValue": 0.5, + "m_Labels": [] +} + +{ + "m_SGVersion": 0, + "m_Type": "UnityEditor.ShaderGraph.Vector1MaterialSlot", + "m_ObjectId": "f8e0c02131e0422f867f3779e0c8a83f", + "m_Id": 4, + "m_DisplayName": "Roundness", + "m_SlotType": 0, + "m_Hidden": false, + "m_ShaderOutputName": "Roundness", + "m_StageCapability": 3, + "m_Value": 0.07999999821186066, + "m_DefaultValue": 0.30000001192092898, + "m_Labels": [] +} + diff --git a/Assets/Shaders/Field.shadergraph.meta b/Assets/Shaders/Field.shadergraph.meta new file mode 100644 index 000000000..2587cc87c --- /dev/null +++ b/Assets/Shaders/Field.shadergraph.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: a877d100dfbcdac4fb28af0a8eb9341f +ScriptedImporter: + internalIDToNameTable: [] + externalObjects: {} + serializedVersion: 2 + userData: + assetBundleName: + assetBundleVariant: + script: {fileID: 11500000, guid: 625f186215c104763be7675aa2d941aa, type: 3} diff --git a/Assets/Shaders/Gluon_Anticolor_Glow.shadergraph b/Assets/Shaders/Gluon_Anticolor_Glow.shadergraph index 49fa51dda..adaf97a55 100644 --- a/Assets/Shaders/Gluon_Anticolor_Glow.shadergraph +++ b/Assets/Shaders/Gluon_Anticolor_Glow.shadergraph @@ -1,299 +1,299 @@ -{ - "m_SerializedProperties": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_69E7D3A8\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 1.0,\n \"b\": 1.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"c7feb647-6e6b-41c6-98a7-4959f19d60c6\"\n },\n \"m_Name\": \"Fade\",\n \"m_DefaultReferenceName\": \"Vector4_5B5437B\",\n \"m_OverrideReferenceName\": \"_Fade\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 1.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"4873fb75-d91c-4d3b-b84b-897d1f6bb0ca\"\n },\n \"m_Name\": \"NozeAmount\",\n \"m_DefaultReferenceName\": \"Vector1_82F0467A\",\n \"m_OverrideReferenceName\": \"_NoiseAmount\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 0.5,\n \"m_FloatType\": 1,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"975bf92b-31c1-443f-833c-c6fc5f67521f\"\n },\n \"m_Name\": \"NoizeSize\",\n \"m_DefaultReferenceName\": \"Vector1_2E0FC3DD\",\n \"m_OverrideReferenceName\": \"_NoiseSize\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 6.0,\n \"m_FloatType\": 0,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"5e1489f9-7b3a-4eff-a0de-eeebaca0ea60\"\n },\n \"m_Name\": \"NoizeSpeed\",\n \"m_DefaultReferenceName\": \"Vector1_EA28906C\",\n \"m_OverrideReferenceName\": \"_NoiseSpeed\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 4.0,\n \"m_FloatType\": 0,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" - } - ], - "m_SerializedKeywords": [], - "m_SerializableNodes": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"64164559-88ef-4086-a612-1af97c4de6ec\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -308.0,\n \"y\": 893.0000610351563,\n \"width\": 144.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"NoizeSpeed\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"5e1489f9-7b3a-4eff-a0de-eeebaca0ea60\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -116.99999237060547,\n \"y\": 892.0000610351563,\n \"width\": 136.0,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c95620dc-71ca-40d2-9f6c-60ead3720897\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -92.99999237060547,\n \"y\": 1046.0,\n \"width\": 132.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"NoizeSize\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"975bf92b-31c1-443f-833c-c6fc5f67521f\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 559.0,\n \"y\": 333.9999694824219,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SplitNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -457.0,\n \"y\": 346.0,\n \"width\": 128.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.OneMinusNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"f0494da5-9afd-419c-a0bb-67955d1fd443\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -52.00001907348633,\n \"y\": 500.0000305175781,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FresnelNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"d258f95a-198b-4623-b238-1a18ffbefd15\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -306.0,\n \"y\": 499.9999694824219,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.8500000238418579,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SmoothstepNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Smoothstep\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 197.00003051757813,\n \"y\": 404.00006103515627,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge1\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge1\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Edge2\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge2\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"88304668-4c71-46dd-a0f0-07b7ff8f4252\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -605.0000610351563,\n \"y\": 380.9999694824219,\n \"width\": 106.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Fade\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"c7feb647-6e6b-41c6-98a7-4959f19d60c6\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 867.0000610351563,\n \"y\": 193.0,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"d3e13489-db55-4492-a7ee-7833a8bca6a8\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 756.0,\n \"y\": 337.0,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1171.0,\n \"y\": 195.0,\n \"width\": 200.0,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.TimeNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"21c63034-04ba-4dc8-9eef-c1365cc5d996\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Time\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -296.0,\n \"y\": 966.0,\n \"width\": 134.0,\n \"height\": 173.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Sine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Cosine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Cosine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Delta Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Delta Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Smooth Delta\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Smooth Delta\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 529.4373779296875,\n \"y\": 519.437255859375,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.VoronoiNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Voronoi\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 85.00000762939453,\n \"y\": 870.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Angle Offset\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AngleOffset\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 5.880000114440918,\\n \\\"m_DefaultValue\\\": 2.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Cell Density\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"CellDensity\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 5.900000095367432,\\n \\\"m_DefaultValue\\\": 5.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Cells\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Cells\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 351.9999694824219,\n \"y\": 883.0000610351563,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.5299999713897705,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"6b69b9e5-f4d4-4de0-a93f-04f787f0cf3d\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 537.0,\n \"y\": 874.0000610351563,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"970aba05-c3d2-427e-8c45-d6344e76f341\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 309.0,\n \"y\": 1129.0001220703125,\n \"width\": 152.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"NozeAmount\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"4873fb75-d91c-4d3b-b84b-897d1f6bb0ca\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.OneMinusNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"2011acc7-36df-4fee-a7bc-05b79466addd\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 478.0325012207031,\n \"y\": 1076.0325927734375,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - } - ], - "m_Groups": [ - { - "m_GuidSerialized": "394ffda8-de1d-49e7-866f-c2f4090fdd7c", - "m_Title": "Fake Fade", - "m_Position": { - "x": -630.0, - "y": 276.0 - } - } - ], - "m_StickyNotes": [], - "m_SerializableEdges": [ - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"f0494da5-9afd-419c-a0bb-67955d1fd443\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d258f95a-198b-4623-b238-1a18ffbefd15\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"d258f95a-198b-4623-b238-1a18ffbefd15\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"f0494da5-9afd-419c-a0bb-67955d1fd443\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d3e13489-db55-4492-a7ee-7833a8bca6a8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 7,\n \"m_NodeGUIDSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"88304668-4c71-46dd-a0f0-07b7ff8f4252\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d3e13489-db55-4492-a7ee-7833a8bca6a8\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"64164559-88ef-4086-a612-1af97c4de6ec\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"21c63034-04ba-4dc8-9eef-c1365cc5d996\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c95620dc-71ca-40d2-9f6c-60ead3720897\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"6b69b9e5-f4d4-4de0-a93f-04f787f0cf3d\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"6b69b9e5-f4d4-4de0-a93f-04f787f0cf3d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"970aba05-c3d2-427e-8c45-d6344e76f341\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2011acc7-36df-4fee-a7bc-05b79466addd\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2011acc7-36df-4fee-a7bc-05b79466addd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\"\n }\n}" - } - ], - "m_PreviewData": { - "serializedMesh": { - "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", - "m_Guid": "" - } - }, - "m_Path": "Shader Graphs", - "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "691fdd78-30b1-4294-afc8-479997ee8a8a" +{ + "m_SerializedProperties": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_69E7D3A8\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 1.0,\n \"b\": 1.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"c7feb647-6e6b-41c6-98a7-4959f19d60c6\"\n },\n \"m_Name\": \"Fade\",\n \"m_DefaultReferenceName\": \"Vector4_5B5437B\",\n \"m_OverrideReferenceName\": \"_Fade\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 1.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"4873fb75-d91c-4d3b-b84b-897d1f6bb0ca\"\n },\n \"m_Name\": \"NozeAmount\",\n \"m_DefaultReferenceName\": \"Vector1_82F0467A\",\n \"m_OverrideReferenceName\": \"_NoiseAmount\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 0.5,\n \"m_FloatType\": 1,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"975bf92b-31c1-443f-833c-c6fc5f67521f\"\n },\n \"m_Name\": \"NoizeSize\",\n \"m_DefaultReferenceName\": \"Vector1_2E0FC3DD\",\n \"m_OverrideReferenceName\": \"_NoiseSize\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 6.0,\n \"m_FloatType\": 0,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"5e1489f9-7b3a-4eff-a0de-eeebaca0ea60\"\n },\n \"m_Name\": \"NoizeSpeed\",\n \"m_DefaultReferenceName\": \"Vector1_EA28906C\",\n \"m_OverrideReferenceName\": \"_NoiseSpeed\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 4.0,\n \"m_FloatType\": 0,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" + } + ], + "m_SerializedKeywords": [], + "m_SerializableNodes": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"64164559-88ef-4086-a612-1af97c4de6ec\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -308.0,\n \"y\": 893.0000610351563,\n \"width\": 144.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"NoizeSpeed\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"5e1489f9-7b3a-4eff-a0de-eeebaca0ea60\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -116.99999237060547,\n \"y\": 892.0000610351563,\n \"width\": 136.0,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c95620dc-71ca-40d2-9f6c-60ead3720897\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -92.99999237060547,\n \"y\": 1046.0,\n \"width\": 132.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"NoizeSize\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"975bf92b-31c1-443f-833c-c6fc5f67521f\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 559.0,\n \"y\": 333.9999694824219,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SplitNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -457.0,\n \"y\": 346.0,\n \"width\": 128.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.OneMinusNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"f0494da5-9afd-419c-a0bb-67955d1fd443\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -52.00001907348633,\n \"y\": 500.0000305175781,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FresnelNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"d258f95a-198b-4623-b238-1a18ffbefd15\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -306.0,\n \"y\": 499.9999694824219,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.8500000238418579,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SmoothstepNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Smoothstep\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 197.00003051757813,\n \"y\": 404.00006103515627,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge1\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge1\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Edge2\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge2\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"88304668-4c71-46dd-a0f0-07b7ff8f4252\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -605.0000610351563,\n \"y\": 380.9999694824219,\n \"width\": 106.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Fade\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"c7feb647-6e6b-41c6-98a7-4959f19d60c6\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 867.0000610351563,\n \"y\": 193.0,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"d3e13489-db55-4492-a7ee-7833a8bca6a8\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 756.0,\n \"y\": 337.0,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1171.0,\n \"y\": 195.0,\n \"width\": 200.0,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.TimeNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"21c63034-04ba-4dc8-9eef-c1365cc5d996\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Time\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -296.0,\n \"y\": 966.0,\n \"width\": 134.0,\n \"height\": 173.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Sine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Cosine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Cosine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Delta Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Delta Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Smooth Delta\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Smooth Delta\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 529.4373779296875,\n \"y\": 519.437255859375,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.VoronoiNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Voronoi\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 85.00000762939453,\n \"y\": 870.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Angle Offset\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AngleOffset\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 5.880000114440918,\\n \\\"m_DefaultValue\\\": 2.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Cell Density\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"CellDensity\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 5.900000095367432,\\n \\\"m_DefaultValue\\\": 5.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Cells\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Cells\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 351.9999694824219,\n \"y\": 883.0000610351563,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.5299999713897705,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"6b69b9e5-f4d4-4de0-a93f-04f787f0cf3d\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 537.0,\n \"y\": 874.0000610351563,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"970aba05-c3d2-427e-8c45-d6344e76f341\",\n \"m_GroupGuidSerialized\": \"394ffda8-de1d-49e7-866f-c2f4090fdd7c\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 309.0,\n \"y\": 1129.0001220703125,\n \"width\": 152.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"NozeAmount\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"4873fb75-d91c-4d3b-b84b-897d1f6bb0ca\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.OneMinusNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"2011acc7-36df-4fee-a7bc-05b79466addd\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 478.0325012207031,\n \"y\": 1076.0325927734375,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + } + ], + "m_Groups": [ + { + "m_GuidSerialized": "394ffda8-de1d-49e7-866f-c2f4090fdd7c", + "m_Title": "Fake Fade", + "m_Position": { + "x": -630.0, + "y": 276.0 + } + } + ], + "m_StickyNotes": [], + "m_SerializableEdges": [ + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"f0494da5-9afd-419c-a0bb-67955d1fd443\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d258f95a-198b-4623-b238-1a18ffbefd15\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"d258f95a-198b-4623-b238-1a18ffbefd15\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"f0494da5-9afd-419c-a0bb-67955d1fd443\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d3e13489-db55-4492-a7ee-7833a8bca6a8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 7,\n \"m_NodeGUIDSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"88304668-4c71-46dd-a0f0-07b7ff8f4252\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d8ceac8e-b739-46cf-aa1b-22d4fc3cf2df\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d3e13489-db55-4492-a7ee-7833a8bca6a8\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"64164559-88ef-4086-a612-1af97c4de6ec\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"21c63034-04ba-4dc8-9eef-c1365cc5d996\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"769fd60f-39a7-4047-a93c-6f682a72f7b1\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c95620dc-71ca-40d2-9f6c-60ead3720897\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"eaba1411-d077-473a-972f-189d405158ac\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"4d6fc8ea-ecea-4b11-856c-e400527d8076\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"068442a9-3a5d-4e2c-88f8-50931881320b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"6b69b9e5-f4d4-4de0-a93f-04f787f0cf3d\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"6b69b9e5-f4d4-4de0-a93f-04f787f0cf3d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2218c16e-026b-471b-9116-bca554ccbb66\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"970aba05-c3d2-427e-8c45-d6344e76f341\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2011acc7-36df-4fee-a7bc-05b79466addd\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2011acc7-36df-4fee-a7bc-05b79466addd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"e5880744-4389-4455-bedd-f5ee2f26f386\"\n }\n}" + } + ], + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + } + }, + "m_Path": "Shader Graphs", + "m_ConcretePrecision": 0, + "m_ActiveOutputNodeGuidSerialized": "691fdd78-30b1-4294-afc8-479997ee8a8a" } \ No newline at end of file diff --git a/Assets/Shaders/Gluon_Anticolor_Spider.shadergraph b/Assets/Shaders/Gluon_Anticolor_Spider.shadergraph index 9e896fa1c..b3b076a6a 100644 --- a/Assets/Shaders/Gluon_Anticolor_Spider.shadergraph +++ b/Assets/Shaders/Gluon_Anticolor_Spider.shadergraph @@ -1,566 +1,566 @@ -{ - "m_SerializedProperties": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_69E7D3A8\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 1.0,\n \"b\": 1.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"549e321e-28f0-4f4c-9dd5-7283be2330ba\"\n },\n \"m_Name\": \"Texture\",\n \"m_DefaultReferenceName\": \"Texture2D_76320C03\",\n \"m_OverrideReferenceName\": \"_Texture\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"m_SerializedTexture\": \"{\\\"texture\\\":{\\\"fileID\\\":2800000,\\\"guid\\\":\\\"a6df41dd3f7905a4a8dd6e5be672026b\\\",\\\"type\\\":3}}\",\n \"m_Guid\": \"\"\n },\n \"m_Modifiable\": true,\n \"m_DefaultType\": 0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"44b477aa-bdb3-458a-8518-eb153c22bcae\"\n },\n \"m_Name\": \"Tiling\",\n \"m_DefaultReferenceName\": \"Vector2_2395EB9\",\n \"m_OverrideReferenceName\": \"_Tiling\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"286b8e5a-1df2-456d-a5a3-c0e44fad3bbe\"\n },\n \"m_Name\": \"Offset\",\n \"m_DefaultReferenceName\": \"Vector2_E8E06405\",\n \"m_OverrideReferenceName\": \"_Offset\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 0.0,\n \"y\": 0.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"cdadcc55-38c5-4384-9ecf-d4cbc11e9c50\"\n },\n \"m_Name\": \"Cutoff\",\n \"m_DefaultReferenceName\": \"Vector1_35737B6\",\n \"m_OverrideReferenceName\": \"_Cutoff\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 0.4000000059604645,\n \"m_FloatType\": 1,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"02fc9299-3ce5-4431-a6a4-002ae71fbe0e\"\n },\n \"m_Name\": \"Thickness\",\n \"m_DefaultReferenceName\": \"Vector1_D625342F\",\n \"m_OverrideReferenceName\": \"_Thickness\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 0.10000000149011612,\n \"m_FloatType\": 1,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" - } - ], - "m_SerializedKeywords": [], - "m_SerializableNodes": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -767.0000610351563,\n \"y\": 1048.0,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -757.0,\n \"y\": 675.0,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.LerpNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Lerp\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -822.0,\n \"y\": 2221.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"T\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"T\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2102.0,\n \"y\": 1559.0,\n \"width\": 136.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -0.5,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.DegreesToRadiansNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c9b6f4d9-8f95-4abd-8dc1-5ffbff0a5c42\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Degrees To Radians\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2219.0,\n \"y\": 2365.999755859375,\n \"width\": 179.99998474121095,\n \"height\": 93.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.RoundNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"3457d0d0-efa7-408a-a642-774537a59704\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Round\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1791.0,\n \"y\": 1822.0,\n \"width\": 135.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.StepNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Step\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -188.99993896484376,\n \"y\": 1403.0001220703125,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"11dad858-42ac-4d27-8c96-a133560398b1\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -955.0000610351563,\n \"y\": 1133.0,\n \"width\": 114.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Cutoff\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"cdadcc55-38c5-4384-9ecf-d4cbc11e9c50\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"84805137-86fb-4897-861c-a719ddf1c7ef\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -966.9999389648438,\n \"y\": 882.0,\n \"width\": 135.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Thickness\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"02fc9299-3ce5-4431-a6a4-002ae71fbe0e\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1259.0001220703125,\n \"y\": 897.0,\n \"width\": 208.00001525878907,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.10000000149011612,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"57f6ac5b-2b12-48a6-9397-bfeaf435fe71\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1980.999755859375,\n \"y\": 1225.9998779296875,\n \"width\": 113.99999237060547,\n \"height\": 33.999996185302737\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Offset\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"286b8e5a-1df2-456d-a5a3-c0e44fad3bbe\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"52bec698-75f1-4be3-bdc7-c4135242bb8d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1982.999755859375,\n \"y\": 1178.9998779296875,\n \"width\": 109.99999237060547,\n \"height\": 33.999996185302737\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Tiling\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"44b477aa-bdb3-458a-8518-eb153c22bcae\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -577.9999389648438,\n \"y\": 943.0,\n \"width\": 134.0,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.StepNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Step\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -183.99998474121095,\n \"y\": 1091.0,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 378.0,\n \"y\": 1085.0001220703125,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SubtractNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Subtract\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 116.00010681152344,\n \"y\": 1185.0,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"57f650df-00ee-485e-bb0c-f12138b955dd\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1541.0,\n \"y\": 1256.0,\n \"width\": 129.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Texture2DMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Texture\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"549e321e-28f0-4f4c-9dd5-7283be2330ba\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -768.0000610351563,\n \"y\": -145.00001525878907,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SampleTexture2DNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sample Texture 2D\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1341.0,\n \"y\": 1208.0001220703125,\n \"width\": 208.00001525878907,\n \"height\": 433.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"RGBA\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGBA\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Texture2DInputMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Texture\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Texture\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Texture\\\": {\\n \\\"m_SerializedTexture\\\": \\\"{\\\\\\\"texture\\\\\\\":{\\\\\\\"instanceID\\\\\\\":0}}\\\",\\n \\\"m_Guid\\\": \\\"\\\"\\n },\\n \\\"m_DefaultType\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.SamplerStateMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Sampler\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sampler\\\",\\n \\\"m_StageCapability\\\": 3\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_TextureType\": 0,\n \"m_NormalMapSpace\": 0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FlipbookNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c02e1669-596a-4565-9468-8ec736148767\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Flipbook\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1603.0001220703125,\n \"y\": 1335.0001220703125,\n \"width\": 164.0,\n \"height\": 227.00001525878907\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Tile\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Tile\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_InvertX\": false,\n \"m_InvertY\": false\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.TimeNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Time\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2695.0,\n \"y\": 1473.0,\n \"width\": 134.0,\n \"height\": 173.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Sine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Cosine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Cosine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Delta Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Delta Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Smooth Delta\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Smooth Delta\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 352.0000305175781,\n \"y\": 287.0,\n \"width\": 200.0,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 2,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2292.999755859375,\n \"y\": 1469.9998779296875,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.5,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Vector1Node" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c2f2f3dc-1496-48be-9308-17ec649735b2\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Vector 1\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2728.0,\n \"y\": 1840.0,\n \"width\": 134.0,\n \"height\": 77.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"X\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"X\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 3.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_Value\": 0.0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FlipbookNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"23b530fb-b71f-4633-86c8-7de674d65247\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Flipbook\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1562.0,\n \"y\": 1662.0,\n \"width\": 160.0,\n \"height\": 227.00001525878907\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Tile\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Tile\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_InvertX\": false,\n \"m_InvertY\": false\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SampleTexture2DNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sample Texture 2D\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1351.0001220703125,\n \"y\": 1652.0001220703125,\n \"width\": 208.0,\n \"height\": 435.0000305175781\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"RGBA\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGBA\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Texture2DInputMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Texture\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Texture\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Texture\\\": {\\n \\\"m_SerializedTexture\\\": \\\"{\\\\\\\"texture\\\\\\\":{\\\\\\\"instanceID\\\\\\\":0}}\\\",\\n \\\"m_Guid\\\": \\\"\\\"\\n },\\n \\\"m_DefaultType\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.SamplerStateMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Sampler\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sampler\\\",\\n \\\"m_StageCapability\\\": 3\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_TextureType\": 0,\n \"m_NormalMapSpace\": 0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.LerpNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Lerp\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -953.0,\n \"y\": 1294.0001220703125,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"T\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"T\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.DivideNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"94582c5f-e4a0-4867-9884-5f6aacaf8e7c\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Divide\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2456.999755859375,\n \"y\": 1542.9998779296875,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 2.0,\\n \\\"y\\\": 2.0,\\n \\\"z\\\": 2.0,\\n \\\"w\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SineNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"662bbf24-03d5-411b-91c5-3bf44a27e70f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sine\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2019.0001220703125,\n \"y\": 2369.0,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"16310004-a04a-4986-be14-4fca9899d76d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1892.0,\n \"y\": 1633.0,\n \"width\": 130.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.5,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2378.0,\n \"y\": 1925.9998779296875,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.RoundNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"93d65ba5-0d3c-4d7b-a205-bd8f02d6391d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Round\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1933.000244140625,\n \"y\": 1464.0001220703125,\n \"width\": 141.0,\n \"height\": 94.00000762939453\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"b01467a3-83b6-4699-b9e6-cc249b37a4f3\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1595.9998779296875,\n \"y\": 2264.0,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.DivideNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Divide\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1389.0,\n \"y\": 2219.0,\n \"width\": 208.0,\n \"height\": 301.9999694824219\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 2.0,\\n \\\"y\\\": 2.0,\\n \\\"z\\\": 2.0,\\n \\\"w\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"d11bbd6c-dea0-4d7b-a39b-89e148479a81\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2386.0,\n \"y\": 2366.0,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 180.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SignNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"2852a572-5187-436a-adc0-e30736abd076\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sign\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1764.0001220703125,\n \"y\": 2377.0,\n \"width\": 138.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.OneMinusNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"4e0259b1-c8f8-4978-8f10-3dbd66c76710\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1081.0,\n \"y\": 2293.999755859375,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FractionNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"309f93cc-2bd9-4b67-a583-242ffe0b36a7\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Fraction\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1835.0,\n \"y\": 1978.0,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.RandomRangeNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"cafdafbc-1d42-41ef-9db2-c0ae7d0856da\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Random Range\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -526.9998779296875,\n \"y\": 1779.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Seed\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Seed\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Min\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Min\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Max\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.RandomRangeNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"2b6cd3fa-0fd2-4b9f-b3fb-cb335ff8904b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Random Range\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1960.999755859375,\n \"y\": 762.9999389648438,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Seed\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Seed\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Min\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Min\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Max\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - } - ], - "m_Groups": [], - "m_StickyNotes": [], - "m_SerializableEdges": [ - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"57f650df-00ee-485e-bb0c-f12138b955dd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"c02e1669-596a-4565-9468-8ec736148767\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"23b530fb-b71f-4633-86c8-7de674d65247\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"57f650df-00ee-485e-bb0c-f12138b955dd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c2f2f3dc-1496-48be-9308-17ec649735b2\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"94582c5f-e4a0-4867-9884-5f6aacaf8e7c\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"94582c5f-e4a0-4867-9884-5f6aacaf8e7c\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"93d65ba5-0d3c-4d7b-a205-bd8f02d6391d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"c02e1669-596a-4565-9468-8ec736148767\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"16310004-a04a-4986-be14-4fca9899d76d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"3457d0d0-efa7-408a-a642-774537a59704\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"3457d0d0-efa7-408a-a642-774537a59704\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"23b530fb-b71f-4633-86c8-7de674d65247\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d11bbd6c-dea0-4d7b-a39b-89e148479a81\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c9b6f4d9-8f95-4abd-8dc1-5ffbff0a5c42\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"93d65ba5-0d3c-4d7b-a205-bd8f02d6391d\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"16310004-a04a-4986-be14-4fca9899d76d\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 6,\n \"m_NodeGUIDSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 6,\n \"m_NodeGUIDSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2852a572-5187-436a-adc0-e30736abd076\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b01467a3-83b6-4699-b9e6-cc249b37a4f3\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b01467a3-83b6-4699-b9e6-cc249b37a4f3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"4e0259b1-c8f8-4978-8f10-3dbd66c76710\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"309f93cc-2bd9-4b67-a583-242ffe0b36a7\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c9b6f4d9-8f95-4abd-8dc1-5ffbff0a5c42\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"662bbf24-03d5-411b-91c5-3bf44a27e70f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"662bbf24-03d5-411b-91c5-3bf44a27e70f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2852a572-5187-436a-adc0-e30736abd076\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4e0259b1-c8f8-4978-8f10-3dbd66c76710\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c2f2f3dc-1496-48be-9308-17ec649735b2\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d11bbd6c-dea0-4d7b-a39b-89e148479a81\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"309f93cc-2bd9-4b67-a583-242ffe0b36a7\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"84805137-86fb-4897-861c-a719ddf1c7ef\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"11dad858-42ac-4d27-8c96-a133560398b1\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\"\n }\n}" - } - ], - "m_PreviewData": { - "serializedMesh": { - "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", - "m_Guid": "" - } - }, - "m_Path": "Shader Graphs", - "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "691fdd78-30b1-4294-afc8-479997ee8a8a" +{ + "m_SerializedProperties": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_69E7D3A8\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 1.0,\n \"b\": 1.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Texture2DShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"549e321e-28f0-4f4c-9dd5-7283be2330ba\"\n },\n \"m_Name\": \"Texture\",\n \"m_DefaultReferenceName\": \"Texture2D_76320C03\",\n \"m_OverrideReferenceName\": \"_Texture\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"m_SerializedTexture\": \"{\\\"texture\\\":{\\\"fileID\\\":2800000,\\\"guid\\\":\\\"a6df41dd3f7905a4a8dd6e5be672026b\\\",\\\"type\\\":3}}\",\n \"m_Guid\": \"\"\n },\n \"m_Modifiable\": true,\n \"m_DefaultType\": 0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"44b477aa-bdb3-458a-8518-eb153c22bcae\"\n },\n \"m_Name\": \"Tiling\",\n \"m_DefaultReferenceName\": \"Vector2_2395EB9\",\n \"m_OverrideReferenceName\": \"_Tiling\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"286b8e5a-1df2-456d-a5a3-c0e44fad3bbe\"\n },\n \"m_Name\": \"Offset\",\n \"m_DefaultReferenceName\": \"Vector2_E8E06405\",\n \"m_OverrideReferenceName\": \"_Offset\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 0.0,\n \"y\": 0.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"cdadcc55-38c5-4384-9ecf-d4cbc11e9c50\"\n },\n \"m_Name\": \"Cutoff\",\n \"m_DefaultReferenceName\": \"Vector1_35737B6\",\n \"m_OverrideReferenceName\": \"_Cutoff\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 0.4000000059604645,\n \"m_FloatType\": 1,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"02fc9299-3ce5-4431-a6a4-002ae71fbe0e\"\n },\n \"m_Name\": \"Thickness\",\n \"m_DefaultReferenceName\": \"Vector1_D625342F\",\n \"m_OverrideReferenceName\": \"_Thickness\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 0.10000000149011612,\n \"m_FloatType\": 1,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" + } + ], + "m_SerializedKeywords": [], + "m_SerializableNodes": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -767.0000610351563,\n \"y\": 1048.0,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -757.0,\n \"y\": 675.0,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.LerpNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Lerp\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -822.0,\n \"y\": 2221.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"T\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"T\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2102.0,\n \"y\": 1559.0,\n \"width\": 136.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -0.5,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.DegreesToRadiansNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c9b6f4d9-8f95-4abd-8dc1-5ffbff0a5c42\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Degrees To Radians\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2219.0,\n \"y\": 2365.999755859375,\n \"width\": 179.99998474121095,\n \"height\": 93.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.RoundNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"3457d0d0-efa7-408a-a642-774537a59704\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Round\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1791.0,\n \"y\": 1822.0,\n \"width\": 135.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.StepNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Step\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -188.99993896484376,\n \"y\": 1403.0001220703125,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"11dad858-42ac-4d27-8c96-a133560398b1\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -955.0000610351563,\n \"y\": 1133.0,\n \"width\": 114.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Cutoff\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"cdadcc55-38c5-4384-9ecf-d4cbc11e9c50\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"84805137-86fb-4897-861c-a719ddf1c7ef\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -966.9999389648438,\n \"y\": 882.0,\n \"width\": 135.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Thickness\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"02fc9299-3ce5-4431-a6a4-002ae71fbe0e\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1259.0001220703125,\n \"y\": 897.0,\n \"width\": 208.00001525878907,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.10000000149011612,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"57f6ac5b-2b12-48a6-9397-bfeaf435fe71\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1980.999755859375,\n \"y\": 1225.9998779296875,\n \"width\": 113.99999237060547,\n \"height\": 33.999996185302737\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Offset\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"286b8e5a-1df2-456d-a5a3-c0e44fad3bbe\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"52bec698-75f1-4be3-bdc7-c4135242bb8d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1982.999755859375,\n \"y\": 1178.9998779296875,\n \"width\": 109.99999237060547,\n \"height\": 33.999996185302737\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Tiling\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"44b477aa-bdb3-458a-8518-eb153c22bcae\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -577.9999389648438,\n \"y\": 943.0,\n \"width\": 134.0,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.StepNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Step\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -183.99998474121095,\n \"y\": 1091.0,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 378.0,\n \"y\": 1085.0001220703125,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SubtractNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Subtract\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 116.00010681152344,\n \"y\": 1185.0,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"57f650df-00ee-485e-bb0c-f12138b955dd\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1541.0,\n \"y\": 1256.0,\n \"width\": 129.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Texture2DMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Texture\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"549e321e-28f0-4f4c-9dd5-7283be2330ba\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -768.0000610351563,\n \"y\": -145.00001525878907,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"117a261a-2490-4e08-aa76-20b7e73fc9d8\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SampleTexture2DNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sample Texture 2D\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1341.0,\n \"y\": 1208.0001220703125,\n \"width\": 208.00001525878907,\n \"height\": 433.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"RGBA\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGBA\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Texture2DInputMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Texture\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Texture\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Texture\\\": {\\n \\\"m_SerializedTexture\\\": \\\"{\\\\\\\"texture\\\\\\\":{\\\\\\\"instanceID\\\\\\\":0}}\\\",\\n \\\"m_Guid\\\": \\\"\\\"\\n },\\n \\\"m_DefaultType\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.SamplerStateMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Sampler\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sampler\\\",\\n \\\"m_StageCapability\\\": 3\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_TextureType\": 0,\n \"m_NormalMapSpace\": 0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FlipbookNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c02e1669-596a-4565-9468-8ec736148767\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Flipbook\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1603.0001220703125,\n \"y\": 1335.0001220703125,\n \"width\": 164.0,\n \"height\": 227.00001525878907\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Tile\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Tile\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_InvertX\": false,\n \"m_InvertY\": false\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.TimeNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Time\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2695.0,\n \"y\": 1473.0,\n \"width\": 134.0,\n \"height\": 173.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Sine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Cosine Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Cosine Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Delta Time\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Delta Time\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Smooth Delta\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Smooth Delta\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 352.0000305175781,\n \"y\": 287.0,\n \"width\": 200.0,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 2,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2292.999755859375,\n \"y\": 1469.9998779296875,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.5,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Vector1Node" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c2f2f3dc-1496-48be-9308-17ec649735b2\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Vector 1\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2728.0,\n \"y\": 1840.0,\n \"width\": 134.0,\n \"height\": 77.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"X\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"X\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 3.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_Value\": 0.0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FlipbookNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"23b530fb-b71f-4633-86c8-7de674d65247\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Flipbook\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1562.0,\n \"y\": 1662.0,\n \"width\": 160.0,\n \"height\": 227.00001525878907\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 8.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Tile\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Tile\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_InvertX\": false,\n \"m_InvertY\": false\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SampleTexture2DNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sample Texture 2D\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1351.0001220703125,\n \"y\": 1652.0001220703125,\n \"width\": 208.0,\n \"height\": 435.0000305175781\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"RGBA\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGBA\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Texture2DInputMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Texture\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Texture\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Texture\\\": {\\n \\\"m_SerializedTexture\\\": \\\"{\\\\\\\"texture\\\\\\\":{\\\\\\\"instanceID\\\\\\\":0}}\\\",\\n \\\"m_Guid\\\": \\\"\\\"\\n },\\n \\\"m_DefaultType\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.UVMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ],\\n \\\"m_Channel\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.SamplerStateMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Sampler\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Sampler\\\",\\n \\\"m_StageCapability\\\": 3\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_TextureType\": 0,\n \"m_NormalMapSpace\": 0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.LerpNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Lerp\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -953.0,\n \"y\": 1294.0001220703125,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"T\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"T\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.DivideNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"94582c5f-e4a0-4867-9884-5f6aacaf8e7c\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Divide\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2456.999755859375,\n \"y\": 1542.9998779296875,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 2.0,\\n \\\"y\\\": 2.0,\\n \\\"z\\\": 2.0,\\n \\\"w\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SineNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"662bbf24-03d5-411b-91c5-3bf44a27e70f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sine\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2019.0001220703125,\n \"y\": 2369.0,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"16310004-a04a-4986-be14-4fca9899d76d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1892.0,\n \"y\": 1633.0,\n \"width\": 130.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.5,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2378.0,\n \"y\": 1925.9998779296875,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.RoundNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"93d65ba5-0d3c-4d7b-a205-bd8f02d6391d\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Round\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1933.000244140625,\n \"y\": 1464.0001220703125,\n \"width\": 141.0,\n \"height\": 94.00000762939453\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"b01467a3-83b6-4699-b9e6-cc249b37a4f3\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1595.9998779296875,\n \"y\": 2264.0,\n \"width\": 137.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.DivideNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Divide\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1389.0,\n \"y\": 2219.0,\n \"width\": 208.0,\n \"height\": 301.9999694824219\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 2.0,\\n \\\"y\\\": 2.0,\\n \\\"z\\\": 2.0,\\n \\\"w\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"d11bbd6c-dea0-4d7b-a39b-89e148479a81\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -2386.0,\n \"y\": 2366.0,\n \"width\": 134.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 180.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SignNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"2852a572-5187-436a-adc0-e30736abd076\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Sign\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1764.0001220703125,\n \"y\": 2377.0,\n \"width\": 138.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.OneMinusNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"4e0259b1-c8f8-4978-8f10-3dbd66c76710\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1081.0,\n \"y\": 2293.999755859375,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FractionNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"309f93cc-2bd9-4b67-a583-242ffe0b36a7\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Fraction\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1835.0,\n \"y\": 1978.0,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.RandomRangeNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"cafdafbc-1d42-41ef-9db2-c0ae7d0856da\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Random Range\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -526.9998779296875,\n \"y\": 1779.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Seed\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Seed\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Min\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Min\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Max\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.RandomRangeNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"2b6cd3fa-0fd2-4b9f-b3fb-cb335ff8904b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Random Range\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1960.999755859375,\n \"y\": 762.9999389648438,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Seed\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Seed\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Min\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Min\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Max\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + } + ], + "m_Groups": [], + "m_StickyNotes": [], + "m_SerializableEdges": [ + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"57f650df-00ee-485e-bb0c-f12138b955dd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ee978698-d4e8-40bc-b47d-83ebe0fb76e3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b20f0458-6f51-4815-bd95-c0c69d96790a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"c02e1669-596a-4565-9468-8ec736148767\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b4932de0-36e6-4b35-8a5c-5f26028a5caa\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"691fdd78-30b1-4294-afc8-479997ee8a8a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"23b530fb-b71f-4633-86c8-7de674d65247\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"57f650df-00ee-485e-bb0c-f12138b955dd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c2f2f3dc-1496-48be-9308-17ec649735b2\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"94582c5f-e4a0-4867-9884-5f6aacaf8e7c\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"94582c5f-e4a0-4867-9884-5f6aacaf8e7c\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"93d65ba5-0d3c-4d7b-a205-bd8f02d6391d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"c02e1669-596a-4565-9468-8ec736148767\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"16310004-a04a-4986-be14-4fca9899d76d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"3457d0d0-efa7-408a-a642-774537a59704\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"3457d0d0-efa7-408a-a642-774537a59704\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"23b530fb-b71f-4633-86c8-7de674d65247\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d11bbd6c-dea0-4d7b-a39b-89e148479a81\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c9b6f4d9-8f95-4abd-8dc1-5ffbff0a5c42\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2dbaa338-3c1e-46af-bba1-28a2ff24ad6a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"93d65ba5-0d3c-4d7b-a205-bd8f02d6391d\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"2b8bb236-2ffb-4554-ba3d-b5814ff97dc8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"16310004-a04a-4986-be14-4fca9899d76d\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 6,\n \"m_NodeGUIDSerialized\": \"9e379743-faa8-4e96-a989-aed75c56b191\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"5f6c27fd-d50d-4da5-a121-9257c9490c1a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 6,\n \"m_NodeGUIDSerialized\": \"9bd89f59-3609-416a-8680-15913aee15e5\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"2852a572-5187-436a-adc0-e30736abd076\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b01467a3-83b6-4699-b9e6-cc249b37a4f3\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b01467a3-83b6-4699-b9e6-cc249b37a4f3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"4e0259b1-c8f8-4978-8f10-3dbd66c76710\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"309f93cc-2bd9-4b67-a583-242ffe0b36a7\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c9b6f4d9-8f95-4abd-8dc1-5ffbff0a5c42\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"662bbf24-03d5-411b-91c5-3bf44a27e70f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"662bbf24-03d5-411b-91c5-3bf44a27e70f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"2852a572-5187-436a-adc0-e30736abd076\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"dc98be4c-038a-414b-8060-7d2aba1bbc41\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"ba37d057-691f-4209-bd75-fd51e2d03f05\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"20a71058-efa8-488a-a8a9-784ab95a3503\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4e0259b1-c8f8-4978-8f10-3dbd66c76710\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c2f2f3dc-1496-48be-9308-17ec649735b2\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d11bbd6c-dea0-4d7b-a39b-89e148479a81\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"cc78f35f-8d90-4e4e-bedb-c406a760088b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"309f93cc-2bd9-4b67-a583-242ffe0b36a7\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"96b1235b-c30e-4082-a124-a069084d6f45\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"84805137-86fb-4897-861c-a719ddf1c7ef\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d9229b57-d7fa-484c-ae93-05ab7f209167\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"11dad858-42ac-4d27-8c96-a133560398b1\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"3101717e-ecdd-45d1-bb39-e4b8ec55eb8b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"cfc6eea5-1be5-428e-9511-7a035512100f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c7d5c764-fad8-4727-aa4e-03879f28971d\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"e7a84e52-2540-40cc-9613-ef7def707af2\"\n }\n}" + } + ], + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + } + }, + "m_Path": "Shader Graphs", + "m_ConcretePrecision": 0, + "m_ActiveOutputNodeGuidSerialized": "691fdd78-30b1-4294-afc8-479997ee8a8a" } \ No newline at end of file diff --git a/Assets/Shaders/Gluon_Color.shadergraph b/Assets/Shaders/Gluon_Color.shadergraph index bfd9bf377..e4bf710db 100644 --- a/Assets/Shaders/Gluon_Color.shadergraph +++ b/Assets/Shaders/Gluon_Color.shadergraph @@ -1,44 +1,44 @@ -{ - "m_SerializedProperties": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"d160ac05-34c1-4bd9-8871-f1c7eac7e7c5\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_D0F43572\",\n \"m_OverrideReferenceName\": \"_EmissionColor\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 3.0,\n \"g\": 0.0,\n \"b\": 0.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" - } - ], - "m_SerializedKeywords": [], - "m_SerializableNodes": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PBRMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"96f90b5a-0e3b-43ad-abe0-4cdfc8063749\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"PBR Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 0.0,\n \"y\": 0.0,\n \"width\": 0.0,\n \"height\": 0.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Albedo\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Albedo\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 3\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Emission\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Emission\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Metallic\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Metallic\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"Smoothness\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Smoothness\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.5,\\n \\\"m_DefaultValue\\\": 0.5,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"Occlusion\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Occlusion\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalPBRSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_Model\": 1,\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_NormalDropOffSpace\": 0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"7acbf8cb-c76c-4a34-96b7-ae2a52f3a915\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -400.0,\n \"y\": 196.0,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"d160ac05-34c1-4bd9-8871-f1c7eac7e7c5\"\n}" - } - ], - "m_Groups": [], - "m_StickyNotes": [], - "m_SerializableEdges": [ - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"7acbf8cb-c76c-4a34-96b7-ae2a52f3a915\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"96f90b5a-0e3b-43ad-abe0-4cdfc8063749\"\n }\n}" - } - ], - "m_PreviewData": { - "serializedMesh": { - "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", - "m_Guid": "" - } - }, - "m_Path": "Shader Graphs", - "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "96f90b5a-0e3b-43ad-abe0-4cdfc8063749" +{ + "m_SerializedProperties": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"d160ac05-34c1-4bd9-8871-f1c7eac7e7c5\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_D0F43572\",\n \"m_OverrideReferenceName\": \"_EmissionColor\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 3.0,\n \"g\": 0.0,\n \"b\": 0.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" + } + ], + "m_SerializedKeywords": [], + "m_SerializableNodes": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PBRMasterNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"96f90b5a-0e3b-43ad-abe0-4cdfc8063749\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"PBR Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 0.0,\n \"y\": 0.0,\n \"width\": 0.0,\n \"height\": 0.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Albedo\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Albedo\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 3\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Emission\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Emission\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Metallic\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Metallic\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"Smoothness\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Smoothness\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.5,\\n \\\"m_DefaultValue\\\": 0.5,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"Occlusion\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Occlusion\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalPBRSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_Model\": 1,\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_NormalDropOffSpace\": 0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"7acbf8cb-c76c-4a34-96b7-ae2a52f3a915\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -400.0,\n \"y\": 196.0,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"d160ac05-34c1-4bd9-8871-f1c7eac7e7c5\"\n}" + } + ], + "m_Groups": [], + "m_StickyNotes": [], + "m_SerializableEdges": [ + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"7acbf8cb-c76c-4a34-96b7-ae2a52f3a915\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"96f90b5a-0e3b-43ad-abe0-4cdfc8063749\"\n }\n}" + } + ], + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + } + }, + "m_Path": "Shader Graphs", + "m_ConcretePrecision": 0, + "m_ActiveOutputNodeGuidSerialized": "96f90b5a-0e3b-43ad-abe0-4cdfc8063749" } \ No newline at end of file diff --git a/Assets/Shaders/Quark_Core.shadergraph b/Assets/Shaders/Quark_Core.shadergraph index 12fabd346..ac105e1c3 100644 --- a/Assets/Shaders/Quark_Core.shadergraph +++ b/Assets/Shaders/Quark_Core.shadergraph @@ -1,158 +1,158 @@ -{ - "m_SerializedProperties": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_1072822C\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 0.047120094299316409,\n \"b\": 1.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"7bc9ede1-c14d-43e2-bed2-3bc0ce432386\"\n },\n \"m_Name\": \"DistanceFade\",\n \"m_DefaultReferenceName\": \"Vector2_6CFF7E33\",\n \"m_OverrideReferenceName\": \"_DistnceFade\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 25.0,\n \"y\": 10.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" - } - ], - "m_SerializedKeywords": [], - "m_SerializableNodes": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"eb175925-8790-4a88-97f6-784a0786276a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -368.0,\n \"y\": -223.00003051757813,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"4a477b4b-699c-4032-853d-24d1669109ff\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -857.0000610351563,\n \"y\": -510.0,\n \"width\": 154.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"DistanceFade\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"7bc9ede1-c14d-43e2-bed2-3bc0ce432386\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.RemapNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Remap\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -577.9999389648438,\n \"y\": -438.0,\n \"width\": 199.0,\n \"height\": 142.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -1.0,\\n \\\"y\\\": -1.0,\\n \\\"z\\\": -1.0,\\n \\\"w\\\": -1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"InMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -8.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"OutMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.CameraNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"0dbd64fb-a8c0-4c1c-b7ba-92861f066bc0\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Camera\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1058.9998779296875,\n \"y\": -239.99996948242188,\n \"width\": 130.0,\n \"height\": 244.99998474121095\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Position\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Position\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Direction\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Direction\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Orthographic\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Orthographic\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Near Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Near Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Far Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Far Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PositionNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"ad27a459-f2bc-4b98-b664-bf4cdd7752f0\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Position\",\n \"m_NodeVersion\": 1,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1129.9998779296875,\n \"y\": -391.99993896484377,\n \"width\": 206.0,\n \"height\": 130.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 1,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_Space\": 4\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.DistanceNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Distance\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -827.0000610351563,\n \"y\": -332.0000305175781,\n \"width\": 136.0,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -469.9999694824219,\n \"y\": 0.9999993443489075,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -601.0,\n \"y\": -9.000004768371582,\n \"width\": 108.00000762939453,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FresnelNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"62dcd169-6e59-4f9f-9db1-bed6625b8df6\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1024.9998779296875,\n \"y\": 169.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.600000023841858,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -96.00004577636719,\n \"y\": -217.00003051757813,\n \"width\": 200.0,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"1acaec42-dced-414c-aae3-82408d062860\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -713.4500122070313,\n \"y\": 154.54995727539063,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.20000000298023225,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - } - ], - "m_Groups": [], - "m_StickyNotes": [], - "m_SerializableEdges": [ - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"62dcd169-6e59-4f9f-9db1-bed6625b8df6\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1acaec42-dced-414c-aae3-82408d062860\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"1acaec42-dced-414c-aae3-82408d062860\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"0dbd64fb-a8c0-4c1c-b7ba-92861f066bc0\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ad27a459-f2bc-4b98-b664-bf4cdd7752f0\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4a477b4b-699c-4032-853d-24d1669109ff\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"eb175925-8790-4a88-97f6-784a0786276a\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"eb175925-8790-4a88-97f6-784a0786276a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 7,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" - } - ], - "m_PreviewData": { - "serializedMesh": { - "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", - "m_Guid": "" - } - }, - "m_Path": "Shader Graphs", - "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "91eb596c-cc58-4697-8618-749e2b65ba7b" +{ + "m_SerializedProperties": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_1072822C\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 0.047120094299316409,\n \"b\": 1.0,\n \"a\": 1.0\n },\n \"m_ColorMode\": 0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"7bc9ede1-c14d-43e2-bed2-3bc0ce432386\"\n },\n \"m_Name\": \"DistanceFade\",\n \"m_DefaultReferenceName\": \"Vector2_6CFF7E33\",\n \"m_OverrideReferenceName\": \"_DistnceFade\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 25.0,\n \"y\": 10.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" + } + ], + "m_SerializedKeywords": [], + "m_SerializableNodes": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"eb175925-8790-4a88-97f6-784a0786276a\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -368.0,\n \"y\": -223.00003051757813,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"4a477b4b-699c-4032-853d-24d1669109ff\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -857.0000610351563,\n \"y\": -510.0,\n \"width\": 154.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"DistanceFade\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"7bc9ede1-c14d-43e2-bed2-3bc0ce432386\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.RemapNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Remap\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -577.9999389648438,\n \"y\": -438.0,\n \"width\": 199.0,\n \"height\": 142.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -1.0,\\n \\\"y\\\": -1.0,\\n \\\"z\\\": -1.0,\\n \\\"w\\\": -1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"InMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -8.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"OutMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.CameraNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"0dbd64fb-a8c0-4c1c-b7ba-92861f066bc0\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Camera\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1058.9998779296875,\n \"y\": -239.99996948242188,\n \"width\": 130.0,\n \"height\": 244.99998474121095\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Position\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Position\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Direction\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Direction\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Orthographic\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Orthographic\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Near Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Near Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Far Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Far Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PositionNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"ad27a459-f2bc-4b98-b664-bf4cdd7752f0\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Position\",\n \"m_NodeVersion\": 1,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1129.9998779296875,\n \"y\": -391.99993896484377,\n \"width\": 206.0,\n \"height\": 130.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 1,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_Space\": 4\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.DistanceNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Distance\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -827.0000610351563,\n \"y\": -332.0000305175781,\n \"width\": 136.0,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -469.9999694824219,\n \"y\": 0.9999993443489075,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -601.0,\n \"y\": -9.000004768371582,\n \"width\": 108.00000762939453,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FresnelNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"62dcd169-6e59-4f9f-9db1-bed6625b8df6\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -1024.9998779296875,\n \"y\": 169.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.600000023841858,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -96.00004577636719,\n \"y\": -217.00003051757813,\n \"width\": 200.0,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.7353569269180298,\\n \\\"y\\\": 0.7353569269180298,\\n \\\"z\\\": 0.7353569269180298\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"1acaec42-dced-414c-aae3-82408d062860\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -713.4500122070313,\n \"y\": 154.54995727539063,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.20000000298023225,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + } + ], + "m_Groups": [], + "m_StickyNotes": [], + "m_SerializableEdges": [ + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"62dcd169-6e59-4f9f-9db1-bed6625b8df6\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1acaec42-dced-414c-aae3-82408d062860\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"1acaec42-dced-414c-aae3-82408d062860\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"aaca22f9-4058-4c1e-93ba-5fbfd0fa5187\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"0dbd64fb-a8c0-4c1c-b7ba-92861f066bc0\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ad27a459-f2bc-4b98-b664-bf4cdd7752f0\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c6e9abf7-3b11-477f-8718-86c3fb21ecae\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4a477b4b-699c-4032-853d-24d1669109ff\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"1dfa27d0-f825-478a-aecc-078315128e36\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"eb175925-8790-4a88-97f6-784a0786276a\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"eb175925-8790-4a88-97f6-784a0786276a\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 7,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" + } + ], + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + } + }, + "m_Path": "Shader Graphs", + "m_ConcretePrecision": 0, + "m_ActiveOutputNodeGuidSerialized": "91eb596c-cc58-4697-8618-749e2b65ba7b" } \ No newline at end of file diff --git a/Assets/Shaders/Quark_Sphere.shadergraph b/Assets/Shaders/Quark_Sphere.shadergraph index 314c1d04c..7a6abc4c9 100644 --- a/Assets/Shaders/Quark_Sphere.shadergraph +++ b/Assets/Shaders/Quark_Sphere.shadergraph @@ -1,445 +1,445 @@ -{ - "m_SerializedProperties": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_1072822C\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 2.017455816268921,\n \"b\": 8.574187278747559,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"52707236-0bf0-48f3-aee0-3b4a61900647\"\n },\n \"m_Name\": \"Radius\",\n \"m_DefaultReferenceName\": \"Vector1_61DD2E1A\",\n \"m_OverrideReferenceName\": \"_Radius\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 1.0,\n \"m_FloatType\": 0,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"3e5bed62-857e-4ec2-997c-acbd559dc87c\"\n },\n \"m_Name\": \"Fake Fade\",\n \"m_DefaultReferenceName\": \"Vector4_A19359\",\n \"m_OverrideReferenceName\": \"_FakeFade\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 1.0\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" - }, - "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"5022aca4-3ae3-45fe-afdc-061ebd9c3e15\"\n },\n \"m_Name\": \"Edge\",\n \"m_DefaultReferenceName\": \"Vector2_28981E54\",\n \"m_OverrideReferenceName\": \"_Edge\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" - } - ], - "m_SerializedKeywords": [], - "m_SerializableNodes": [ - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"916231e7-4c33-4c36-9d31-06114acbb4cc\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1895.0,\n \"y\": -1243.0001220703125,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1959.0,\n \"y\": -1028.0001220703125,\n \"width\": 136.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1669.0001220703125,\n \"y\": -892.0,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"afa61752-0559-42d6-9cfd-add5f0f1b62e\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 232.9999237060547,\n \"y\": -990.0000610351563,\n \"width\": 116.0,\n \"height\": 34.000003814697269\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Radius\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"52707236-0bf0-48f3-aee0-3b4a61900647\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"b9230f7d-3bdd-43da-b3b1-5e9bf0e952e0\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 545.0,\n \"y\": 384.9999694824219,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"5022aca4-3ae3-45fe-afdc-061ebd9c3e15\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"9f9d23a6-1cc6-406f-be7a-5aa1e8b1c2aa\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1073.9998779296875,\n \"y\": -457.00006103515627,\n \"width\": 207.99998474121095,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FresnelNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"3fbd5937-f070-4309-b6d7-a38161faf7b3\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 935.9999389648438,\n \"y\": 323.99993896484377,\n \"width\": 174.99998474121095,\n \"height\": 142.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.CameraNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"869bab75-30c8-4b7c-aca9-69c5009a2d77\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Camera\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -156.00009155273438,\n \"y\": -1195.0,\n \"width\": 135.0,\n \"height\": 245.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Position\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Position\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Direction\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Direction\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Orthographic\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Orthographic\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Near Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Near Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Far Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Far Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.RemapNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Remap\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 664.0000610351563,\n \"y\": -905.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -1.0,\\n \\\"y\\\": -1.0,\\n \\\"z\\\": -1.0,\\n \\\"w\\\": -1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"InMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"OutMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SplitNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"34ee122a-294a-40d1-a700-b2eeed1dd384\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 9.99988079071045,\n \"y\": -810.9999389648438,\n \"width\": 133.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SubtractNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Subtract\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 210.99996948242188,\n \"y\": -872.9999389648438,\n \"width\": 141.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.AddNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 900.0,\n \"y\": -456.0000305175781,\n \"width\": 135.99998474121095,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 10.99991226196289,\n \"y\": -999.9999389648438,\n \"width\": 141.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SceneDepthNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"dbcafe11-a0aa-41be-84e3-a958b4d6c7dd\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Scene Depth\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -176.00010681152345,\n \"y\": -932.9999389648438,\n \"width\": 150.0,\n \"height\": 112.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ScreenPositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_ScreenSpaceType\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DepthSamplingMode\": 0\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 2314.0,\n \"y\": -1226.0,\n \"width\": 200.00001525878907,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1607.9998779296875,\n \"y\": -1114.0,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.ScreenPositionNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"f2c0c435-6947-4267-bd1b-3cc467b924b9\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Screen Position\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -183.0000762939453,\n \"y\": -807.9999389648438,\n \"width\": 160.00001525878907,\n \"height\": 129.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_ScreenSpaceType\": 1\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SplitNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"f6a854ed-9ff7-48da-a325-47afeef1ff22\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1735.9998779296875,\n \"y\": -1278.0,\n \"width\": 125.99999237060547,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.CombineNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"a4951434-6db6-4f78-96c9-77d584818025\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Combine\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 446.0,\n \"y\": -1049.0,\n \"width\": 144.99998474121095,\n \"height\": 166.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"RGBA\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGBA\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"RGB\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGB\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"RG\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RG\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1435.9998779296875,\n \"y\": -836.9999389648438,\n \"width\": 135.99998474121095,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SmoothstepNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Smoothstep\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 659.9999389648438,\n \"y\": -352.00006103515627,\n \"width\": 163.0,\n \"height\": 142.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge1\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge1\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Edge2\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge2\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SplitNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 716.0000610351563,\n \"y\": 325.0000305175781,\n \"width\": 131.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.MultiplyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1156.000244140625,\n \"y\": 235.00003051757813,\n \"width\": 135.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.FresnelNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"b05aba27-7409-4079-a4e0-e1d4acae9972\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 244.99998474121095,\n \"y\": -285.00006103515627,\n \"width\": 207.99998474121095,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.8500000238418579,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.OneMinusNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"8e84b0a1-ceb4-4f72-be14-f6e6ba580a6f\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 475.99993896484377,\n \"y\": -250.0000457763672,\n \"width\": 141.0,\n \"height\": 93.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.PropertyNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"90977d86-9673-4968-92c2-c6c65fbf09c8\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -77.00000762939453,\n \"y\": -401.0,\n \"width\": 135.99998474121095,\n \"height\": 33.999996185302737\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Fake Fade\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"3e5bed62-857e-4ec2-997c-acbd559dc87c\"\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"4fbf1b33-9777-4e17-b3f8-a6caa84c66bc\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1155.0,\n \"y\": -871.0,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SplitNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 76.99998474121094,\n \"y\": -442.00006103515627,\n \"width\": 128.99998474121095,\n \"height\": 148.99998474121095\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.SaturateNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"c9d841f0-08a8-42aa-961d-f9f0ca57bad3\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1337.0,\n \"y\": 235.00003051757813,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.ShaderGraph.OneMinusNode" - }, - "JSONnodeData": "{\n \"m_GuidSerialized\": \"35d03e37-1e86-49da-b04a-e7df9ae8b85b\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 685.9998779296875,\n \"y\": -473.9999694824219,\n \"width\": 141.0,\n \"height\": 93.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" - } - ], - "m_Groups": [ - { - "m_GuidSerialized": "81f4023f-924a-44ad-a5ca-0b1f8f7dcca5", - "m_Title": "Edge", - "m_Position": { - "x": 520.0000610351563, - "y": 177.0001220703125 - } - }, - { - "m_GuidSerialized": "19b7bb82-bf45-44db-9bf5-d1225f9862ee", - "m_Title": "Fake Fade", - "m_Position": { - "x": -102.0, - "y": -531.9999389648438 - } - } - ], - "m_StickyNotes": [], - "m_SerializableEdges": [ - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"f2c0c435-6947-4267-bd1b-3cc467b924b9\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"34ee122a-294a-40d1-a700-b2eeed1dd384\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"869bab75-30c8-4b7c-aca9-69c5009a2d77\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"dbcafe11-a0aa-41be-84e3-a958b4d6c7dd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"f6a854ed-9ff7-48da-a325-47afeef1ff22\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"34ee122a-294a-40d1-a700-b2eeed1dd384\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"b05aba27-7409-4079-a4e0-e1d4acae9972\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"8e84b0a1-ceb4-4f72-be14-f6e6ba580a6f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 6,\n \"m_NodeGUIDSerialized\": \"a4951434-6db6-4f78-96c9-77d584818025\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"afa61752-0559-42d6-9cfd-add5f0f1b62e\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"a4951434-6db6-4f78-96c9-77d584818025\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"90977d86-9673-4968-92c2-c6c65fbf09c8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"9f9d23a6-1cc6-406f-be7a-5aa1e8b1c2aa\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b05aba27-7409-4079-a4e0-e1d4acae9972\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"8e84b0a1-ceb4-4f72-be14-f6e6ba580a6f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"35d03e37-1e86-49da-b04a-e7df9ae8b85b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"35d03e37-1e86-49da-b04a-e7df9ae8b85b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b9230f7d-3bdd-43da-b3b1-5e9bf0e952e0\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"3fbd5937-f070-4309-b6d7-a38161faf7b3\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"3fbd5937-f070-4309-b6d7-a38161faf7b3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c9d841f0-08a8-42aa-961d-f9f0ca57bad3\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c9d841f0-08a8-42aa-961d-f9f0ca57bad3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9f9d23a6-1cc6-406f-be7a-5aa1e8b1c2aa\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"4fbf1b33-9777-4e17-b3f8-a6caa84c66bc\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4fbf1b33-9777-4e17-b3f8-a6caa84c66bc\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"f6a854ed-9ff7-48da-a325-47afeef1ff22\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"916231e7-4c33-4c36-9d31-06114acbb4cc\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"916231e7-4c33-4c36-9d31-06114acbb4cc\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" - }, - { - "typeInfo": { - "fullName": "UnityEditor.Graphing.Edge" - }, - "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 7,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" - } - ], - "m_PreviewData": { - "serializedMesh": { - "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", - "m_Guid": "" - } - }, - "m_Path": "Shader Graphs", - "m_ConcretePrecision": 0, - "m_ActiveOutputNodeGuidSerialized": "91eb596c-cc58-4697-8618-749e2b65ba7b" +{ + "m_SerializedProperties": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.ColorShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n },\n \"m_Name\": \"Color\",\n \"m_DefaultReferenceName\": \"Color_1072822C\",\n \"m_OverrideReferenceName\": \"_Color\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"r\": 0.0,\n \"g\": 2.017455816268921,\n \"b\": 8.574187278747559,\n \"a\": 1.0\n },\n \"m_ColorMode\": 1\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector1ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"52707236-0bf0-48f3-aee0-3b4a61900647\"\n },\n \"m_Name\": \"Radius\",\n \"m_DefaultReferenceName\": \"Vector1_61DD2E1A\",\n \"m_OverrideReferenceName\": \"_Radius\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": 1.0,\n \"m_FloatType\": 0,\n \"m_RangeValues\": {\n \"x\": 0.0,\n \"y\": 1.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector4ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"3e5bed62-857e-4ec2-997c-acbd559dc87c\"\n },\n \"m_Name\": \"Fake Fade\",\n \"m_DefaultReferenceName\": \"Vector4_A19359\",\n \"m_OverrideReferenceName\": \"_FakeFade\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 1.0\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.Internal.Vector2ShaderProperty" + }, + "JSONnodeData": "{\n \"m_Guid\": {\n \"m_GuidSerialized\": \"5022aca4-3ae3-45fe-afdc-061ebd9c3e15\"\n },\n \"m_Name\": \"Edge\",\n \"m_DefaultReferenceName\": \"Vector2_28981E54\",\n \"m_OverrideReferenceName\": \"_Edge\",\n \"m_GeneratePropertyBlock\": true,\n \"m_Precision\": 0,\n \"m_GPUInstanced\": false,\n \"m_Hidden\": false,\n \"m_Value\": {\n \"x\": 1.0,\n \"y\": 1.0,\n \"z\": 0.0,\n \"w\": 0.0\n }\n}" + } + ], + "m_SerializedKeywords": [], + "m_SerializableNodes": [ + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"916231e7-4c33-4c36-9d31-06114acbb4cc\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1895.0,\n \"y\": -1243.0001220703125,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1959.0,\n \"y\": -1028.0001220703125,\n \"width\": 136.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1669.0001220703125,\n \"y\": -892.0,\n \"width\": 208.0,\n \"height\": 302.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"afa61752-0559-42d6-9cfd-add5f0f1b62e\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 232.9999237060547,\n \"y\": -990.0000610351563,\n \"width\": 116.0,\n \"height\": 34.000003814697269\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Radius\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"52707236-0bf0-48f3-aee0-3b4a61900647\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"b9230f7d-3bdd-43da-b3b1-5e9bf0e952e0\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 545.0,\n \"y\": 384.9999694824219,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"5022aca4-3ae3-45fe-afdc-061ebd9c3e15\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"9f9d23a6-1cc6-406f-be7a-5aa1e8b1c2aa\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1073.9998779296875,\n \"y\": -457.00006103515627,\n \"width\": 207.99998474121095,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FresnelNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"3fbd5937-f070-4309-b6d7-a38161faf7b3\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 935.9999389648438,\n \"y\": 323.99993896484377,\n \"width\": 174.99998474121095,\n \"height\": 142.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.CameraNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"869bab75-30c8-4b7c-aca9-69c5009a2d77\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Camera\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -156.00009155273438,\n \"y\": -1195.0,\n \"width\": 135.0,\n \"height\": 245.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Position\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Position\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Direction\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Direction\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Orthographic\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Orthographic\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Near Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Near Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"Far Plane\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Far Plane\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Z Buffer Sign\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"Width\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Width\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Height\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Height\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.RemapNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Remap\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 664.0000610351563,\n \"y\": -905.0,\n \"width\": 208.0,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": -1.0,\\n \\\"y\\\": -1.0,\\n \\\"z\\\": -1.0,\\n \\\"w\\\": -1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"In Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"InMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out Min Max\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"OutMinMax\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SplitNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"34ee122a-294a-40d1-a700-b2eeed1dd384\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 9.99988079071045,\n \"y\": -810.9999389648438,\n \"width\": 133.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SubtractNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Subtract\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 210.99996948242188,\n \"y\": -872.9999389648438,\n \"width\": 141.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.AddNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Add\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 900.0,\n \"y\": -456.0000305175781,\n \"width\": 135.99998474121095,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 10.99991226196289,\n \"y\": -999.9999389648438,\n \"width\": 141.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SceneDepthNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"dbcafe11-a0aa-41be-84e3-a958b4d6c7dd\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Scene Depth\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -176.00010681152345,\n \"y\": -932.9999389648438,\n \"width\": 150.0,\n \"height\": 112.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ScreenPositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"UV\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"UV\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_ScreenSpaceType\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DepthSamplingMode\": 0\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.UnlitMasterNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Unlit Master\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 2314.0,\n \"y\": -1226.0,\n \"width\": 200.00001525878907,\n \"height\": 197.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.PositionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 9,\\n \\\"m_DisplayName\\\": \\\"Vertex Position\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Position\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 10,\\n \\\"m_DisplayName\\\": \\\"Vertex Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Normal\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.TangentMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 11,\\n \\\"m_DisplayName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Vertex Tangent\\\",\\n \\\"m_StageCapability\\\": 1,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ColorRGBMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Color\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_ColorMode\\\": 0\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 7,\\n \\\"m_DisplayName\\\": \\\"Alpha\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Alpha\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 1.0,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 8,\\n \\\"m_DisplayName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"AlphaClipThreshold\\\",\\n \\\"m_StageCapability\\\": 2,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_DOTSInstancing\": false,\n \"m_SerializableSubShaders\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.Rendering.Universal.UniversalUnlitSubShader\"\n },\n \"JSONnodeData\": \"{}\"\n }\n ],\n \"m_SurfaceType\": 1,\n \"m_AlphaMode\": 0,\n \"m_TwoSided\": false,\n \"m_AddPrecomputedVelocity\": false\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1607.9998779296875,\n \"y\": -1114.0,\n \"width\": 109.0,\n \"height\": 34.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Color\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"e8f185c6-f74c-447e-b4b1-b8f327a71280\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.ScreenPositionNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"f2c0c435-6947-4267-bd1b-3cc467b924b9\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Screen Position\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -183.0000762939453,\n \"y\": -807.9999389648438,\n \"width\": 160.00001525878907,\n \"height\": 129.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_ScreenSpaceType\": 1\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SplitNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"f6a854ed-9ff7-48da-a325-47afeef1ff22\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1735.9998779296875,\n \"y\": -1278.0,\n \"width\": 125.99999237060547,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.CombineNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"a4951434-6db6-4f78-96c9-77d584818025\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Combine\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 446.0,\n \"y\": -1049.0,\n \"width\": 144.99998474121095,\n \"height\": 166.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"RGBA\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGBA\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector3MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 5,\\n \\\"m_DisplayName\\\": \\\"RGB\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RGB\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector2MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 6,\\n \\\"m_DisplayName\\\": \\\"RG\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"RG\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1435.9998779296875,\n \"y\": -836.9999389648438,\n \"width\": 135.99998474121095,\n \"height\": 117.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SmoothstepNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Smoothstep\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 659.9999389648438,\n \"y\": -352.00006103515627,\n \"width\": 163.0,\n \"height\": 142.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Edge1\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge1\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Edge2\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Edge2\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SplitNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 716.0000610351563,\n \"y\": 325.0000305175781,\n \"width\": 131.0,\n \"height\": 149.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.MultiplyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Multiply\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1156.000244140625,\n \"y\": 235.00003051757813,\n \"width\": 135.0,\n \"height\": 118.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 2.0,\\n \\\"e01\\\": 2.0,\\n \\\"e02\\\": 2.0,\\n \\\"e03\\\": 2.0,\\n \\\"e10\\\": 2.0,\\n \\\"e11\\\": 2.0,\\n \\\"e12\\\": 2.0,\\n \\\"e13\\\": 2.0,\\n \\\"e20\\\": 2.0,\\n \\\"e21\\\": 2.0,\\n \\\"e22\\\": 2.0,\\n \\\"e23\\\": 2.0,\\n \\\"e30\\\": 2.0,\\n \\\"e31\\\": 2.0,\\n \\\"e32\\\": 2.0,\\n \\\"e33\\\": 2.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicValueMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"e00\\\": 0.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 0.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 0.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"e00\\\": 1.0,\\n \\\"e01\\\": 0.0,\\n \\\"e02\\\": 0.0,\\n \\\"e03\\\": 0.0,\\n \\\"e10\\\": 0.0,\\n \\\"e11\\\": 1.0,\\n \\\"e12\\\": 0.0,\\n \\\"e13\\\": 0.0,\\n \\\"e20\\\": 0.0,\\n \\\"e21\\\": 0.0,\\n \\\"e22\\\": 1.0,\\n \\\"e23\\\": 0.0,\\n \\\"e30\\\": 0.0,\\n \\\"e31\\\": 0.0,\\n \\\"e32\\\": 0.0,\\n \\\"e33\\\": 1.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.FresnelNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"b05aba27-7409-4079-a4e0-e1d4acae9972\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Fresnel Effect\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 244.99998474121095,\n \"y\": -285.00006103515627,\n \"width\": 207.99998474121095,\n \"height\": 326.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.NormalMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Normal\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Normal\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.ViewDirectionMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"View Dir\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"ViewDir\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0\\n },\\n \\\"m_Labels\\\": [\\n \\\"X\\\",\\n \\\"Y\\\",\\n \\\"Z\\\"\\n ],\\n \\\"m_Space\\\": 2\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"Power\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Power\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.8500000238418579,\\n \\\"m_DefaultValue\\\": 1.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.OneMinusNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"8e84b0a1-ceb4-4f72-be14-f6e6ba580a6f\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 475.99993896484377,\n \"y\": -250.0000457763672,\n \"width\": 141.0,\n \"height\": 93.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.PropertyNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"90977d86-9673-4968-92c2-c6c65fbf09c8\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Property\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": -77.00000762939453,\n \"y\": -401.0,\n \"width\": 135.99998474121095,\n \"height\": 33.999996185302737\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector4MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"Fake Fade\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n },\n \"m_PropertyGuidSerialized\": \"3e5bed62-857e-4ec2-997c-acbd559dc87c\"\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"4fbf1b33-9777-4e17-b3f8-a6caa84c66bc\",\n \"m_GroupGuidSerialized\": \"00000000-0000-0000-0000-000000000000\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1155.0,\n \"y\": -871.0,\n \"width\": 141.0,\n \"height\": 94.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SplitNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"Split\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 76.99998474121094,\n \"y\": -442.00006103515627,\n \"width\": 128.99998474121095,\n \"height\": 148.99998474121095\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"R\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"R\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 2,\\n \\\"m_DisplayName\\\": \\\"G\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"G\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 3,\\n \\\"m_DisplayName\\\": \\\"B\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"B\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.Vector1MaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 4,\\n \\\"m_DisplayName\\\": \\\"A\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"A\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": 0.0,\\n \\\"m_DefaultValue\\\": 0.0,\\n \\\"m_Labels\\\": [\\n \\\"X\\\"\\n ]\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.SaturateNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"c9d841f0-08a8-42aa-961d-f9f0ca57bad3\",\n \"m_GroupGuidSerialized\": \"81f4023f-924a-44ad-a5ca-0b1f8f7dcca5\",\n \"m_Name\": \"Saturate\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 1337.0,\n \"y\": 235.00003051757813,\n \"width\": 208.0,\n \"height\": 278.0\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": true,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.ShaderGraph.OneMinusNode" + }, + "JSONnodeData": "{\n \"m_GuidSerialized\": \"35d03e37-1e86-49da-b04a-e7df9ae8b85b\",\n \"m_GroupGuidSerialized\": \"19b7bb82-bf45-44db-9bf5-d1225f9862ee\",\n \"m_Name\": \"One Minus\",\n \"m_NodeVersion\": 0,\n \"m_DrawState\": {\n \"m_Expanded\": true,\n \"m_Position\": {\n \"serializedVersion\": \"2\",\n \"x\": 685.9998779296875,\n \"y\": -473.9999694824219,\n \"width\": 141.0,\n \"height\": 93.99999237060547\n }\n },\n \"m_SerializableSlots\": [\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 0,\\n \\\"m_DisplayName\\\": \\\"In\\\",\\n \\\"m_SlotType\\\": 0,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"In\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 1.0,\\n \\\"y\\\": 1.0,\\n \\\"z\\\": 1.0,\\n \\\"w\\\": 1.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n },\n {\n \"typeInfo\": {\n \"fullName\": \"UnityEditor.ShaderGraph.DynamicVectorMaterialSlot\"\n },\n \"JSONnodeData\": \"{\\n \\\"m_Id\\\": 1,\\n \\\"m_DisplayName\\\": \\\"Out\\\",\\n \\\"m_SlotType\\\": 1,\\n \\\"m_Priority\\\": 2147483647,\\n \\\"m_Hidden\\\": false,\\n \\\"m_ShaderOutputName\\\": \\\"Out\\\",\\n \\\"m_StageCapability\\\": 3,\\n \\\"m_Value\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n },\\n \\\"m_DefaultValue\\\": {\\n \\\"x\\\": 0.0,\\n \\\"y\\\": 0.0,\\n \\\"z\\\": 0.0,\\n \\\"w\\\": 0.0\\n }\\n}\"\n }\n ],\n \"m_Precision\": 0,\n \"m_PreviewExpanded\": false,\n \"m_CustomColors\": {\n \"m_SerializableColors\": []\n }\n}" + } + ], + "m_Groups": [ + { + "m_GuidSerialized": "81f4023f-924a-44ad-a5ca-0b1f8f7dcca5", + "m_Title": "Edge", + "m_Position": { + "x": 520.0000610351563, + "y": 177.0001220703125 + } + }, + { + "m_GuidSerialized": "19b7bb82-bf45-44db-9bf5-d1225f9862ee", + "m_Title": "Fake Fade", + "m_Position": { + "x": -102.0, + "y": -531.9999389648438 + } + } + ], + "m_StickyNotes": [], + "m_SerializableEdges": [ + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"f2c0c435-6947-4267-bd1b-3cc467b924b9\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"34ee122a-294a-40d1-a700-b2eeed1dd384\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"869bab75-30c8-4b7c-aca9-69c5009a2d77\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"dbcafe11-a0aa-41be-84e3-a958b4d6c7dd\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"1297c263-4f84-4b65-90be-5b88284352c9\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"f6a854ed-9ff7-48da-a325-47afeef1ff22\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"34ee122a-294a-40d1-a700-b2eeed1dd384\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"b05aba27-7409-4079-a4e0-e1d4acae9972\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"8e84b0a1-ceb4-4f72-be14-f6e6ba580a6f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 6,\n \"m_NodeGUIDSerialized\": \"a4951434-6db6-4f78-96c9-77d584818025\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"9f5dece0-53cc-4920-9a08-c9ef5c15add5\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"afa61752-0559-42d6-9cfd-add5f0f1b62e\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"a4951434-6db6-4f78-96c9-77d584818025\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"90977d86-9673-4968-92c2-c6c65fbf09c8\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"9f9d23a6-1cc6-406f-be7a-5aa1e8b1c2aa\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b05aba27-7409-4079-a4e0-e1d4acae9972\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"8e84b0a1-ceb4-4f72-be14-f6e6ba580a6f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"1fdfe591-de37-4321-9301-5701a2ed5bca\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"35d03e37-1e86-49da-b04a-e7df9ae8b85b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"35d03e37-1e86-49da-b04a-e7df9ae8b85b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"b4ef2622-a611-4748-b0bd-bbdc8906ba86\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c28efbe3-ffc1-448b-83c6-c1a2292ad6eb\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"b9230f7d-3bdd-43da-b3b1-5e9bf0e952e0\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"adebec7c-66ad-42e2-9def-3b6eede14c74\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"3fbd5937-f070-4309-b6d7-a38161faf7b3\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"3fbd5937-f070-4309-b6d7-a38161faf7b3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"d0d3a8b8-89c4-48e6-b60c-fff666cf902f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c9d841f0-08a8-42aa-961d-f9f0ca57bad3\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c9d841f0-08a8-42aa-961d-f9f0ca57bad3\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"c238e006-1b46-4054-96dd-aaf9f6447100\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"9f9d23a6-1cc6-406f-be7a-5aa1e8b1c2aa\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"4fbf1b33-9777-4e17-b3f8-a6caa84c66bc\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"ddf85f06-d2bb-445f-bd43-5bc92d3a324b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 3,\n \"m_NodeGUIDSerialized\": \"040aa33c-1890-4bd7-a012-4e293a68c2f6\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"4fbf1b33-9777-4e17-b3f8-a6caa84c66bc\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 4,\n \"m_NodeGUIDSerialized\": \"f6a854ed-9ff7-48da-a325-47afeef1ff22\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"916231e7-4c33-4c36-9d31-06114acbb4cc\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 1,\n \"m_NodeGUIDSerialized\": \"916231e7-4c33-4c36-9d31-06114acbb4cc\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"44004bd0-cf5c-42d1-9e44-bf7e7d1c208f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 0,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" + }, + { + "typeInfo": { + "fullName": "UnityEditor.Graphing.Edge" + }, + "JSONnodeData": "{\n \"m_OutputSlot\": {\n \"m_SlotId\": 2,\n \"m_NodeGUIDSerialized\": \"6d763de1-c006-411e-854a-7344430ad12f\"\n },\n \"m_InputSlot\": {\n \"m_SlotId\": 7,\n \"m_NodeGUIDSerialized\": \"91eb596c-cc58-4697-8618-749e2b65ba7b\"\n }\n}" + } + ], + "m_PreviewData": { + "serializedMesh": { + "m_SerializedMesh": "{\"mesh\":{\"instanceID\":0}}", + "m_Guid": "" + } + }, + "m_Path": "Shader Graphs", + "m_ConcretePrecision": 0, + "m_ActiveOutputNodeGuidSerialized": "91eb596c-cc58-4697-8618-749e2b65ba7b" } \ No newline at end of file diff --git a/Assets/Shaders/Quark_Sphere_Glow.shader b/Assets/Shaders/Quark_Sphere_Glow.shader index 9d4cdaddd..3416226ec 100644 --- a/Assets/Shaders/Quark_Sphere_Glow.shader +++ b/Assets/Shaders/Quark_Sphere_Glow.shader @@ -1,169 +1,169 @@ -Shader "Quark Sphere Glow" -{ - Properties - { - [HDR] _Color("Color", Color) = (1, 1, 1, 1) - _ReadMask("Stencil Mask", Int) = 0 - //[Toggle(_ALPHAPREMULTIPLY_ON)] _PremultipliedAlpha("Premultiplied alpha", Int) = 0 - } - SubShader - { - Tags { "RenderType" = "Opaque" "IgnoreProjector" = "True" "RenderPipeline" = "UniversalPipeline" } - - Blend One OneMinusSrcAlpha - ZWrite Off - Cull Back - - Stencil { - Ref 0 - ReadMask [_ReadMask] - Comp Equal - } - - Pass - { - Name "Unlit" - HLSLPROGRAM - // Required to compile gles 2.0 with standard srp library - #pragma prefer_hlslcc gles - #pragma exclude_renderers d3d11_9x - - #pragma vertex vert - #pragma fragment frag - #pragma shader_feature _ALPHAPREMULTIPLY_ON - - // ------------------------------------- - // Unity defined keywords - #pragma multi_compile_instancing - - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl" - - CBUFFER_START(UnityPerMaterial) - half4 _Color; - CBUFFER_END - - struct Attributes - { - float4 positionOS : POSITION; - float2 uv : TEXCOORD0; - float4 normalOS : NORMAL; - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct Varyings - { - float fogCoord : TEXCOORD1; - float4 vertex : SV_POSITION; - float3 normalWS : NORMAL; - float3 positionWS : TEXCOORD2; - float3 positionOS : TEXCOORD3; - - UNITY_VERTEX_INPUT_INSTANCE_ID - UNITY_VERTEX_OUTPUT_STEREO - }; - - Varyings vert(Attributes input) - { - Varyings output = (Varyings)0; - - UNITY_SETUP_INSTANCE_ID(input); - UNITY_TRANSFER_INSTANCE_ID(input, output); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - - VertexPositionInputs vertexInput = GetVertexPositionInputs(input.positionOS.xyz); - VertexNormalInputs normalInput = GetVertexNormalInputs(input.normalOS.xyz); - - output.vertex = vertexInput.positionCS; - output.fogCoord = ComputeFogFactor(vertexInput.positionCS.z); - output.normalWS = normalInput.normalWS.xyz; - output.positionWS = vertexInput.positionWS; - output.positionOS = input.positionOS.xyz; - - return output; - } - - float3 FresnelSchlick(float cosTheta, float3 F0) - { - return float3(F0 + (float3(1.0f, 1.0f, 1.0f) - F0) * pow(1.0f - cosTheta, 5.0f)); - } - - half4 frag(Varyings input) : SV_Target - { - UNITY_SETUP_INSTANCE_ID(input); - UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input); - - half3 color = _Color.rgb; - half alpha = _Color.a; - - color = MixFog(color, input.fogCoord); - alpha = OutputAlpha(alpha); - - float3 viewDirWS = GetCameraPositionWS() - input.positionWS; - float NdotL = dot(normalize(input.normalWS), normalize(viewDirWS)); - - float coeff = saturate(NdotL * NdotL * NdotL * NdotL * NdotL * NdotL); - //coeff = coeff * saturate((cnoise(input.positionOS * 2.0f + _Time.xyz * 1.0f) + 1.0f) / 2.0f + 0.3f); - //float koeff = 1.0f - FresnelSchlick(NdotL, 0.6f); - - color = color * coeff; - alpha = alpha * coeff; - -#ifdef _ALPHAPREMULTIPLY_ON - color *= alpha; -#endif - return half4(color, alpha); - } - ENDHLSL - } - Pass - { - Tags{"LightMode" = "DepthOnly"} - - ZWrite On - ColorMask 0 - - HLSLPROGRAM - // Required to compile gles 2.0 with standard srp library - #pragma prefer_hlslcc gles - #pragma exclude_renderers d3d11_9x - #pragma target 2.0 - - #pragma vertex DepthOnlyVertex - #pragma fragment DepthOnlyFragment - - // ------------------------------------- - // Material Keywords - #pragma shader_feature _ALPHATEST_ON - - //-------------------------------------- - // GPU Instancing - #pragma multi_compile_instancing - - #include "Packages/com.unity.render-pipelines.universal/Shaders/UnlitInput.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/DepthOnlyPass.hlsl" - ENDHLSL - } - - // This pass it not used during regular rendering, only for lightmap baking. - Pass - { - Name "Meta" - Tags{"LightMode" = "Meta"} - - Cull Off - - HLSLPROGRAM - // Required to compile gles 2.0 with standard srp library - #pragma prefer_hlslcc gles - #pragma exclude_renderers d3d11_9x - #pragma vertex UniversalVertexMeta - #pragma fragment UniversalFragmentMetaUnlit - - #include "Packages/com.unity.render-pipelines.universal/Shaders/UnlitInput.hlsl" - #include "Packages/com.unity.render-pipelines.universal/Shaders/UnlitMetaPass.hlsl" - - ENDHLSL - } - } - FallBack "Hidden/Universal Render Pipeline/FallbackError" -} +Shader "Quark Sphere Glow" +{ + Properties + { + [HDR] _Color("Color", Color) = (1, 1, 1, 1) + _ReadMask("Stencil Mask", Int) = 0 + //[Toggle(_ALPHAPREMULTIPLY_ON)] _PremultipliedAlpha("Premultiplied alpha", Int) = 0 + } + SubShader + { + Tags { "RenderType" = "Opaque" "IgnoreProjector" = "True" "RenderPipeline" = "UniversalPipeline" } + + Blend One OneMinusSrcAlpha + ZWrite Off + Cull Back + + Stencil { + Ref 0 + ReadMask [_ReadMask] + Comp Equal + } + + Pass + { + Name "Unlit" + HLSLPROGRAM + // Required to compile gles 2.0 with standard srp library + #pragma prefer_hlslcc gles + #pragma exclude_renderers d3d11_9x + + #pragma vertex vert + #pragma fragment frag + #pragma shader_feature _ALPHAPREMULTIPLY_ON + + // ------------------------------------- + // Unity defined keywords + #pragma multi_compile_instancing + + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl" + + CBUFFER_START(UnityPerMaterial) + half4 _Color; + CBUFFER_END + + struct Attributes + { + float4 positionOS : POSITION; + float2 uv : TEXCOORD0; + float4 normalOS : NORMAL; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct Varyings + { + float fogCoord : TEXCOORD1; + float4 vertex : SV_POSITION; + float3 normalWS : NORMAL; + float3 positionWS : TEXCOORD2; + float3 positionOS : TEXCOORD3; + + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + Varyings vert(Attributes input) + { + Varyings output = (Varyings)0; + + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + VertexPositionInputs vertexInput = GetVertexPositionInputs(input.positionOS.xyz); + VertexNormalInputs normalInput = GetVertexNormalInputs(input.normalOS.xyz); + + output.vertex = vertexInput.positionCS; + output.fogCoord = ComputeFogFactor(vertexInput.positionCS.z); + output.normalWS = normalInput.normalWS.xyz; + output.positionWS = vertexInput.positionWS; + output.positionOS = input.positionOS.xyz; + + return output; + } + + float3 FresnelSchlick(float cosTheta, float3 F0) + { + return float3(F0 + (float3(1.0f, 1.0f, 1.0f) - F0) * pow(1.0f - cosTheta, 5.0f)); + } + + half4 frag(Varyings input) : SV_Target + { + UNITY_SETUP_INSTANCE_ID(input); + UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(input); + + half3 color = _Color.rgb; + half alpha = _Color.a; + + color = MixFog(color, input.fogCoord); + alpha = OutputAlpha(alpha); + + float3 viewDirWS = GetCameraPositionWS() - input.positionWS; + float NdotL = dot(normalize(input.normalWS), normalize(viewDirWS)); + + float coeff = saturate(NdotL * NdotL * NdotL * NdotL * NdotL * NdotL); + //coeff = coeff * saturate((cnoise(input.positionOS * 2.0f + _Time.xyz * 1.0f) + 1.0f) / 2.0f + 0.3f); + //float koeff = 1.0f - FresnelSchlick(NdotL, 0.6f); + + color = color * coeff; + alpha = alpha * coeff; + +#ifdef _ALPHAPREMULTIPLY_ON + color *= alpha; +#endif + return half4(color, alpha); + } + ENDHLSL + } + Pass + { + Tags{"LightMode" = "DepthOnly"} + + ZWrite On + ColorMask 0 + + HLSLPROGRAM + // Required to compile gles 2.0 with standard srp library + #pragma prefer_hlslcc gles + #pragma exclude_renderers d3d11_9x + #pragma target 2.0 + + #pragma vertex DepthOnlyVertex + #pragma fragment DepthOnlyFragment + + // ------------------------------------- + // Material Keywords + #pragma shader_feature _ALPHATEST_ON + + //-------------------------------------- + // GPU Instancing + #pragma multi_compile_instancing + + #include "Packages/com.unity.render-pipelines.universal/Shaders/UnlitInput.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/DepthOnlyPass.hlsl" + ENDHLSL + } + + // This pass it not used during regular rendering, only for lightmap baking. + Pass + { + Name "Meta" + Tags{"LightMode" = "Meta"} + + Cull Off + + HLSLPROGRAM + // Required to compile gles 2.0 with standard srp library + #pragma prefer_hlslcc gles + #pragma exclude_renderers d3d11_9x + #pragma vertex UniversalVertexMeta + #pragma fragment UniversalFragmentMetaUnlit + + #include "Packages/com.unity.render-pipelines.universal/Shaders/UnlitInput.hlsl" + #include "Packages/com.unity.render-pipelines.universal/Shaders/UnlitMetaPass.hlsl" + + ENDHLSL + } + } + FallBack "Hidden/Universal Render Pipeline/FallbackError" +} diff --git a/Assets/Shaders/Quark_Sphere_StencilPass.shader b/Assets/Shaders/Quark_Sphere_StencilPass.shader index 56aaf2992..042f47764 100644 --- a/Assets/Shaders/Quark_Sphere_StencilPass.shader +++ b/Assets/Shaders/Quark_Sphere_StencilPass.shader @@ -1,79 +1,79 @@ -Shader "Quark Sphere Stencil Write" -{ - Properties - { - _WriteMask("Stencil Mask", Int) = 0 - } - SubShader - { - Tags { "RenderType" = "Opaque" "IgnoreProjector" = "True" "RenderPipeline" = "UniversalPipeline" } - LOD 100 - - Blend Zero One - ZWrite Off - Cull Back - - Stencil { - Ref 255 - WriteMask [_WriteMask] - Comp Always - Pass Replace - } - - Pass - { - Name "Unlit" - HLSLPROGRAM - // Required to compile gles 2.0 with standard srp library - #pragma prefer_hlslcc gles - #pragma exclude_renderers d3d11_9x - - #pragma vertex vert - #pragma fragment frag - - // ------------------------------------- - // Unity defined keywords - #pragma multi_compile_instancing - - #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl" - - struct Attributes - { - float4 positionOS : POSITION; - float2 uv : TEXCOORD0; - UNITY_VERTEX_INPUT_INSTANCE_ID - }; - - struct Varyings - { - float fogCoord : TEXCOORD1; - float4 vertex : SV_POSITION; - - UNITY_VERTEX_INPUT_INSTANCE_ID - UNITY_VERTEX_OUTPUT_STEREO - }; - - Varyings vert(Attributes input) - { - Varyings output = (Varyings)0; - - UNITY_SETUP_INSTANCE_ID(input); - UNITY_TRANSFER_INSTANCE_ID(input, output); - UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); - - VertexPositionInputs vertexInput = GetVertexPositionInputs(input.positionOS.xyz); - output.vertex = vertexInput.positionCS; - output.fogCoord = ComputeFogFactor(vertexInput.positionCS.z); - - return output; - } - - half4 frag(Varyings input) : SV_Target - { - return half4(0.0f, 0.0f, 0.0f, 0.0f); - } - ENDHLSL - } - } - FallBack "Hidden/Universal Render Pipeline/FallbackError" -} +Shader "Quark Sphere Stencil Write" +{ + Properties + { + _WriteMask("Stencil Mask", Int) = 0 + } + SubShader + { + Tags { "RenderType" = "Opaque" "IgnoreProjector" = "True" "RenderPipeline" = "UniversalPipeline" } + LOD 100 + + Blend Zero One + ZWrite Off + Cull Back + + Stencil { + Ref 255 + WriteMask [_WriteMask] + Comp Always + Pass Replace + } + + Pass + { + Name "Unlit" + HLSLPROGRAM + // Required to compile gles 2.0 with standard srp library + #pragma prefer_hlslcc gles + #pragma exclude_renderers d3d11_9x + + #pragma vertex vert + #pragma fragment frag + + // ------------------------------------- + // Unity defined keywords + #pragma multi_compile_instancing + + #include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/SurfaceInput.hlsl" + + struct Attributes + { + float4 positionOS : POSITION; + float2 uv : TEXCOORD0; + UNITY_VERTEX_INPUT_INSTANCE_ID + }; + + struct Varyings + { + float fogCoord : TEXCOORD1; + float4 vertex : SV_POSITION; + + UNITY_VERTEX_INPUT_INSTANCE_ID + UNITY_VERTEX_OUTPUT_STEREO + }; + + Varyings vert(Attributes input) + { + Varyings output = (Varyings)0; + + UNITY_SETUP_INSTANCE_ID(input); + UNITY_TRANSFER_INSTANCE_ID(input, output); + UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(output); + + VertexPositionInputs vertexInput = GetVertexPositionInputs(input.positionOS.xyz); + output.vertex = vertexInput.positionCS; + output.fogCoord = ComputeFogFactor(vertexInput.positionCS.z); + + return output; + } + + half4 frag(Varyings input) : SV_Target + { + return half4(0.0f, 0.0f, 0.0f, 0.0f); + } + ENDHLSL + } + } + FallBack "Hidden/Universal Render Pipeline/FallbackError" +} diff --git a/Assets/Shaders/Quark_Trail.shader b/Assets/Shaders/Quark_Trail.shader index afd944f6f..d98317435 100644 --- a/Assets/Shaders/Quark_Trail.shader +++ b/Assets/Shaders/Quark_Trail.shader @@ -1,52 +1,52 @@ -Shader "Quark Trail" -{ - Properties - { - _MainTex ("Sprite Texture", 2D) = "white" {} - _Color ("Tint", Color) = (1,1,1,1) - [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0 - [HideInInspector] _RendererColor ("RendererColor", Color) = (1,1,1,1) - [HideInInspector] _Flip ("Flip", Vector) = (1,1,1,1) - [PerRendererData] _AlphaTex ("External Alpha", 2D) = "white" {} - [PerRendererData] _EnableExternalAlpha ("Enable External Alpha", Float) = 0 - _StencilMask("Stencil Mask", Int) = 0 - } - - SubShader - { - Tags - { - "Queue"="Transparent" - "IgnoreProjector"="True" - "RenderType"="Transparent" - "PreviewType"="Plane" - "CanUseSpriteAtlas"="True" - } - - Stencil { - Ref 0 - WriteMask [_StencilMask] - ReadMask [_StencilMask] - Comp Equal - Pass Invert - } - - Cull Off - Lighting Off - ZWrite Off - Blend One OneMinusSrcAlpha - - Pass - { - CGPROGRAM - #pragma vertex SpriteVert - #pragma fragment SpriteFrag - #pragma target 2.0 - #pragma multi_compile_instancing - #pragma multi_compile_local _ PIXELSNAP_ON - #pragma multi_compile _ ETC1_EXTERNAL_ALPHA - #include "UnitySprites.cginc" - ENDCG - } - } -} +Shader "Quark Trail" +{ + Properties + { + _MainTex ("Sprite Texture", 2D) = "white" {} + _Color ("Tint", Color) = (1,1,1,1) + [MaterialToggle] PixelSnap ("Pixel snap", Float) = 0 + [HideInInspector] _RendererColor ("RendererColor", Color) = (1,1,1,1) + [HideInInspector] _Flip ("Flip", Vector) = (1,1,1,1) + [PerRendererData] _AlphaTex ("External Alpha", 2D) = "white" {} + [PerRendererData] _EnableExternalAlpha ("Enable External Alpha", Float) = 0 + _StencilMask("Stencil Mask", Int) = 0 + } + + SubShader + { + Tags + { + "Queue"="Transparent" + "IgnoreProjector"="True" + "RenderType"="Transparent" + "PreviewType"="Plane" + "CanUseSpriteAtlas"="True" + } + + Stencil { + Ref 0 + WriteMask [_StencilMask] + ReadMask [_StencilMask] + Comp Equal + Pass Invert + } + + Cull Off + Lighting Off + ZWrite Off + Blend One OneMinusSrcAlpha + + Pass + { + CGPROGRAM + #pragma vertex SpriteVert + #pragma fragment SpriteFrag + #pragma target 2.0 + #pragma multi_compile_instancing + #pragma multi_compile_local _ PIXELSNAP_ON + #pragma multi_compile _ ETC1_EXTERNAL_ALPHA + #include "UnitySprites.cginc" + ENDCG + } + } +} diff --git a/Assets/Sound.meta b/Assets/Sound.meta new file mode 100644 index 000000000..90ae04832 --- /dev/null +++ b/Assets/Sound.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: d38c389ca63740d42910f6c7c3da71f4 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Builds/Test.apk b/Assets/Sound/Spinning Around (Intro).wav similarity index 53% rename from Builds/Test.apk rename to Assets/Sound/Spinning Around (Intro).wav index 3ee05db82..47d0f9169 100644 Binary files a/Builds/Test.apk and b/Assets/Sound/Spinning Around (Intro).wav differ diff --git a/Assets/Sound/Spinning Around (Intro).wav.meta b/Assets/Sound/Spinning Around (Intro).wav.meta new file mode 100644 index 000000000..db7d20e3e --- /dev/null +++ b/Assets/Sound/Spinning Around (Intro).wav.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 2c3f58fea85a63649ae932febddf9156 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Builds/121921.apk b/Assets/Sound/Spinning Around (Loop).wav similarity index 65% rename from Builds/121921.apk rename to Assets/Sound/Spinning Around (Loop).wav index 2caea5d16..9b8898e86 100644 Binary files a/Builds/121921.apk and b/Assets/Sound/Spinning Around (Loop).wav differ diff --git a/Assets/Sound/Spinning Around (Loop).wav.meta b/Assets/Sound/Spinning Around (Loop).wav.meta new file mode 100644 index 000000000..ac5d812f0 --- /dev/null +++ b/Assets/Sound/Spinning Around (Loop).wav.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: eec11d2ebf9f13c4090599b53a1eb50c +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/StaticField.cs b/Assets/StaticField.cs new file mode 100644 index 000000000..90db913ab --- /dev/null +++ b/Assets/StaticField.cs @@ -0,0 +1,10 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class StaticField : TypeQuark +{ + [Tooltip("Electric Field = true, Magnetic Field = false")]public bool type = false; + [Tooltip("Globally affect all charges = true, Locally contained = false")] public bool scope = false; + [Tooltip("Field Strength")]public float Value = 0; +} diff --git a/Assets/StaticField.cs.meta b/Assets/StaticField.cs.meta new file mode 100644 index 000000000..57da1c94d --- /dev/null +++ b/Assets/StaticField.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 5f51c2242944b29468ecc7559a663e15 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/TempBound.cs b/Assets/TempBound.cs new file mode 100644 index 000000000..8abff115b --- /dev/null +++ b/Assets/TempBound.cs @@ -0,0 +1,19 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class TempBound : MonoBehaviour +{ + [SerializeField]public float strength = 10; + public float logBase = 1.4f; + GameObject fluxCenter; + private void Start() + { + fluxCenter = GameObject.FindGameObjectWithTag("FluxCenter"); + } + private void Update() + { + Vector3 direction = -(fluxCenter.transform.position - transform.position); + fluxCenter.GetComponent().AddForce(Mathf.Log(direction.magnitude, logBase) * direction.normalized * strength * Time.deltaTime); + } +} diff --git a/Assets/TempBound.cs.meta b/Assets/TempBound.cs.meta new file mode 100644 index 000000000..df6d02d27 --- /dev/null +++ b/Assets/TempBound.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: f6687ceb78a44b74bb7fe5eacd5d7860 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/TextMesh Pro.meta b/Assets/TextMesh Pro.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Documentation.meta b/Assets/TextMesh Pro/Documentation.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf b/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta b/Assets/TextMesh Pro/Documentation/TextMesh Pro User Guide 2016.pdf.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Fonts.meta b/Assets/TextMesh Pro/Fonts.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Fonts/LiberationSans - OFL.txt b/Assets/TextMesh Pro/Fonts/LiberationSans - OFL.txt old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Fonts/LiberationSans - OFL.txt.meta b/Assets/TextMesh Pro/Fonts/LiberationSans - OFL.txt.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Fonts/LiberationSans.ttf b/Assets/TextMesh Pro/Fonts/LiberationSans.ttf old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Fonts/LiberationSans.ttf.meta b/Assets/TextMesh Pro/Fonts/LiberationSans.ttf.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources.meta b/Assets/TextMesh Pro/Resources.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials.meta b/Assets/TextMesh Pro/Resources/Fonts & Materials.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat.meta b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Drop Shadow.mat.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset.meta b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Fallback.asset.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat.meta b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF - Outline.mat.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta b/Assets/TextMesh Pro/Resources/Fonts & Materials/LiberationSans SDF.asset.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt b/Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta b/Assets/TextMesh Pro/Resources/LineBreaking Following Characters.txt.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt b/Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta b/Assets/TextMesh Pro/Resources/LineBreaking Leading Characters.txt.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Sprite Assets.meta b/Assets/TextMesh Pro/Resources/Sprite Assets.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Sprite Assets/EmojiOne.asset b/Assets/TextMesh Pro/Resources/Sprite Assets/EmojiOne.asset old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Sprite Assets/EmojiOne.asset.meta b/Assets/TextMesh Pro/Resources/Sprite Assets/EmojiOne.asset.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Style Sheets.meta b/Assets/TextMesh Pro/Resources/Style Sheets.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset b/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta b/Assets/TextMesh Pro/Resources/Style Sheets/Default Style Sheet.asset.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/TMP Settings.asset b/Assets/TextMesh Pro/Resources/TMP Settings.asset old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Resources/TMP Settings.asset.meta b/Assets/TextMesh Pro/Resources/TMP Settings.asset.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders.meta b/Assets/TextMesh Pro/Shaders.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Custom-Atlas.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_Bitmap-Mobile.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader b/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_Bitmap.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF Overlay.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF SSD.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Masking.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile Overlay.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile SSD.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Mobile.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface-Mobile.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF-Surface.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF.shader b/Assets/TextMesh Pro/Shaders/TMP_SDF.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_SDF.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_SDF.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader b/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader.meta b/Assets/TextMesh Pro/Shaders/TMP_Sprite.shader.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro.cginc b/Assets/TextMesh Pro/Shaders/TMPro.cginc old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta b/Assets/TextMesh Pro/Shaders/TMPro.cginc.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc b/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc.meta b/Assets/TextMesh Pro/Shaders/TMPro_Mobile.cginc.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc b/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc.meta b/Assets/TextMesh Pro/Shaders/TMPro_Properties.cginc.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc b/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc.meta b/Assets/TextMesh Pro/Shaders/TMPro_Surface.cginc.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Sprites.meta b/Assets/TextMesh Pro/Sprites.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt b/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt old mode 100755 new mode 100644 index 10c4be3a7..384180a92 --- a/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt +++ b/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt @@ -1,3 +1,3 @@ -This sample of beautiful emojis are provided by EmojiOne https://www.emojione.com/ - +This sample of beautiful emojis are provided by EmojiOne https://www.emojione.com/ + Please visit their website to view the complete set of their emojis and review their licensing terms. \ No newline at end of file diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt.meta b/Assets/TextMesh Pro/Sprites/EmojiOne Attribution.txt.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne.json b/Assets/TextMesh Pro/Sprites/EmojiOne.json old mode 100755 new mode 100644 index 16c800d5c..6c4e50bc8 --- a/Assets/TextMesh Pro/Sprites/EmojiOne.json +++ b/Assets/TextMesh Pro/Sprites/EmojiOne.json @@ -1,156 +1,156 @@ -{"frames": [ - -{ - "filename": "1f60a.png", - "frame": {"x":0,"y":0,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f60b.png", - "frame": {"x":128,"y":0,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f60d.png", - "frame": {"x":256,"y":0,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f60e.png", - "frame": {"x":384,"y":0,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f600.png", - "frame": {"x":0,"y":128,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f601.png", - "frame": {"x":128,"y":128,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f602.png", - "frame": {"x":256,"y":128,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f603.png", - "frame": {"x":384,"y":128,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f604.png", - "frame": {"x":0,"y":256,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f605.png", - "frame": {"x":128,"y":256,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f606.png", - "frame": {"x":256,"y":256,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f609.png", - "frame": {"x":384,"y":256,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f618.png", - "frame": {"x":0,"y":384,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "1f923.png", - "frame": {"x":128,"y":384,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "263a.png", - "frame": {"x":256,"y":384,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}, -{ - "filename": "2639.png", - "frame": {"x":384,"y":384,"w":128,"h":128}, - "rotated": false, - "trimmed": false, - "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, - "sourceSize": {"w":128,"h":128}, - "pivot": {"x":0.5,"y":0.5} -}], -"meta": { - "app": "http://www.codeandweb.com/texturepacker", - "version": "1.0", - "image": "EmojiOne.png", - "format": "RGBA8888", - "size": {"w":512,"h":512}, - "scale": "1", - "smartupdate": "$TexturePacker:SmartUpdate:196a26a2e149d875b91ffc8fa3581e76:fc928c7e275404b7e0649307410475cb:424723c3774975ddb2053fd5c4b85f6e$" -} -} +{"frames": [ + +{ + "filename": "1f60a.png", + "frame": {"x":0,"y":0,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f60b.png", + "frame": {"x":128,"y":0,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f60d.png", + "frame": {"x":256,"y":0,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f60e.png", + "frame": {"x":384,"y":0,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f600.png", + "frame": {"x":0,"y":128,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f601.png", + "frame": {"x":128,"y":128,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f602.png", + "frame": {"x":256,"y":128,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f603.png", + "frame": {"x":384,"y":128,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f604.png", + "frame": {"x":0,"y":256,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f605.png", + "frame": {"x":128,"y":256,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f606.png", + "frame": {"x":256,"y":256,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f609.png", + "frame": {"x":384,"y":256,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f618.png", + "frame": {"x":0,"y":384,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "1f923.png", + "frame": {"x":128,"y":384,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "263a.png", + "frame": {"x":256,"y":384,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}, +{ + "filename": "2639.png", + "frame": {"x":384,"y":384,"w":128,"h":128}, + "rotated": false, + "trimmed": false, + "spriteSourceSize": {"x":0,"y":0,"w":128,"h":128}, + "sourceSize": {"w":128,"h":128}, + "pivot": {"x":0.5,"y":0.5} +}], +"meta": { + "app": "http://www.codeandweb.com/texturepacker", + "version": "1.0", + "image": "EmojiOne.png", + "format": "RGBA8888", + "size": {"w":512,"h":512}, + "scale": "1", + "smartupdate": "$TexturePacker:SmartUpdate:196a26a2e149d875b91ffc8fa3581e76:fc928c7e275404b7e0649307410475cb:424723c3774975ddb2053fd5c4b85f6e$" +} +} diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta b/Assets/TextMesh Pro/Sprites/EmojiOne.json.meta old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne.png b/Assets/TextMesh Pro/Sprites/EmojiOne.png old mode 100755 new mode 100644 diff --git a/Assets/TextMesh Pro/Sprites/EmojiOne.png.meta b/Assets/TextMesh Pro/Sprites/EmojiOne.png.meta old mode 100755 new mode 100644 diff --git a/Builds/.DS_Store b/Builds/.DS_Store deleted file mode 100644 index 6e7cd28e5..000000000 Binary files a/Builds/.DS_Store and /dev/null differ diff --git a/Builds/091321.apk b/Builds/091321.apk deleted file mode 100644 index f2148d94b..000000000 Binary files a/Builds/091321.apk and /dev/null differ diff --git a/Builds/093021.apk b/Builds/093021.apk deleted file mode 100644 index d9153a6f0..000000000 Binary files a/Builds/093021.apk and /dev/null differ diff --git a/Builds/101421.apk b/Builds/101421.apk deleted file mode 100644 index 5c7d365b6..000000000 Binary files a/Builds/101421.apk and /dev/null differ diff --git a/Builds/110421.apk b/Builds/110421.apk deleted file mode 100644 index 1bc69ab0a..000000000 Binary files a/Builds/110421.apk and /dev/null differ diff --git a/Builds/test2.apk b/Builds/test2.apk deleted file mode 100644 index 820503995..000000000 Binary files a/Builds/test2.apk and /dev/null differ diff --git a/Builds/test3.apk b/Builds/test3.apk deleted file mode 100644 index 8f8679704..000000000 Binary files a/Builds/test3.apk and /dev/null differ diff --git a/Builds/test3.app/Contents/Frameworks/UnityPlayer.dylib b/Builds/test3.app/Contents/Frameworks/UnityPlayer.dylib deleted file mode 100755 index a23d5fee8..000000000 Binary files a/Builds/test3.app/Contents/Frameworks/UnityPlayer.dylib and /dev/null differ diff --git a/Builds/test3.app/Contents/Frameworks/libMonoPosixHelper.dylib b/Builds/test3.app/Contents/Frameworks/libMonoPosixHelper.dylib deleted file mode 100755 index 36b872730..000000000 Binary files a/Builds/test3.app/Contents/Frameworks/libMonoPosixHelper.dylib and /dev/null differ diff --git a/Builds/test3.app/Contents/Frameworks/libmonobdwgc-2.0.dylib b/Builds/test3.app/Contents/Frameworks/libmonobdwgc-2.0.dylib deleted file mode 100755 index 2be923665..000000000 Binary files a/Builds/test3.app/Contents/Frameworks/libmonobdwgc-2.0.dylib and /dev/null differ diff --git a/Builds/test3.app/Contents/Info.plist b/Builds/test3.app/Contents/Info.plist deleted file mode 100644 index 95d3d7ff1..000000000 --- a/Builds/test3.app/Contents/Info.plist +++ /dev/null @@ -1,45 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - New Proton - CFBundleGetInfoString - Unity Player version 2020.3.2f1 (8fd9074bf66c). (c) 2021 Unity Technologies ApS. All rights reserved. - CFBundleIconFile - PlayerIcon.icns - CFBundleIdentifier - com.DefaultCompany.NewProton - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - New Proton - CFBundlePackageType - APPL - CFBundleShortVersionString - 0.1 - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 0 - LSApplicationCategoryType - public.app-category.games - LSMinimumSystemVersion - 10.13.0 - NSAppTransportSecurity - - NSAllowsArbitraryLoads - - - NSMainNibFile - MainMenu - NSPrincipalClass - PlayerApplication - UnityBuildNumber - 8fd9074bf66c - - diff --git a/Builds/test3.app/Contents/MacOS/New Proton b/Builds/test3.app/Contents/MacOS/New Proton deleted file mode 100755 index b4392aae8..000000000 Binary files a/Builds/test3.app/Contents/MacOS/New Proton and /dev/null differ diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/Browsers/Compat.browser b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/Browsers/Compat.browser deleted file mode 100644 index 9950c71c5..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/Browsers/Compat.browser +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx deleted file mode 100644 index f4d74bff7..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx +++ /dev/null @@ -1,1901 +0,0 @@ -<%-- -// -// DefaultWsdlHelpGenerator.aspx: -// -// Author: -// Lluis Sanchez Gual (lluis@ximian.com) -// -// (C) 2003 Ximian, Inc. http://www.ximian.com -// ---%> - -<%@ Import Namespace="System.Collections" %> -<%@ Import Namespace="System.Collections.Generic" %> -<%@ Import Namespace="System.IO" %> -<%@ Import Namespace="System.Xml.Serialization" %> -<%@ Import Namespace="System.Xml" %> -<%@ Import Namespace="System.Xml.Schema" %> -<%@ Import Namespace="System.Web.Services" %> -<%@ Import Namespace="System.Web.Services.Description" %> -<%@ Import Namespace="System.Web.Services.Configuration" %> -<%@ Import Namespace="System.Web.Configuration" %> -<%@ Import Namespace="System" %> -<%@ Import Namespace="System.Net" %> -<%@ Import Namespace="System.Globalization" %> -<%@ Import Namespace="System.Resources" %> -<%@ Import Namespace="System.Diagnostics" %> -<%@ Import Namespace="System.CodeDom" %> -<%@ Import Namespace="System.CodeDom.Compiler" %> -<%@ Import Namespace="Microsoft.CSharp" %> -<%@ Import Namespace="Microsoft.VisualBasic" %> -<%@ Import Namespace="System.Text" %> -<%@ Import Namespace="System.Text.RegularExpressions" %> -<%@ Import Namespace="System.Security.Cryptography.X509Certificates" %> -<%@ Assembly name="System.Web.Services" %> -<%@ Page debug="true" %> - - - - - - <% - Response.Write (""); - %> - <%=WebServiceName%> Web Service - - - - - - - -
-Web Service
-<%=WebServiceName%> -
- - - - - - - - -
-
-Overview
-
-Service Description -
-Client proxy -

- - - <%#FormatBindingName(DataBinder.Eval(Container.DataItem, "Name").ToString())%> - - - op=<%#GetOpName(Container.DataItem)%>&bnd=<%#DataBinder.Eval(Container.DataItem, "Binding.Name")%>"><%#GetOpName(Container.DataItem)%> -
-
-
-
-
-
- -
- -<% if (CurrentPage == "main") {%> - - - -

Web Service Overview

- <%=WebServiceDescription%> -

- <% if (ProfileViolations != null && ProfileViolations.Count > 0) { %> -

Basic Profile Conformance

- This web service does not conform to WS-I Basic Profile v1.1 - <% - Response.Write ("
    "); - foreach (BasicProfileViolation vio in ProfileViolations) { - Response.Write ("
  • " + vio.NormativeStatement + ": " + vio.Details); - Response.Write ("
      "); - foreach (string ele in vio.Elements) - Response.Write ("
    • " + ele + "
    • "); - Response.Write ("
    "); - Response.Write ("
  • "); - } - Response.Write ("
"); - }%> - -<%} if (DefaultBinding == null) {%> -This service does not contain any public web method. -<%} else if (CurrentPage == "op") {%> - - - - <%=CurrentOperationName%> -

- <% WriteTabs (); %> -


- - <% if (CurrentTab == "main") { %> - Input Parameters -
- <% if (InParams.Count == 0) { %> - No input parameters
- <% } else { %> - - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%><%#DataBinder.Eval(Container.DataItem, "Type")%>
- <% } %> -
- - <% if (OutParams.Count > 0) { %> - Output Parameters -
- - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%><%#DataBinder.Eval(Container.DataItem, "Type")%>
-
- <% } %> - - Remarks -
- <%=OperationDocumentation%> -

- Technical information -
- Format: <%=CurrentOperationFormat%> -
Supported protocols: <%=CurrentOperationProtocols%> - <% } %> - - - - <% if (CurrentTab == "test") { - if (CurrentOperationSupportsTest) {%> - Enter values for the parameters and click the 'Invoke' button to test this method:

-
- - - - - - - - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%>: ">
 
-
-
"> - The web service returned the following result:

-
-
- -
- <% } else {%> - The test form is not available for this operation because it has parameters with a complex structure. - <% } %> - <% } %> - - - - <% if (CurrentTab == "msg") { %> - - The following are sample SOAP requests and responses for each protocol supported by this method: -

- - <% if (IsOperationSupported ("Soap")) { %> - Soap -

-
<%=GenerateOperationMessages ("Soap", true)%>
-
-
<%=GenerateOperationMessages ("Soap", false)%>
-
- <% } %> - <% if (IsOperationSupported ("HttpGet")) { %> - HTTP Get -

-
<%=GenerateOperationMessages ("HttpGet", true)%>
-
-
<%=GenerateOperationMessages ("HttpGet", false)%>
-
- <% } %> - <% if (IsOperationSupported ("HttpPost")) { %> - HTTP Post -

-
<%=GenerateOperationMessages ("HttpPost", true)%>
-
-
<%=GenerateOperationMessages ("HttpPost", false)%>
-
- <% } %> - - <% } %> -<%} else if (CurrentPage == "proxy") {%> - -
- Select the language for which you want to generate a proxy -   - -    -
-
- <%=CurrentProxytName%>    - Download -

-
-
<%=GetProxyCode ()%>
-
-<%} else if (CurrentPage == "wsdl") {%> - - <% if (descriptions.Count > 1 || schemas.Count > 1) {%> - The description of this web service is composed by several documents. Click on the document you want to see: - - - - <%} else {%> - <%}%> -
- <%=CurrentDocumentName%>    - Download -

-
-
<%=GenerateDocument ()%>
-
- -<%}%> - -














-
- - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/machine.config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/machine.config deleted file mode 100644 index 9da7be987..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/machine.config +++ /dev/null @@ -1,283 +0,0 @@ - - - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
- -
- - -
-
-
- -
- -
-
-
- -
- -
-
-
-
-
-
-
-
- - -
-
- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/settings.map b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/settings.map deleted file mode 100644 index 9a52ccc02..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/settings.map +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/web.config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/web.config deleted file mode 100644 index e1428f8c3..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/2.0/web.config +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/Browsers/Compat.browser b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/Browsers/Compat.browser deleted file mode 100644 index 9950c71c5..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/Browsers/Compat.browser +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx deleted file mode 100644 index f4d74bff7..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx +++ /dev/null @@ -1,1901 +0,0 @@ -<%-- -// -// DefaultWsdlHelpGenerator.aspx: -// -// Author: -// Lluis Sanchez Gual (lluis@ximian.com) -// -// (C) 2003 Ximian, Inc. http://www.ximian.com -// ---%> - -<%@ Import Namespace="System.Collections" %> -<%@ Import Namespace="System.Collections.Generic" %> -<%@ Import Namespace="System.IO" %> -<%@ Import Namespace="System.Xml.Serialization" %> -<%@ Import Namespace="System.Xml" %> -<%@ Import Namespace="System.Xml.Schema" %> -<%@ Import Namespace="System.Web.Services" %> -<%@ Import Namespace="System.Web.Services.Description" %> -<%@ Import Namespace="System.Web.Services.Configuration" %> -<%@ Import Namespace="System.Web.Configuration" %> -<%@ Import Namespace="System" %> -<%@ Import Namespace="System.Net" %> -<%@ Import Namespace="System.Globalization" %> -<%@ Import Namespace="System.Resources" %> -<%@ Import Namespace="System.Diagnostics" %> -<%@ Import Namespace="System.CodeDom" %> -<%@ Import Namespace="System.CodeDom.Compiler" %> -<%@ Import Namespace="Microsoft.CSharp" %> -<%@ Import Namespace="Microsoft.VisualBasic" %> -<%@ Import Namespace="System.Text" %> -<%@ Import Namespace="System.Text.RegularExpressions" %> -<%@ Import Namespace="System.Security.Cryptography.X509Certificates" %> -<%@ Assembly name="System.Web.Services" %> -<%@ Page debug="true" %> - - - - - - <% - Response.Write (""); - %> - <%=WebServiceName%> Web Service - - - - - - - -
-Web Service
-<%=WebServiceName%> -
- - - - - - - - -
-
-Overview
-
-Service Description -
-Client proxy -

- - - <%#FormatBindingName(DataBinder.Eval(Container.DataItem, "Name").ToString())%> - - - op=<%#GetOpName(Container.DataItem)%>&bnd=<%#DataBinder.Eval(Container.DataItem, "Binding.Name")%>"><%#GetOpName(Container.DataItem)%> -
-
-
-
-
-
- -
- -<% if (CurrentPage == "main") {%> - - - -

Web Service Overview

- <%=WebServiceDescription%> -

- <% if (ProfileViolations != null && ProfileViolations.Count > 0) { %> -

Basic Profile Conformance

- This web service does not conform to WS-I Basic Profile v1.1 - <% - Response.Write ("
    "); - foreach (BasicProfileViolation vio in ProfileViolations) { - Response.Write ("
  • " + vio.NormativeStatement + ": " + vio.Details); - Response.Write ("
      "); - foreach (string ele in vio.Elements) - Response.Write ("
    • " + ele + "
    • "); - Response.Write ("
    "); - Response.Write ("
  • "); - } - Response.Write ("
"); - }%> - -<%} if (DefaultBinding == null) {%> -This service does not contain any public web method. -<%} else if (CurrentPage == "op") {%> - - - - <%=CurrentOperationName%> -

- <% WriteTabs (); %> -


- - <% if (CurrentTab == "main") { %> - Input Parameters -
- <% if (InParams.Count == 0) { %> - No input parameters
- <% } else { %> - - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%><%#DataBinder.Eval(Container.DataItem, "Type")%>
- <% } %> -
- - <% if (OutParams.Count > 0) { %> - Output Parameters -
- - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%><%#DataBinder.Eval(Container.DataItem, "Type")%>
-
- <% } %> - - Remarks -
- <%=OperationDocumentation%> -

- Technical information -
- Format: <%=CurrentOperationFormat%> -
Supported protocols: <%=CurrentOperationProtocols%> - <% } %> - - - - <% if (CurrentTab == "test") { - if (CurrentOperationSupportsTest) {%> - Enter values for the parameters and click the 'Invoke' button to test this method:

-
- - - - - - - - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%>: ">
 
-
-
"> - The web service returned the following result:

-
-
- -
- <% } else {%> - The test form is not available for this operation because it has parameters with a complex structure. - <% } %> - <% } %> - - - - <% if (CurrentTab == "msg") { %> - - The following are sample SOAP requests and responses for each protocol supported by this method: -

- - <% if (IsOperationSupported ("Soap")) { %> - Soap -

-
<%=GenerateOperationMessages ("Soap", true)%>
-
-
<%=GenerateOperationMessages ("Soap", false)%>
-
- <% } %> - <% if (IsOperationSupported ("HttpGet")) { %> - HTTP Get -

-
<%=GenerateOperationMessages ("HttpGet", true)%>
-
-
<%=GenerateOperationMessages ("HttpGet", false)%>
-
- <% } %> - <% if (IsOperationSupported ("HttpPost")) { %> - HTTP Post -

-
<%=GenerateOperationMessages ("HttpPost", true)%>
-
-
<%=GenerateOperationMessages ("HttpPost", false)%>
-
- <% } %> - - <% } %> -<%} else if (CurrentPage == "proxy") {%> - -
- Select the language for which you want to generate a proxy -   - -    -
-
- <%=CurrentProxytName%>    - Download -

-
-
<%=GetProxyCode ()%>
-
-<%} else if (CurrentPage == "wsdl") {%> - - <% if (descriptions.Count > 1 || schemas.Count > 1) {%> - The description of this web service is composed by several documents. Click on the document you want to see: - - - - <%} else {%> - <%}%> -
- <%=CurrentDocumentName%>    - Download -

-
-
<%=GenerateDocument ()%>
-
- -<%}%> - -














-
- - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/machine.config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/machine.config deleted file mode 100644 index 12839c1f6..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/machine.config +++ /dev/null @@ -1,310 +0,0 @@ - - - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
- -
- - - -
- -
-
-
-
- - - - -
-
-
- -
- -
-
-
- -
- -
-
-
-
-
-
-
-
-
-
-
- - -
-
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/settings.map b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/settings.map deleted file mode 100644 index 4c53aca67..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/settings.map +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/web.config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/web.config deleted file mode 100644 index 2a7dfd2ed..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.0/web.config +++ /dev/null @@ -1,253 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/Browsers/Compat.browser b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/Browsers/Compat.browser deleted file mode 100644 index 9950c71c5..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/Browsers/Compat.browser +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx deleted file mode 100644 index f4d74bff7..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx +++ /dev/null @@ -1,1901 +0,0 @@ -<%-- -// -// DefaultWsdlHelpGenerator.aspx: -// -// Author: -// Lluis Sanchez Gual (lluis@ximian.com) -// -// (C) 2003 Ximian, Inc. http://www.ximian.com -// ---%> - -<%@ Import Namespace="System.Collections" %> -<%@ Import Namespace="System.Collections.Generic" %> -<%@ Import Namespace="System.IO" %> -<%@ Import Namespace="System.Xml.Serialization" %> -<%@ Import Namespace="System.Xml" %> -<%@ Import Namespace="System.Xml.Schema" %> -<%@ Import Namespace="System.Web.Services" %> -<%@ Import Namespace="System.Web.Services.Description" %> -<%@ Import Namespace="System.Web.Services.Configuration" %> -<%@ Import Namespace="System.Web.Configuration" %> -<%@ Import Namespace="System" %> -<%@ Import Namespace="System.Net" %> -<%@ Import Namespace="System.Globalization" %> -<%@ Import Namespace="System.Resources" %> -<%@ Import Namespace="System.Diagnostics" %> -<%@ Import Namespace="System.CodeDom" %> -<%@ Import Namespace="System.CodeDom.Compiler" %> -<%@ Import Namespace="Microsoft.CSharp" %> -<%@ Import Namespace="Microsoft.VisualBasic" %> -<%@ Import Namespace="System.Text" %> -<%@ Import Namespace="System.Text.RegularExpressions" %> -<%@ Import Namespace="System.Security.Cryptography.X509Certificates" %> -<%@ Assembly name="System.Web.Services" %> -<%@ Page debug="true" %> - - - - - - <% - Response.Write (""); - %> - <%=WebServiceName%> Web Service - - - - - - - -
-Web Service
-<%=WebServiceName%> -
- - - - - - - - -
-
-Overview
-
-Service Description -
-Client proxy -

- - - <%#FormatBindingName(DataBinder.Eval(Container.DataItem, "Name").ToString())%> - - - op=<%#GetOpName(Container.DataItem)%>&bnd=<%#DataBinder.Eval(Container.DataItem, "Binding.Name")%>"><%#GetOpName(Container.DataItem)%> -
-
-
-
-
-
- -
- -<% if (CurrentPage == "main") {%> - - - -

Web Service Overview

- <%=WebServiceDescription%> -

- <% if (ProfileViolations != null && ProfileViolations.Count > 0) { %> -

Basic Profile Conformance

- This web service does not conform to WS-I Basic Profile v1.1 - <% - Response.Write ("
    "); - foreach (BasicProfileViolation vio in ProfileViolations) { - Response.Write ("
  • " + vio.NormativeStatement + ": " + vio.Details); - Response.Write ("
      "); - foreach (string ele in vio.Elements) - Response.Write ("
    • " + ele + "
    • "); - Response.Write ("
    "); - Response.Write ("
  • "); - } - Response.Write ("
"); - }%> - -<%} if (DefaultBinding == null) {%> -This service does not contain any public web method. -<%} else if (CurrentPage == "op") {%> - - - - <%=CurrentOperationName%> -

- <% WriteTabs (); %> -


- - <% if (CurrentTab == "main") { %> - Input Parameters -
- <% if (InParams.Count == 0) { %> - No input parameters
- <% } else { %> - - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%><%#DataBinder.Eval(Container.DataItem, "Type")%>
- <% } %> -
- - <% if (OutParams.Count > 0) { %> - Output Parameters -
- - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%><%#DataBinder.Eval(Container.DataItem, "Type")%>
-
- <% } %> - - Remarks -
- <%=OperationDocumentation%> -

- Technical information -
- Format: <%=CurrentOperationFormat%> -
Supported protocols: <%=CurrentOperationProtocols%> - <% } %> - - - - <% if (CurrentTab == "test") { - if (CurrentOperationSupportsTest) {%> - Enter values for the parameters and click the 'Invoke' button to test this method:

-
- - - - - - - - - - - - - - - -
<%#DataBinder.Eval(Container.DataItem, "Name")%>: ">
 
-
-
"> - The web service returned the following result:

-
-
- -
- <% } else {%> - The test form is not available for this operation because it has parameters with a complex structure. - <% } %> - <% } %> - - - - <% if (CurrentTab == "msg") { %> - - The following are sample SOAP requests and responses for each protocol supported by this method: -

- - <% if (IsOperationSupported ("Soap")) { %> - Soap -

-
<%=GenerateOperationMessages ("Soap", true)%>
-
-
<%=GenerateOperationMessages ("Soap", false)%>
-
- <% } %> - <% if (IsOperationSupported ("HttpGet")) { %> - HTTP Get -

-
<%=GenerateOperationMessages ("HttpGet", true)%>
-
-
<%=GenerateOperationMessages ("HttpGet", false)%>
-
- <% } %> - <% if (IsOperationSupported ("HttpPost")) { %> - HTTP Post -

-
<%=GenerateOperationMessages ("HttpPost", true)%>
-
-
<%=GenerateOperationMessages ("HttpPost", false)%>
-
- <% } %> - - <% } %> -<%} else if (CurrentPage == "proxy") {%> - -
- Select the language for which you want to generate a proxy -   - -    -
-
- <%=CurrentProxytName%>    - Download -

-
-
<%=GetProxyCode ()%>
-
-<%} else if (CurrentPage == "wsdl") {%> - - <% if (descriptions.Count > 1 || schemas.Count > 1) {%> - The description of this web service is composed by several documents. Click on the document you want to see: - - - - <%} else {%> - <%}%> -
- <%=CurrentDocumentName%>    - Download -

-
-
<%=GenerateDocument ()%>
-
- -<%}%> - -














-
- - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/machine.config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/machine.config deleted file mode 100644 index 61f788987..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/machine.config +++ /dev/null @@ -1,313 +0,0 @@ - - - - - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
- - -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
- -
- - - -
- -
-
-
-
- - - - -
-
-
- -
- -
-
-
- -
- -
-
-
-
-
-
-
-
-
-
-
- - -
-
- -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/settings.map b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/settings.map deleted file mode 100644 index 4c53aca67..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/settings.map +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/web.config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/web.config deleted file mode 100644 index 324c529f0..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/4.5/web.config +++ /dev/null @@ -1,253 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/browscap.ini b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/browscap.ini deleted file mode 100644 index 1267e1deb..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/browscap.ini +++ /dev/null @@ -1,16979 +0,0 @@ -;;; Provided courtesy of http://browsers.garykeith.com -;;; Created on Wednesday, June 17, 2009 at 6:30 AM GMT - -[GJK_Browscap_Version] -Version=4476 -Released=Wed, 17 Jun 2009 06:30:21 -0000 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DefaultProperties - -[DefaultProperties] -Browser=DefaultProperties -Version=0 -MajorVer=0 -MinorVer=0 -Platform=unknown -Alpha=false -Beta=false -Win16=false -Win32=false -Win64=false -Frames=false -IFrames=false -Tables=false -Cookies=false -BackgroundSounds=false -CDF=false -VBScript=false -JavaApplets=false -JavaScript=false -ActiveXControls=false -isBanned=false -isMobileDevice=false -isSyndicationReader=false -Crawler=false -CssVersion=0 -supportsCSS=false -AOL=false -aolVersion=0 -ECMAScriptVersion=0.0 -W3CDOMVersion=0.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Ask - -[Ask] -Parent=DefaultProperties -Browser=Ask -Frames=true -Tables=true -Crawler=true - -[Mozilla/?.0 (compatible; Ask Jeeves/Teoma*)] -Parent=Ask -Browser=Teoma - -[Mozilla/2.0 (compatible; Ask Jeeves)] -Parent=Ask -Browser=AskJeeves - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Baidu - -[Baidu] -Parent=DefaultProperties -Browser=Baidu -Frames=true -Tables=true -Crawler=true - -[BaiduImageSpider*] -Parent=Baidu -Browser=BaiduImageSpider - -[Baiduspider*] -Parent=Baidu -Browser=BaiDu - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Google - -[Google] -Parent=DefaultProperties -Browser=Google -Frames=true -IFrames=true -Tables=true -JavaScript=true -Crawler=true - -[* (compatible; Googlebot-Mobile/2.1; *http://www.google.com/bot.html)] -Parent=Google -Browser=Googlebot-Mobile -Frames=false -IFrames=false -Tables=false - -[*Google Wireless Transcoder*] -Parent=Google -Browser=Google Wireless Transcoder - -[AdsBot-Google (?http://www.google.com/adsbot.html)] -Parent=Google -Browser=AdsBot-Google - -[Feedfetcher-Google-iGoogleGadgets;*] -Parent=Google -Browser=iGoogleGadgets -isBanned=true -isSyndicationReader=true - -[Feedfetcher-Google;*] -Parent=Google -Browser=Feedfetcher-Google -isBanned=true -isSyndicationReader=true - -[Google OpenSocial agent (http://www.google.com/feedfetcher.html)] -Parent=Google -Browser=Google OpenSocial - -[Google-Site-Verification/1.0] -Parent=Google -Browser=Google-Site-Verification - -[Google-Sitemaps/*] -Parent=Google -Browser=Google-Sitemaps - -[Googlebot-Image/*] -Parent=Google -Browser=Googlebot-Image -CDF=true - -[googlebot-urlconsole] -Parent=Google -Browser=googlebot-urlconsole - -[Googlebot-Video/1.0] -Parent=Google -Browser=Google-Video - -[Googlebot/2.1 (?http://www.google.com/bot.html)] -Parent=Google -Browser=Googlebot - -[Googlebot/2.1 (?http://www.googlebot.com/bot.html)] -Parent=Google -Browser=Googlebot - -[Googlebot/Test*] -Parent=Google -Browser=Googlebot/Test - -[gsa-crawler*] -Parent=Google -Browser=Google Search Appliance -isBanned=true - -[Mediapartners-Google*] -Parent=Google -Browser=Mediapartners-Google - -[Mozilla/4.0 (compatible; Google Desktop)] -Parent=Google -Browser=Google Desktop - -[Mozilla/4.0 (compatible; GoogleToolbar*)] -Parent=Google -Browser=Google Toolbar -isBanned=true - -[Mozilla/5.0 (compatible; Google Keyword Tool;*)] -Parent=Google -Browser=Google Keyword Tool - -[Mozilla/5.0 (compatible; Googlebot/2.1; ?http://www.google.com/bot.html)] -Parent=Google -Browser=Google Webmaster Tools - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Inktomi - -[Inktomi] -Parent=DefaultProperties -Browser=Inktomi -Frames=true -Tables=true -Crawler=true - -[* (compatible;YahooSeeker/M1A1-R2D2; *)] -Parent=Inktomi -Browser=YahooSeeker-Mobile -Frames=false -Tables=false - -[Mozilla/4.0] -Parent=Inktomi - -[Mozilla/4.0 (compatible; MSIE 5.0; Windows NT)] -Parent=Inktomi -Win32=true - -[Mozilla/4.0 (compatible; Yahoo Japan; for robot study; kasugiya)] -Parent=Inktomi -Browser=Yahoo! RobotStudy -isBanned=true - -[Mozilla/5.0 (compatible; BMC/1.0 (Y!J-AGENT))] -Parent=Inktomi -Browser=Y!J-AGENT/BMC - -[Mozilla/5.0 (compatible; BMF/1.0 (Y!J-AGENT))] -Parent=Inktomi -Browser=Y!J-AGENT/BMF - -[Mozilla/5.0 (compatible; BMI/1.0 (Y!J-AGENT; 1.0))] -Parent=Inktomi -Browser=Y!J-AGENT/BMI - -[Mozilla/5.0 (compatible; Yahoo! DE Slurp; http://help.yahoo.com/help/us/ysearch/slurp)] -Parent=Inktomi -Browser=Yahoo! Directory Engine - -[Mozilla/5.0 (compatible; Yahoo! Slurp China; http://misc.yahoo.com.cn/help.html)] -Parent=Inktomi -Browser=Yahoo! Slurp China - -[Mozilla/5.0 (compatible; Yahoo! Slurp/3.0; http://help.yahoo.com/help/us/ysearch/slurp)] -Parent=Inktomi -Browser=Yahoo! Slurp -Version=3.0 -MajorVer=3 -MinorVer=0 - -[Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)] -Parent=Inktomi -Browser=Yahoo! Slurp - -[Mozilla/5.0 (compatible; Yahoo! Verifier/1.1)] -Parent=Inktomi -Browser=Yahoo! Verifier -Version=1.1 -MajorVer=1 -MinorVer=1 - -[Mozilla/5.0 (Slurp/cat; slurp@inktomi.com; http://www.inktomi.com/slurp.html)] -Parent=Inktomi -Browser=Slurp/cat - -[Mozilla/5.0 (Slurp/si; slurp@inktomi.com; http://www.inktomi.com/slurp.html)] -Parent=Inktomi - -[Mozilla/5.0 (Yahoo-MMCrawler/4.0; mailto:vertical-crawl-support@yahoo-inc.com)] -Parent=Inktomi -Browser=Yahoo-MMCrawler -Version=4.0 -MajorVer=4 -MinorVer=0 - -[Scooter/*] -Parent=Inktomi -Browser=Scooter - -[Scooter/3.3Y!CrawlX] -Parent=Inktomi -Browser=Scooter/3.3Y!CrawlX -Version=3.3 -MajorVer=3 -MinorVer=3 - -[slurp] -Parent=Inktomi -Browser=slurp - -[Y!J-BSC/1.0*] -Parent=Inktomi -Browser=Y!J-BSC -Version=1.0 -MajorVer=1 -MinorVer=0 -isBanned=true - -[Y!J-SRD/1.0] -Parent=Inktomi -Browser=Y!J-SRD -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Yahoo Mindset] -Parent=Inktomi -Browser=Yahoo Mindset - -[Yahoo Pipes*] -Parent=Inktomi -Browser=Yahoo Pipes - -[Yahoo! Mindset] -Parent=Inktomi -Browser=Yahoo! Mindset - -[Yahoo! Slurp/Site Explorer] -Parent=Inktomi -Browser=Yahoo! Site Explorer - -[Yahoo-Blogs/*] -Parent=Inktomi -Browser=Yahoo-Blogs - -[Yahoo-MMAudVid*] -Parent=Inktomi -Browser=Yahoo-MMAudVid - -[Yahoo-MMCrawler*] -Parent=Inktomi -Browser=Yahoo-MMCrawler -isBanned=true - -[YahooFeedSeeker*] -Parent=Inktomi -Browser=YahooFeedSeeker -isSyndicationReader=true -Crawler=false - -[YahooSeeker/*] -Parent=Inktomi -Browser=YahooSeeker -isMobileDevice=true - -[YahooSeeker/CafeKelsa (compatible; Konqueror/3.2; FreeBSD*) (KHTML, like Gecko)] -Parent=Inktomi -Browser=YahooSeeker/CafeKelsa - -[YahooSeeker/CafeKelsa-dev (compatible; Konqueror/3.2; FreeBSD*) (KHTML, like Gecko)] -Parent=Inktomi - -[YahooVideoSearch*] -Parent=Inktomi -Browser=YahooVideoSearch - -[YahooYSMcm*] -Parent=Inktomi -Browser=YahooYSMcm - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MSN - -[MSN] -Parent=DefaultProperties -Browser=MSN -Frames=true -Tables=true -Crawler=true - -[adidxbot/1.1 (?http://search.msn.com/msnbot.htm)] -Parent=MSN -Browser=adidxbot - -[librabot/1.0 (*)] -Parent=MSN -Browser=librabot - -[llssbot/1.0] -Parent=MSN -Browser=llssbot -Version=1.0 -MajorVer=1 -MinorVer=0 - -[MSMOBOT/1.1*] -Parent=MSN -Browser=msnbot-mobile -Version=1.1 -MajorVer=1 -MinorVer=1 - -[MSNBot-Academic/1.0*] -Parent=MSN -Browser=MSNBot-Academic -Version=1.0 -MajorVer=1 -MinorVer=0 - -[msnbot-media/1.0*] -Parent=MSN -Browser=msnbot-media -Version=1.0 -MajorVer=1 -MinorVer=0 - -[msnbot-media/1.1*] -Parent=MSN -Browser=msnbot-media -Version=1.1 -MajorVer=1 -MinorVer=1 - -[MSNBot-News/1.0*] -Parent=MSN -Browser=MSNBot-News -Version=1.0 -MajorVer=1 -MinorVer=0 - -[MSNBot-NewsBlogs/1.0*] -Parent=MSN -Browser=MSNBot-NewsBlogs -Version=1 -MajorVer=1 -MinorVer=0 - -[msnbot-products] -Parent=MSN -Browser=msnbot-products - -[msnbot-webmaster/1.0 (*http://search.msn.com/msnbot.htm)] -Parent=MSN -Browser=msnbot-webmaster tools - -[msnbot/1.0*] -Parent=MSN -Browser=msnbot -Version=1.0 -MajorVer=1 -MinorVer=0 - -[msnbot/1.1*] -Parent=MSN -Browser=msnbot -Version=1.1 -MajorVer=1 -MinorVer=1 - -[msnbot/2.0b*] -Parent=MSN -Version=2.0 -MajorVer=2 -MinorVer=0 -Beta=true - -[MSR-ISRCCrawler] -Parent=MSN -Browser=MSR-ISRCCrawler - -[renlifangbot/1.0 (?http://search.msn.com/msnbot.htm)] -Parent=MSN -Browser=renlifangbot - -[T-Mobile Dash Mozilla/4.0 (*) MSNBOT-MOBILE/1.1 (*)] -Parent=MSN -Browser=msnbot-mobile - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Yahoo - -[Yahoo] -Parent=DefaultProperties -Browser=Yahoo -Frames=true -Tables=true -Crawler=true - -[Mozilla/4.0 (compatible; Y!J; for robot study*)] -Parent=Yahoo -Browser=Y!J - -[Mozilla/5.0 (Yahoo-Test/4.0*)] -Parent=Yahoo -Browser=Yahoo-Test -Version=4.0 -MajorVer=4 -MinorVer=0 - -[mp3Spider cn-search-devel at yahoo-inc dot com] -Parent=Yahoo -Browser=Yahoo! Media -isBanned=true - -[My Browser] -Parent=Yahoo -Browser=Yahoo! My Browser - -[Y!OASIS/*] -Parent=Yahoo -Browser=Y!OASIS -isBanned=true - -[YahooYSMcm/2.0.0] -Parent=Yahoo -Browser=YahooYSMcm -Version=2.0 -MajorVer=2 -MinorVer=0 -isBanned=true - -[YRL_ODP_CRAWLER] -Parent=Yahoo -Browser=YRL_ODP_CRAWLER -isBanned=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Yandex - -[Yandex] -Parent=DefaultProperties -Browser=Yandex -Frames=true -IFrames=true -Tables=true -Cookies=true -Crawler=true - -[Mozilla/4.0 (compatible; MSIE 5.0; YANDEX)] -Parent=Yandex - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; en-US; rv:1.9) Gecko VisualParser/3.0] -Parent=Yandex -Browser=VisualParser -isBanned=true - -[YaDirectBot/*] -Parent=Yandex -Browser=YaDirectBot - -[Yandex/*] -Parent=Yandex - -[YandexBlog/*] -Parent=Yandex -Browser=YandexBlog -isSyndicationReader=true - -[YandexSomething/*] -Parent=Yandex -Browser=YandexSomething -isSyndicationReader=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Best of the Web - -[Best of the Web] -Parent=DefaultProperties -Browser=Best of the Web -Frames=true -Tables=true - -[Mozilla/4.0 (compatible; BOTW Feed Grabber; *http://botw.org)] -Parent=Best of the Web -Browser=BOTW Feed Grabber -isSyndicationReader=true -Crawler=false - -[Mozilla/4.0 (compatible; BOTW Spider; *http://botw.org)] -Parent=Best of the Web -Browser=BOTW Spider -isBanned=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Boitho - -[Boitho] -Parent=DefaultProperties -Browser=Boitho -Frames=true -Tables=true -Crawler=true - -[boitho.com-dc/*] -Parent=Boitho -Browser=boitho.com-dc - -[boitho.com-robot/*] -Parent=Boitho -Browser=boitho.com-robot - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Convera - -[Convera] -Parent=DefaultProperties -Browser=Convera -Frames=true -Tables=true -Crawler=true - -[ConveraCrawler/*] -Parent=Convera -Browser=ConveraCrawler - -[ConveraMultiMediaCrawler/0.1*] -Parent=Convera -Browser=ConveraMultiMediaCrawler -Version=0.1 -MajorVer=0 -MinorVer=1 - -[CrawlConvera*] -Parent=Convera -Browser=CrawlConvera - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DotBot - -[DotBot] -Parent=DefaultProperties -Browser=DotBot -Frames=true -Tables=true -isBanned=true -Crawler=true - -[DotBot/* (http://www.dotnetdotcom.org/*)] -Parent=DotBot - -[Mozilla/5.0 (compatible; DotBot/*; http://www.dotnetdotcom.org/*)] -Parent=DotBot - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Entireweb - -[Entireweb] -Parent=DefaultProperties -Browser=Entireweb -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[Mozilla/4.0 (compatible; SpeedySpider; www.entireweb.com)] -Parent=Entireweb - -[Speedy Spider (*Beta/*)] -Parent=Entireweb - -[Speedy?Spider?(http://www.entireweb.com*)] -Parent=Entireweb - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Envolk - -[Envolk] -Parent=DefaultProperties -Browser=Envolk -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[envolk/* (?http://www.envolk.com/envolk*)] -Parent=Envolk - -[envolk?ITS?spider/* (?http://www.envolk.com/envolk*)] -Parent=Envolk - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Exalead - -[Exalead] -Parent=DefaultProperties -Browser=Exalead -Frames=true -Tables=true -isBanned=true -Crawler=true - -[Exabot-Images/1.0] -Parent=Exalead -Browser=Exabot-Images -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Exabot-Test/*] -Parent=Exalead -Browser=Exabot-Test - -[Exabot/2.0] -Parent=Exalead -Browser=Exabot - -[Exabot/3.0] -Parent=Exalead -Browser=Exabot -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=Liberate - -[Exalead NG/*] -Parent=Exalead -Browser=Exalead NG -isBanned=true - -[Mozilla/5.0 (compatible; Exabot-Images/3.0;*)] -Parent=Exalead -Browser=Exabot-Images - -[Mozilla/5.0 (compatible; Exabot/3.0 (BiggerBetter/tests);*)] -Parent=Exalead -Browser=Exabot/BiggerBetter/tests - -[Mozilla/5.0 (compatible; Exabot/3.0;*)] -Parent=Exalead -Browser=Exabot -isBanned=false - -[Mozilla/5.0 (compatible; NGBot/*)] -Parent=Exalead - -[ng/*] -Parent=Exalead -Browser=Exalead Previewer -Version=1.0 -MajorVer=1 -MinorVer=0 -isBanned=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Fast/AllTheWeb - -[Fast/AllTheWeb] -Parent=DefaultProperties -Browser=Fast/AllTheWeb -Alpha=true -Beta=true -Win16=true -Win32=true -Win64=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -isBanned=true -isMobileDevice=true -isSyndicationReader=true -Crawler=true - -[*FAST Enterprise Crawler*] -Parent=Fast/AllTheWeb -Browser=FAST Enterprise Crawler - -[FAST Data Search Document Retriever/4.0*] -Parent=Fast/AllTheWeb -Browser=FAST Data Search Document Retriever - -[FAST MetaWeb Crawler (helpdesk at fastsearch dot com)] -Parent=Fast/AllTheWeb -Browser=FAST MetaWeb Crawler - -[Fast PartnerSite Crawler*] -Parent=Fast/AllTheWeb -Browser=FAST PartnerSite - -[FAST-WebCrawler/*] -Parent=Fast/AllTheWeb -Browser=FAST-WebCrawler - -[FAST-WebCrawler/*/FirstPage*] -Parent=Fast/AllTheWeb -Browser=FAST-WebCrawler/FirstPage - -[FAST-WebCrawler/*/Fresh*] -Parent=Fast/AllTheWeb -Browser=FAST-WebCrawler/Fresh - -[FAST-WebCrawler/*/PartnerSite*] -Parent=Fast/AllTheWeb -Browser=FAST PartnerSite - -[FAST-WebCrawler/*?Multimedia*] -Parent=Fast/AllTheWeb -Browser=FAST-WebCrawler/Multimedia - -[FastSearch Web Crawler for*] -Parent=Fast/AllTheWeb -Browser=FastSearch Web Crawler - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Gigabot - -[Gigabot] -Parent=DefaultProperties -Browser=Gigabot -Frames=true -IFrames=true -Tables=true -Crawler=true - -[Gigabot*] -Parent=Gigabot - -[GigabotSiteSearch/*] -Parent=Gigabot -Browser=GigabotSiteSearch - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Ilse - -[Ilse] -Parent=DefaultProperties -Browser=Ilse -Frames=true -Tables=true -Crawler=true - -[IlseBot/*] -Parent=Ilse - -[INGRID/?.0*] -Parent=Ilse -Browser=Ilse - -[Mozilla/3.0 (INGRID/*] -Parent=Ilse -Browser=Ilse - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; iVia Project - -[iVia Project] -Parent=DefaultProperties -Browser=iVia Project -Frames=true -IFrames=true -Tables=true -Crawler=true - -[DataFountains/DMOZ Downloader*] -Parent=iVia Project -Browser=DataFountains/DMOZ Downloader -isBanned=true - -[DataFountains/DMOZ Feature Vector Corpus Creator*] -Parent=iVia Project -Browser=DataFountains/DMOZ Feature Vector Corpus - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Jayde Online - -[Jayde Online] -Parent=DefaultProperties -Browser=Jayde Online -Frames=true -Tables=true -Crawler=true - -[ExactSeek Crawler/*] -Parent=Jayde Online -Browser=ExactSeek Crawler - -[exactseek-pagereaper-* (crawler@exactseek.com)] -Parent=Jayde Online -Browser=exactseek-pagereaper -isBanned=true - -[exactseek.com] -Parent=Jayde Online -Browser=exactseek.com - -[Jayde Crawler*] -Parent=Jayde Online -Browser=Jayde Crawler - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Lycos - -[Lycos] -Parent=DefaultProperties -Browser=Lycos -Frames=true -Tables=true -Crawler=true - -[Lycos*] -Parent=Lycos -Browser=Lycos - -[Lycos-Proxy] -Parent=Lycos -Browser=Lycos-Proxy - -[Lycos-Spider_(modspider)] -Parent=Lycos -Browser=Lycos-Spider_(modspider) - -[Lycos-Spider_(T-Rex)] -Parent=Lycos -Browser=Lycos-Spider_(T-Rex) - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Naver - -[Naver] -Parent=DefaultProperties -Browser=Naver -isBanned=true -Crawler=true - -[Cowbot-* (NHN Corp*naver.com)] -Parent=Naver -Browser=Naver Cowbot - -[Mozilla/4.0 (compatible; NaverBot/*; *)] -Parent=Naver - -[Mozilla/4.0 (compatible; NaverBot/*; nhnbot@naver.com)] -Parent=Naver -Browser=Naver NaverBot - -[NaverBot-* (NHN Corp*naver.com)] -Parent=Naver -Browser=Naver NHN Corp - -[Yeti/*] -Parent=Naver -Browser=Yeti - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Snap - -[Snap] -Parent=DefaultProperties -Browser=Snap -isBanned=true -Crawler=true - -[Mozilla/5.0 (SnapPreviewBot) Gecko/* Firefox/*] -Parent=Snap - -[Snapbot/*] -Parent=Snap - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Sogou - -[Sogou] -Parent=DefaultProperties -Browser=Sogou -Frames=true -Tables=true -isBanned=true -Crawler=true - -[shaboyi spider] -Parent=Sogou -Browser=Sogou/Shaboyi Spider - -[Sogou develop spider/*] -Parent=Sogou -Browser=Sogou Develop Spider - -[Sogou head spider*] -Parent=Sogou -Browser=Sogou/HEAD Spider - -[sogou js robot(*)] -Parent=Sogou - -[Sogou Orion spider/*] -Parent=Sogou -Browser=Sogou Orion spider - -[Sogou Pic Agent] -Parent=Sogou -Browser=Sogou/Image Crawler - -[Sogou Pic Spider] -Parent=Sogou -Browser=Sogou Pic Spider - -[Sogou Push Spider/*] -Parent=Sogou -Browser=Sogou Push Spider - -[sogou spider] -Parent=Sogou -Browser=Sogou/Spider - -[sogou web spider*] -Parent=Sogou -Browser=sogou web spider - -[Sogou-Test-Spider/*] -Parent=Sogou -Browser=Sogou-Test-Spider - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; YodaoBot - -[YodaoBot] -Parent=DefaultProperties -Browser=YodaoBot -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[Mozilla/5.0 (compatible; YodaoBot/1.*)] -Parent=YodaoBot - -[Mozilla/5.0 (compatible;YodaoBot-Image/1.*)] -Parent=YodaoBot -Browser=YodaoBot-Image - -[WAP_Browser/5.0 (compatible; YodaoBot/1.*)] -Parent=YodaoBot - -[YodaoBot/1.* (*)] -Parent=YodaoBot - -[Best Whois (http://www.bestwhois.net/)] -Parent=DNS Tools -Browser=Best Whois - -[DNSGroup/*] -Parent=DNS Tools -Browser=DNS Group Crawler - -[NG-Search/*] -Parent=Exalead -Browser=NG-SearchBot - -[TouchStone] -Parent=Feeds Syndicators -Browser=TouchStone -isSyndicationReader=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; General Crawlers - -[General Crawlers] -Parent=DefaultProperties -Browser=General Crawlers -Crawler=true - -[A .NET Web Crawler] -Parent=General Crawlers -isBanned=true - -[BabalooSpider/1.*] -Parent=General Crawlers -Browser=BabalooSpider - -[BilgiBot/*] -Parent=General Crawlers -Browser=BilgiBot -isBanned=true - -[bot/* (bot; *bot@bot.bot)] -Parent=General Crawlers -Browser=bot -isBanned=true - -[CyberPatrol*] -Parent=General Crawlers -Browser=CyberPatrol -isBanned=true - -[Cynthia 1.0] -Parent=General Crawlers -Browser=Cynthia -Version=1.0 -MajorVer=1 -MinorVer=0 - -[ddetailsbot (http://www.displaydetails.com)] -Parent=General Crawlers -Browser=ddetailsbot - -[DomainCrawler/1.0 (info@domaincrawler.com; http://www.domaincrawler.com/domains/view/*)] -Parent=General Crawlers -Browser=DomainCrawler - -[DomainsBotBot/1.*] -Parent=General Crawlers -Browser=DomainsBotBot -isBanned=true - -[DomainsDB.net MetaCrawler*] -Parent=General Crawlers -Browser=DomainsDB - -[Drupal (*)] -Parent=General Crawlers -Browser=Drupal - -[Dumbot (version *)*] -Parent=General Crawlers -Browser=Dumbfind - -[EuripBot/*] -Parent=General Crawlers -Browser=Europe Internet Portal - -[eventax/*] -Parent=General Crawlers -Browser=eventax - -[FANGCrawl/*] -Parent=General Crawlers -Browser=Safe-t.net Web Filtering Service -isBanned=true - -[favorstarbot/*] -Parent=General Crawlers -Browser=favorstarbot -isBanned=true - -[FollowSite.com (*)] -Parent=General Crawlers -Browser=FollowSite -isBanned=true - -[Gaisbot*] -Parent=General Crawlers -Browser=Gaisbot - -[Healthbot/Health_and_Longevity_Project_(HealthHaven.com) ] -Parent=General Crawlers -Browser=Healthbot -isBanned=true - -[hitcrawler_0.*] -Parent=General Crawlers -Browser=hitcrawler -isBanned=true - -[htdig/*] -Parent=General Crawlers -Browser=ht://Dig - -[http://hilfe.acont.de/bot.html ACONTBOT] -Parent=General Crawlers -Browser=ACONTBOT -isBanned=true - -[JetBrains*] -Parent=General Crawlers -Browser=Omea Pro - -[KakleBot - www.kakle.com/0.1] -Parent=General Crawlers -Browser=KakleBot - -[KBeeBot/0.*] -Parent=General Crawlers -Browser=KBeeBot -isBanned=true - -[Keyword Density/*] -Parent=General Crawlers -Browser=Keyword Density - -[LetsCrawl.com/1.0*] -Parent=General Crawlers -Browser=LetsCrawl.com -isBanned=true - -[Lincoln State Web Browser] -Parent=General Crawlers -Browser=Lincoln State Web Browser -isBanned=true - -[Links4US-Crawler,*] -Parent=General Crawlers -Browser=Links4US-Crawler -isBanned=true - -[Lorkyll *.* -- lorkyll@444.net] -Parent=General Crawlers -Browser=Lorkyll -isBanned=true - -[Lsearch/sondeur] -Parent=General Crawlers -Browser=Lsearch/sondeur -isBanned=true - -[LucidMedia ClickSense/4.?] -Parent=General Crawlers -Browser=LucidMedia-ClickSense -isBanned=true - -[MapoftheInternet.com?(?http://MapoftheInternet.com)] -Parent=General Crawlers -Browser=MapoftheInternet -isBanned=true - -[Marvin v0.3] -Parent=General Crawlers -Browser=MedHunt -Version=0.3 -MajorVer=0 -MinorVer=3 - -[masidani_bot_v0.6*] -Parent=General Crawlers -Browser=masidani_bot - -[Metaspinner/0.01 (Metaspinner; http://www.meta-spinner.de/; support@meta-spinner.de/)] -Parent=General Crawlers -Browser=Metaspinner/0.01 -Version=0.01 -MajorVer=0 -MinorVer=01 - -[metatagsdir/*] -Parent=General Crawlers -Browser=metatagsdir -isBanned=true - -[Microsoft Windows Network Diagnostics] -Parent=General Crawlers -Browser=Microsoft Windows Network Diagnostics -isBanned=true - -[Miva (AlgoFeedback@miva.com)] -Parent=General Crawlers -Browser=Miva - -[moget/*] -Parent=General Crawlers -Browser=Goo - -[Mozdex/0.7.2*] -Parent=General Crawlers -Browser=Mozdex - -[Mozilla Compatible (MS IE 3.01 WinNT)] -Parent=General Crawlers -isBanned=true - -[Mozilla/* (compatible; WebCapture*)] -Parent=General Crawlers -Browser=WebCapture - -[Mozilla/4.0 (compatible; DepSpid/*)] -Parent=General Crawlers -Browser=DepSpid - -[Mozilla/4.0 (compatible; MSIE *; Windows NT *; SV1)] -Parent=General Crawlers -Browser=AVG - -[Mozilla/4.0 (compatible; MSIE 4.01; Vonna.com b o t)] -Parent=General Crawlers -Browser=Vonna.com -isBanned=true - -[Mozilla/4.0 (compatible; MSIE 4.01; Windows95)] -Parent=General Crawlers -Win32=true - -[Mozilla/4.0 (compatible; MSIE 4.5; Windows 98; )] -Parent=General Crawlers -Win32=true - -[Mozilla/4.0 (compatible; MyFamilyBot/*)] -Parent=General Crawlers -Browser=MyFamilyBot - -[Mozilla/4.0 (compatible; N-Stealth)] -Parent=General Crawlers -Browser=N-Stealth - -[Mozilla/4.0 (compatible; Scumbot/*; Linux/*)] -Parent=General Crawlers -isBanned=true - -[Mozilla/4.0 (compatible; Spider; Linux)] -Parent=General Crawlers -isBanned=true - -[Mozilla/4.0 (compatible; Win32)] -Parent=General Crawlers -Browser=Unknown Crawler -isBanned=true - -[Mozilla/4.1] -Parent=General Crawlers -isBanned=true - -[Mozilla/4.5] -Parent=General Crawlers -isBanned=true - -[Mozilla/5.0 (*http://gnomit.com/) Gecko/* Gnomit/1.0] -Parent=General Crawlers -Browser=Gnomit -isBanned=true - -[Mozilla/5.0 (compatible; AboutUsBot/*)] -Parent=General Crawlers -Browser=AboutUsBot -isBanned=true - -[Mozilla/5.0 (compatible; BuzzRankingBot/*)] -Parent=General Crawlers -Browser=BuzzRankingBot -isBanned=true - -[Mozilla/5.0 (compatible; Diffbot/0.1; http://www.diffbot.com)] -Parent=General Crawlers -Browser=Diffbot - -[Mozilla/5.0 (compatible; FirstSearchBot/1.0; *)] -Parent=General Crawlers -Browser=FirstSearchBot - -[mozilla/5.0 (compatible; genevabot http://www.healthdash.com)] -Parent=General Crawlers -Browser=Healthdash - -[Mozilla/5.0 (compatible; JadynAveBot; *http://www.jadynave.com/robot*] -Parent=General Crawlers -Browser=JadynAveBot -isBanned=true - -[Mozilla/5.0 (compatible; Kyluka crawl; http://www.kyluka.com/crawl.html; crawl@kyluka.com)] -Parent=General Crawlers -Browser=Kyluka - -[Mozilla/5.0 (compatible; MJ12bot/v1.2.*; http://www.majestic12.co.uk/bot.php*)] -Parent=General Crawlers -Browser=MJ12bot -Version=1.2 -MajorVer=1 -MinorVer=2 - -[Mozilla/5.0 (compatible; MSIE 7.0 ?http://www.europarchive.org)] -Parent=General Crawlers -Browser=Europe Web Archive - -[Mozilla/5.0 (compatible; Seznam screenshot-generator 2.0;*)] -Parent=General Crawlers -Browser=Seznam screenshot-generator -isBanned=true - -[Mozilla/5.0 (compatible; Twingly Recon; http://www.twingly.com/)] -Parent=General Crawlers -Browser=Twingly Recon - -[Mozilla/5.0 (compatible; unwrapbot/2.*; http://www.unwrap.jp*)] -Parent=General Crawlers -Browser=UnWrap - -[Mozilla/5.0 (compatible; Vermut*)] -Parent=General Crawlers -Browser=Vermut - -[Mozilla/5.0 (compatible; Webbot/*)] -Parent=General Crawlers -Browser=Webbot.ru -isBanned=true - -[n4p_bot*] -Parent=General Crawlers -Browser=n4p_bot - -[nabot*] -Parent=General Crawlers -Browser=Nabot - -[NetCarta_WebMapper/*] -Parent=General Crawlers -Browser=NetCarta_WebMapper -isBanned=true - -[NetID.com Bot*] -Parent=General Crawlers -Browser=NetID.com Bot -isBanned=true - -[neTVision AG andreas.heidoetting@thomson-webcast.net] -Parent=General Crawlers -Browser=neTVision - -[NextopiaBOT*] -Parent=General Crawlers -Browser=NextopiaBOT - -[nicebot] -Parent=General Crawlers -Browser=nicebot -isBanned=true - -[niXXieBot?Foster*] -Parent=General Crawlers -Browser=niXXiebot-Foster - -[Nozilla/P.N (Just for IDS woring)] -Parent=General Crawlers -Browser=Nozilla/P.N -isBanned=true - -[Nudelsalat/*] -Parent=General Crawlers -Browser=Nudelsalat -isBanned=true - -[NV32ts] -Parent=General Crawlers -Browser=NV32ts -isBanned=true - -[Ocelli/*] -Parent=General Crawlers -Browser=Ocelli - -[OpenTaggerBot (http://www.opentagger.com/opentaggerbot.htm)] -Parent=General Crawlers -Browser=OpenTaggerBot - -[Oracle Enterprise Search] -Parent=General Crawlers -Browser=Oracle Enterprise Search -isBanned=true - -[Oracle Ultra Search] -Parent=General Crawlers -Browser=Oracle Ultra Search - -[Pajaczek/*] -Parent=General Crawlers -Browser=Pajaczek -isBanned=true - -[panscient.com] -Parent=General Crawlers -Browser=panscient.com -isBanned=true - -[Patwebbot (http://www.herz-power.de/technik.html)] -Parent=General Crawlers -Browser=Patwebbot - -[PDFBot (crawler@pdfind.com)] -Parent=General Crawlers -Browser=PDFBot - -[Pete-Spider/1.*] -Parent=General Crawlers -Browser=Pete-Spider -isBanned=true - -[PhpDig/*] -Parent=General Crawlers -Browser=PhpDig - -[PlantyNet_WebRobot*] -Parent=General Crawlers -Browser=PlantyNet -isBanned=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; PluckIt - -[PluckItCrawler/1.0 (*)] -Parent=General Crawlers -isMobileDevice=true - -[PMAFind] -Parent=General Crawlers -Browser=PMAFind -isBanned=true - -[Poodle_predictor_1.0] -Parent=General Crawlers -Browser=Poodle Predictor - -[QuickFinder Crawler] -Parent=General Crawlers -Browser=QuickFinder -isBanned=true - -[Radiation Retriever*] -Parent=General Crawlers -Browser=Radiation Retriever -isBanned=true - -[RedCarpet/*] -Parent=General Crawlers -Browser=RedCarpet -isBanned=true - -[RixBot (http://babelserver.org/rix)] -Parent=General Crawlers -Browser=RixBot - -[Rome Client (http://tinyurl.com/64t5n) Ver: 0.*] -Parent=General Crawlers -Browser=TinyURL - -[SBIder/*] -Parent=General Crawlers -Browser=SiteSell - -[ScollSpider/2.*] -Parent=General Crawlers -Browser=ScollSpider -isBanned=true - -[Search Fst] -Parent=General Crawlers -Browser=Search Fst - -[searchbot admin@google.com] -Parent=General Crawlers -Browser=searchbot -isBanned=true - -[Seeker.lookseek.com] -Parent=General Crawlers -Browser=LookSeek -isBanned=true - -[semanticdiscovery/*] -Parent=General Crawlers -Browser=Semantic Discovery - -[SeznamBot/*] -Parent=General Crawlers -Browser=SeznamBot -isBanned=true - -[Shelob (shelob@gmx.net)] -Parent=General Crawlers -Browser=Shelob -isBanned=true - -[shelob v1.*] -Parent=General Crawlers -Browser=shelob -isBanned=true - -[ShopWiki/1.0*] -Parent=General Crawlers -Browser=ShopWiki -Version=1.0 -MajorVer=1 -MinorVer=0 - -[ShowXML/1.0 libwww/5.4.0] -Parent=General Crawlers -Browser=ShowXML -isBanned=true - -[sitecheck.internetseer.com*] -Parent=General Crawlers -Browser=Internetseer - -[SMBot/*] -Parent=General Crawlers -Browser=SMBot - -[sohu*] -Parent=General Crawlers -Browser=sohu-search -isBanned=true - -[SpankBot*] -Parent=General Crawlers -Browser=SpankBot -isBanned=true - -[spider (tspyyp@tom.com)] -Parent=General Crawlers -Browser=spider (tspyyp@tom.com) -isBanned=true - -[Sunrise/0.*] -Parent=General Crawlers -Browser=Sunrise -isBanned=true - -[Superpages URL Verification Engine] -Parent=General Crawlers -Browser=Superpages - -[Surf Knight] -Parent=General Crawlers -Browser=Surf Knight -isBanned=true - -[SurveyBot/*] -Parent=General Crawlers -Browser=SurveyBot -isBanned=true - -[SynapticSearch/AI Crawler 1.?] -Parent=General Crawlers -Browser=SynapticSearch -isBanned=true - -[SyncMgr] -Parent=General Crawlers -Browser=SyncMgr - -[Tagyu Agent/1.0] -Parent=General Crawlers -Browser=Tagyu - -[Talkro Web-Shot/*] -Parent=General Crawlers -Browser=Talkro Web-Shot -isBanned=true - -[Tecomi Bot (http://www.tecomi.com/bot.htm)] -Parent=General Crawlers -Browser=Tecomi - -[TheInformant*] -Parent=General Crawlers -Browser=TheInformant -isBanned=true - -[Toata dragostea*] -Parent=General Crawlers -Browser=Toata dragostea -isBanned=true - -[Tutorial Crawler*] -Parent=General Crawlers -isBanned=true - -[UbiCrawler/*] -Parent=General Crawlers -Browser=UbiCrawler - -[UCmore] -Parent=General Crawlers -Browser=UCmore - -[User*Agent:*] -Parent=General Crawlers -isBanned=true - -[USER_AGENT] -Parent=General Crawlers -Browser=USER_AGENT -isBanned=true - -[VadixBot] -Parent=General Crawlers -Browser=VadixBot - -[VengaBot/*] -Parent=General Crawlers -Browser=VengaBot -isBanned=true - -[Visicom Toolbar] -Parent=General Crawlers -Browser=Visicom Toolbar - -[W3C-WebCon/*] -Parent=General Crawlers -Browser=W3C-WebCon - -[Webclipping.com] -Parent=General Crawlers -Browser=Webclipping.com -isBanned=true - -[webcollage/*] -Parent=General Crawlers -Browser=WebCollage -isBanned=true - -[WebCrawler_1.*] -Parent=General Crawlers -Browser=WebCrawler - -[WebFilter Robot*] -Parent=General Crawlers -Browser=WebFilter Robot - -[WeBoX/*] -Parent=General Crawlers -Browser=WeBoX - -[WebTrends/*] -Parent=General Crawlers -Browser=WebTrends - -[West Wind Internet Protocols*] -Parent=General Crawlers -Browser=Versatel -isBanned=true - -[WhizBang] -Parent=General Crawlers -Browser=WhizBang - -[Willow Internet Crawler by Twotrees V*] -Parent=General Crawlers -Browser=Willow Internet Crawler - -[WIRE/* (Linux; i686; Bot,Robot,Spider,Crawler)] -Parent=General Crawlers -Browser=WIRE -isBanned=true - -[www.fi crawler, contact crawler@www.fi] -Parent=General Crawlers -Browser=www.fi crawler - -[Xerka WebBot v1.*] -Parent=General Crawlers -Browser=Xerka -isBanned=true - -[XML Sitemaps Generator*] -Parent=General Crawlers -Browser=XML Sitemaps Generator - -[XSpider*] -Parent=General Crawlers -Browser=XSpider -isBanned=true - -[YooW!/* (?http://www.yoow.eu)] -Parent=General Crawlers -Browser=YooW! -isBanned=true - -[HiddenMarket-*] -Parent=General RSS -Browser=HiddenMarket -isBanned=true - -[FOTOCHECKER] -Parent=Image Crawlers -Browser=FOTOCHECKER -isBanned=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Search Engines - -[Search Engines] -Parent=DefaultProperties -Browser=Search Engines -Crawler=true - -[*FDSE robot*] -Parent=Search Engines -Browser=FDSE Robot - -[*Fluffy the spider*] -Parent=Search Engines -Browser=SearchHippo - -[Abacho*] -Parent=Search Engines -Browser=Abacho - -[ah-ha.com crawler (crawler@ah-ha.com)] -Parent=Search Engines -Browser=Ah-Ha - -[AIBOT/*] -Parent=Search Engines -Browser=21Seek.Com - -[ALeadSoftbot/*] -Parent=Search Engines -Browser=ALeadSoftbot - -[Amfibibot/*] -Parent=Search Engines -Browser=Amfibi - -[AnswerBus (http://www.answerbus.com/)] -Parent=Search Engines - -[antibot-V*] -Parent=Search Engines -Browser=antibot - -[appie*(www.walhello.com)] -Parent=Search Engines -Browser=Walhello - -[ASPSeek/*] -Parent=Search Engines -Browser=ASPSeek - -[BigCliqueBOT/*] -Parent=Search Engines -Browser=BigClique.com/BigClic.com - -[Blaiz-Bee/*] -Parent=Search Engines -Browser=RawGrunt - -[btbot/*] -Parent=Search Engines -Browser=Bit Torrent Search Engine - -[Busiversebot/v1.0 (http://www.busiverse.com/bot.php)] -Parent=Search Engines -Browser=Busiversebot -isBanned=true - -[CatchBot/*; http://www.catchbot.com] -Parent=Search Engines -Browser=CatchBot -Version=1.0 -MajorVer=1 -MinorVer=0 - -[CipinetBot (http://www.cipinet.com/bot.html)] -Parent=Search Engines -Browser=CipinetBot - -[Cogentbot/1.?*] -Parent=Search Engines -Browser=Cogentbot - -[compatible; Mozilla 4.0; MSIE 5.5; (SqwidgeBot v1.01 - http://www.sqwidge.com/bot/)] -Parent=Search Engines -Browser=SqwidgeBot - -[cosmos*] -Parent=Search Engines -Browser=Xyleme - -[Deepindex] -Parent=Search Engines -Browser=Deepindex - -[DiamondBot] -Parent=Search Engines -Browser=DiamondBot - -[Dumbot*] -Parent=Search Engines -Browser=Dumbot -Version=0.2 -MajorVer=0 -MinorVer=2 -Beta=true - -[Eule?Robot*] -Parent=Search Engines -Browser=Eule-Robot - -[Faxobot/*] -Parent=Search Engines -Browser=Faxo - -[Filangy/*] -Parent=Search Engines -Browser=Filangy - -[flatlandbot/*] -Parent=Search Engines -Browser=Flatland - -[Fooky.com/ScorpionBot/ScoutOut;*] -Parent=Search Engines -Browser=ScorpionBot -isBanned=true - -[FyberSpider*] -Parent=Search Engines -Browser=FyberSpider -isBanned=true - -[Gaisbot/*] -Parent=Search Engines -Browser=Gaisbot - -[gazz/*(gazz@nttr.co.jp)] -Parent=Search Engines -Browser=gazz - -[geniebot*] -Parent=Search Engines -Browser=GenieKnows - -[GOFORITBOT (?http://www.goforit.com/about/?)] -Parent=Search Engines -Browser=GoForIt - -[GoGuidesBot/*] -Parent=Search Engines -Browser=GoGuidesBot - -[GroschoBot/*] -Parent=Search Engines -Browser=GroschoBot - -[GurujiBot/1.*] -Parent=Search Engines -Browser=GurujiBot -isBanned=true - -[HenryTheMiragoRobot*] -Parent=Search Engines -Browser=Mirago - -[HolmesBot (http://holmes.ge)] -Parent=Search Engines -Browser=HolmesBot - -[Hotzonu/*] -Parent=Search Engines -Browser=Hotzonu - -[HyperEstraier/*] -Parent=Search Engines -Browser=HyperEstraier -isBanned=true - -[i1searchbot/*] -Parent=Search Engines -Browser=i1searchbot - -[IIITBOT/1.*] -Parent=Search Engines -Browser=Indian Language Web Search Engine - -[Iltrovatore-?etaccio/*] -Parent=Search Engines -Browser=Iltrovatore-Setaccio - -[InfociousBot (?http://corp.infocious.com/tech_crawler.php)] -Parent=Search Engines -Browser=InfociousBot -isBanned=true - -[Infoseek SideWinder/*] -Parent=Search Engines -Browser=Infoseek - -[iSEEKbot/*] -Parent=Search Engines -Browser=iSEEKbot - -[Knight/0.? (Zook Knight; http://knight.zook.in/; knight@zook.in)] -Parent=Search Engines -Browser=Knight - -[Kolinka Forum Search (www.kolinka.com)] -Parent=Search Engines -Browser=Kolinka Forum Search -isBanned=true - -[KRetrieve/] -Parent=Search Engines -Browser=KRetrieve -isBanned=true - -[LapozzBot/*] -Parent=Search Engines -Browser=LapozzBot - -[Linknzbot*] -Parent=Search Engines -Browser=Linknzbot - -[LocalcomBot/*] -Parent=Search Engines -Browser=LocalcomBot - -[Mail.Ru/1.0] -Parent=Search Engines -Browser=Mail.Ru - -[MaSagool/*] -Parent=Search Engines -Browser=Sagoo -Version=1.0 -MajorVer=1 -MinorVer=0 - -[miniRank/*] -Parent=Search Engines -Browser=miniRank - -[Mnogosearch*] -Parent=Search Engines -Browser=Mnogosearch - -[Mozilla/0.9* no dos :) (Linux)] -Parent=Search Engines -Browser=goliat -isBanned=true - -[Mozilla/4.0 (compatible; Arachmo)] -Parent=Search Engines -Browser=Arachmo - -[Mozilla/4.0 (compatible; http://search.thunderstone.com/texis/websearch/about.html)] -Parent=Search Engines -Browser=ThunderStone -isBanned=true - -[Mozilla/4.0 (compatible; MSIE *; Windows NT; Girafabot; girafabot at girafa dot com; http://www.girafa.com)] -Parent=Search Engines -Browser=Girafabot -Win32=true - -[Mozilla/4.0 (compatible; Vagabondo/*; webcrawler at wise-guys dot nl; *)] -Parent=Search Engines -Browser=Vagabondo - -[Mozilla/4.0(?compatible; MSIE 6.0; Qihoo *)] -Parent=Search Engines -Browser=Qihoo - -[Mozilla/4.7 (compatible; WhizBang; http://www.whizbang.com/crawler)] -Parent=Search Engines -Browser=Inxight Software - -[Mozilla/5.0 (*) VoilaBot*] -Parent=Search Engines -Browser=VoilaBot -isBanned=true - -[Mozilla/5.0 (compatible; ActiveTouristBot*; http://www.activetourist.com)] -Parent=Search Engines -Browser=ActiveTouristBot - -[Mozilla/5.0 (compatible; Butterfly/1.0; *)*] -Parent=Search Engines -Browser=Butterfly - -[Mozilla/5.0 (compatible; Charlotte/*; *)] -Parent=Search Engines -Browser=Charlotte -Beta=true -isBanned=true - -[Mozilla/5.0 (compatible; CXL-FatAssANT*)] -Parent=Search Engines -Browser=FatAssANT - -[Mozilla/5.0 (compatible; DBLBot/1.0; ?http://www.dontbuylists.com/)] -Parent=Search Engines -Browser=DBLBot -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (compatible; EARTHCOM.info/*)] -Parent=Search Engines -Browser=EARTHCOM - -[Mozilla/5.0 (compatible; Lipperhey Spider; http://www.lipperhey.com/)] -Parent=Search Engines -Browser=Lipperhey Spider - -[Mozilla/5.0 (compatible; MojeekBot/*; http://www.mojeek.com/bot.html)] -Parent=Search Engines -Browser=MojeekBot - -[Mozilla/5.0 (compatible; NLCrawler/*] -Parent=Search Engines -Browser=Northern Light Web Search - -[Mozilla/5.0 (compatible; OsO;*] -Parent=Search Engines -Browser=Octopodus -isBanned=true - -[Mozilla/5.0 (compatible; Pogodak.*)] -Parent=Search Engines -Browser=Pogodak - -[Mozilla/5.0 (compatible; Quantcastbot/1.*)] -Parent=Search Engines -Browser=Quantcastbot - -[Mozilla/5.0 (compatible; ScoutJet; *http://www.scoutjet.com/)] -Parent=Search Engines -Browser=ScoutJet - -[Mozilla/5.0 (compatible; Scrubby/*; http://www.scrubtheweb.com/abs/meta-check.html)] -Parent=Search Engines -Browser=Scrubby -isBanned=true - -[Mozilla/5.0 (compatible; YoudaoBot/1.*; http://www.youdao.com/help/webmaster/spider/*)] -Parent=Search Engines -Browser=YoudaoBot -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (Twiceler*)] -Parent=Search Engines -Browser=Twiceler -isBanned=true - -[Mozilla/5.0 CostaCider Search*] -Parent=Search Engines -Browser=CostaCider Search - -[Mozilla/5.0 GurujiBot/1.0 (*)] -Parent=Search Engines -Browser=GurujiBot - -[NavissoBot] -Parent=Search Engines -Browser=NavissoBot - -[NextGenSearchBot*(for information visit *)] -Parent=Search Engines -Browser=ZoomInfo -isBanned=true - -[Norbert the Spider(Burf.com)] -Parent=Search Engines -Browser=Norbert the Spider - -[NuSearch Spider*] -Parent=Search Engines -Browser=nuSearch - -[ObjectsSearch/*] -Parent=Search Engines -Browser=ObjectsSearch - -[OpenISearch/1.*] -Parent=Search Engines -Browser=OpenISearch (Amazon) - -[Pagebull http://www.pagebull.com/] -Parent=Search Engines -Browser=Pagebull - -[PEERbot*] -Parent=Search Engines -Browser=PEERbot - -[Pompos/*] -Parent=Search Engines -Browser=Pompos - -[Popdexter/*] -Parent=Search Engines -Browser=Popdex - -[Qweery*] -Parent=Search Engines -Browser=QweeryBot - -[RedCell/* (*)] -Parent=Search Engines -Browser=RedCell - -[Scrubby/*] -Parent=Search Engines -Browser=Scrub The Web - -[Search-10/*] -Parent=Search Engines -Browser=Search-10 - -[search.ch*] -Parent=Search Engines -Browser=Swiss Search Engine - -[Searchmee! Spider*] -Parent=Search Engines -Browser=Searchmee! - -[Seekbot/*] -Parent=Search Engines -Browser=Seekbot - -[SiteSpider (http://www.SiteSpider.com/)] -Parent=Search Engines -Browser=SiteSpider - -[Spinne/*] -Parent=Search Engines -Browser=Spinne - -[sproose/*] -Parent=Search Engines -Browser=Sproose - -[Sqeobot/0.*] -Parent=Search Engines -Browser=Branzel -isBanned=true - -[SquigglebotBot/*] -Parent=Search Engines -Browser=SquigglebotBot -isBanned=true - -[StackRambler/*] -Parent=Search Engines -Browser=StackRambler - -[SygolBot*] -Parent=Search Engines -Browser=SygolBot - -[SynoBot] -Parent=Search Engines -Browser=SynoBot - -[Szukacz/*] -Parent=Search Engines -Browser=Szukacz - -[Tarantula/*] -Parent=Search Engines -Browser=Tarantula -isBanned=true - -[TerrawizBot/*] -Parent=Search Engines -Browser=TerrawizBot -isBanned=true - -[Tkensaku/*] -Parent=Search Engines -Browser=Tkensaku - -[TMCrawler] -Parent=Search Engines -Browser=TMCrawler -isBanned=true - -[Twingly Recon] -Parent=Search Engines -Browser=Twingly Recon -isBanned=true - -[updated/*] -Parent=Search Engines -Browser=Updated! - -[URL Spider Pro/*] -Parent=Search Engines -Browser=URL Spider Pro - -[URL Spider SQL*] -Parent=Search Engines -Browser=Innerprise Enterprise Search - -[VMBot/*] -Parent=Search Engines -Browser=VMBot - -[voyager/2.0 (http://www.kosmix.com/html/crawler.html)] -Parent=Search Engines -Browser=Voyager - -[wadaino.jp-crawler*] -Parent=Search Engines -Browser=wadaino.jp -isBanned=true - -[WebAlta Crawler/*] -Parent=Search Engines -Browser=WebAlta Crawler -isBanned=true - -[WebCorp/*] -Parent=Search Engines -Browser=WebCorp -isBanned=true - -[webcrawl.net] -Parent=Search Engines -Browser=webcrawl.net - -[WISEbot/*] -Parent=Search Engines -Browser=WISEbot -isBanned=true - -[Wotbox/*] -Parent=Search Engines -Browser=Wotbox - -[www.zatka.com] -Parent=Search Engines -Browser=Zatka - -[WWWeasel Robot v*] -Parent=Search Engines -Browser=World Wide Weasel - -[YadowsCrawler*] -Parent=Search Engines -Browser=YadowsCrawler - -[YodaoBot/*] -Parent=Search Engines -Browser=YodaoBot -isBanned=true - -[ZeBot_www.ze.bz*] -Parent=Search Engines -Browser=ZE.bz - -[zibber-v*] -Parent=Search Engines -Browser=Zibb - -[ZipppBot/*] -Parent=Search Engines -Browser=ZipppBot - -[ATA-Translation-Service] -Parent=Translators -Browser=ATA-Translation-Service - -[GJK_Browser_Check] -Parent=Version Checkers -Browser=GJK_Browser_Check - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Hatena - -[Hatena] -Parent=DefaultProperties -Browser=Hatena -isBanned=true -Crawler=true - -[Feed::Find/*] -Parent=Hatena -Browser=Feed Find -isSyndicationReader=true - -[Hatena Antenna/*] -Parent=Hatena -Browser=Hatena Antenna - -[Hatena Bookmark/*] -Parent=Hatena -Browser=Hatena Bookmark - -[Hatena RSS/*] -Parent=Hatena -Browser=Hatena RSS -isSyndicationReader=true - -[Hatena::Crawler/*] -Parent=Hatena -Browser=Hatena Crawler - -[HatenaScreenshot*] -Parent=Hatena -Browser=HatenaScreenshot - -[URI::Fetch/*] -Parent=Hatena -Browser=URI::Fetch - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Internet Archive - -[Internet Archive] -Parent=DefaultProperties -Browser=Internet Archive -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[*heritrix*] -Parent=Internet Archive -Browser=Heritrix -isBanned=true - -[ia_archiver*] -Parent=Internet Archive -Browser=Internet Archive - -[InternetArchive/*] -Parent=Internet Archive -Browser=InternetArchive - -[Mozilla/5.0 (compatible; archive.org_bot/1.*)] -Parent=Internet Archive - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Nutch - -[Nutch] -Parent=DefaultProperties -Browser=Nutch -isBanned=true -Crawler=true - -[*Nutch*] -Parent=Nutch -isBanned=true - -[CazoodleBot/*] -Parent=Nutch -Browser=CazoodleBot - -[LOOQ/0.1*] -Parent=Nutch -Browser=LOOQ - -[Nutch/0.? (OpenX Spider)] -Parent=Nutch - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Webaroo - -[Webaroo] -Parent=DefaultProperties -Browser=Webaroo - -[Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Webaroo/*)] -Parent=Webaroo -Browser=Webaroo - -[Mozilla/5.0 (Windows; U; Windows *; *; rv:*) Gecko/* Firefox/* webaroo/*] -Parent=Webaroo -Browser=Webaroo - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Word Press - -[Word Press] -Parent=DefaultProperties -Browser=Word Press -Alpha=true -Beta=true -Win16=true -Win32=true -Win64=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -isBanned=true -isMobileDevice=true -isSyndicationReader=true -Crawler=true - -[WordPress-B-/2.*] -Parent=Word Press -Browser=WordPress-B - -[WordPress-Do-P-/2.*] -Parent=Word Press -Browser=WordPress-Do-P - -[BlueCoat ProxySG] -Parent=Blue Coat Systems -Browser=BlueCoat ProxySG - -[CerberianDrtrs/*] -Parent=Blue Coat Systems -Browser=Cerberian - -[Inne: Mozilla/4.0 (compatible; Cerberian Drtrs*)] -Parent=Blue Coat Systems -Browser=Cerberian - -[Mozilla/4.0 (compatible; Cerberian Drtrs*)] -Parent=Blue Coat Systems -Browser=Cerberian - -[Mozilla/4.0 (compatible; MSIE 6.0; Bluecoat DRTR)] -Parent=Blue Coat Systems -Browser=Bluecoat - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Copyright/Plagiarism - -[Copyright/Plagiarism] -Parent=DefaultProperties -Browser=Copyright/Plagiarism -isBanned=true -Crawler=true - -[BDFetch] -Parent=Copyright/Plagiarism -Browser=BDFetch - -[copyright sheriff (*)] -Parent=Copyright/Plagiarism -Browser=copyright sheriff - -[CopyRightCheck*] -Parent=Copyright/Plagiarism -Browser=CopyRightCheck - -[FairAd Client*] -Parent=Copyright/Plagiarism -Browser=FairAd Client - -[iCopyright Conductor*] -Parent=Copyright/Plagiarism -Browser=iCopyright Conductor - -[IPiumBot laurion(dot)com] -Parent=Copyright/Plagiarism -Browser=IPiumBot - -[IWAgent/*] -Parent=Copyright/Plagiarism -Browser=Brand Protect - -[Mozilla/5.0 (compatible; DKIMRepBot/*)] -Parent=Copyright/Plagiarism -Browser=DKIMRepBot - -[oBot] -Parent=Copyright/Plagiarism -Browser=oBot - -[SlySearch/*] -Parent=Copyright/Plagiarism -Browser=SlySearch - -[TurnitinBot/*] -Parent=Copyright/Plagiarism -Browser=TurnitinBot - -[TutorGigBot/*] -Parent=Copyright/Plagiarism -Browser=TutorGig - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DNS Tools - -[DNS Tools] -Parent=DefaultProperties -Browser=DNS Tools -Crawler=true - -[Domain Dossier utility*] -Parent=DNS Tools -Browser=Domain Dossier - -[Mozilla/5.0 (compatible; DNS-Digger/*)] -Parent=DNS Tools -Browser=DNS-Digger - -[OpenDNS Domain Crawler noc@opendns.com] -Parent=DNS Tools -Browser=OpenDNS Domain Crawler - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Download Managers - -[Download Managers] -Parent=DefaultProperties -Browser=Download Managers -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[AndroidDownloadManager] -Parent=Download Managers -Browser=Android Download Manager - -[AutoMate5] -Parent=Download Managers -Browser=AutoMate5 - -[Beamer*] -Parent=Download Managers -Browser=Beamer - -[BitBeamer/*] -Parent=Download Managers -Browser=BitBeamer - -[BitTorrent/*] -Parent=Download Managers -Browser=BitTorrent - -[DA *] -Parent=Download Managers -Browser=Download Accelerator - -[Download Demon*] -Parent=Download Managers -Browser=Download Demon - -[Download Express*] -Parent=Download Managers -Browser=Download Express - -[Download Master*] -Parent=Download Managers -Browser=Download Master - -[Download Ninja*] -Parent=Download Managers -Browser=Download Ninja - -[Download Wonder*] -Parent=Download Managers -Browser=Download Wonder - -[DownloadSession*] -Parent=Download Managers -Browser=DownloadSession - -[EasyDL/*] -Parent=Download Managers -Browser=EasyDL - -[FDM 1.x] -Parent=Download Managers -Browser=Free Download Manager - -[FlashGet] -Parent=Download Managers -Browser=FlashGet - -[FreshDownload/*] -Parent=Download Managers -Browser=FreshDownload - -[GetRight/*] -Parent=Download Managers -Browser=GetRight - -[GetRightPro/*] -Parent=Download Managers -Browser=GetRightPro - -[GetSmart/*] -Parent=Download Managers -Browser=GetSmart - -[Go!Zilla*] -Parent=Download Managers -Browser=GoZilla - -[Gozilla/*] -Parent=Download Managers -Browser=Gozilla - -[Internet Ninja*] -Parent=Download Managers -Browser=Internet Ninja - -[Kontiki Client*] -Parent=Download Managers -Browser=Kontiki Client - -[lftp/3.2.1] -Parent=Download Managers -Browser=lftp - -[LightningDownload/*] -Parent=Download Managers -Browser=LightningDownload - -[LMQueueBot/*] -Parent=Download Managers -Browser=LMQueueBot - -[MetaProducts Download Express/*] -Parent=Download Managers -Browser=Download Express - -[Mozilla/4.0 (compatible; Getleft*)] -Parent=Download Managers -Browser=Getleft - -[Myzilla] -Parent=Download Managers -Browser=Myzilla - -[Net Vampire/*] -Parent=Download Managers -Browser=Net Vampire - -[Net_Vampire*] -Parent=Download Managers -Browser=Net_Vampire - -[NetAnts*] -Parent=Download Managers -Browser=NetAnts - -[NetPumper*] -Parent=Download Managers -Browser=NetPumper - -[NetSucker*] -Parent=Download Managers -Browser=NetSucker - -[NetZip Downloader*] -Parent=Download Managers -Browser=NetZip Downloader - -[NexTools WebAgent*] -Parent=Download Managers -Browser=NexTools WebAgent - -[Offline Downloader*] -Parent=Download Managers -Browser=Offline Downloader - -[P3P Client] -Parent=Download Managers -Browser=P3P Client - -[PageDown*] -Parent=Download Managers -Browser=PageDown - -[PicaLoader*] -Parent=Download Managers -Browser=PicaLoader - -[Prozilla*] -Parent=Download Managers -Browser=Prozilla - -[RealDownload/*] -Parent=Download Managers -Browser=RealDownload - -[sEasyDL/*] -Parent=Download Managers -Browser=EasyDL - -[shareaza*] -Parent=Download Managers -Browser=shareaza - -[SmartDownload/*] -Parent=Download Managers -Browser=SmartDownload - -[SpeedDownload/*] -Parent=Download Managers -Browser=Speed Download - -[Star*Downloader/*] -Parent=Download Managers -Browser=StarDownloader - -[STEROID Download] -Parent=Download Managers -Browser=STEROID Download - -[SuperBot/*] -Parent=Download Managers -Browser=SuperBot - -[Vegas95/*] -Parent=Download Managers -Browser=Vegas95 - -[WebZIP*] -Parent=Download Managers -Browser=WebZIP - -[Wget*] -Parent=Download Managers -Browser=Wget - -[WinTools] -Parent=Download Managers -Browser=WinTools - -[Xaldon WebSpider*] -Parent=Download Managers -Browser=Xaldon WebSpider - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; E-Mail Harvesters - -[E-Mail Harvesters] -Parent=DefaultProperties -Browser=E-Mail Harvesters -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[*E-Mail Address Extractor*] -Parent=E-Mail Harvesters -Browser=E-Mail Address Extractor - -[*Larbin*] -Parent=E-Mail Harvesters -Browser=Larbin - -[*www4mail/*] -Parent=E-Mail Harvesters -Browser=www4mail - -[8484 Boston Project*] -Parent=E-Mail Harvesters -Browser=8484 Boston Project - -[CherryPicker*/*] -Parent=E-Mail Harvesters -Browser=CherryPickerElite - -[Chilkat/*] -Parent=E-Mail Harvesters -Browser=Chilkat - -[ContactBot/*] -Parent=E-Mail Harvesters -Browser=ContactBot - -[eCatch*] -Parent=E-Mail Harvesters -Browser=eCatch - -[EmailCollector*] -Parent=E-Mail Harvesters -Browser=E-Mail Collector - -[EMAILsearcher] -Parent=E-Mail Harvesters -Browser=EMAILsearcher - -[EmailSiphon*] -Parent=E-Mail Harvesters -Browser=E-Mail Siphon - -[EmailWolf*] -Parent=E-Mail Harvesters -Browser=EMailWolf - -[Epsilon SoftWorks' MailMunky] -Parent=E-Mail Harvesters -Browser=MailMunky - -[ExtractorPro*] -Parent=E-Mail Harvesters -Browser=ExtractorPro - -[Franklin Locator*] -Parent=E-Mail Harvesters -Browser=Franklin Locator - -[Missigua Locator*] -Parent=E-Mail Harvesters -Browser=Missigua Locator - -[Mozilla/4.0 (compatible; Advanced Email Extractor*)] -Parent=E-Mail Harvesters -Browser=Advanced Email Extractor - -[Netprospector*] -Parent=E-Mail Harvesters -Browser=Netprospector - -[ProWebWalker*] -Parent=E-Mail Harvesters -Browser=ProWebWalker - -[sna-0.0.*] -Parent=E-Mail Harvesters -Browser=Mike Elliott's E-Mail Harvester - -[WebEnhancer*] -Parent=E-Mail Harvesters -Browser=WebEnhancer - -[WebMiner*] -Parent=E-Mail Harvesters -Browser=WebMiner - -[ZIBB Crawler (email address / WWW address)] -Parent=E-Mail Harvesters -Browser=ZIBB Crawler - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Feeds Blogs - -[Feeds Blogs] -Parent=DefaultProperties -Browser=Feeds Blogs -isSyndicationReader=true -Crawler=true - -[Bloglines Title Fetch/*] -Parent=Feeds Blogs -Browser=Bloglines Title Fetch - -[Bloglines/* (http://www.bloglines.com*)] -Parent=Feeds Blogs -Browser=BlogLines Web - -[BlogPulseLive (support@blogpulse.com)] -Parent=Feeds Blogs -Browser=BlogPulseLive - -[blogsearchbot-pumpkin-2] -Parent=Feeds Blogs -Browser=blogsearchbot-pumpkin -isSyndicationReader=false - -[Irish Blogs Aggregator/*1.0*] -Parent=Feeds Blogs -Browser=Irish Blogs Aggregator -Version=1.0 -MajorVer=1 -MinorVer=0 - -[kinjabot (http://www.kinja.com; *)] -Parent=Feeds Blogs -Browser=kinjabot - -[Net::Trackback/*] -Parent=Feeds Blogs -Browser=Net::Trackback - -[Reblog*] -Parent=Feeds Blogs -Browser=Reblog - -[WordPress/*] -Parent=Feeds Blogs -Browser=WordPress - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Feeds Syndicators - -[Feeds Syndicators] -Parent=DefaultProperties -Browser=Feeds Syndicators -isSyndicationReader=true - -[*LinkLint*] -Parent=Feeds Syndicators -Browser=LinkLint - -[*NetNewsWire/*] -Parent=Feeds Syndicators - -[*NetVisualize*] -Parent=Feeds Syndicators -Browser=NetVisualize - -[AideRSS 2.* (postrank.com)] -Parent=Feeds Syndicators -Browser=AideRSS - -[AideRSS/2.0 (aiderss.com)] -Parent=Feeds Syndicators -Browser=AideRSS -isBanned=true - -[Akregator/*] -Parent=Feeds Syndicators -Browser=Akregator - -[AppleSyndication/*] -Parent=Feeds Syndicators -Browser=Safari RSS -Platform=MacOSX - -[Cocoal.icio.us/* (*)*] -Parent=Feeds Syndicators -Browser=Cocoal.icio.us -isBanned=true - -[Feed43 Proxy/* (*)] -Parent=Feeds Syndicators -Browser=Feed For Free - -[FeedBurner/*] -Parent=Feeds Syndicators -Browser=FeedBurner - -[FeedDemon/* (*)] -Parent=Feeds Syndicators -Browser=FeedDemon -Platform=Win32 - -[FeedDigest/* (*)] -Parent=Feeds Syndicators -Browser=FeedDigest - -[FeedGhost/1.*] -Parent=Feeds Syndicators -Browser=FeedGhost -Version=1.0 -MajorVer=1 -MinorVer=0 - -[FeedOnFeeds/0.1.* ( http://minutillo.com/steve/feedonfeeds/)] -Parent=Feeds Syndicators -Browser=FeedOnFeeds -Version=0.1 -MajorVer=0 -MinorVer=1 - -[Feedreader * (Powered by Newsbrain)] -Parent=Feeds Syndicators -Browser=Newsbrain - -[Feedshow/* (*)] -Parent=Feeds Syndicators -Browser=Feedshow - -[Feedster Crawler/?.0; Feedster, Inc.] -Parent=Feeds Syndicators -Browser=Feedster - -[GreatNews/1.0] -Parent=Feeds Syndicators -Browser=GreatNews -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Gregarius/*] -Parent=Feeds Syndicators -Browser=Gregarius - -[intraVnews/*] -Parent=Feeds Syndicators -Browser=intraVnews - -[JetBrains Omea Reader*] -Parent=Feeds Syndicators -Browser=Omea Reader -isBanned=true - -[Liferea/1.5* (Linux; *; http://liferea.sf.net/)] -Parent=Feeds Syndicators -Browser=Liferea -isBanned=true - -[livedoor FeedFetcher/0.0* (http://reader.livedoor.com/;*)] -Parent=Feeds Syndicators -Browser=FeedFetcher -Version=0.0 -MajorVer=0 -MinorVer=0 - -[MagpieRSS/* (*)] -Parent=Feeds Syndicators -Browser=MagpieRSS - -[Mobitype * (compatible; Mozilla/*; MSIE *.*; Windows *)] -Parent=Feeds Syndicators -Browser=Mobitype -Platform=Win32 - -[Mozilla/5.0 (*; Rojo *; http://www.rojo.com/corporate/help/agg; *)*] -Parent=Feeds Syndicators -Browser=Rojo - -[Mozilla/5.0 (*aggregator:TailRank; http://tailrank.com/robot)*] -Parent=Feeds Syndicators -Browser=TailRank - -[Mozilla/5.0 (compatible; MSIE 6.0; Podtech Network; crawler_admin@podtech.net)] -Parent=Feeds Syndicators -Browser=Podtech Network - -[Mozilla/5.0 (compatible; Newz Crawler *; http://www.newzcrawler.com/?)] -Parent=Feeds Syndicators -Browser=Newz Crawler - -[Mozilla/5.0 (compatible; RSSMicro.com RSS/Atom Feed Robot)] -Parent=Feeds Syndicators -Browser=RSSMicro - -[Mozilla/5.0 (compatible;*newstin.com;*)] -Parent=Feeds Syndicators -Browser=NewsTin - -[Mozilla/5.0 (RSS Reader Panel)] -Parent=Feeds Syndicators -Browser=RSS Reader Panel - -[Mozilla/5.0 (X11; U; Linux*; *; rv:1.*; aggregator:FeedParser; *) Gecko/*] -Parent=Feeds Syndicators -Browser=FeedParser - -[Mozilla/5.0 (X11; U; Linux*; *; rv:1.*; aggregator:NewsMonster; *) Gecko/*] -Parent=Feeds Syndicators -Browser=NewsMonster - -[Mozilla/5.0 (X11; U; Linux*; *; rv:1.*; aggregator:Rojo; *) Gecko/*] -Parent=Feeds Syndicators -Browser=Rojo - -[Netvibes (*)] -Parent=Feeds Syndicators -Browser=Netvibes - -[NewsAlloy/* (*)] -Parent=Feeds Syndicators -Browser=NewsAlloy - -[Omnipelagos*] -Parent=Feeds Syndicators -Browser=Omnipelagos - -[Particls] -Parent=Feeds Syndicators -Browser=Particls - -[Protopage/* (*)] -Parent=Feeds Syndicators -Browser=Protopage - -[PubSub-RSS-Reader/* (*)] -Parent=Feeds Syndicators -Browser=PubSub-RSS-Reader - -[RSS Menu/*] -Parent=Feeds Syndicators -Browser=RSS Menu - -[RssBandit/*] -Parent=Feeds Syndicators -Browser=RssBandit - -[RssBar/1.2*] -Parent=Feeds Syndicators -Browser=RssBar -Version=1.2 -MajorVer=1 -MinorVer=2 - -[SharpReader/*] -Parent=Feeds Syndicators -Browser=SharpReader - -[SimplePie/*] -Parent=Feeds Syndicators -Browser=SimplePie - -[Strategic Board Bot (?http://www.strategicboard.com)] -Parent=Feeds Syndicators -Browser=Strategic Board Bot -isBanned=true - -[TargetYourNews.com bot] -Parent=Feeds Syndicators -Browser=TargetYourNews - -[Technoratibot/*] -Parent=Feeds Syndicators -Browser=Technoratibot - -[Tumblr/* RSS syndication ( http://www.tumblr.com/) (support@tumblr.com)] -Parent=Feeds Syndicators -Browser=Tumblr RSS syndication - -[Windows-RSS-Platform/1.0*] -Parent=Feeds Syndicators -Browser=Windows-RSS-Platform -Version=1.0 -MajorVer=1 -MinorVer=0 -Win32=true - -[Wizz RSS News Reader] -Parent=Feeds Syndicators -Browser=Wizz - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; General RSS - -[General RSS] -Parent=DefaultProperties -Browser=General RSS -isSyndicationReader=true - -[AideRSS/1.0 (aiderss.com); * subscribers] -Parent=General RSS -Browser=AideRSS -Version=1.0 -MajorVer=1 -MinorVer=0 - -[CC Metadata Scaper http://wiki.creativecommons.org/Metadata_Scraper] -Parent=General RSS -Browser=CC Metadata Scaper - -[Mozilla/5.0 (compatible) GM RSS Panel] -Parent=General RSS -Browser=RSS Panel - -[Mozilla/5.0 http://www.inclue.com; graeme@inclue.com] -Parent=General RSS -Browser=Inclue - -[Runnk online rss reader : http://www.runnk.com/ : RSS favorites : RSS ranking : RSS aggregator*] -Parent=General RSS -Browser=Ruunk - -[Windows-RSS-Platform/2.0 (MSIE 8.0; Windows NT 6.0)] -Parent=General RSS -Browser=Windows-RSS-Platform -Platform=WinVista - -[Mozilla/5.0 (X11; ?; Linux; *) AppleWebKit/* (KHTML, like Gecko, Safari/*) Arora/0.4] -Parent=Google Code -Browser=Arora -Version=0.4 -MajorVer=0 -MinorVer=4 -Platform=Linux -CssVersion=2 -supportsCSS=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Validation Checkers - -[HTML Validators] -Parent=DefaultProperties -Browser=HTML Validators -Frames=true -IFrames=true -Tables=true -Crawler=true - -[(HTML Validator http://www.searchengineworld.com/validator/)] -Parent=HTML Validators -Browser=Search Engine World HTML Validator - -[FeedValidator/1.3] -Parent=HTML Validators -Browser=FeedValidator -Version=1.3 -MajorVer=1 -MinorVer=3 - -[Jigsaw/* W3C_CSS_Validator_JFouffa/*] -Parent=HTML Validators -Browser=Jigsaw CSS Validator - -[Search Engine World Robots.txt Validator*] -Parent=HTML Validators -Browser=Search Engine World Robots.txt Validator - -[W3C_Validator/*] -Parent=HTML Validators -Browser=W3C Validator - -[W3CLineMode/*] -Parent=HTML Validators -Browser=W3C Line Mode - -[Weblide/2.? beta*] -Parent=HTML Validators -Browser=Weblide -Version=2.0 -MajorVer=2 -MinorVer=0 -Beta=true - -[WebmasterWorld StickyMail Server Header Checker*] -Parent=HTML Validators -Browser=WebmasterWorld Server Header Checker - -[WWWC/*] -Parent=HTML Validators - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Image Crawlers - -[Image Crawlers] -Parent=DefaultProperties -Browser=Image Crawlers -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[*CFNetwork*] -Parent=Image Crawlers -Browser=CFNetwork - -[*PhotoStickies/*] -Parent=Image Crawlers -Browser=PhotoStickies - -[Camcrawler*] -Parent=Image Crawlers -Browser=Camcrawler - -[CydralSpider/*] -Parent=Image Crawlers -Browser=Cydral Web Image Search -isBanned=true - -[Der gro\xdfe BilderSauger*] -Parent=Image Crawlers -Browser=Gallery Grabber - -[Extreme Picture Finder] -Parent=Image Crawlers -Browser=Extreme Picture Finder - -[FLATARTS_FAVICO] -Parent=Image Crawlers -Browser=FlatArts Favorites Icon Tool - -[HTML2JPG Blackbox, http://www.html2jpg.com] -Parent=Image Crawlers -Browser=HTML2JPG - -[IconSurf/2.*] -Parent=Image Crawlers -Browser=IconSurf - -[kalooga/KaloogaBot*] -Parent=Image Crawlers -Browser=KaloogaBot - -[Mister PIX*] -Parent=Image Crawlers -Browser=Mister PIX - -[Mozilla/5.0 (Macintosh; U; *Mac OS X; *) AppleWebKit/* (*) Pandora/2.*] -Parent=Image Crawlers -Browser=Pandora - -[naoFavicon4IE*] -Parent=Image Crawlers -Browser=naoFavicon4IE - -[pixfinder/*] -Parent=Image Crawlers -Browser=pixfinder - -[rssImagesBot/0.1 (*http://herbert.groot.jebbink.nl/?app=rssImages)] -Parent=Image Crawlers -Browser=rssImagesBot - -[Web Image Collector*] -Parent=Image Crawlers -Browser=Web Image Collector - -[WebImages * (?http://herbert.groot.jebbink.nl/?app=WebImages?)] -Parent=Image Crawlers -Browser=WebImages - -[WebPix*] -Parent=Image Crawlers -Browser=Custo - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Link Checkers - -[Link Checkers] -Parent=DefaultProperties -Browser=Link Checkers -Frames=true -IFrames=true -Tables=true -Crawler=true - -[!Susie (http://www.sync2it.com/susie)] -Parent=Link Checkers -Browser=!Susie - -[*AgentName/*] -Parent=Link Checkers -Browser=AgentName - -[*Linkman*] -Parent=Link Checkers -Browser=Linkman - -[*LinksManager.com*] -Parent=Link Checkers -Browser=LinksManager - -[*Powermarks/*] -Parent=Link Checkers -Browser=Powermarks - -[*W3C-checklink/*] -Parent=Link Checkers -Browser=W3C Link Checker - -[*Web Link Validator*] -Parent=Link Checkers -Browser=Web Link Validator - -[*Zeus*] -Parent=Link Checkers -Browser=Zeus -isBanned=true - -[ActiveBookmark *] -Parent=Link Checkers -Browser=ActiveBookmark - -[Bookdog/*] -Parent=Link Checkers -Browser=Bookdog - -[Bookmark Buddy*] -Parent=Link Checkers -Browser=Bookmark Buddy - -[Bookmark Renewal Check Agent*] -Parent=Link Checkers -Browser=Bookmark Renewal Check Agent - -[Bookmark search tool*] -Parent=Link Checkers -Browser=Bookmark search tool - -[Bookmark-Manager] -Parent=Link Checkers -Browser=Bookmark-Manager - -[Checkbot*] -Parent=Link Checkers -Browser=Checkbot - -[CheckLinks/*] -Parent=Link Checkers -Browser=CheckLinks - -[CyberSpyder Link Test/*] -Parent=Link Checkers -Browser=CyberSpyder Link Test - -[DLC/*] -Parent=Link Checkers -Browser=DLC - -[DocWeb Link Crawler (http://doc.php.net)] -Parent=Link Checkers -Browser=DocWeb Link Crawler - -[FavOrg] -Parent=Link Checkers -Browser=FavOrg - -[Favorites Sweeper v.3.*] -Parent=Link Checkers -Browser=Favorites Sweeper - -[FindLinks/*] -Parent=Link Checkers -Browser=FindLinks - -[Funnel Web Profiler*] -Parent=Link Checkers -Browser=Funnel Web Profiler - -[Html Link Validator (www.lithopssoft.com)] -Parent=Link Checkers -Browser=HTML Link Validator - -[IECheck] -Parent=Link Checkers -Browser=IECheck - -[JCheckLinks/*] -Parent=Link Checkers -Browser=JCheckLinks - -[JRTwine Software Check Favorites Utility] -Parent=Link Checkers -Browser=JRTwine - -[Link Valet Online*] -Parent=Link Checkers -Browser=Link Valet -isBanned=true - -[LinkAlarm/*] -Parent=Link Checkers -Browser=LinkAlarm - -[Linkbot*] -Parent=Link Checkers -Browser=Linkbot - -[LinkChecker/*] -Parent=Link Checkers -Browser=LinkChecker - -[LinkextractorPro*] -Parent=Link Checkers -Browser=LinkextractorPro -isBanned=true - -[LinkLint-checkonly/*] -Parent=Link Checkers -Browser=LinkLint - -[LinkScan/*] -Parent=Link Checkers -Browser=LinkScan - -[LinkSweeper/*] -Parent=Link Checkers -Browser=LinkSweeper - -[LinkWalker*] -Parent=Link Checkers -Browser=LinkWalker - -[MetaGer-LinkChecker] -Parent=Link Checkers -Browser=MetaGer-LinkChecker - -[Mozilla/* (compatible; linktiger/*; *http://www.linktiger.com*)] -Parent=Link Checkers -Browser=LinkTiger -isBanned=true - -[Mozilla/4.0 (Compatible); URLBase*] -Parent=Link Checkers -Browser=URLBase - -[Mozilla/4.0 (compatible; Link Utility; http://net-promoter.com)] -Parent=Link Checkers -Browser=NetPromoter Link Utility - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 98) Web Link Validator*] -Parent=Link Checkers -Browser=Web Link Validator -Win32=true - -[Mozilla/4.0 (compatible; MSIE 7.0; Win32) Link Commander 3.0] -Parent=Link Checkers -Browser=Link Commander -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=Win32 - -[Mozilla/4.0 (compatible; smartBot/1.*; checking links; *)] -Parent=Link Checkers -Browser=smartBot - -[Mozilla/4.0 (compatible; SuperCleaner*;*)] -Parent=Link Checkers -Browser=SuperCleaner - -[Mozilla/5.0 gURLChecker/*] -Parent=Link Checkers -Browser=gURLChecker -isBanned=true - -[Newsgroupreporter LinkCheck] -Parent=Link Checkers -Browser=Newsgroupreporter LinkCheck - -[onCHECK Linkchecker von www.scientec.de fuer www.onsinn.de] -Parent=Link Checkers -Browser=onCHECK Linkchecker - -[online link validator (http://www.dead-links.com/)] -Parent=Link Checkers -Browser=Dead-Links.com -isBanned=true - -[REL Link Checker*] -Parent=Link Checkers -Browser=REL Link Checker - -[RLinkCheker*] -Parent=Link Checkers -Browser=RLinkCheker - -[Robozilla/*] -Parent=Link Checkers -Browser=Robozilla - -[RPT-HTTPClient/*] -Parent=Link Checkers -Browser=RPT-HTTPClient -isBanned=true - -[SafariBookmarkChecker*(?http://www.coriolis.ch/)] -Parent=Link Checkers -Browser=SafariBookmarkChecker -Platform=MacOSX -CssVersion=2 -supportsCSS=true - -[Simpy/* (Simpy; http://www.simpy.com/?ref=bot; feedback at simpy dot com)] -Parent=Link Checkers -Browser=Simpy - -[SiteBar/*] -Parent=Link Checkers -Browser=SiteBar - -[Susie (http://www.sync2it.com/bms/susie.php] -Parent=Link Checkers -Browser=Susie - -[URLBase/6.*] -Parent=Link Checkers - -[VSE/*] -Parent=Link Checkers -Browser=VSE Link Tester - -[WebTrends Link Analyzer] -Parent=Link Checkers -Browser=WebTrends Link Analyzer - -[WorQmada/*] -Parent=Link Checkers -Browser=WorQmada - -[Xenu* Link Sleuth*] -Parent=Link Checkers -Browser=Xenu's Link Sleuth -isBanned=true - -[Z-Add Link Checker*] -Parent=Link Checkers -Browser=Z-Add Link Checker - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Microsoft - -[Microsoft] -Parent=DefaultProperties -Browser=Microsoft -isBanned=true - -[Live (http://www.live.com/)] -Parent=Microsoft -Browser=Microsoft Live -isBanned=false -isSyndicationReader=true - -[MFC Foundation Class Library*] -Parent=Microsoft -Browser=MFC Foundation Class Library - -[MFHttpScan] -Parent=Microsoft -Browser=MFHttpScan - -[Microsoft BITS/*] -Parent=Microsoft -Browser=BITS - -[Microsoft Data Access Internet Publishing Provider Cache Manager] -Parent=Microsoft -Browser=MS IPP - -[Microsoft Data Access Internet Publishing Provider DAV*] -Parent=Microsoft -Browser=MS IPP DAV - -[Microsoft Data Access Internet Publishing Provider Protocol Discovery] -Parent=Microsoft -Browser=MS IPPPD - -[Microsoft Internet Explorer] -Parent=Microsoft -Browser=Fake IE - -[Microsoft Office Existence Discovery] -Parent=Microsoft -Browser=Microsoft Office Existence Discovery - -[Microsoft Office Protocol Discovery] -Parent=Microsoft -Browser=MS OPD - -[Microsoft Office/* (*Picture Manager*)] -Parent=Microsoft -Browser=Microsoft Office Picture Manager - -[Microsoft URL Control*] -Parent=Microsoft -Browser=Microsoft URL Control - -[Microsoft Visio MSIE] -Parent=Microsoft -Browser=Microsoft Visio - -[Microsoft-WebDAV-MiniRedir/*] -Parent=Microsoft -Browser=Microsoft-WebDAV - -[Mozilla/5.0 (Macintosh; Intel Mac OS X) Excel/12.*] -Parent=Microsoft -Browser=Microsoft Excel -Version=12.0 -MajorVer=12 -MinorVer=0 -Platform=MacOSX - -[MSN Feed Manager] -Parent=Microsoft -Browser=MSN Feed Manager -isBanned=false -isSyndicationReader=true - -[MSProxy/*] -Parent=Microsoft -Browser=MS Proxy - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Miscellaneous Browsers - -[Miscellaneous Browsers] -Parent=DefaultProperties -Browser=Miscellaneous Browsers -Frames=true -Tables=true -Cookies=true - -[*Amiga*] -Parent=Miscellaneous Browsers -Browser=Amiga -Platform=Amiga - -[*avantbrowser*] -Parent=Miscellaneous Browsers -Browser=Avant Browser - -[12345] -Parent=Miscellaneous Browsers -Browser=12345 -isBanned=true - -[Ace Explorer] -Parent=Miscellaneous Browsers -Browser=Ace Explorer - -[Enigma Browser*] -Parent=Miscellaneous Browsers -Browser=Enigma Browser - -[EVE-minibrowser/*] -Parent=Miscellaneous Browsers -Browser=EVE-minibrowser -IFrames=false -Tables=false -BackgroundSounds=false -VBScript=false -JavaApplets=false -JavaScript=false -ActiveXControls=false -isBanned=false -Crawler=false - -[Godzilla/* (Basic*; *; Commodore C=64; *; rv:1.*)*] -Parent=Miscellaneous Browsers -Browser=Godzilla - -[GreenBrowser] -Parent=Miscellaneous Browsers -Browser=GreenBrowser -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true - -[Kopiczek/* (WyderOS*; *)] -Parent=Miscellaneous Browsers -Browser=Kopiczek -Platform=WyderOS -IFrames=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (*) - BrowseX (*)] -Parent=Miscellaneous Browsers -Browser=BrowseX - -[Mozilla/* (Win32;*Escape?*; ?)] -Parent=Miscellaneous Browsers -Browser=Escape -Platform=Win32 - -[Mozilla/4.0 (compatible; ibisBrowser)] -Parent=Miscellaneous Browsers -Browser=ibisBrowser - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X;*) AppleWebKit/* (*) HistoryHound/*] -Parent=Miscellaneous Browsers -Browser=HistoryHound - -[NetRecorder*] -Parent=Miscellaneous Browsers -Browser=NetRecorder - -[NetSurfer*] -Parent=Miscellaneous Browsers -Browser=NetSurfer - -[ogeb browser , Version 1.1.0] -Parent=Miscellaneous Browsers -Browser=ogeb browser -Version=1.1 -MajorVer=1 -MinorVer=1 - -[SCEJ PSP BROWSER 0102pspNavigator] -Parent=Miscellaneous Browsers -Browser=Wipeout Pure - -[SlimBrowser] -Parent=Miscellaneous Browsers -Browser=SlimBrowser - -[WWW_Browser/*] -Parent=Miscellaneous Browsers -Browser=WWW Browser -Version=1.69 -MajorVer=1 -MinorVer=69 -Platform=Win16 -CssVersion=3 -supportsCSS=true - -[*Netcraft Webserver Survey*] -Parent=Netcraft -Browser=Netcraft Webserver Survey -isBanned=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Offline Browsers - -[Offline Browsers] -Parent=DefaultProperties -Browser=Offline Browsers -Frames=true -Tables=true -Cookies=true -isBanned=true -Crawler=true - -[*Check&Get*] -Parent=Offline Browsers -Browser=Check&Get - -[*HTTrack*] -Parent=Offline Browsers -Browser=HTTrack - -[*MSIECrawler*] -Parent=Offline Browsers -Browser=IE Offline Browser - -[*TweakMASTER*] -Parent=Offline Browsers -Browser=TweakMASTER - -[BackStreet Browser *] -Parent=Offline Browsers -Browser=BackStreet Browser - -[Go-Ahead-Got-It*] -Parent=Offline Browsers -Browser=Go Ahead Got-It - -[iGetter/*] -Parent=Offline Browsers -Browser=iGetter - -[Teleport*] -Parent=Offline Browsers -Browser=Teleport - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Online Scanners - -[Online Scanners] -Parent=DefaultProperties -Browser=Online Scanners -isBanned=true - -[JoeDog/* (X11; I; Siege *)] -Parent=Online Scanners -Browser=JoeDog -isBanned=false - -[Morfeus Fucking Scanner] -Parent=Online Scanners -Browser=Morfeus Fucking Scanner - -[Mozilla/4.0 (compatible; Trend Micro tmdr 1.*] -Parent=Online Scanners -Browser=Trend Micro - -[Titanium 2005 (4.02.01)] -Parent=Online Scanners -Browser=Panda Antivirus Titanium - -[virus_detector*] -Parent=Online Scanners -Browser=Secure Computing Corporation - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Proxy Servers - -[Proxy Servers] -Parent=DefaultProperties -Browser=Proxy Servers -isBanned=true - -[*squid*] -Parent=Proxy Servers -Browser=Squid - -[Anonymisiert*] -Parent=Proxy Servers -Browser=Anonymizied - -[Anonymizer/*] -Parent=Proxy Servers -Browser=Anonymizer - -[Anonymizied*] -Parent=Proxy Servers -Browser=Anonymizied - -[Anonymous*] -Parent=Proxy Servers -Browser=Anonymous - -[Anonymous/*] -Parent=Proxy Servers -Browser=Anonymous - -[CE-Preload] -Parent=Proxy Servers -Browser=CE-Preload - -[http://Anonymouse.org/*] -Parent=Proxy Servers -Browser=Anonymouse - -[IE/6.01 (CP/M; 8-bit*)] -Parent=Proxy Servers -Browser=Squid - -[Mozilla/* (TuringOS; Turing Machine; 0.0)] -Parent=Proxy Servers -Browser=Anonymizer - -[Mozilla/4.0 (compatible; MSIE ?.0; SaferSurf*)] -Parent=Proxy Servers -Browser=SaferSurf - -[Mozilla/5.0 (compatible; del.icio.us-thumbnails/*; *) KHTML/* (like Gecko)] -Parent=Proxy Servers -Browser=Yahoo! -isBanned=true -Crawler=true - -[Nutscrape] -Parent=Proxy Servers -Browser=Squid - -[Nutscrape/* (CP/M; 8-bit*)] -Parent=Proxy Servers -Browser=Squid - -[Privoxy/*] -Parent=Proxy Servers -Browser=Privoxy - -[ProxyTester*] -Parent=Proxy Servers -Browser=ProxyTester -isBanned=true -Crawler=true - -[SilentSurf*] -Parent=Proxy Servers -Browser=SilentSurf - -[SmallProxy*] -Parent=Proxy Servers -Browser=SmallProxy - -[Space*Bison/*] -Parent=Proxy Servers -Browser=Proxomitron - -[Sqworm/*] -Parent=Proxy Servers -Browser=Websense - -[SurfControl] -Parent=Proxy Servers -Browser=SurfControl - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Research Projects - -[Research Projects] -Parent=DefaultProperties -Browser=Research Projects -isBanned=true -Crawler=true - -[*research*] -Parent=Research Projects - -[AcadiaUniversityWebCensusClient] -Parent=Research Projects -Browser=AcadiaUniversityWebCensusClient - -[Amico Alpha * (*) Gecko/* AmicoAlpha/*] -Parent=Research Projects -Browser=Amico Alpha - -[annotate_google; http://ponderer.org/*] -Parent=Research Projects -Browser=Annotate Google - -[CMS crawler (?http://buytaert.net/crawler/)] -Parent=Research Projects - -[e-SocietyRobot(http://www.yama.info.waseda.ac.jp/~yamana/es/)] -Parent=Research Projects -Browser=e-SocietyRobot - -[Forschungsportal/*] -Parent=Research Projects -Browser=Forschungsportal - -[Gulper Web *] -Parent=Research Projects -Browser=Gulper Web Bot - -[HooWWWer/*] -Parent=Research Projects -Browser=HooWWWer - -[http://buytaert.net/crawler] -Parent=Research Projects - -[inetbot/* (?http://www.inetbot.com/bot.html)] -Parent=Research Projects -Browser=inetbot - -[IRLbot/*] -Parent=Research Projects -Browser=IRLbot - -[Lachesis] -Parent=Research Projects -Browser=Lachesis - -[Mozilla/5.0 (compatible; nextthing.org/*)] -Parent=Research Projects -Browser=nextthing.org -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (compatible; Theophrastus/*)] -Parent=Research Projects -Browser=Theophrastus - -[Mozilla/5.0 (compatible; Webscan v0.*; http://otc.dyndns.org/webscan/)] -Parent=Research Projects -Browser=Webscan - -[MQbot*] -Parent=Research Projects -Browser=MQbot - -[OutfoxBot/*] -Parent=Research Projects -Browser=OutfoxBot - -[polybot?*] -Parent=Research Projects -Browser=Polybot - -[Shim?Crawler*] -Parent=Research Projects -Browser=Shim Crawler - -[Steeler/*] -Parent=Research Projects -Browser=Steeler - -[Taiga web spider] -Parent=Research Projects -Browser=Taiga - -[Theme Spider*] -Parent=Research Projects -Browser=Theme Spider - -[UofTDB_experiment* (leehyun@cs.toronto.edu)] -Parent=Research Projects -Browser=UofTDB Experiment - -[USyd-NLP-Spider*] -Parent=Research Projects -Browser=USyd-NLP-Spider - -[woriobot*] -Parent=Research Projects -Browser=woriobot - -[wwwster/* (Beta, mailto:gue@cis.uni-muenchen.de)] -Parent=Research Projects -Browser=wwwster -Beta=true - -[Zao-Crawler] -Parent=Research Projects -Browser=Zao-Crawler - -[Zao/*] -Parent=Research Projects -Browser=Zao - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Rippers - -[Rippers] -Parent=DefaultProperties -Browser=Rippers -Frames=true -IFrames=true -Tables=true -isBanned=true -Crawler=true - -[*grub*] -Parent=Rippers -Browser=grub - -[*ickHTTP*] -Parent=Rippers -Browser=IP*Works - -[*java*] -Parent=Rippers - -[*libwww-perl*] -Parent=Rippers -Browser=libwww-perl - -[*WebGrabber*] -Parent=Rippers - -[*WinHttpRequest*] -Parent=Rippers -Browser=WinHttp - -[3D-FTP/*] -Parent=Rippers -Browser=3D-FTP - -[3wGet/*] -Parent=Rippers -Browser=3wGet - -[ActiveRefresh*] -Parent=Rippers -Browser=ActiveRefresh - -[Artera (Version *)] -Parent=Rippers -Browser=Artera - -[AutoHotkey] -Parent=Rippers -Browser=AutoHotkey - -[b2w/*] -Parent=Rippers -Browser=b2w - -[BasicHTTP/*] -Parent=Rippers -Browser=BasicHTTP - -[BlockNote.Net] -Parent=Rippers -Browser=BlockNote.Net - -[CAST] -Parent=Rippers -Browser=CAST - -[CFNetwork/*] -Parent=Rippers -Browser=CFNetwork - -[CFSCHEDULE*] -Parent=Rippers -Browser=ColdFusion Task Scheduler - -[CobWeb/*] -Parent=Rippers -Browser=CobWeb - -[ColdFusion*] -Parent=Rippers -Browser=ColdFusion - -[Crawl_Application] -Parent=Rippers -Browser=Crawl_Application - -[curl/*] -Parent=Rippers -Browser=cURL - -[Custo*] -Parent=Rippers -Browser=Custo - -[DataCha0s/*] -Parent=Rippers -Browser=DataCha0s - -[DeepIndexer*] -Parent=Rippers -Browser=DeepIndexer - -[DISCo Pump *] -Parent=Rippers -Browser=DISCo Pump - -[eStyleSearch * (compatible; MSIE 6.0; Windows NT 5.0)] -Parent=Rippers -Browser=eStyleSearch -Win32=true - -[ezic.com http agent *] -Parent=Rippers -Browser=Ezic.com - -[fetch libfetch/*] -Parent=Rippers - -[FGet*] -Parent=Rippers -Browser=FGet - -[Flaming AttackBot*] -Parent=Rippers -Browser=Flaming AttackBot - -[Foobot*] -Parent=Rippers -Browser=Foobot - -[GameSpyHTTP/*] -Parent=Rippers -Browser=GameSpyHTTP - -[gnome-vfs/*] -Parent=Rippers -Browser=gnome-vfs - -[Harvest/*] -Parent=Rippers -Browser=Harvest - -[hcat/*] -Parent=Rippers -Browser=hcat - -[HLoader] -Parent=Rippers -Browser=HLoader - -[Holmes/*] -Parent=Rippers -Browser=Holmes - -[HTMLParser/*] -Parent=Rippers -Browser=HTMLParser - -[http generic] -Parent=Rippers -Browser=http generic - -[httpclient*] -Parent=Rippers - -[httperf/*] -Parent=Rippers -Browser=httperf - -[HTTPFetch/*] -Parent=Rippers -Browser=HTTPFetch - -[HTTPGrab] -Parent=Rippers -Browser=HTTPGrab - -[HttpSession] -Parent=Rippers -Browser=HttpSession - -[httpunit/*] -Parent=Rippers -Browser=HttpUnit - -[ICE_GetFile] -Parent=Rippers -Browser=ICE_GetFile - -[iexplore.exe] -Parent=Rippers - -[Inet - Eureka App] -Parent=Rippers -Browser=Inet - Eureka App - -[INetURL/*] -Parent=Rippers -Browser=INetURL - -[InetURL:/*] -Parent=Rippers -Browser=InetURL - -[Internet Exploiter/*] -Parent=Rippers - -[Internet Explore *] -Parent=Rippers -Browser=Fake IE - -[Internet Explorer *] -Parent=Rippers -Browser=Fake IE - -[IP*Works!*/*] -Parent=Rippers -Browser=IP*Works! - -[IrssiUrlLog/*] -Parent=Rippers -Browser=IrssiUrlLog - -[JPluck/*] -Parent=Rippers -Browser=JPluck - -[Kapere (http://www.kapere.com)] -Parent=Rippers -Browser=Kapere - -[LeechFTP] -Parent=Rippers -Browser=LeechFTP - -[LeechGet*] -Parent=Rippers -Browser=LeechGet - -[libcurl-agent/*] -Parent=Rippers -Browser=libcurl - -[libWeb/clsHTTP*] -Parent=Rippers -Browser=libWeb/clsHTTP - -[lwp*] -Parent=Rippers - -[MFC_Tear_Sample] -Parent=Rippers -Browser=MFC_Tear_Sample - -[Moozilla] -Parent=Rippers -Browser=Moozilla - -[MovableType/*] -Parent=Rippers -Browser=MovableType Web Log - -[Mozilla/2.0 (compatible; NEWT ActiveX; Win32)] -Parent=Rippers -Browser=NEWT ActiveX -Platform=Win32 - -[Mozilla/3.0 (compatible)] -Parent=Rippers - -[Mozilla/3.0 (compatible; Indy Library)] -Parent=Rippers -Cookies=true - -[Mozilla/3.01 (compatible;)] -Parent=Rippers - -[Mozilla/4.0 (compatible; BorderManager*)] -Parent=Rippers -Browser=Novell BorderManager - -[Mozilla/4.0 (compatible;)] -Parent=Rippers - -[Mozilla/5.0 (compatible; IPCheck Server Monitor*)] -Parent=Rippers -Browser=IPCheck Server Monitor - -[OCN-SOC/*] -Parent=Rippers -Browser=OCN-SOC - -[Offline Explorer*] -Parent=Rippers -Browser=Offline Explorer - -[Open Web Analytics Bot*] -Parent=Rippers -Browser=Open Web Analytics Bot - -[OSSProxy*] -Parent=Rippers -Browser=OSSProxy - -[Pageload*] -Parent=Rippers -Browser=PageLoad - -[PageNest/*] -Parent=Rippers -Browser=PageNest - -[pavuk/*] -Parent=Rippers -Browser=Pavuk - -[PEAR HTTP_Request*] -Parent=Rippers -Browser=PEAR-PHP - -[PHP*] -Parent=Rippers -Browser=PHP - -[PigBlock (Windows NT 5.1; U)*] -Parent=Rippers -Browser=PigBlock -Win32=true - -[Pockey*] -Parent=Rippers -Browser=Pockey-GetHTML - -[POE-Component-Client-HTTP/*] -Parent=Rippers -Browser=POE-Component-Client-HTTP - -[PycURL/*] -Parent=Rippers -Browser=PycURL - -[Python*] -Parent=Rippers -Browser=Python - -[RepoMonkey*] -Parent=Rippers -Browser=RepoMonkey - -[SBL-BOT*] -Parent=Rippers -Browser=BlackWidow - -[ScoutAbout*] -Parent=Rippers -Browser=ScoutAbout - -[sherlock/*] -Parent=Rippers -Browser=Sherlock - -[SiteParser/*] -Parent=Rippers -Browser=SiteParser - -[SiteSnagger*] -Parent=Rippers -Browser=SiteSnagger - -[SiteSucker/*] -Parent=Rippers -Browser=SiteSucker - -[SiteWinder*] -Parent=Rippers -Browser=SiteWinder - -[Snoopy*] -Parent=Rippers -Browser=Snoopy - -[SOFTWING_TEAR_AGENT*] -Parent=Rippers -Browser=AspTear - -[SuperHTTP/*] -Parent=Rippers -Browser=SuperHTTP - -[Tcl http client package*] -Parent=Rippers -Browser=Tcl http client package - -[Twisted PageGetter] -Parent=Rippers -Browser=Twisted PageGetter - -[URL2File/*] -Parent=Rippers -Browser=URL2File - -[UtilMind HTTPGet] -Parent=Rippers -Browser=UtilMind HTTPGet - -[VCI WebViewer*] -Parent=Rippers -Browser=VCI WebViewer - -[W3CRobot/*] -Parent=Rippers -Browser=W3CRobot - -[Web Downloader*] -Parent=Rippers -Browser=Web Downloader - -[Web Downloader/*] -Parent=Rippers -Browser=Web Downloader - -[Web Magnet*] -Parent=Rippers -Browser=Web Magnet - -[WebAuto/*] -Parent=Rippers - -[webbandit/*] -Parent=Rippers -Browser=webbandit - -[WebCopier*] -Parent=Rippers -Browser=WebCopier - -[WebDownloader*] -Parent=Rippers -Browser=WebDownloader - -[WebFetch] -Parent=Rippers -Browser=WebFetch - -[webfetch/*] -Parent=Rippers -Browser=WebFetch - -[WebGatherer*] -Parent=Rippers -Browser=WebGatherer - -[WebGet] -Parent=Rippers -Browser=WebGet - -[WebReaper*] -Parent=Rippers -Browser=WebReaper - -[WebRipper] -Parent=Rippers -Browser=WebRipper - -[WebSauger*] -Parent=Rippers -Browser=WebSauger - -[Website Downloader*] -Parent=Rippers -Browser=Website Downloader - -[Website eXtractor*] -Parent=Rippers -Browser=Website eXtractor - -[Website Quester] -Parent=Rippers -Browser=Website Quester - -[WebsiteExtractor*] -Parent=Rippers -Browser=Website eXtractor - -[WebSnatcher*] -Parent=Rippers -Browser=WebSnatcher - -[Webster Pro*] -Parent=Rippers -Browser=Webster Pro - -[WebStripper*] -Parent=Rippers -Browser=WebStripper - -[WebWhacker*] -Parent=Rippers -Browser=WebWhacker - -[WinScripter iNet Tools] -Parent=Rippers -Browser=WinScripter iNet Tools - -[WWW-Mechanize/*] -Parent=Rippers -Browser=WWW-Mechanize - -[Zend_Http_Client] -Parent=Rippers -Browser=Zend_Http_Client - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Site Monitors - -[Site Monitors] -Parent=DefaultProperties -Browser=Site Monitors -Cookies=true -isBanned=true -Crawler=true - -[*EasyRider*] -Parent=Site Monitors -Browser=EasyRider - -[*maxamine.com--robot*] -Parent=Site Monitors -Browser=maxamine.com--robot -isBanned=true - -[*WebMon ?.*] -Parent=Site Monitors -Browser=WebMon - -[Kenjin Spider*] -Parent=Site Monitors -Browser=Kenjin Spider - -[Kevin http://*] -Parent=Site Monitors -Browser=Kevin -isBanned=true - -[Mozilla/4.0 (compatible; ChangeDetection/*] -Parent=Site Monitors -Browser=ChangeDetection - -[Myst Monitor Service v*] -Parent=Site Monitors -Browser=Myst Monitor Service - -[Net Probe] -Parent=Site Monitors -Browser=Net Probe - -[NetMechanic*] -Parent=Site Monitors -Browser=NetMechanic - -[NetReality*] -Parent=Site Monitors -Browser=NetReality - -[Pingdom GIGRIB*] -Parent=Site Monitors -Browser=Pingdom - -[Site Valet Online*] -Parent=Site Monitors -Browser=Site Valet -isBanned=true - -[SITECHECKER] -Parent=Site Monitors -Browser=SITECHECKER - -[sitemonitor@dnsvr.com/*] -Parent=Site Monitors -Browser=ZoneEdit Failover Monitor -isBanned=false - -[UpTime Checker*] -Parent=Site Monitors -Browser=UpTime Checker - -[URL Control*] -Parent=Site Monitors -Browser=URL Control - -[URL_Access/*] -Parent=Site Monitors - -[URLCHECK] -Parent=Site Monitors -Browser=URLCHECK - -[URLy Warning*] -Parent=Site Monitors -Browser=URLy Warning - -[Webcheck *] -Parent=Site Monitors -Browser=Webcheck -Version=1.0 -MajorVer=1 -MinorVer=0 - -[WebPatrol/*] -Parent=Site Monitors -Browser=WebPatrol - -[websitepulse checker/*] -Parent=Site Monitors -Browser=websitepulse checker - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Social Bookmarkers - -[Social Bookmarkers] -Parent=DefaultProperties -Browser=Social Bookmarkers -Frames=true -Tables=true -Cookies=true -JavaScript=true - -[BookmarkBase(2/;http://bookmarkbase.com)] -Parent=Social Bookmarkers -Browser=BookmarkBase - -[Cocoal.icio.us/1.0 (v43) (Mac OS X; http://www.scifihifi.com/cocoalicious)] -Parent=Social Bookmarkers -Browser=Cocoalicious - -[Mozilla/5.0 (compatible; FriendFeedBot/0.*; Http://friendfeed.com/about/bot)] -Parent=Social Bookmarkers -Browser=FriendFeedBot - -[Twitturly*] -Parent=Social Bookmarkers -Browser=Twitturly - -[WinkBot/*] -Parent=Social Bookmarkers -Browser=WinkBot - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Translators - -[Translators] -Parent=DefaultProperties -Browser=Translators -Frames=true -Tables=true -Cookies=true - -[Seram Server] -Parent=Translators -Browser=Seram Server - -[TeragramWebcrawler/*] -Parent=Translators -Browser=TeragramWebcrawler -Version=1.0 -MajorVer=1 -MinorVer=0 - -[WebIndexer/* (Web Indexer; *)] -Parent=Translators -Browser=WorldLingo - -[WebTrans] -Parent=Translators -Browser=WebTrans - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Version Checkers - -[Version Checkers] -Parent=DefaultProperties -Browser=Version Checkers -Crawler=true - -[Automated Browscap.ini Updater. To report issues contact us at http://www.skycomp.ca] -Parent=Version Checkers -Browser=Automated Browscap.ini Updater - -[BMC Link Validator (http://www.briansmodelcars.com/links/)] -Parent=Version Checkers -Browser=BMC Link Validator -MajorVer=1 -MinorVer=0 -Platform=Win2000 - -[Browscap updater] -Parent=Version Checkers -Browser=Browscap updater - -[BrowscapUpdater1.0] -Parent=Version Checkers - -[Browser Capabilities Project (http://browsers.garykeith.com; http://browsers.garykeith.com/sitemail/contact-me.asp)] -Parent=Version Checkers -Browser=Gary Keith's Version Checker - -[Browser Capabilities Project AutoDownloader] -Parent=Version Checkers -Browser=TKC AutoDownloader - -[browsers.garykeith.com browscap.ini bot BETA] -Parent=Version Checkers - -[Code Sample Web Client] -Parent=Version Checkers -Browser=Code Sample Web Client - -[Desktop Sidebar*] -Parent=Version Checkers -Browser=Desktop Sidebar -isBanned=true - -[Mono Browser Capabilities Updater*] -Parent=Version Checkers -Browser=Mono Browser Capabilities Updater -isBanned=true - -[Rewmi/*] -Parent=Version Checkers -isBanned=true - -[Subtext Version 1.9* - http://subtextproject.com/ (Microsoft Windows NT 5.2.*)] -Parent=Version Checkers -Browser=Subtext - -[TherapeuticResearch] -Parent=Version Checkers -Browser=TherapeuticResearch - -[UpdateBrowscap*] -Parent=Version Checkers -Browser=UpdateBrowscap - -[www.garykeith.com browscap.ini bot*] -Parent=Version Checkers -Browser=clarkson.edu - -[www.substancia.com AutoHTTPAgent (ver *)] -Parent=Version Checkers -Browser=Substância - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Become - -[Become] -Parent=DefaultProperties -Browser=Become -Frames=true -Tables=true -isSyndicationReader=true -Crawler=true - -[*BecomeBot/*] -Parent=Become -Browser=BecomeBot - -[*BecomeBot@exava.com*] -Parent=Become -Browser=BecomeBot - -[*Exabot@exava.com*] -Parent=Become -Browser=Exabot - -[MonkeyCrawl/*] -Parent=Become -Browser=MonkeyCrawl - -[Mozilla/5.0 (compatible; BecomeJPBot/2.3; *)] -Parent=Become -Browser=BecomeJPBot - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Blue Coat Systems - -[Blue Coat Systems] -Parent=DefaultProperties -Browser=Blue Coat Systems -isBanned=true -Crawler=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Browscap Abusers - -[Browscap Abusers] -Parent=DefaultProperties -Browser=Browscap Abusers -isBanned=true - -[Apple-PubSub/*] -Parent=Browscap Abusers -Browser=Apple-PubSub - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; FeedHub - -[FeedHub] -Parent=DefaultProperties -Browser=FeedHub -isSyndicationReader=true - -[FeedHub FeedDiscovery/1.0 (http://www.feedhub.com)] -Parent=FeedHub -Browser=FeedHub FeedDiscovery -Version=1.0 -MajorVer=1 -MinorVer=0 - -[FeedHub FeedFetcher/1.0 (http://www.feedhub.com)] -Parent=FeedHub -Browser=FeedHub FeedFetcher -Version=1.0 -MajorVer=1 -MinorVer=0 - -[FeedHub MetaDataFetcher/1.0 (http://www.feedhub.com)] -Parent=FeedHub -Browser=FeedHub MetaDataFetcher -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Internet Content Rating Association] -Parent=DefaultProperties -Browser= -Frames=true -IFrames=true -Tables=true -Cookies=true -Crawler=true - -[ICRA_label_generator/1.?] -Parent=Internet Content Rating Association -Browser=ICRA_label_generator - -[ICRA_Semantic_spider/0.?] -Parent=Internet Content Rating Association -Browser=ICRA_Semantic_spider - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NameProtect - -[NameProtect] -Parent=DefaultProperties -Browser=NameProtect -isBanned=true -Crawler=true - -[abot/*] -Parent=NameProtect -Browser=NameProtect - -[NP/*] -Parent=NameProtect -Browser=NameProtect - -[NPBot*] -Parent=NameProtect -Browser=NameProtect - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netcraft - -[Netcraft] -Parent=DefaultProperties -Browser=Netcraft -isBanned=true -Crawler=true - -[*Netcraft Web Server Survey*] -Parent=Netcraft -Browser=Netcraft Webserver Survey -isBanned=true - -[Mozilla/5.0 (compatible; NetcraftSurveyAgent/1.0; info@netcraft.com)] -Parent=Netcraft -Browser=NetcraftSurveyAgent - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NewsGator - -[NewsGator] -Parent=DefaultProperties -Browser=NewsGator -isSyndicationReader=true - -[MarsEdit*] -Parent=NewsGator -Browser=MarsEdit - -[NetNewsWire*/*] -Parent=NewsGator -Browser=NetNewsWire -Platform=MacOSX - -[NewsFire/*] -Parent=NewsGator -Browser=NewsFire - -[NewsGator FetchLinks extension/*] -Parent=NewsGator -Browser=NewsGator FetchLinks - -[NewsGator/*] -Parent=NewsGator -Browser=NewsGator -isBanned=true - -[NewsGatorOnline/*] -Parent=NewsGator -Browser=NewsGatorOnline - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 0.2 - -[Chrome 0.2] -Parent=DefaultProperties -Browser=Chrome -Version=0.2 -MinorVer=2 -Beta=true -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.2.* Safari/*] -Parent=Chrome 0.2 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.2.* Safari/*] -Parent=Chrome 0.2 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.2.* Safari/*] -Parent=Chrome 0.2 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 0.3 - -[Chrome 0.3] -Parent=DefaultProperties -Browser=Chrome -Version=0.3 -MinorVer=3 -Beta=true -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.3.* Safari/*] -Parent=Chrome 0.3 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.3.* Safari/*] -Parent=Chrome 0.3 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.3.* Safari/*] -Parent=Chrome 0.3 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 0.4 - -[Chrome 0.4] -Parent=DefaultProperties -Browser=Chrome -Version=0.4 -MinorVer=4 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.4.* Safari/*] -Parent=Chrome 0.4 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.4.* Safari/*] -Parent=Chrome 0.4 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.4.* Safari/*] -Parent=Chrome 0.4 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 0.5 - -[Chrome 0.5] -Parent=DefaultProperties -Browser=Chrome -Version=0.5 -MinorVer=5 -Beta=true -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.5.* Safari/*] -Parent=Chrome 0.5 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.5.* Safari/*] -Parent=Chrome 0.5 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/0.5.* Safari/*] -Parent=Chrome 0.5 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 1.0 - -[Chrome 1.0] -Parent=DefaultProperties -Browser=Chrome -Version=1.0 -MajorVer=1 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/1.0.* Safari/*] -Parent=Chrome 1.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/1.0.* Safari/*] -Parent=Chrome 1.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/1.0.* Safari/*] -Parent=Chrome 1.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/1.0.* Safari/*] -Parent=Chrome 1.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; U; Windows NT 7.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/1.0.* Safari/*] -Parent=Chrome 1.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 2.0 - -[Chrome 2.0] -Parent=DefaultProperties -Browser=Chrome -Version=2.0 -MajorVer=2 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/2.0.* Safari/*] -Parent=Chrome 2.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/2.0.* Safari/*] -Parent=Chrome 2.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/2.0.* Safari/*] -Parent=Chrome 2.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/2.0.* Safari/*] -Parent=Chrome 2.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; U; Windows NT 7.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/2.0.* Safari/*] -Parent=Chrome 2.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chrome 3.0 - -[Chrome 3.0] -Parent=DefaultProperties -Browser=Chrome -Version=3.0 -MajorVer=3 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/3.0.* Safari/*] -Parent=Chrome 3.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Chrome/3.0.* Safari/*] -Parent=Chrome 3.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/3.0.* Safari/*] -Parent=Chrome 3.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1; *) AppleWebKit/* (KHTML, like Gecko) Chrome/3.0.* Safari/*] -Parent=Chrome 3.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; U; Windows NT 7.0; *) AppleWebKit/* (KHTML, like Gecko) Chrome/3.0.* Safari/*] -Parent=Chrome 3.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Google Code - -[Google Code] -Parent=DefaultProperties -Browser=Google Code -Tables=true -Cookies=true -JavaApplets=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Iron 0.2 - -[Iron 0.2] -Parent=DefaultProperties -Browser=Iron -Version=0.2 -MinorVer=2 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.2.* Safari/*] -Parent=Iron 0.2 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.2.* Safari/*] -Parent=Iron 0.2 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.2.* Safari/*] -Parent=Iron 0.2 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Iron 0.3 - -[Iron 0.3] -Parent=DefaultProperties -Browser=Iron -Version=0.3 -MinorVer=3 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.3.* Safari/*] -Parent=Iron 0.3 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.3.* Safari/*] -Parent=Iron 0.3 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.3.* Safari/*] -Parent=Iron 0.3 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Iron 0.4 - -[Iron 0.4] -Parent=DefaultProperties -Browser=Iron -Version=0.4 -MinorVer=4 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.4.* Safari/*] -Parent=Iron 0.4 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.4.* Safari/*] -Parent=Iron 0.4 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *) AppleWebKit/* (KHTML, like Gecko) Iron/0.4.* Safari/*] -Parent=Iron 0.4 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; iPod - -[iPod] -Parent=DefaultProperties -Browser=iPod -Platform=iPhone OSX -isMobileDevice=true - -[Mozilla/5.0 (iPod; U; *Mac OS X; *) AppleWebKit/* (*) Version/3.0 Mobile/* Safari/*] -Parent=iPod -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=MacOSX - -[Mozilla/5.0 (iPod; U; CPU iPhone OS 2_2 like Mac OS X; en-us) AppleWebKit/* (KHTML, like Gecko) Mobile/*] -Parent=iPod - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; iTunes - -[iTunes] -Parent=DefaultProperties -Browser=iTunes -Platform=iPhone OSX - -[iTunes/* (Windows; ?)] -Parent=iTunes -Browser=iTunes -Platform=Win32 -Win32=true - -[MOT-* iTunes/* MIB/* Profile/MIDP-* Configuration/CLDC-* UP.Link/*] -Parent=iTunes - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Media Players - -[Media Players] -Parent=DefaultProperties -Browser=Media Players -Cookies=true - -[Microsoft NetShow(TM) Player with RealVideo(R)] -Parent=Media Players -Browser=Microsoft NetShow - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; *) AppleWebKit/* RealPlayer] -Parent=Media Players -Browser=RealPlayer -Platform=MacOSX - -[MPlayer 0.9*] -Parent=Media Players -Browser=MPlayer -Version=0.9 -MajorVer=0 -MinorVer=9 - -[MPlayer 1.*] -Parent=Media Players -Browser=MPlayer -Version=1.0 -MajorVer=1 -MinorVer=0 - -[MPlayer HEAD CVS] -Parent=Media Players -Browser=MPlayer - -[RealPlayer*] -Parent=Media Players -Browser=RealPlayer - -[RMA/*] -Parent=Media Players -Browser=RMA - -[VLC media player*] -Parent=Media Players -Browser=VLC - -[vobsub] -Parent=Media Players -Browser=vobsub -isBanned=true - -[WinampMPEG/*] -Parent=Media Players -Browser=WinAmp - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Nintendo - -[Nintendo Wii] -Parent=DefaultProperties -Browser= -isMobileDevice=true - -[Opera/* (Nintendo DSi; Opera/*; *; *)] -Parent=Nintendo Wii -Browser=DSi - -[Opera/* (Nintendo Wii; U; *)] -Parent=Nintendo Wii -Browser=Wii - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Windows Media Player - -[Windows Media Player] -Parent=DefaultProperties -Browser=Windows Media Player -Cookies=true - -[NSPlayer/10.*] -Parent=Windows Media Player -Version=10.0 -MajorVer=10 -MinorVer=0 - -[NSPlayer/11.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=11.0 -MajorVer=11 -MinorVer=0 - -[NSPlayer/4.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=4.0 -MajorVer=4 -MinorVer=0 - -[NSPlayer/7.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=7.0 -MajorVer=7 -MinorVer=0 - -[NSPlayer/8.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=8.0 -MajorVer=8 -MinorVer=0 - -[NSPlayer/9.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=9.0 -MajorVer=9 -MinorVer=0 - -[Windows-Media-Player/10.*] -Parent=Windows Media Player -Browser=Windows-Media-Player -Version=10.0 -MajorVer=10 -MinorVer=0 -Win32=true - -[Windows-Media-Player/11.*] -Parent=Windows Media Player -Version=11.0 -MajorVer=11 -MinorVer=0 -Win32=true - -[Windows-Media-Player/7.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=7.0 -MajorVer=7 -MinorVer=0 -Win32=true - -[Windows-Media-Player/8.*] -Parent=Windows Media Player -Browser=Windows Media Player -Version=8.0 -MajorVer=8 -MinorVer=0 -Win32=true - -[Windows-Media-Player/9.*] -Parent=Windows Media Player -Version=9.0 -MajorVer=9 -MinorVer=0 -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Zune - -[Zune] -Parent=DefaultProperties -Browser=Zune -Cookies=true - -[Mozilla/4.0 (compatible; MSIE ?.0; *Zune 2.0*)*] -Parent=Zune -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/4.0 (compatible; MSIE ?.0; *Zune 2.5*)*] -Parent=Zune -Version=2.5 -MajorVer=2 -MinorVer=5 - -[Mozilla/4.0 (compatible; MSIE ?.0; *Zune 3.0*)*] -Parent=Zune -Version=3.0 -MajorVer=3 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; QuickTime 7.0 - -[QuickTime 7.0] -Parent=DefaultProperties -Browser=QuickTime -Version=7.0 -MajorVer=7 -Cookies=true - -[QuickTime (qtver=7.0*;cpu=PPC;os=Mac 10.*)] -Parent=QuickTime 7.0 -Platform=MacOSX - -[QuickTime (qtver=7.0*;cpu=PPC;os=Mac 9.*)] -Parent=QuickTime 7.0 -Platform=MacPPC - -[QuickTime (qtver=7.0*;os=Windows 95*)] -Parent=QuickTime 7.0 -Platform=Win95 -Win32=true - -[QuickTime (qtver=7.0*;os=Windows 98*)] -Parent=QuickTime 7.0 -Platform=Win98 -Win32=true - -[QuickTime (qtver=7.0*;os=Windows Me*)] -Parent=QuickTime 7.0 -Platform=WinME -Win32=true - -[QuickTime (qtver=7.0*;os=Windows NT 4.0*)] -Parent=QuickTime 7.0 -Platform=WinNT -Win32=true - -[QuickTime (qtver=7.0*;os=Windows NT 5.0*)] -Parent=QuickTime 7.0 -Platform=Win2000 -Win32=true - -[QuickTime (qtver=7.0*;os=Windows NT 5.1*)] -Parent=QuickTime 7.0 -Platform=WinXP -Win32=true - -[QuickTime (qtver=7.0*;os=Windows NT 5.2*)] -Parent=QuickTime 7.0 -Platform=Win2003 -Win32=true - -[QuickTime/7.0.* (qtver=7.0.*;*;os=Mac 10.*)*] -Parent=QuickTime 7.0 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; QuickTime 7.1 - -[QuickTime 7.1] -Parent=DefaultProperties -Browser=QuickTime -Version=7.1 -MajorVer=7 -MinorVer=1 -Cookies=true - -[QuickTime (qtver=7.1*;cpu=PPC;os=Mac 10.*)] -Parent=QuickTime 7.1 -Platform=MacOSX - -[QuickTime (qtver=7.1*;cpu=PPC;os=Mac 9.*)] -Parent=QuickTime 7.1 -Platform=MacPPC - -[QuickTime (qtver=7.1*;os=Windows 98*)] -Parent=QuickTime 7.1 -Platform=Win98 -Win32=true - -[QuickTime (qtver=7.1*;os=Windows NT 4.0*)] -Parent=QuickTime 7.1 -Platform=WinNT -Win32=true - -[QuickTime (qtver=7.1*;os=Windows NT 5.0*)] -Parent=QuickTime 7.1 -Platform=Win2000 -Win32=true - -[QuickTime (qtver=7.1*;os=Windows NT 5.1*)] -Parent=QuickTime 7.1 -Platform=WinXP -Win32=true - -[QuickTime (qtver=7.1*;os=Windows NT 5.2*)] -Parent=QuickTime 7.1 -Platform=Win2003 -Win32=true - -[QuickTime/7.1.* (qtver=7.1.*;*;os=Mac 10.*)*] -Parent=QuickTime 7.1 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; QuickTime 7.2 - -[QuickTime 7.2] -Parent=DefaultProperties -Browser=QuickTime -Version=7.2 -MajorVer=7 -MinorVer=2 -Platform=MacOSX -Cookies=true - -[QuickTime (qtver=7.2*;cpu=PPC;os=Mac 10.*)] -Parent=QuickTime 7.2 -Platform=MacOSX - -[QuickTime (qtver=7.2*;cpu=PPC;os=Mac 9.*)] -Parent=QuickTime 7.2 -Platform=MacPPC - -[QuickTime (qtver=7.2*;os=Windows 98*)] -Parent=QuickTime 7.2 -Platform=Win98 -Win32=true - -[QuickTime (qtver=7.2*;os=Windows NT 4.0*)] -Parent=QuickTime 7.2 -Platform=WinNT -Win32=true - -[QuickTime (qtver=7.2*;os=Windows NT 5.0*)] -Parent=QuickTime 7.2 -Platform=Win2000 -Win32=true - -[QuickTime (qtver=7.2*;os=Windows NT 5.1*)] -Parent=QuickTime 7.2 -Platform=WinXP -Win32=true - -[QuickTime (qtver=7.2*;os=Windows NT 5.2*)] -Parent=QuickTime 7.2 -Platform=Win2003 -Win32=true - -[QuickTime/7.2.* (qtver=7.2.*;*;os=Mac 10.*)*] -Parent=QuickTime 7.2 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; QuickTime 7.3 - -[QuickTime 7.3] -Parent=DefaultProperties -Browser=QuickTime -Version=7.3 -MajorVer=7 -MinorVer=3 -Platform=MacOSX -Cookies=true - -[QuickTime (qtver=7.3*;cpu=PPC;os=Mac 10.*)] -Parent=QuickTime 7.3 -Platform=MacOSX - -[QuickTime (qtver=7.3*;cpu=PPC;os=Mac 9.*)] -Parent=QuickTime 7.3 -Platform=MacPPC - -[QuickTime (qtver=7.3*;os=Windows 98*)] -Parent=QuickTime 7.3 -Platform=Win98 -Win32=true - -[QuickTime (qtver=7.3*;os=Windows NT 4.0*)] -Parent=QuickTime 7.3 -Platform=WinNT -Win32=true - -[QuickTime (qtver=7.3*;os=Windows NT 5.0*)] -Parent=QuickTime 7.3 -Platform=Win2000 -Win32=true - -[QuickTime (qtver=7.3*;os=Windows NT 5.1*)] -Parent=QuickTime 7.3 -Platform=WinXP -Win32=true - -[QuickTime (qtver=7.3*;os=Windows NT 5.2*)] -Parent=QuickTime 7.3 -Platform=Win2003 -Win32=true - -[QuickTime/7.3.* (qtver=7.3.*;*;os=Mac 10.*)*] -Parent=QuickTime 7.3 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; QuickTime 7.4 - -[QuickTime 7.4] -Parent=DefaultProperties -Browser=QuickTime -Version=7.4 -MajorVer=7 -MinorVer=4 -Platform=MacOSX -Cookies=true - -[QuickTime (qtver=7.4*;cpu=PPC;os=Mac 10.*)] -Parent=QuickTime 7.4 -Platform=MacOSX - -[QuickTime (qtver=7.4*;cpu=PPC;os=Mac 9.*)] -Parent=QuickTime 7.4 -Platform=MacPPC - -[QuickTime (qtver=7.4*;os=Windows 98*)] -Parent=QuickTime 7.4 -Platform=Win98 -Win32=true - -[QuickTime (qtver=7.4*;os=Windows NT 4.0*)] -Parent=QuickTime 7.4 -Platform=WinNT -Win32=true - -[QuickTime (qtver=7.4*;os=Windows NT 5.0*)] -Parent=QuickTime 7.4 -Platform=Win2000 -Win32=true - -[QuickTime (qtver=7.4*;os=Windows NT 5.1*)] -Parent=QuickTime 7.4 -Platform=WinXP -Win32=true - -[QuickTime (qtver=7.4*;os=Windows NT 5.2*)] -Parent=QuickTime 7.4 -Platform=Win2003 -Win32=true - -[QuickTime/7.4.* (qtver=7.4.*;*;os=Mac 10.*)*] -Parent=QuickTime 7.4 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Google Android - -[Android] -Parent=DefaultProperties -Browser=Android -Frames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true - -[Mozilla/5.0 (Linux; U; Android *; *) AppleWebKit/* (KHTML, like Gecko) Safari/*] -Parent=Android -Browser=Android -Platform=Linux -isMobileDevice=true - -[Mozilla/5.0 (Linux; U; Android *; *) AppleWebKit/* (KHTML, like Gecko) Version/3.0.* Mobile Safari/*] -Parent=Android -Browser=Android -Platform=Linux -isMobileDevice=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; BlackBerry - -[BlackBerry] -Parent=DefaultProperties -Browser=BlackBerry -Frames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true - -[*BlackBerry*] -Parent=BlackBerry - -[*BlackBerrySimulator/*] -Parent=BlackBerry - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Handspring Blazer - -[Blazer] -Parent=DefaultProperties -Browser=Handspring Blazer -Platform=Palm -Frames=true -Tables=true -Cookies=true -isMobileDevice=true - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 95; PalmSource; Blazer 3.0) 16;160x160] -Parent=Blazer -Version=3.0 -MajorVer=3 -MinorVer=0 - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; PalmSource/*; Blazer/4.0) 16;320x448] -Parent=Blazer -Version=4.0 -MajorVer=4 -MinorVer=0 - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; PalmSource/*; Blazer/4.1) 16;320x320] -Parent=Blazer -Version=4.1 -MajorVer=4 -MinorVer=1 - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; PalmSource/*; Blazer/4.2) 16;320x320] -Parent=Blazer -Version=4.2 -MajorVer=4 -MinorVer=2 - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; PalmSource/*; Blazer/4.4) 16;320x320] -Parent=Blazer -Version=4.4 -MajorVer=4 -MinorVer=4 - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; PalmSource/*; Blazer/4.5) 16;320x320] -Parent=Blazer -Version=4.5 -MajorVer=4 -MinorVer=5 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; DoCoMo - -[DoCoMo] -Parent=DefaultProperties -Browser=DoCoMo -Frames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true - -[DoCoMo/1.0*] -Parent=DoCoMo -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WAP - -[DoCoMo/2.0*] -Parent=DoCoMo -Version=2.0 -MajorVer=2 -MinorVer=0 -Platform=WAP - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IEMobile - -[IEMobile] -Parent=DefaultProperties -Browser=IEMobile -Platform=WinCE -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -VBScript=true -JavaScript=true -ActiveXControls=true -isMobileDevice=true -CssVersion=2 -supportsCSS=true - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 6.*)*] -Parent=IEMobile -Version=6.0 -MajorVer=6 -MinorVer=0 - -[Mozilla/4.0 (compatible; MSIE 6.0; Windows CE; IEMobile 7.*)*] -Parent=IEMobile -Version=7.0 -MajorVer=7 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; iPhone - -[iPhone] -Parent=DefaultProperties -Browser=iPhone -Platform=iPhone OSX -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -isMobileDevice=true -CssVersion=3 -supportsCSS=true - -[Mozilla/4.0 (iPhone; *)] -Parent=iPhone - -[Mozilla/4.0 (iPhone; U; CPU like Mac OS X; *)] -Parent=iPhone - -[Mozilla/5.0 (iPhone Simulator; U; CPU iPhone OS 2_* like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko) Version/3.1* Mobile/* Safari/*] -Parent=iPhone -Browser=iPhone Simulator -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Mozilla/5.0 (iPhone Simulator; U; CPU iPhone OS 2_0_1 like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko) Version/3.1* Mobile/* Safari/*] -Parent=iPhone -Browser=iPhone Simulator -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Mozilla/5.0 (iPhone Simulator; U; CPU iPhone OS 2_1 like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko) Version/3.1* Mobile/* Safari/*] -Parent=iPhone -Browser=iPhone Simulator -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Mozilla/5.0 (iPhone)] -Parent=iPhone - -[Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_* like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko)] -Parent=iPhone -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_* like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko) Version/3.1* Mobile/* Safari/*] -Parent=iPhone -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_0* like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko) Version/3.1* Mobile/* Safari/*] -Parent=iPhone -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_0_2 like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko)] -Parent=iPhone - -[Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_1 like Mac OS X; *)*] -Parent=iPhone - -[Mozilla/5.0 (iPhone; U; CPU iPhone OS 2_2_1 like Mac OS X; *)] -Parent=iPhone - -[Mozilla/5.0 (iPhone; U; CPU like Mac OS X; *) AppleWebKit/* (KHTML, like Gecko) Version/3.0 Mobile/* Safari/*] -Parent=iPhone -Version=3.0 -MajorVer=3 -MinorVer=0 - -[Mozilla/5.0 (iPod; U; *Mac OS X; *) AppleWebKit/* (*) Version/* Mobile/*] -Parent=iPhone -Browser=iTouch - -[Mozilla/5.0 (iPod; U; CPU iPhone OS 2_2* like Mac OS X; *)*] -Parent=iPhone -Browser=iTouch -Version=2.2 -MajorVer=2 -MinorVer=2 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; KDDI - -[KDDI] -Parent=DefaultProperties -Browser=KDDI -Frames=true -Tables=true -Cookies=true -BackgroundSounds=true -VBScript=true -JavaScript=true -ActiveXControls=true -isMobileDevice=true -CssVersion=1 -supportsCSS=true - -[KDDI-* UP.Browser/* (GUI) MMP/*] -Parent=KDDI - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Miscellaneous Mobile - -[Miscellaneous Mobile] -Parent=DefaultProperties -Browser= -IFrames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (X11; *; CentOS; *) AppleWebKit/* (KHTML, like Gecko) Bolt/0.* Version/3.0 Safari/*] -Parent=Miscellaneous Mobile -Browser=Bolt - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Motorola Internet Browser - -[Motorola Internet Browser] -Parent=DefaultProperties -Browser=Motorola Internet Browser -Frames=true -Tables=true -Cookies=true -isMobileDevice=true - -[MOT-*/*] -Parent=Motorola Internet Browser - -[MOT-1*/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-8700_/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-A-0A/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-A-2B/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-A-88/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-C???/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-GATW_/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-L6/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-L7/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-M*/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-MP*/* Mozilla/* (compatible; MSIE *; Windows CE; *)] -Parent=Motorola Internet Browser -Win32=true - -[MOT-MP*/* Mozilla/4.0 (compatible; MSIE *; Windows CE; *)] -Parent=Motorola Internet Browser -Win32=true - -[MOT-SAP4_/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-T*/*] -Parent=Motorola Internet Browser - -[MOT-T7*/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-T721*] -Parent=Motorola Internet Browser - -[MOT-TA02/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-V*/*] -Parent=Motorola Internet Browser - -[MOT-V*/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-V*/* UP.Browser/*] -Parent=Motorola Internet Browser - -[MOT-V3/* MIB/*] -Parent=Motorola Internet Browser - -[MOT-V4*/* MIB/*] -Parent=Motorola Internet Browser - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; MSN Mobile Proxy - -[MSN Mobile Proxy] -Parent=DefaultProperties -Browser=MSN Mobile Proxy -Win32=true -Frames=true -Tables=true -Cookies=true -JavaScript=true -ActiveXControls=true -isMobileDevice=true - -[Mozilla/* (compatible; MSIE *; Windows*; MSN Mobile Proxy)] -Parent=MSN Mobile Proxy - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NetFront - -[NetFront] -Parent=DefaultProperties -Browser=NetFront -Frames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true - -[*NetFront/*] -Parent=NetFront - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Nokia - -[Nokia] -Parent=DefaultProperties -Browser=Nokia -Tables=true -Cookies=true -isMobileDevice=true - -[*Nokia*/*] -Parent=Nokia - -[Mozilla/* (SymbianOS/*; ?; *) AppleWebKit/* (KHTML, like Gecko) Safari/*] -Parent=Nokia -Platform=SymbianOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Openwave Mobile Browser - -[Openwave Mobile Browser] -Parent=DefaultProperties -Browser=Openwave Mobile Browser -Alpha=true -Win32=true -Win64=true -Frames=true -Tables=true -Cookies=true -isMobileDevice=true - -[*UP.Browser/*] -Parent=Openwave Mobile Browser - -[*UP.Link/*] -Parent=Openwave Mobile Browser - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera Mini - -[Opera Mini] -Parent=DefaultProperties -Browser=Opera Mini -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true - -[Opera/* (J2ME/MIDP; Opera Mini/1.0*)*] -Parent=Opera Mini -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Opera/* (J2ME/MIDP; Opera Mini/1.1*)*] -Parent=Opera Mini -Version=1.1 -MajorVer=1 -MinorVer=1 - -[Opera/* (J2ME/MIDP; Opera Mini/1.2*)*] -Parent=Opera Mini -Version=1.2 -MajorVer=1 -MinorVer=2 - -[Opera/* (J2ME/MIDP; Opera Mini/2.0*)*] -Parent=Opera Mini -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Opera/* (J2ME/MIDP; Opera Mini/3.0*)*] -Parent=Opera Mini -Version=3.0 -MajorVer=3 -MinorVer=0 - -[Opera/* (J2ME/MIDP; Opera Mini/3.1*)*] -Parent=Opera Mini -Version=3.1 -MajorVer=3 -MinorVer=1 - -[Opera/* (J2ME/MIDP; Opera Mini/4.0*)*] -Parent=Opera Mini -Version=4.0 -MajorVer=4 -MinorVer=0 - -[Opera/* (J2ME/MIDP; Opera Mini/4.1*)*] -Parent=Opera Mini -Version=4.1 -MajorVer=4 -MinorVer=1 - -[Opera/* (J2ME/MIDP; Opera Mini/4.2*)*] -Parent=Opera Mini -Version=4.2 -MajorVer=4 -MinorVer=2 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera Mobile - -[Opera Mobile] -Parent=DefaultProperties -Browser=Opera Mobi -Frames=true -Tables=true -Cookies=true -isMobileDevice=true - -[Opera/9.5 (Microsoft Windows; PPC; *Opera Mobile/*)] -Parent=Opera Mobile -Version=9.5 -MajorVer=9 -MinorVer=5 - -[Opera/9.5 (Microsoft Windows; PPC; Opera Mobi/*)] -Parent=Opera Mobile -Version=9.5 -MajorVer=9 -MinorVer=5 - -[Opera/9.51 Beta (Microsoft Windows; PPC; Opera Mobi/*)*] -Parent=Opera Mobile -Version=9.51 -MajorVer=9 -MinorVer=51 -Beta=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Playstation - -[Playstation] -Parent=DefaultProperties -Browser=Playstation -Platform=WAP -Frames=true -Tables=true -Cookies=true -isMobileDevice=true - -[Mozilla/* (PLAYSTATION *; *)] -Parent=Playstation -Browser=PlayStation 3 -Frames=false - -[Mozilla/* (PSP (PlayStation Portable); *)] -Parent=Playstation - -[Sony PS2 (Linux)] -Parent=Playstation -Browser=Sony PS2 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Pocket PC - -[Pocket PC] -Parent=DefaultProperties -Browser=Pocket PC -Platform=WinCE -Win32=true -Frames=true -Tables=true -Cookies=true -JavaScript=true -ActiveXControls=true -isMobileDevice=true -CssVersion=1 -supportsCSS=true - -[*(compatible; MSIE *.*; Windows CE; PPC; *)] -Parent=Pocket PC - -[HTC-*/* Mozilla/* (compatible; MSIE *.*; Windows CE*)*] -Parent=Pocket PC -Win32=true - -[Mozilla/* (compatible; MSPIE *.*; *Windows CE*)*] -Parent=Pocket PC -Win32=true - -[T-Mobile* Mozilla/* (compatible; MSIE *.*; Windows CE; *)] -Parent=Pocket PC - -[Vodafone* Mozilla/* (compatible; MSIE *.*; Windows CE; *)*] -Parent=Pocket PC - -[Windows CE (Pocket PC) - Version *.*] -Parent=Pocket PC -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SEMC Browser - -[SEMC Browser] -Parent=DefaultProperties -Browser=SEMC Browser -Platform=JAVA -Tables=true -isMobileDevice=true -CssVersion=1 -supportsCSS=true - -[*SEMC-Browser/*] -Parent=SEMC Browser - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SonyEricsson - -[SonyEricsson] -Parent=DefaultProperties -Browser=SonyEricsson -Frames=true -Tables=true -Cookies=true -JavaScript=true -isMobileDevice=true -CssVersion=1 -supportsCSS=true - -[*Ericsson*] -Parent=SonyEricsson - -[*SonyEricsson*] -Parent=SonyEricsson - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netbox - -[Netbox] -Parent=DefaultProperties -Browser=Netbox -Frames=true -Tables=true -Cookies=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/3.01 (compatible; Netbox/*; Linux*)] -Parent=Netbox -Browser=Netbox -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; PowerTV - -[PowerTV] -Parent=DefaultProperties -Browser=PowerTV -Platform=PowerTV -Frames=true -Tables=true -Cookies=true -JavaScript=true - -[Mozilla/4.0 PowerTV/1.5 (Compatible; Spyglass DM 3.2.1, EXPLORER)] -Parent=PowerTV -Version=1.5 -MajorVer=1 -MinorVer=5 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; WebTV/MSNTV - -[WebTV] -Parent=DefaultProperties -Browser=WebTV/MSNTV -Platform=WebTV -Frames=true -Tables=true -Cookies=true -JavaScript=true - -[Mozilla/3.0 WebTV/1.*(compatible; MSIE 2.0)] -Parent=WebTV -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/4.0 WebTV/2.0*(compatible; MSIE 3.0)] -Parent=WebTV -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/4.0 WebTV/2.1*(compatible; MSIE 3.0)] -Parent=WebTV -Version=2.1 -MajorVer=2 -MinorVer=1 - -[Mozilla/4.0 WebTV/2.2*(compatible; MSIE 3.0)] -Parent=WebTV -Version=2.2 -MajorVer=2 -MinorVer=2 - -[Mozilla/4.0 WebTV/2.3*(compatible; MSIE 3.0)] -Parent=WebTV -Version=2.3 -MajorVer=2 -MinorVer=3 - -[Mozilla/4.0 WebTV/2.4*(compatible; MSIE 3.0)] -Parent=WebTV -Version=2.4 -MajorVer=2 -MinorVer=4 - -[Mozilla/4.0 WebTV/2.5*(compatible; MSIE 4.0)] -Parent=WebTV -Version=2.5 -MajorVer=2 -MinorVer=5 -CssVersion=1 -supportsCSS=true - -[Mozilla/4.0 WebTV/2.6*(compatible; MSIE 4.0)] -Parent=WebTV -Version=2.6 -MajorVer=2 -MinorVer=6 -CssVersion=1 -supportsCSS=true - -[Mozilla/4.0 WebTV/2.7*(compatible; MSIE 4.0)] -Parent=WebTV -Version=2.7 -MajorVer=2 -MinorVer=7 -CssVersion=1 -supportsCSS=true - -[Mozilla/4.0 WebTV/2.8*(compatible; MSIE 4.0)] -Parent=WebTV -Version=2.8 -MajorVer=2 -MinorVer=8 -JavaApplets=true -CssVersion=1 -supportsCSS=true - -[Mozilla/4.0 WebTV/2.9*(compatible; MSIE 4.0)] -Parent=WebTV -Version=2.9 -MajorVer=2 -MinorVer=9 -JavaApplets=true -CssVersion=1 -supportsCSS=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Amaya - -[Amaya] -Parent=DefaultProperties -Browser=Amaya -Tables=true -Cookies=true - -[amaya/7.*] -Parent=Amaya -Version=7.0 -MajorVer=7 -MinorVer=0 - -[amaya/8.0*] -Parent=Amaya -Version=8.0 -MajorVer=8 -MinorVer=0 -CssVersion=2 -supportsCSS=true - -[amaya/8.1*] -Parent=Amaya -Version=8.1 -MajorVer=8 -MinorVer=1 -CssVersion=2 -supportsCSS=true - -[amaya/8.2*] -Parent=Amaya -Version=8.2 -MajorVer=8 -MinorVer=2 -CssVersion=2 -supportsCSS=true - -[amaya/8.3*] -Parent=Amaya -Version=8.3 -MajorVer=8 -MinorVer=3 -CssVersion=2 -supportsCSS=true - -[amaya/8.4*] -Parent=Amaya -Version=8.4 -MajorVer=8 -MinorVer=4 -CssVersion=2 -supportsCSS=true - -[amaya/8.5*] -Parent=Amaya -Version=8.5 -MajorVer=8 -MinorVer=5 -CssVersion=2 -supportsCSS=true - -[amaya/8.6*] -Parent=Amaya -Version=8.6 -MajorVer=8 -MinorVer=6 -CssVersion=2 -supportsCSS=true - -[amaya/8.7*] -Parent=Amaya -Version=8.7 -MajorVer=8 -MinorVer=7 -CssVersion=2 -supportsCSS=true - -[amaya/8.8*] -Parent=Amaya -Version=8.8 -MajorVer=8 -MinorVer=8 -CssVersion=2 -supportsCSS=true - -[amaya/8.9*] -Parent=Amaya -Version=8.9 -MajorVer=8 -MinorVer=9 -CssVersion=2 -supportsCSS=true - -[amaya/9.0*] -Parent=Amaya -Version=9.0 -MajorVer=8 -MinorVer=0 -CssVersion=2 -supportsCSS=true - -[amaya/9.1*] -Parent=Amaya -Version=9.1 -MajorVer=9 -MinorVer=1 -CssVersion=2 -supportsCSS=true - -[amaya/9.2*] -Parent=Amaya -Version=9.2 -MajorVer=9 -MinorVer=2 -CssVersion=2 -supportsCSS=true - -[amaya/9.3*] -Parent=Amaya -Version=9.3 -MajorVer=9 -MinorVer=3 - -[amaya/9.4*] -Parent=Amaya -Version=9.4 -MajorVer=9 -MinorVer=4 - -[amaya/9.5*] -Parent=Amaya -Version=9.5 -MajorVer=9 -MinorVer=5 - -[Emacs-w3m/*] -Parent=Emacs/W3 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Links - -[Links] -Parent=DefaultProperties -Browser=Links -Frames=true -Tables=true - -[Links (0.9*; CYGWIN_NT-5.1*)] -Parent=Links -Browser=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=WinXP - -[Links (0.9*; Darwin*)] -Parent=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=MacPPC - -[Links (0.9*; FreeBSD*)] -Parent=Links -Browser=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=FreeBSD - -[Links (0.9*; Linux*)] -Parent=Links -Browser=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=Linux - -[Links (0.9*; OS/2*)] -Parent=Links -Browser=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=OS/2 - -[Links (0.9*; Unix*)] -Parent=Links -Browser=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=Unix - -[Links (0.9*; Win32*)] -Parent=Links -Browser=Links -Version=0.9 -MajorVer=0 -MinorVer=9 -Platform=Win32 -Win32=true - -[Links (1.0*; CYGWIN_NT-5.1*)] -Parent=Links -Browser=Links -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinXP - -[Links (1.0*; FreeBSD*)] -Parent=Links -Browser=Links -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=FreeBSD - -[Links (1.0*; Linux*)] -Parent=Links -Browser=Links -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Linux - -[Links (1.0*; OS/2*)] -Parent=Links -Browser=Links -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=OS/2 - -[Links (1.0*; Unix*)] -Parent=Links -Browser=Links -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Unix - -[Links (1.0*; Win32*)] -Parent=Links -Browser=Links -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win32 -Win32=true - -[Links (2.0*; Linux*)] -Parent=Links -Browser=Links -Version=2.0 -MajorVer=2 -MinorVer=0 -Platform=Linux - -[Links (2.1*; FreeBSD*)] -Parent=Links -Browser=Links -Version=2.1 -MajorVer=2 -MinorVer=1 -Platform=FreeBSD - -[Links (2.1*; Linux *)] -Parent=Links -Browser=Links -Version=2.1 -MajorVer=2 -MinorVer=1 -Platform=Linux - -[Links (2.1*; OpenBSD*)] -Parent=Links -Browser=Links -Version=2.1 -MajorVer=2 -MinorVer=1 -Platform=OpenBSD - -[Links (2.2*; FreeBSD*)] -Parent=Links -Version=2.2 -MajorVer=2 -MinorVer=2 -Platform=FreeBSD - -[Links (2.2*; Linux *)] -Parent=Links -Version=2.2 -MajorVer=2 -MinorVer=2 -Platform=Linux - -[Links (2.2*; OpenBSD*)] -Parent=Links -Version=2.2 -MajorVer=2 -MinorVer=2 -Platform=OpenBSD - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Lynx - -[Lynx] -Parent=DefaultProperties -Browser=Lynx -Frames=true -Tables=true - -[Lynx *] -Parent=Lynx -Browser=Lynx - -[Lynx/2.3*] -Parent=Lynx -Browser=Lynx -Version=2.3 -MajorVer=2 -MinorVer=3 - -[Lynx/2.4*] -Parent=Lynx -Browser=Lynx -Version=2.4 -MajorVer=2 -MinorVer=4 - -[Lynx/2.5*] -Parent=Lynx -Browser=Lynx -Version=2.5 -MajorVer=2 -MinorVer=5 - -[Lynx/2.6*] -Parent=Lynx -Browser=Lynx -Version=2.6 -MajorVer=2 -MinorVer=6 - -[Lynx/2.7*] -Parent=Lynx -Browser=Lynx -Version=2.7 -MajorVer=2 -MinorVer=7 - -[Lynx/2.8*] -Parent=Lynx -Browser=Lynx -Version=2.8 -MajorVer=2 -MinorVer=8 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NCSA Mosaic - -[Mosaic] -Parent=DefaultProperties -Browser=Mosaic - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; w3m - -[w3m] -Parent=DefaultProperties -Browser=w3m -Frames=true -Tables=true - -[w3m/0.1*] -Parent=w3m -Browser=w3m -Version=0.1 -MajorVer=0 -MinorVer=1 - -[w3m/0.2*] -Parent=w3m -Browser=w3m -Version=0.2 -MajorVer=0 -MinorVer=2 - -[w3m/0.3*] -Parent=w3m -Browser=w3m -Version=0.3 -MajorVer=0 -MinorVer=3 - -[w3m/0.4*] -Parent=w3m -Browser=w3m -Version=0.4 -MajorVer=0 -MinorVer=4 -Cookies=true - -[w3m/0.5*] -Parent=w3m -Browser=w3m -Version=0.5 -MajorVer=0 -MinorVer=5 -Cookies=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ELinks 0.10 - -[ELinks 0.10] -Parent=DefaultProperties -Browser=ELinks -Version=0.10 -MinorVer=10 -Frames=true -Tables=true - -[ELinks (0.10*; *AIX*)] -Parent=ELinks 0.10 -Platform=AIX - -[ELinks (0.10*; *BeOS*)] -Parent=ELinks 0.10 -Platform=BeOS - -[ELinks (0.10*; *CygWin*)] -Parent=ELinks 0.10 -Platform=CygWin - -[ELinks (0.10*; *Darwin*)] -Parent=ELinks 0.10 -Platform=Darwin - -[ELinks (0.10*; *Digital Unix*)] -Parent=ELinks 0.10 -Platform=Digital Unix - -[ELinks (0.10*; *FreeBSD*)] -Parent=ELinks 0.10 -Platform=FreeBSD - -[ELinks (0.10*; *HPUX*)] -Parent=ELinks 0.10 -Platform=HP-UX - -[ELinks (0.10*; *IRIX*)] -Parent=ELinks 0.10 -Platform=IRIX - -[ELinks (0.10*; *Linux*)] -Parent=ELinks 0.10 -Platform=Linux - -[ELinks (0.10*; *NetBSD*)] -Parent=ELinks 0.10 -Platform=NetBSD - -[ELinks (0.10*; *OpenBSD*)] -Parent=ELinks 0.10 -Platform=OpenBSD - -[ELinks (0.10*; *OS/2*)] -Parent=ELinks 0.10 -Platform=OS/2 - -[ELinks (0.10*; *RISC*)] -Parent=ELinks 0.10 -Platform=RISC OS - -[ELinks (0.10*; *Solaris*)] -Parent=ELinks 0.10 -Platform=Solaris - -[ELinks (0.10*; *Unix*)] -Parent=ELinks 0.10 -Platform=Unix - -[ELinks/0.10* (*AIX*)] -Parent=ELinks 0.10 -Platform=AIX - -[ELinks/0.10* (*BeOS*)] -Parent=ELinks 0.10 -Platform=BeOS - -[ELinks/0.10* (*CygWin*)] -Parent=ELinks 0.10 -Platform=CygWin - -[ELinks/0.10* (*Darwin*)] -Parent=ELinks 0.10 -Platform=Darwin - -[ELinks/0.10* (*Digital Unix*)] -Parent=ELinks 0.10 -Platform=Digital Unix - -[ELinks/0.10* (*FreeBSD*)] -Parent=ELinks 0.10 -Platform=FreeBSD - -[ELinks/0.10* (*HPUX*)] -Parent=ELinks 0.10 -Platform=HP-UX - -[ELinks/0.10* (*IRIX*)] -Parent=ELinks 0.10 -Platform=IRIX - -[ELinks/0.10* (*Linux*)] -Parent=ELinks 0.10 -Platform=Linux - -[ELinks/0.10* (*NetBSD*)] -Parent=ELinks 0.10 -Platform=NetBSD - -[ELinks/0.10* (*OpenBSD*)] -Parent=ELinks 0.10 -Platform=OpenBSD - -[ELinks/0.10* (*OS/2*)] -Parent=ELinks 0.10 -Platform=OS/2 - -[ELinks/0.10* (*RISC*)] -Parent=ELinks 0.10 -Platform=RISC OS - -[ELinks/0.10* (*Solaris*)] -Parent=ELinks 0.10 -Platform=Solaris - -[ELinks/0.10* (*Unix*)] -Parent=ELinks 0.10 -Platform=Unix - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ELinks 0.11 - -[ELinks 0.11] -Parent=DefaultProperties -Browser=ELinks -Version=0.11 -MinorVer=11 -Frames=true -Tables=true - -[ELinks (0.11*; *AIX*)] -Parent=ELinks 0.11 -Platform=AIX - -[ELinks (0.11*; *BeOS*)] -Parent=ELinks 0.11 -Platform=BeOS - -[ELinks (0.11*; *CygWin*)] -Parent=ELinks 0.11 -Platform=CygWin - -[ELinks (0.11*; *Darwin*)] -Parent=ELinks 0.11 -Platform=Darwin - -[ELinks (0.11*; *Digital Unix*)] -Parent=ELinks 0.11 -Platform=Digital Unix - -[ELinks (0.11*; *FreeBSD*)] -Parent=ELinks 0.11 -Platform=FreeBSD - -[ELinks (0.11*; *HPUX*)] -Parent=ELinks 0.11 -Platform=HP-UX - -[ELinks (0.11*; *IRIX*)] -Parent=ELinks 0.11 -Platform=IRIX - -[ELinks (0.11*; *Linux*)] -Parent=ELinks 0.11 -Platform=Linux - -[ELinks (0.11*; *NetBSD*)] -Parent=ELinks 0.11 -Platform=NetBSD - -[ELinks (0.11*; *OpenBSD*)] -Parent=ELinks 0.11 -Platform=OpenBSD - -[ELinks (0.11*; *OS/2*)] -Parent=ELinks 0.11 -Platform=OS/2 - -[ELinks (0.11*; *RISC*)] -Parent=ELinks 0.11 -Platform=RISC OS - -[ELinks (0.11*; *Solaris*)] -Parent=ELinks 0.11 -Platform=Solaris - -[ELinks (0.11*; *Unix*)] -Parent=ELinks 0.11 -Platform=Unix - -[ELinks/0.11* (*AIX*)] -Parent=ELinks 0.11 -Platform=AIX - -[ELinks/0.11* (*BeOS*)] -Parent=ELinks 0.11 -Platform=BeOS - -[ELinks/0.11* (*CygWin*)] -Parent=ELinks 0.11 -Platform=CygWin - -[ELinks/0.11* (*Darwin*)] -Parent=ELinks 0.11 -Platform=Darwin - -[ELinks/0.11* (*Digital Unix*)] -Parent=ELinks 0.11 -Platform=Digital Unix - -[ELinks/0.11* (*FreeBSD*)] -Parent=ELinks 0.11 -Platform=FreeBSD - -[ELinks/0.11* (*HPUX*)] -Parent=ELinks 0.11 -Platform=HP-UX - -[ELinks/0.11* (*IRIX*)] -Parent=ELinks 0.11 -Platform=IRIX - -[ELinks/0.11* (*Linux*)] -Parent=ELinks 0.11 -Platform=Linux - -[ELinks/0.11* (*NetBSD*)] -Parent=ELinks 0.11 -Platform=NetBSD - -[ELinks/0.11* (*OpenBSD*)] -Parent=ELinks 0.11 -Platform=OpenBSD - -[ELinks/0.11* (*OS/2*)] -Parent=ELinks 0.11 -Platform=OS/2 - -[ELinks/0.11* (*RISC*)] -Parent=ELinks 0.11 -Platform=RISC OS - -[ELinks/0.11* (*Solaris*)] -Parent=ELinks 0.11 -Platform=Solaris - -[ELinks/0.11* (*Unix*)] -Parent=ELinks 0.11 -Platform=Unix - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ELinks 0.12 - -[ELinks 0.12] -Parent=DefaultProperties -Browser=ELinks -Version=0.12 -MinorVer=12 -Frames=true -Tables=true - -[ELinks (0.12*; *AIX*)] -Parent=ELinks 0.12 -Platform=AIX - -[ELinks (0.12*; *BeOS*)] -Parent=ELinks 0.12 -Platform=BeOS - -[ELinks (0.12*; *CygWin*)] -Parent=ELinks 0.12 -Platform=CygWin - -[ELinks (0.12*; *Darwin*)] -Parent=ELinks 0.12 -Platform=Darwin - -[ELinks (0.12*; *Digital Unix*)] -Parent=ELinks 0.12 -Platform=Digital Unix - -[ELinks (0.12*; *FreeBSD*)] -Parent=ELinks 0.12 -Platform=FreeBSD - -[ELinks (0.12*; *HPUX*)] -Parent=ELinks 0.12 -Platform=HP-UX - -[ELinks (0.12*; *IRIX*)] -Parent=ELinks 0.12 -Platform=IRIX - -[ELinks (0.12*; *Linux*)] -Parent=ELinks 0.12 -Platform=Linux - -[ELinks (0.12*; *NetBSD*)] -Parent=ELinks 0.12 -Platform=NetBSD - -[ELinks (0.12*; *OpenBSD*)] -Parent=ELinks 0.12 -Platform=OpenBSD - -[ELinks (0.12*; *OS/2*)] -Parent=ELinks 0.12 -Platform=OS/2 - -[ELinks (0.12*; *RISC*)] -Parent=ELinks 0.12 -Platform=RISC OS - -[ELinks (0.12*; *Solaris*)] -Parent=ELinks 0.12 -Platform=Solaris - -[ELinks (0.12*; *Unix*)] -Parent=ELinks 0.12 -Platform=Unix - -[ELinks/0.12* (*AIX*)] -Parent=ELinks 0.12 -Platform=AIX - -[ELinks/0.12* (*BeOS*)] -Parent=ELinks 0.12 -Platform=BeOS - -[ELinks/0.12* (*CygWin*)] -Parent=ELinks 0.12 -Platform=CygWin - -[ELinks/0.12* (*Darwin*)] -Parent=ELinks 0.12 -Platform=Darwin - -[ELinks/0.12* (*Digital Unix*)] -Parent=ELinks 0.12 -Platform=Digital Unix - -[ELinks/0.12* (*FreeBSD*)] -Parent=ELinks 0.12 -Platform=FreeBSD - -[ELinks/0.12* (*HPUX*)] -Parent=ELinks 0.12 -Platform=HP-UX - -[ELinks/0.12* (*IRIX*)] -Parent=ELinks 0.12 -Platform=IRIX - -[ELinks/0.12* (*Linux*)] -Parent=ELinks 0.12 -Platform=Linux - -[ELinks/0.12* (*NetBSD*)] -Parent=ELinks 0.12 -Platform=NetBSD - -[ELinks/0.12* (*OpenBSD*)] -Parent=ELinks 0.12 -Platform=OpenBSD - -[ELinks/0.12* (*OS/2*)] -Parent=ELinks 0.12 -Platform=OS/2 - -[ELinks/0.12* (*RISC*)] -Parent=ELinks 0.12 -Platform=RISC OS - -[ELinks/0.12* (*Solaris*)] -Parent=ELinks 0.12 -Platform=Solaris - -[ELinks/0.12* (*Unix*)] -Parent=ELinks 0.12 -Platform=Unix - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ELinks 0.9 - -[ELinks 0.9] -Parent=DefaultProperties -Browser=ELinks -Version=0.9 -MinorVer=9 -Frames=true -Tables=true - -[ELinks (0.9*; *AIX*)] -Parent=ELinks 0.9 -Platform=AIX - -[ELinks (0.9*; *BeOS*)] -Parent=ELinks 0.9 -Platform=BeOS - -[ELinks (0.9*; *CygWin*)] -Parent=ELinks 0.9 -Platform=CygWin - -[ELinks (0.9*; *Darwin*)] -Parent=ELinks 0.9 -Platform=Darwin - -[ELinks (0.9*; *Digital Unix*)] -Parent=ELinks 0.9 -Platform=Digital Unix - -[ELinks (0.9*; *FreeBSD*)] -Parent=ELinks 0.9 -Platform=FreeBSD - -[ELinks (0.9*; *HPUX*)] -Parent=ELinks 0.9 -Platform=HP-UX - -[ELinks (0.9*; *IRIX*)] -Parent=ELinks 0.9 -Platform=IRIX - -[ELinks (0.9*; *Linux*)] -Parent=ELinks 0.9 -Platform=Linux - -[ELinks (0.9*; *NetBSD*)] -Parent=ELinks 0.9 -Platform=NetBSD - -[ELinks (0.9*; *OpenBSD*)] -Parent=ELinks 0.9 -Platform=OpenBSD - -[ELinks (0.9*; *OS/2*)] -Parent=ELinks 0.9 -Platform=OS/2 - -[ELinks (0.9*; *RISC*)] -Parent=ELinks 0.9 -Platform=RISC OS - -[ELinks (0.9*; *Solaris*)] -Parent=ELinks 0.9 -Platform=Solaris - -[ELinks (0.9*; *Unix*)] -Parent=ELinks 0.9 -Platform=Unix - -[ELinks/0.9* (*AIX*)] -Parent=ELinks 0.9 -Platform=AIX - -[ELinks/0.9* (*BeOS*)] -Parent=ELinks 0.9 -Platform=BeOS - -[ELinks/0.9* (*CygWin*)] -Parent=ELinks 0.9 -Platform=CygWin - -[ELinks/0.9* (*Darwin*)] -Parent=ELinks 0.9 -Platform=Darwin - -[ELinks/0.9* (*Digital Unix*)] -Parent=ELinks 0.9 -Platform=Digital Unix - -[ELinks/0.9* (*FreeBSD*)] -Parent=ELinks 0.9 -Platform=FreeBSD - -[ELinks/0.9* (*HPUX*)] -Parent=ELinks 0.9 -Platform=HP-UX - -[ELinks/0.9* (*IRIX*)] -Parent=ELinks 0.9 -Platform=IRIX - -[ELinks/0.9* (*Linux*)] -Parent=ELinks 0.9 -Platform=Linux - -[ELinks/0.9* (*NetBSD*)] -Parent=ELinks 0.9 -Platform=NetBSD - -[ELinks/0.9* (*OpenBSD*)] -Parent=ELinks 0.9 -Platform=OpenBSD - -[ELinks/0.9* (*OS/2*)] -Parent=ELinks 0.9 -Platform=OS/2 - -[ELinks/0.9* (*RISC*)] -Parent=ELinks 0.9 -Platform=RISC OS - -[ELinks/0.9* (*Solaris*)] -Parent=ELinks 0.9 -Platform=Solaris - -[ELinks/0.9* (*Unix*)] -Parent=ELinks 0.9 -Platform=Unix - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; AppleWebKit - -[AppleWebKit] -Parent=DefaultProperties -Browser=AppleWebKit -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (KHTML, like Gecko)] -Parent=AppleWebKit - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Camino - -[Camino] -Parent=DefaultProperties -Browser=Camino -Platform=MacOSX -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/0.7*] -Parent=Camino -Version=0.7 -MajorVer=0 -MinorVer=7 -Beta=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/0.8*] -Parent=Camino -Version=0.8 -MajorVer=0 -MinorVer=8 -Beta=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/0.9*] -Parent=Camino -Version=0.9 -MajorVer=0 -MinorVer=9 -Beta=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/1.0*] -Parent=Camino -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/1.2*] -Parent=Camino -Version=1.2 -MajorVer=1 -MinorVer=2 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/1.3*] -Parent=Camino -Version=1.3 -MajorVer=1 -MinorVer=3 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/1.4*] -Parent=Camino -Version=1.4 -MajorVer=1 -MinorVer=4 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/1.5*] -Parent=Camino -Version=1.5 -MajorVer=1 -MinorVer=5 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; *Mac OS X*) Gecko/* Camino/1.6*] -Parent=Camino -Version=1.6 -MajorVer=1 -MinorVer=6 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Chimera - -[Chimera] -Parent=DefaultProperties -Browser=Chimera -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true - -[Mozilla/5.0 (Macintosh; U; *Mac OS X*; *; rv:1.*) Gecko/* Chimera/*] -Parent=Chimera -Platform=MacOSX - -[Mozilla/5.0 Gecko/* Chimera/*] -Parent=Chimera - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Dillo - -[Dillo] -Parent=DefaultProperties -Browser=Dillo -Platform=Linux -Frames=true -IFrames=true -Tables=true -Cookies=true -CssVersion=2 -supportsCSS=true - -[Dillo/0.6*] -Parent=Dillo -Version=0.6 -MajorVer=0 -MinorVer=6 - -[Dillo/0.7*] -Parent=Dillo -Version=0.7 -MajorVer=0 -MinorVer=7 - -[Dillo/0.8*] -Parent=Dillo -Version=0.8 -MajorVer=0 -MinorVer=8 - -[Dillo/2.0] -Parent=Dillo -Version=2.0 -MajorVer=2 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Emacs/W3 - -[Emacs/W3] -Parent=DefaultProperties -Browser=Emacs/W3 -Frames=true -Tables=true -Cookies=true - -[Emacs/W3/2.* (Unix*] -Parent=Emacs/W3 -Version=2.0 -MajorVer=2 -MinorVer=0 -Platform=Unix - -[Emacs/W3/2.* (X11*] -Parent=Emacs/W3 -Version=2.0 -MajorVer=2 -MinorVer=0 -Platform=Linux - -[Emacs/W3/3.* (Unix*] -Parent=Emacs/W3 -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=Unix - -[Emacs/W3/3.* (X11*] -Parent=Emacs/W3 -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=Linux - -[Emacs/W3/4.* (Unix*] -Parent=Emacs/W3 -Version=4.0 -MajorVer=4 -MinorVer=0 -Platform=Unix - -[Emacs/W3/4.* (X11*] -Parent=Emacs/W3 -Version=4.0 -MajorVer=4 -MinorVer=0 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; fantomas - -[fantomas] -Parent=DefaultProperties -Browser=fantomas -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true - -[Mozilla/4.0 (cloakBrowser)] -Parent=fantomas -Browser=fantomas cloakBrowser - -[Mozilla/4.0 (fantomas shadowMaker Browser)] -Parent=fantomas -Browser=fantomas shadowMaker Browser - -[Mozilla/4.0 (fantomBrowser)] -Parent=fantomas -Browser=fantomas fantomBrowser - -[Mozilla/4.0 (fantomCrew Browser)] -Parent=fantomas -Browser=fantomas fantomCrew Browser - -[Mozilla/4.0 (stealthBrowser)] -Parent=fantomas -Browser=fantomas stealthBrowser - -[multiBlocker browser*] -Parent=fantomas -Browser=fantomas multiBlocker browser - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; FrontPage - -[FrontPage] -Parent=DefaultProperties -Browser=FrontPage -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true - -[Mozilla/?* (compatible; MS FrontPage*)] -Parent=FrontPage - -[MSFrontPage/*] -Parent=FrontPage - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Galeon - -[Galeon] -Parent=DefaultProperties -Browser=Galeon -Platform=Linux -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (X11; U; Linux*) Gecko/* Galeon/1.*] -Parent=Galeon -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (X11; U; Linux*) Gecko/* Galeon/2.*] -Parent=Galeon -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/5.0 Galeon/1.* (X11; Linux*)*] -Parent=Galeon -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 Galeon/2.* (X11; Linux*)*] -Parent=Galeon -Version=2.0 -MajorVer=2 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; HP Secure Web Browser - -[HP Secure Web Browser] -Parent=DefaultProperties -Browser=HP Secure Web Browser -Platform=OpenVMS -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.0*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.1*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.1 -MajorVer=1 -MinorVer=1 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.2*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.2 -MajorVer=1 -MinorVer=2 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.3*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.3 -MajorVer=1 -MinorVer=3 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.4*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.4 -MajorVer=1 -MinorVer=4 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.5*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.5 -MajorVer=1 -MinorVer=5 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.6*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.6 -MajorVer=1 -MinorVer=6 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.7*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.7 -MajorVer=1 -MinorVer=7 - -[Mozilla/5.0 (X11; U; OpenVMS*; *; rv:1.8*) Gecko/*] -Parent=HP Secure Web Browser -Version=1.8 -MajorVer=1 -MinorVer=8 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IBrowse - -[IBrowse] -Parent=DefaultProperties -Browser=IBrowse -Platform=Amiga -Frames=true -Tables=true -Cookies=true -JavaScript=true - -[Arexx (compatible; MSIE 6.0; AmigaOS5.0) IBrowse 4.0] -Parent=IBrowse -Version=4.0 -MajorVer=4 -MinorVer=0 - -[IBrowse/1.22 (AmigaOS *)] -Parent=IBrowse -Version=1.22 -MajorVer=1 -MinorVer=22 - -[IBrowse/2.1 (AmigaOS *)] -Parent=IBrowse -Version=2.1 -MajorVer=2 -MinorVer=1 - -[IBrowse/2.2 (AmigaOS *)] -Parent=IBrowse -Version=2.2 -MajorVer=2 -MinorVer=2 - -[IBrowse/2.3 (AmigaOS *)] -Parent=IBrowse -Version=2.2 -MajorVer=2 -MinorVer=3 - -[Mozilla/* (Win98; I) IBrowse/2.1 (AmigaOS 3.1)] -Parent=IBrowse -Version=2.1 -MajorVer=2 -MinorVer=1 - -[Mozilla/* (Win98; I) IBrowse/2.2 (AmigaOS 3.1)] -Parent=IBrowse -Version=2.2 -MajorVer=2 -MinorVer=2 - -[Mozilla/* (Win98; I) IBrowse/2.3 (AmigaOS 3.1)] -Parent=IBrowse -Version=2.3 -MajorVer=2 -MinorVer=3 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; iCab - -[iCab] -Parent=DefaultProperties -Browser=iCab -Frames=true -Tables=true -Cookies=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[iCab/2.7* (Macintosh; ?; 68K*)] -Parent=iCab -Version=2.7 -MajorVer=2 -MinorVer=7 -Platform=Mac68K - -[iCab/2.7* (Macintosh; ?; PPC*)] -Parent=iCab -Version=2.7 -MajorVer=2 -MinorVer=7 -Platform=MacPPC - -[iCab/2.8* (Macintosh; ?; *Mac OS X*)] -Parent=iCab -Version=2.8 -MajorVer=2 -MinorVer=8 -Platform=MacOSX - -[iCab/2.8* (Macintosh; ?; 68K*)] -Parent=iCab -Version=2.8 -MajorVer=2 -MinorVer=8 -Platform=Mac68K - -[iCab/2.8* (Macintosh; ?; PPC)] -Parent=iCab -Version=2.8 -MajorVer=2 -MinorVer=8 -Platform=MacPPC - -[iCab/2.9* (Macintosh; ?; *Mac OS X*)] -Parent=iCab -Version=2.9 -MajorVer=2 -MinorVer=9 -Platform=MacOSX - -[iCab/2.9* (Macintosh; ?; 68K*)] -Parent=iCab -Version=2.9 -MajorVer=2 -MinorVer=9 -Platform=Mac68K - -[iCab/2.9* (Macintosh; ?; PPC*)] -Parent=iCab -Version=2.9 -MajorVer=2 -MinorVer=9 -Platform=MacPPC - -[iCab/3.0* (Macintosh; ?; *Mac OS X*)] -Parent=iCab -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=MacOSX -CssVersion=2 -supportsCSS=true - -[iCab/3.0* (Macintosh; ?; PPC*)] -Parent=iCab -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=MacPPC -CssVersion=2 -supportsCSS=true - -[iCab/4.0 (Macintosh; U; *Mac OS X)] -Parent=iCab -Version=4.0 -MajorVer=4 -MinorVer=0 -Platform=MacOSX - -[Mozilla/* (compatible; iCab 3.0*; Macintosh; *Mac OS X*)] -Parent=iCab -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=MacOSX -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; iCab 3.0*; Macintosh; ?; PPC*)] -Parent=iCab -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=MacPPC -CssVersion=2 -supportsCSS=true - -[Mozilla/4.5 (compatible; iCab 2.7*; Macintosh; ?; 68K*)] -Parent=iCab -Version=2.7 -MajorVer=2 -MinorVer=7 -Platform=Mac68K - -[Mozilla/4.5 (compatible; iCab 2.7*; Macintosh; ?; PPC*)] -Parent=iCab -Version=2.7 -MajorVer=2 -MinorVer=7 -Platform=MacPPC - -[Mozilla/4.5 (compatible; iCab 2.8*; Macintosh; ?; *Mac OS X*)] -Parent=iCab -Version=2.8 -MajorVer=2 -MinorVer=8 -Platform=MacOSX - -[Mozilla/4.5 (compatible; iCab 2.8*; Macintosh; ?; PPC*)] -Parent=iCab -Version=2.8 -MajorVer=2 -MinorVer=8 -Platform=MacPPC - -[Mozilla/4.5 (compatible; iCab 2.9*; Macintosh; *Mac OS X*)] -Parent=iCab -Version=2.9 -MajorVer=2 -MinorVer=9 -Platform=MacOSX - -[Mozilla/4.5 (compatible; iCab 2.9*; Macintosh; ?; PPC*)] -Parent=iCab -Version=2.9 -MajorVer=2 -MinorVer=9 -Platform=MacPPC - -[Mozilla/4.5 (compatible; iCab 4.2*; Macintosh; *Mac OS X*)] -Parent=iCab -Version=4.2 -MajorVer=4 -MinorVer=2 -Platform=MacOSX - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; iSiloX - -[iSiloX] -Parent=DefaultProperties -Browser=iSiloX -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true -Crawler=true -CssVersion=2 -supportsCSS=true - -[iSiloX/4.0* MacOS] -Parent=iSiloX -Version=4.0 -MajorVer=4 -MinorVer=0 -Platform=MacPPC - -[iSiloX/4.0* Windows/32] -Parent=iSiloX -Version=4.0 -MajorVer=4 -MinorVer=0 -Platform=Win32 -Win32=true - -[iSiloX/4.1* MacOS] -Parent=iSiloX -Version=4.1 -MajorVer=4 -MinorVer=1 -Platform=MacPPC - -[iSiloX/4.1* Windows/32] -Parent=iSiloX -Version=4.1 -MajorVer=4 -MinorVer=1 -Platform=Win32 -Win32=true - -[iSiloX/4.2* MacOS] -Parent=iSiloX -Version=4.2 -MajorVer=4 -MinorVer=2 -Platform=MacPPC - -[iSiloX/4.2* Windows/32] -Parent=iSiloX -Version=4.2 -MajorVer=4 -MinorVer=2 -Platform=Win32 -Win32=true - -[iSiloX/4.3* MacOS] -Parent=iSiloX -Version=4.3 -MajorVer=4 -MinorVer=4 -Platform=MacOSX - -[iSiloX/4.3* Windows/32] -Parent=iSiloX -Version=4.3 -MajorVer=4 -MinorVer=3 -Platform=Win32 -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Lycoris Desktop/LX - -[Lycoris Desktop/LX] -Parent=DefaultProperties -Browser=Lycoris Desktop/LX -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -Crawler=true - -[Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.*: Desktop/LX Amethyst) Gecko/*] -Parent=Lycoris Desktop/LX -Version=1.1 -MajorVer=1 -MinorVer=1 -Platform=Linux - -[Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.*; Desktop/LX Amethyst) Gecko/*] -Parent=Lycoris Desktop/LX -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mosaic - -[Mosaic] -Parent=DefaultProperties -Browser=Mosaic -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true - -[Mozilla/4.0 (VMS_Mosaic)] -Parent=Mosaic -Platform=OpenVMS - -[VMS_Mosaic/3.7*] -Parent=Mosaic -Version=3.7 -MajorVer=3 -MinorVer=7 -Platform=OpenVMS - -[VMS_Mosaic/3.8*] -Parent=Mosaic -Version=3.8 -MajorVer=3 -MinorVer=8 -Platform=OpenVMS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; NetPositive - -[NetPositive] -Parent=DefaultProperties -Browser=NetPositive -Platform=BeOS -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true - -[*NetPositive/2.2*] -Parent=NetPositive -Version=2.2 -MajorVer=2 -MinorVer=2 - -[*NetPositive/2.2*BeOS*] -Parent=NetPositive -Version=2.2 -MajorVer=2 -MinorVer=2 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; OmniWeb - -[OmniWeb] -Parent=DefaultProperties -Browser=OmniWeb -Platform=MacOSX -Frames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -isMobileDevice=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (Macintosh; ?; *Mac OS X; *) AppleWebKit/* (*) OmniWeb/v4*] -Parent=OmniWeb -Version=4.5 -MajorVer=4 -MinorVer=5 -Platform=MacOSX - -[Mozilla/* (Macintosh; ?; *Mac OS X; *) AppleWebKit/* (*) OmniWeb/v5*] -Parent=OmniWeb -Version=5. -MajorVer=5 -MinorVer=0 -Platform=MacOSX - -[Mozilla/* (Macintosh; ?; *Mac OS X; *) AppleWebKit/* (*) OmniWeb/v6*] -Parent=OmniWeb -Version=6.0 -MajorVer=6 -MinorVer=0 -Platform=MacOSX - -[Mozilla/* (Macintosh; ?; PPC) OmniWeb/4*] -Parent=OmniWeb -Version=4.0 -MajorVer=4 -MinorVer=0 -Platform=MacPPC - -[Mozilla/* (Macintosh; ?; PPC) OmniWeb/5*] -Parent=OmniWeb -Version=5.0 -MajorVer=5 -MinorVer=0 -Platform=MacOSX - -[Mozilla/* (Macintosh; ?; PPC) OmniWeb/6*] -Parent=OmniWeb -Version=6.0 -MajorVer=6 -MinorVer=0 -Platform=MacPPC - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/125.4 (KHTML, like Gecko, Safari) OmniWeb/v563.34] -Parent=OmniWeb -Version=5.1 -MajorVer=5 -MinorVer=1 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/125.4 (KHTML, like Gecko, Safari) OmniWeb/v563.34] -Parent=OmniWeb -Version=5.1 -MajorVer=5 -MinorVer=1 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/420+ (KHTML, like Gecko, Safari/420) OmniWeb/v607] -Parent=OmniWeb -Version=5.5 -MajorVer=5 -MinorVer=5 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/420+ (KHTML, like Gecko, Safari/420) OmniWeb/v607] -Parent=OmniWeb -Version=5.5 -MajorVer=5 -MinorVer=5 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/522+ (KHTML, like Gecko, Safari/522) OmniWeb/v613] -Parent=OmniWeb -Version=5.6 -MajorVer=5 -MinorVer=6 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/522+ (KHTML, like Gecko, Safari/522) OmniWeb/v613] -Parent=OmniWeb -Version=5.6 -MajorVer=5 -MinorVer=6 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/85 (KHTML, like Gecko) OmniWeb/v496] -Parent=OmniWeb -Version=4.5 -MajorVer=4 -MinorVer=5 - -[Mozilla/5.0 (Macintosh; U; PPC Mac OS X; en-US) AppleWebKit/85 (KHTML, like Gecko) OmniWeb/v558.36 ] -Parent=OmniWeb -Version=5.0 -MajorVer=5 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Shiira - -[Shiira] -Parent=DefaultProperties -Browser=Shiira -Platform=MacOSX -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Shiira/0.9*] -Parent=Shiira -Version=0.9 -MajorVer=0 -MinorVer=9 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Shiira/1.0*] -Parent=Shiira -Version=1.0 -MajorVer=1 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Shiira/1.1*] -Parent=Shiira -Version=1.1 -MajorVer=1 -MinorVer=1 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Shiira/1.2*] -Parent=Shiira -Version=1.2 -MajorVer=1 -MinorVer=2 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Shiira/2.1*] -Parent=Shiira -Version=2.1 -MajorVer=2 -MinorVer=1 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Shiira/2.2*] -Parent=Shiira -Version=2.2 -MajorVer=2 -MinorVer=2 - -[Windows Maker] -Parent=DefaultProperties -Browser=WMaker -Platform=Linux -Frames=true -IFrames=true -Tables=true -Cookies=true -VBScript=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[WMaker*] -Parent=Windows Maker - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; K-Meleon 1.0 - -[K-Meleon 1.0] -Parent=DefaultProperties -Browser=K-Meleon -Version=1.0 -MajorVer=1 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* K-Meleon/1.0*] -Parent=K-Meleon 1.0 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* K-Meleon/1.0*] -Parent=K-Meleon 1.0 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* K-Meleon?1.0*] -Parent=K-Meleon 1.0 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* K-Meleon/1.0*] -Parent=K-Meleon 1.0 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* K-Meleon/1.0*] -Parent=K-Meleon 1.0 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* K-Meleon/1.0*] -Parent=K-Meleon 1.0 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinNT -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; K-Meleon 1.1 - -[K-Meleon 1.1] -Parent=DefaultProperties -Browser=K-Meleon -Version=1.1 -MajorVer=1 -MinorVer=1 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* K-Meleon/1.1*] -Parent=K-Meleon 1.1 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* K-Meleon/1.1*] -Parent=K-Meleon 1.1 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* K-Meleon?1.1*] -Parent=K-Meleon 1.1 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* K-Meleon/1.1*] -Parent=K-Meleon 1.1 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* K-Meleon/1.1*] -Parent=K-Meleon 1.1 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* K-Meleon/1.1*] -Parent=K-Meleon 1.1 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinNT -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; K-Meleon 1.5 - -[K-Meleon 1.5] -Parent=DefaultProperties -Browser=K-Meleon -Version=1.5 -MajorVer=1 -MinorVer=5 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* K-Meleon?1.5*] -Parent=K-Meleon 1.5 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Platform=WinVista - -[Mozilla/5.0 (Windows; *; Windows NT 6.1; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Platform=Win7 - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* K-Meleon/1.5*] -Parent=K-Meleon 1.5 -Version=1.0 -MajorVer=1 -MinorVer=0 -Platform=WinNT -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Konqueror 3.0 - -[Konqueror 3.0] -Parent=DefaultProperties -Browser=Konqueror -Platform=Linux -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[*Konqueror/3.0*] -Parent=Konqueror 3.0 -Version=3.0 -MajorVer=3 -MinorVer=0 -IFrames=false - -[*Konqueror/3.0*FreeBSD*] -Parent=Konqueror 3.0 -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=FreeBSD -IFrames=false - -[*Konqueror/3.0*Linux*] -Parent=Konqueror 3.0 -Version=3.0 -MajorVer=3 -MinorVer=0 -Platform=Linux -IFrames=false - -[*Konqueror/3.1*] -Parent=Konqueror 3.0 -Version=3.1 -MajorVer=3 -MinorVer=1 - -[*Konqueror/3.1*FreeBSD*] -Parent=Konqueror 3.0 -Version=3.1 -MajorVer=3 -MinorVer=1 -Platform=FreeBSD - -[*Konqueror/3.1*Linux*] -Parent=Konqueror 3.0 -Version=3.1 -MajorVer=3 -MinorVer=1 - -[*Konqueror/3.2*] -Parent=Konqueror 3.0 -Version=3.2 -MajorVer=3 -MinorVer=2 - -[*Konqueror/3.2*FreeBSD*] -Parent=Konqueror 3.0 -Version=3.2 -MajorVer=3 -MinorVer=2 -Platform=FreeBSD - -[*Konqueror/3.2*Linux*] -Parent=Konqueror 3.0 -Version=3.2 -MajorVer=3 -MinorVer=2 -Platform=Linux - -[*Konqueror/3.3*] -Parent=Konqueror 3.0 -Version=3.3 -MajorVer=3 -MinorVer=3 - -[*Konqueror/3.3*FreeBSD*] -Parent=Konqueror 3.0 -Version=3.3 -MajorVer=3 -MinorVer=3 -Platform=FreeBSD - -[*Konqueror/3.3*Linux*] -Parent=Konqueror 3.0 -Version=3.3 -MajorVer=3 -MinorVer=3 -Platform=Linux - -[*Konqueror/3.3*OpenBSD*] -Parent=Konqueror 3.0 -Version=3.3 -MajorVer=3 -MinorVer=3 -Platform=OpenBSD - -[*Konqueror/3.4*] -Parent=Konqueror 3.0 -Version=3.4 -MajorVer=3 -MinorVer=4 - -[*Konqueror/3.4*FreeBSD*] -Parent=Konqueror 3.0 -Version=3.4 -MajorVer=3 -MinorVer=4 -Platform=FreeBSD - -[*Konqueror/3.4*Linux*] -Parent=Konqueror 3.0 -Version=3.4 -MajorVer=3 -MinorVer=4 -Platform=Linux - -[*Konqueror/3.4*OpenBSD*] -Parent=Konqueror 3.0 -Version=3.4 -MajorVer=3 -MinorVer=4 -Platform=OpenBSD - -[*Konqueror/3.5*] -Parent=Konqueror 3.0 -Version=3.5 -MajorVer=3 -MinorVer=5 - -[*Konqueror/3.5*FreeBSD*] -Parent=Konqueror 3.0 -Version=3.5 -MajorVer=3 -MinorVer=5 -Platform=FreeBSD - -[*Konqueror/3.5*Linux*] -Parent=Konqueror 3.0 -Version=3.5 -MajorVer=3 -MinorVer=5 -Platform=Linux - -[*Konqueror/3.5*OpenBSD*] -Parent=Konqueror 3.0 -Version=3.5 -MajorVer=3 -MinorVer=5 -Platform=OpenBSD - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Konqueror 4.0 - -[Konqueror 4.0] -Parent=DefaultProperties -Browser=Konqueror -Version=4.0 -MajorVer=4 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (compatible; Konqueror/4.0*; Debian) KHTML/4.* (like Gecko)] -Parent=Konqueror 4.0 -Platform=Debian - -[Mozilla/5.0 (compatible; Konqueror/4.0.*; *Linux) KHTML/4.* (like Gecko)] -Parent=Konqueror 4.0 -Platform=Linux - -[Mozilla/5.0 (compatible; Konqueror/4.0.*; FreeBSD) KHTML/4.* (like Gecko)] -Parent=Konqueror 4.0 -Platform=FreeBSD - -[Mozilla/5.0 (compatible; Konqueror/4.0.*; NetBSD) KHTML/4.* (like Gecko)] -Parent=Konqueror 4.0 -Platform=NetBSD - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Konqueror 4.1 - -[Konqueror 4.1] -Parent=DefaultProperties -Browser=Konqueror -Version=4.1 -MajorVer=4 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (compatible; Konqueror/4.1*; *Linux*) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.1 -Platform=Linux - -[Mozilla/5.0 (compatible; Konqueror/4.1*; Debian) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.1 -Platform=Debian - -[Mozilla/5.0 (compatible; Konqueror/4.1*; FreeBSD) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.1 -Platform=FreeBSD - -[Mozilla/5.0 (compatible; Konqueror/4.1*; NetBSD) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.1 -Platform=NetBSD - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Konqueror 4.2 - -[Konqueror 4.2] -Parent=DefaultProperties -Browser=Konqueror -Version=4.2 -MajorVer=4 -MinorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (compatible; Konqueror/4.2*; *Linux*) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.2 -Platform=Linux - -[Mozilla/5.0 (compatible; Konqueror/4.2*; Debian) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.2 -Platform=Debian - -[Mozilla/5.0 (compatible; Konqueror/4.2*; FreeBSD) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.2 -Platform=FreeBSD - -[Mozilla/5.0 (compatible; Konqueror/4.2*; NetBSD) KHTML/4.* (like Gecko)*] -Parent=Konqueror 4.2 -Platform=NetBSD - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Safari - -[Safari] -Parent=DefaultProperties -Browser=Safari -Platform=MacOSX -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/100*] -Parent=Safari -Version=1.1 -MajorVer=1 -MinorVer=1 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/125*] -Parent=Safari -Version=1.2 -MajorVer=1 -MinorVer=2 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/312*] -Parent=Safari -Version=1.3 -MajorVer=1 -MinorVer=3 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/412*] -Parent=Safari -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/416*] -Parent=Safari -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/417*] -Parent=Safari -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/418*] -Parent=Safari -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/419*] -Parent=Safari -Version=2.0 -MajorVer=2 -MinorVer=0 - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/52*] -Parent=Safari -Beta=true - -[Mozilla/5.0 (Macintosh; *Mac OS X*) AppleWebKit/* (*) Safari/85*] -Parent=Safari -Version=1.0 -MajorVer=1 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Safari 3.0 - -[Safari 3.0] -Parent=DefaultProperties -Browser=Safari -Version=3.0 -MajorVer=3 -Platform=MacOSX -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*) AppleWebKit/* (*) Version/3.0* Safari/*] -Parent=Safari 3.0 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) AppleWebKit/* (*) Version/3.0* Safari/*] -Parent=Safari 3.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) AppleWebKit/* (*) Version/3.0* Safari/*] -Parent=Safari 3.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) AppleWebKit/* (*) Version/3.0* Safari/*] -Parent=Safari 3.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) AppleWebKit/* (*) Version/3.0* Safari/*] -Parent=Safari 3.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Safari 3.1 - -[Safari 3.1] -Parent=DefaultProperties -Browser=Safari -Version=3.1 -MajorVer=3 -MinorVer=1 -Platform=MacOSX -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*) AppleWebKit/* (*) Version/3.1* Safari/*] -Parent=Safari 3.1 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) AppleWebKit/* (*) Version/3.1* Safari/*] -Parent=Safari 3.1 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) AppleWebKit/* (*) Version/3.1* Safari/*] -Parent=Safari 3.1 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) AppleWebKit/* (*) Version/3.1* Safari/*] -Parent=Safari 3.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) AppleWebKit/* (*) Version/3.1* Safari/*] -Parent=Safari 3.1 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Safari 3.2 - -[Safari 3.2] -Parent=DefaultProperties -Browser=Safari -Version=3.2 -MajorVer=3 -MinorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*) AppleWebKit/* (*) Version/3.2* Safari/*] -Parent=Safari 3.2 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) AppleWebKit/* (*) Version/3.2* Safari/*] -Parent=Safari 3.2 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) AppleWebKit/* (*) Version/3.2* Safari/*] -Parent=Safari 3.2 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) AppleWebKit/* (*) Version/3.2* Safari/*] -Parent=Safari 3.2 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) AppleWebKit/* (*) Version/3.2* Safari/*] -Parent=Safari 3.2 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Safari 4.0 - -[Safari 4.0] -Parent=DefaultProperties -Browser=Safari -Version=4.0 -MajorVer=4 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *) AppleWebKit/* (KHTML, like Gecko) Version/4.0* Safari/*] -Parent=Safari 4.0 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; U; *Mac OS X*; *) AppleWebKit/* (KHTML, like Gecko) Version/4 Public Beta Safari/*] -Parent=Safari 4.0 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) AppleWebKit/* (*) Version/4 Public Beta Safari/*] -Parent=Safari 4.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) AppleWebKit/* (*) Version/4.0* Safari/*] -Parent=Safari 4.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) AppleWebKit/* (*) Version/4 Public Beta Safari/*] -Parent=Safari 4.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) AppleWebKit/* (*) Version/4.0* Safari/*] -Parent=Safari 4.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) AppleWebKit/* (*) Version/4 Public Beta Safari/*] -Parent=Safari 4.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) AppleWebKit/* (*) Version/4.0* Safari/*] -Parent=Safari 4.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) AppleWebKit/* (*) Version/4 Public Beta Safari/*] -Parent=Safari 4.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) AppleWebKit/* (*) Version/4.0* Safari/*] -Parent=Safari 4.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; Windows NT 7.0; *) AppleWebKit/* (*) Version/4 Public Beta Safari/*] -Parent=Safari 4.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; Windows NT 7.0; *) AppleWebKit/* (*) Version/4.0* Safari/*] -Parent=Safari 4.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 10.0 - -[Opera 10.0] -Parent=DefaultProperties -Browser=Opera -Version=10.0 -MajorVer=10 -Alpha=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 10.0*] -Parent=Opera 10.0 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.1*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win7 - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 10.0*] -Parent=Opera 10.0 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 10.0*] -Parent=Opera 10.0 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 10.0*] -Parent=Opera 10.0 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win2003 -Win32=true - -[Mozilla/* (Windows NT 6.0;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=WinVista - -[Mozilla/* (Windows NT 6.1;*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Win7 - -[Mozilla/* (X11; Linux*) Opera 10.0*] -Parent=Opera 10.0 -Platform=Linux - -[Opera/10.0* (Linux*)*] -Parent=Opera 10.0 -Platform=Linux - -[Opera/10.0* (Macintosh; *Mac OS X;*)*] -Parent=Opera 10.0 -Platform=MacOSX - -[Opera/10.0* (Windows 95*)*] -Parent=Opera 10.0 -Platform=Win95 -Win32=true - -[Opera/10.0* (Windows 98*)*] -Parent=Opera 10.0 -Platform=Win98 -Win32=true - -[Opera/10.0* (Windows CE*)*] -Parent=Opera 10.0 -Platform=WinCE -Win32=true - -[Opera/10.0* (Windows ME*)*] -Parent=Opera 10.0 -Platform=WinME -Win32=true - -[Opera/10.0* (Windows NT 4.0*)*] -Parent=Opera 10.0 -Platform=WinNT -Win32=true - -[Opera/10.0* (Windows NT 5.0*)*] -Parent=Opera 10.0 -Platform=Win2000 -Win32=true - -[Opera/10.0* (Windows NT 5.1*)*] -Parent=Opera 10.0 -Platform=WinXP -Win32=true - -[Opera/10.0* (Windows NT 5.2*)*] -Parent=Opera 10.0 -Platform=Win2003 -Win32=true - -[Opera/10.0* (Windows NT 6.0*)*] -Parent=Opera 10.0 -Platform=WinVista -Win32=true - -[Opera/10.0* (Windows NT 6.1*)*] -Parent=Opera 10.0 -Platform=Win7 - -[Opera/10.0* (Windows XP*)*] -Parent=Opera 10.0 -Platform=WinXP -Win32=true - -[Opera/10.0* (X11; FreeBSD*)*] -Parent=Opera 10.0 -Platform=FreeBSD - -[Opera/10.0* (X11; Linux*)*] -Parent=Opera 10.0 -Platform=Linux - -[Opera/10.0* (X11; SunOS*)*] -Parent=Opera 10.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 7.0 - -[Opera 7.0] -Parent=DefaultProperties -Browser=Opera -Version=7.0 -MajorVer=7 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/3.0 (Windows 2000; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/3.0 (Windows 95; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win95 -Win32=true - -[Mozilla/3.0 (Windows 98; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win98 -Win32=true - -[Mozilla/3.0 (Windows ME; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinME -Win32=true - -[Mozilla/3.0 (Windows NT 4.0; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinNT -Win32=true - -[Mozilla/3.0 (Windows XP; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows 2000) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows 95) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win95 -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows 98) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win98 -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows ME) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinME -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 4.0) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinNT -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.0) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows NT 5.1) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Mozilla/4.0 (compatible; MSIE 6.0; MSIE 5.5; Windows XP) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Mozilla/4.78 (Windows 2000; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/4.78 (Windows 95; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win95 -Win32=true - -[Mozilla/4.78 (Windows 98; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win98 -Win32=true - -[Mozilla/4.78 (Windows ME; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinME -Win32=true - -[Mozilla/4.78 (Windows NT 4.0; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinNT -Win32=true - -[Mozilla/4.78 (Windows NT 5.1; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Mozilla/4.78 (Windows Windows NT 5.0; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/4.78 (Windows XP; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows 2000; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows 95; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows 98; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows ME; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows NT 4.0; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows NT 5.1; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows XP; ?) Opera 7.0*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Opera/7.0* (Windows 2000; ?)*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Opera/7.0* (Windows 95; ?)*] -Parent=Opera 7.0 -Platform=Win95 -Win32=true - -[Opera/7.0* (Windows 98; ?)*] -Parent=Opera 7.0 -Platform=Win98 -Win32=true - -[Opera/7.0* (Windows ME; ?)*] -Parent=Opera 7.0 -Platform=WinME -Win32=true - -[Opera/7.0* (Windows NT 4.0; ?)*] -Parent=Opera 7.0 -Platform=WinNT -Win32=true - -[Opera/7.0* (Windows NT 5.0; ?)*] -Parent=Opera 7.0 -Platform=Win2000 -Win32=true - -[Opera/7.0* (Windows NT 5.1; ?)*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -[Opera/7.0* (Windows XP; ?)*] -Parent=Opera 7.0 -Platform=WinXP -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 7.1 - -[Opera 7.1] -Parent=DefaultProperties -Browser=Opera -Version=7.1 -MajorVer=7 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows 2000; ?) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; ?) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; ?) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; ?) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; U) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; U) Opera 7.1*] -Parent=Opera 7.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; ?) Opera 7.1*] -Parent=Opera 7.1 -Platform=WinXP -Win32=true - -[Opera/7.1* (Linux*; ?)*] -Parent=Opera 7.1 -Platform=Linux - -[Opera/7.1* (Windows 95; ?)*] -Parent=Opera 7.1 -Platform=Win95 -Win32=true - -[Opera/7.1* (Windows 98; ?)*] -Parent=Opera 7.1 -Platform=Win98 -Win32=true - -[Opera/7.1* (Windows ME; ?)*] -Parent=Opera 7.1 -Platform=WinME -Win32=true - -[Opera/7.1* (Windows NT 4.0; ?)*] -Parent=Opera 7.1 -Platform=WinNT -Win32=true - -[Opera/7.1* (Windows NT 5.0; ?)*] -Parent=Opera 7.1 -Platform=Win2000 -Win32=true - -[Opera/7.1* (Windows NT 5.1; ?)*] -Parent=Opera 7.1 -Platform=WinXP -Win32=true - -[Opera/7.1* (Windows XP; ?)*] -Parent=Opera 7.1 -Platform=WinXP -Win32=true - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 7.2 - -[Opera 7.2] -Parent=DefaultProperties -Browser=Opera -Version=7.2 -MajorVer=7 -MinorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (compatible; MSIE ?.*; Linux*) Opera 7.2*] -Parent=Opera 7.2 -Platform=Linux - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.2) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows 2000; ?) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; ?) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; ?) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; ?) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; U) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; U) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; ?) Opera 7.2*] -Parent=Opera 7.2 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows NT 5.2; ?) Opera 7.2*] -Parent=Opera 7.2 -Platform=Win2003 -Win32=true - -[Opera/7.2* (Linux*; ?)*] -Parent=Opera 7.2 -Platform=Linux - -[Opera/7.2* (Windows 95; ?)*] -Parent=Opera 7.2 -Platform=Win95 -Win32=true - -[Opera/7.2* (Windows 98; ?)*] -Parent=Opera 7.2 -Platform=Win98 -Win32=true - -[Opera/7.2* (Windows ME; ?)*] -Parent=Opera 7.2 -Platform=WinME -Win32=true - -[Opera/7.2* (Windows NT 4.0; ?)*] -Parent=Opera 7.2 -Platform=WinNT -Win32=true - -[Opera/7.2* (Windows NT 5.0; ?)*] -Parent=Opera 7.2 -Platform=Win2000 -Win32=true - -[Opera/7.2* (Windows NT 5.1; ?)*] -Parent=Opera 7.2 -Platform=WinXP -Win32=true - -[Opera/7.2* (Windows NT 5.2; ?)*] -Parent=Opera 7.2 -Platform=Win2003 -Win32=true - -[Opera/7.2* (Windows XP; ?)*] -Parent=Opera 7.2 -Platform=WinXP -Win32=true - -[Opera/7.2* (X11; FreeBSD*; ?)*] -Parent=Opera 7.2 -Platform=FreeBSD - -[Opera/7.2* (X11; Linux*; ?)*] -Parent=Opera 7.2 -Platform=Linux - -[Opera/7.2* (X11; SunOS*)*] -Parent=Opera 7.2 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 7.5 - -[Opera 7.5] -Parent=DefaultProperties -Browser=Opera -Version=7.5 -MajorVer=7 -MinorVer=5 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (compatible; MSIE ?.*; Linux*) Opera 7.5*] -Parent=Opera 7.5 -Platform=Linux - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC) Opera 7.5*] -Parent=Opera 7.5 -Platform=MacPPC - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.2) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; X11; Linux*) Opera 7.5*] -Parent=Opera 7.5 -Platform=Linux - -[Mozilla/?.* (Macintosh; *Mac OS X; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=MacOSX - -[Mozilla/?.* (Windows 2000; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; U) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; U) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows NT 5.2; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (X11; Linux*; ?) Opera 7.5*] -Parent=Opera 7.5 -Platform=Linux - -[Opera/7.5* (Linux*; ?)*] -Parent=Opera 7.5 -Platform=Linux - -[Opera/7.5* (Macintosh; *Mac OS X; ?)*] -Parent=Opera 7.5 -Platform=MacOSX - -[Opera/7.5* (Windows 95; ?)*] -Parent=Opera 7.5 -Platform=Win95 -Win32=true - -[Opera/7.5* (Windows 98; ?)*] -Parent=Opera 7.5 -Platform=Win98 -Win32=true - -[Opera/7.5* (Windows ME; ?)*] -Parent=Opera 7.5 -Platform=WinME -Win32=true - -[Opera/7.5* (Windows NT 4.0; ?)*] -Parent=Opera 7.5 -Platform=WinNT -Win32=true - -[Opera/7.5* (Windows NT 5.0; ?)*] -Parent=Opera 7.5 -Platform=Win2000 -Win32=true - -[Opera/7.5* (Windows NT 5.1; ?)*] -Parent=Opera 7.5 -Platform=WinXP -Win32=true - -[Opera/7.5* (Windows NT 5.2; ?)*] -Parent=Opera 7.5 -Platform=Win2003 -Win32=true - -[Opera/7.5* (Windows XP; ?)*] -Parent=Opera 7.5 -Platform=WinXP -Win32=true - -[Opera/7.5* (X11; FreeBSD*; ?)*] -Parent=Opera 7.5 -Platform=FreeBSD - -[Opera/7.5* (X11; Linux*; ?)*] -Parent=Opera 7.5 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 7.6 - -[Opera 7.6] -Parent=DefaultProperties -Browser=Opera -Version=7.6 -MajorVer=7 -MinorVer=6 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (compatible; MSIE ?.*; Linux*) Opera 7.6*] -Parent=Opera 7.6 -Platform=Linux - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC) Opera 7.6*] -Parent=Opera 7.6 -Platform=MacPPC - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.2) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; X11; Linux*) Opera 7.6*] -Parent=Opera 7.6 -Platform=Linux - -[Mozilla/?.* (Macintosh; *Mac OS X; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=MacOSX - -[Mozilla/?.* (Windows 2000; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; U) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; U) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows NT 5.2; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (X11; Linux*; ?) Opera 7.6*] -Parent=Opera 7.6 -Platform=Linux - -[Opera/7.6* (Linux*)*] -Parent=Opera 7.6 -Platform=Linux - -[Opera/7.6* (Macintosh; *Mac OS X; ?)*] -Parent=Opera 7.6 -Platform=MacOSX - -[Opera/7.6* (Windows 95*)*] -Parent=Opera 7.6 -Platform=Win95 -Win32=true - -[Opera/7.6* (Windows 98*)*] -Parent=Opera 7.6 -Platform=Win98 -Win32=true - -[Opera/7.6* (Windows ME*)*] -Parent=Opera 7.6 -Platform=WinME -Win32=true - -[Opera/7.6* (Windows NT 4.0*)*] -Parent=Opera 7.6 -Platform=WinNT -Win32=true - -[Opera/7.6* (Windows NT 5.0*)*] -Parent=Opera 7.6 -Platform=Win2000 -Win32=true - -[Opera/7.6* (Windows NT 5.1*)*] -Parent=Opera 7.6 -Platform=WinXP -Win32=true - -[Opera/7.6* (Windows NT 5.2*)*] -Parent=Opera 7.6 -Platform=Win2003 -Win32=true - -[Opera/7.6* (Windows XP*)*] -Parent=Opera 7.6 -Platform=WinXP -Win32=true - -[Opera/7.6* (X11; FreeBSD*)*] -Parent=Opera 7.6 -Platform=FreeBSD - -[Opera/7.6* (X11; Linux*)*] -Parent=Opera 7.6 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 8.0 - -[Opera 8.0] -Parent=DefaultProperties -Browser=Opera -Version=8.0 -MajorVer=8 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (compatible; MSIE ?.*; Linux*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Linux - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC Mac OS X; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=MacOSX - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC) Opera 8.0*] -Parent=Opera 8.0 -Platform=MacPPC - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows CE) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinCE -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME*) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0*) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1*) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.2*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP*) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; X11; FreeBSD*) Opera 8.0*] -Parent=Opera 8.0 -Platform=FreeBSD - -[Mozilla/?.* (compatible; MSIE ?.*; X11; Linux*) Opera 8.0*] -Parent=Opera 8.0 -Platform=Linux - -[Mozilla/?.* (Macintosh; *Mac OS X; ?) Opera 8.0*] -Parent=Opera 8.0 -Platform=MacOSX - -[Mozilla/?.* (Windows 2000; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows NT 5.2; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (X11; Linux*; *) Opera 8.0*] -Parent=Opera 8.0 -Platform=Linux - -[Opera/8.0* (Linux*)*] -Parent=Opera 8.0 -Platform=Linux - -[Opera/8.0* (Macintosh; *Mac OS X; *)*] -Parent=Opera 8.0 -Platform=MacOSX - -[Opera/8.0* (Windows 95*)*] -Parent=Opera 8.0 -Platform=Win95 -Win32=true - -[Opera/8.0* (Windows 98*)*] -Parent=Opera 8.0 -Platform=Win98 -Win32=true - -[Opera/8.0* (Windows CE*)*] -Parent=Opera 8.0 -Platform=WinCE -Win32=true - -[Opera/8.0* (Windows ME*)*] -Parent=Opera 8.0 -Platform=WinME -Win32=true - -[Opera/8.0* (Windows NT 4.0*)*] -Parent=Opera 8.0 -Platform=WinNT -Win32=true - -[Opera/8.0* (Windows NT 5.0*)*] -Parent=Opera 8.0 -Platform=Win2000 -Win32=true - -[Opera/8.0* (Windows NT 5.1*)*] -Parent=Opera 8.0 -Platform=WinXP -Win32=true - -[Opera/8.0* (Windows NT 5.2*)*] -Parent=Opera 8.0 -Platform=Win2003 -Win32=true - -[Opera/8.0* (Windows XP*)*] -Parent=Opera 8.0 -Platform=WinXP -Win32=true - -[Opera/8.0* (X11; FreeBSD*)*] -Parent=Opera 8.0 -Platform=FreeBSD - -[Opera/8.0* (X11; Linux*)*] -Parent=Opera 8.0 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 8.1 - -[Opera 8.1] -Parent=DefaultProperties -Browser=Opera -Version=8.1 -MajorVer=8 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (compatible; MSIE ?.*; Linux*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Linux - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC) Opera 8.1*] -Parent=Opera 8.1 -Platform=MacPPC - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows CE) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinCE -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME*) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0*) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1*) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.2*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP*) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; X11; FreeBSD*) Opera 8.1*] -Parent=Opera 8.1 -Platform=FreeBSD - -[Mozilla/?.* (compatible; MSIE ?.*; X11; Linux*) Opera 8.1*] -Parent=Opera 8.1 -Platform=Linux - -[Mozilla/?.* (Macintosh; *Mac OS X; ?) Opera 8.1*] -Parent=Opera 8.1 -Platform=MacOSX - -[Mozilla/?.* (Windows 2000; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows NT 5.2; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (X11; Linux*; *) Opera 8.1*] -Parent=Opera 8.1 -Platform=Linux - -[Opera/8.1* (Linux*)*] -Parent=Opera 8.1 -Platform=Linux - -[Opera/8.1* (Macintosh; *Mac OS X; *)*] -Parent=Opera 8.1 -Platform=MacOSX - -[Opera/8.1* (Windows 95*)*] -Parent=Opera 8.1 -Platform=Win95 -Win32=true - -[Opera/8.1* (Windows 98*)*] -Parent=Opera 8.1 -Platform=Win98 -Win32=true - -[Opera/8.1* (Windows CE*)*] -Parent=Opera 8.1 -Platform=WinCE -Win32=true - -[Opera/8.1* (Windows ME*)*] -Parent=Opera 8.1 -Platform=WinME -Win32=true - -[Opera/8.1* (Windows NT 4.0*)*] -Parent=Opera 8.1 -Platform=WinNT -Win32=true - -[Opera/8.1* (Windows NT 5.0*)*] -Parent=Opera 8.1 -Platform=Win2000 -Win32=true - -[Opera/8.1* (Windows NT 5.1*)*] -Parent=Opera 8.1 -Platform=WinXP -Win32=true - -[Opera/8.1* (Windows NT 5.2*)*] -Parent=Opera 8.1 -Platform=Win2003 -Win32=true - -[Opera/8.1* (Windows XP*)*] -Parent=Opera 8.1 -Platform=WinXP -Win32=true - -[Opera/8.1* (X11; FreeBSD*)*] -Parent=Opera 8.1 -Platform=FreeBSD - -[Opera/8.1* (X11; Linux*)*] -Parent=Opera 8.1 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 8.5 - -[Opera 8.5] -Parent=DefaultProperties -Browser=Opera -Version=8.5 -MajorVer=8 -MinorVer=5 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/?.* (compatible; MSIE ?.*; Linux*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Linux - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC Mac OS X;*) Opera 8.5*] -Parent=Opera 8.5 -Platform=MacOSX - -[Mozilla/?.* (compatible; MSIE ?.*; Mac_PowerPC) Opera 8.5*] -Parent=Opera 8.5 -Platform=MacPPC - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 2000*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 95*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win95 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows 98*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win98 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows CE) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinCE -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows ME*) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinME -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 4.0*) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinNT -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.0*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.1*) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows NT 5.2*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; Windows XP*) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinXP -Win32=true - -[Mozilla/?.* (compatible; MSIE ?.*; X11; FreeBSD*) Opera 8.5*] -Parent=Opera 8.5 -Platform=FreeBSD - -[Mozilla/?.* (compatible; MSIE ?.*; X11; Linux*) Opera 8.5*] -Parent=Opera 8.5 -Platform=Linux - -[Mozilla/?.* (Macintosh; *Mac OS X; ?) Opera 8.5*] -Parent=Opera 8.5 -Platform=MacOSX - -[Mozilla/?.* (Macintosh; PPC Mac OS X;*) Opera 8.5*] -Parent=Opera 8.5 -Platform=MacOSX - -[Mozilla/?.* (Windows 2000; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows 95; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win95 -Win32=true - -[Mozilla/?.* (Windows 98; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win98 -Win32=true - -[Mozilla/?.* (Windows ME; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinME -Win32=true - -[Mozilla/?.* (Windows NT 4.0; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinNT -Win32=true - -[Mozilla/?.* (Windows NT 5.0; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win2000 -Win32=true - -[Mozilla/?.* (Windows NT 5.1; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=WinXP -Win32=true - -[Mozilla/?.* (Windows NT 5.2; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=Win2003 -Win32=true - -[Mozilla/?.* (X11; Linux*; *) Opera 8.5*] -Parent=Opera 8.5 -Platform=Linux - -[Opera/8.5* (Linux*)*] -Parent=Opera 8.5 -Platform=Linux - -[Opera/8.5* (Macintosh; *Mac OS X; *)*] -Parent=Opera 8.5 -Platform=MacOSX - -[Opera/8.5* (Windows 95*)*] -Parent=Opera 8.5 -Platform=Win95 -Win32=true - -[Opera/8.5* (Windows 98*)*] -Parent=Opera 8.5 -Platform=Win98 -Win32=true - -[Opera/8.5* (Windows CE*)*] -Parent=Opera 8.5 -Platform=WinCE -Win32=true - -[Opera/8.5* (Windows ME*)*] -Parent=Opera 8.5 -Platform=WinME -Win32=true - -[Opera/8.5* (Windows NT 4.0*)*] -Parent=Opera 8.5 -Platform=WinNT -Win32=true - -[Opera/8.5* (Windows NT 5.0*)*] -Parent=Opera 8.5 -Platform=Win2000 -Win32=true - -[Opera/8.5* (Windows NT 5.1*)*] -Parent=Opera 8.5 -Platform=WinXP -Win32=true - -[Opera/8.5* (Windows NT 5.2*)*] -Parent=Opera 8.5 -Platform=Win2003 -Win32=true - -[Opera/8.5* (Windows XP*)*] -Parent=Opera 8.5 -Platform=WinXP -Win32=true - -[Opera/8.5* (X11; FreeBSD*)*] -Parent=Opera 8.5 -Platform=FreeBSD - -[Opera/8.5* (X11; Linux*)*] -Parent=Opera 8.5 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.0 - -[Opera 9.0] -Parent=DefaultProperties -Browser=Opera -Version=9.0 -MajorVer=9 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.5 -w3cdomversion=1.0 - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 9.0*] -Parent=Opera 9.0 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.0*] -Parent=Opera 9.0 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.0*] -Parent=Opera 9.0 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.0*] -Parent=Opera 9.0 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Win2003 -Win32=true - -[Mozilla/* (X11; Linux*) Opera 9.0*] -Parent=Opera 9.0 -Platform=Linux - -[Opera/9.0* (Linux*)*] -Parent=Opera 9.0 -Platform=Linux - -[Opera/9.0* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.0 -Platform=MacOSX - -[Opera/9.0* (Windows 95*)*] -Parent=Opera 9.0 -Platform=Win95 -Win32=true - -[Opera/9.0* (Windows 98*)*] -Parent=Opera 9.0 -Platform=Win98 -Win32=true - -[Opera/9.0* (Windows CE*)*] -Parent=Opera 9.0 -Platform=WinCE -Win32=true - -[Opera/9.0* (Windows ME*)*] -Parent=Opera 9.0 -Platform=WinME -Win32=true - -[Opera/9.0* (Windows NT 4.0*)*] -Parent=Opera 9.0 -Platform=WinNT -Win32=true - -[Opera/9.0* (Windows NT 5.0*)*] -Parent=Opera 9.0 -Platform=Win2000 -Win32=true - -[Opera/9.0* (Windows NT 5.1*)*] -Parent=Opera 9.0 -Platform=WinXP -Win32=true - -[Opera/9.0* (Windows NT 5.2*)*] -Parent=Opera 9.0 -Platform=Win2003 -Win32=true - -[Opera/9.0* (Windows NT 6.0*)*] -Parent=Opera 9.0 -Platform=WinVista -Win32=true - -[Opera/9.0* (Windows XP*)*] -Parent=Opera 9.0 -Platform=WinXP -Win32=true - -[Opera/9.0* (X11; FreeBSD*)*] -Parent=Opera 9.0 -Platform=FreeBSD - -[Opera/9.0* (X11; Linux*)*] -Parent=Opera 9.0 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.1 - -[Opera 9.1] -Parent=DefaultProperties -Browser=Opera -Version=9.1 -MajorVer=9 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.1*] -Parent=Opera 9.1 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.1*] -Parent=Opera 9.1 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.1*] -Parent=Opera 9.1 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Win2003 -Win32=true - -[Mozilla/* (X11; Linux*) Opera 9.1*] -Parent=Opera 9.1 -Platform=Linux - -[Opera/9.1* (Linux*)*] -Parent=Opera 9.1 -Platform=Linux - -[Opera/9.1* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.1 -Platform=MacOSX - -[Opera/9.1* (Windows 95*)*] -Parent=Opera 9.1 -Platform=Win95 -Win32=true - -[Opera/9.1* (Windows 98*)*] -Parent=Opera 9.1 -Platform=Win98 -Win32=true - -[Opera/9.1* (Windows CE*)*] -Parent=Opera 9.1 -Platform=WinCE -Win32=true - -[Opera/9.1* (Windows ME*)*] -Parent=Opera 9.1 -Platform=WinME -Win32=true - -[Opera/9.1* (Windows NT 4.0*)*] -Parent=Opera 9.1 -Platform=WinNT -Win32=true - -[Opera/9.1* (Windows NT 5.0*)*] -Parent=Opera 9.1 -Platform=Win2000 -Win32=true - -[Opera/9.1* (Windows NT 5.1*)*] -Parent=Opera 9.1 -Platform=WinXP -Win32=true - -[Opera/9.1* (Windows NT 5.2*)*] -Parent=Opera 9.1 -Platform=Win2003 -Win32=true - -[Opera/9.1* (Windows NT 6.0*)*] -Parent=Opera 9.1 -Platform=WinVista -Win32=true - -[Opera/9.1* (Windows XP*)*] -Parent=Opera 9.1 -Platform=WinXP -Win32=true - -[Opera/9.1* (X11; FreeBSD*)*] -Parent=Opera 9.1 -Platform=FreeBSD - -[Opera/9.1* (X11; Linux*)*] -Parent=Opera 9.1 -Platform=Linux - -[Opera/9.1* (X11; SunOS*)*] -Parent=Opera 9.1 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.2 - -[Opera 9.2] -Parent=DefaultProperties -Browser=Opera -Version=9.2 -MajorVer=9 -MinorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 9.2*] -Parent=Opera 9.2 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.1*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win7 - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.2*] -Parent=Opera 9.2 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.2*] -Parent=Opera 9.2 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.2*] -Parent=Opera 9.2 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win2003 -Win32=true - -[Mozilla/* (Windows NT 6.0;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=WinVista - -[Mozilla/* (Windows NT 6.1;*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Win7 - -[Mozilla/* (X11; Linux*) Opera 9.2*] -Parent=Opera 9.2 -Platform=Linux - -[Opera/9.2* (Linux*)*] -Parent=Opera 9.2 -Platform=Linux - -[Opera/9.2* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.2 -Platform=MacOSX - -[Opera/9.2* (Windows 95*)*] -Parent=Opera 9.2 -Platform=Win95 -Win32=true - -[Opera/9.2* (Windows 98*)*] -Parent=Opera 9.2 -Platform=Win98 -Win32=true - -[Opera/9.2* (Windows CE*)*] -Parent=Opera 9.2 -Platform=WinCE -Win32=true - -[Opera/9.2* (Windows ME*)*] -Parent=Opera 9.2 -Platform=WinME -Win32=true - -[Opera/9.2* (Windows NT 4.0*)*] -Parent=Opera 9.2 -Platform=WinNT -Win32=true - -[Opera/9.2* (Windows NT 5.0*)*] -Parent=Opera 9.2 -Platform=Win2000 -Win32=true - -[Opera/9.2* (Windows NT 5.1*)*] -Parent=Opera 9.2 -Platform=WinXP -Win32=true - -[Opera/9.2* (Windows NT 5.2*)*] -Parent=Opera 9.2 -Platform=Win2003 -Win32=true - -[Opera/9.2* (Windows NT 6.0*)*] -Parent=Opera 9.2 -Platform=WinVista -Win32=true - -[Opera/9.2* (Windows NT 6.1*)*] -Parent=Opera 9.2 -Platform=Win7 - -[Opera/9.2* (Windows XP*)*] -Parent=Opera 9.2 -Platform=WinXP -Win32=true - -[Opera/9.2* (X11; FreeBSD*)*] -Parent=Opera 9.2 -Platform=FreeBSD - -[Opera/9.2* (X11; Linux*)*] -Parent=Opera 9.2 -Platform=Linux - -[Opera/9.2* (X11; SunOS*)*] -Parent=Opera 9.2 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.3 - -[Opera 9.3] -Parent=DefaultProperties -Browser=Opera -Version=9.3 -MajorVer=9 -MinorVer=3 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 9.3*] -Parent=Opera 9.3 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.1*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win7 - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.3*] -Parent=Opera 9.3 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.3*] -Parent=Opera 9.3 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.3*] -Parent=Opera 9.3 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win2003 -Win32=true - -[Mozilla/* (Windows NT 6.0;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=WinVista - -[Mozilla/* (Windows NT 6.1;*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Win7 - -[Mozilla/* (X11; Linux*) Opera 9.3*] -Parent=Opera 9.3 -Platform=Linux - -[Opera/9.3* (Linux*)*] -Parent=Opera 9.3 -Platform=Linux - -[Opera/9.3* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.3 -Platform=MacOSX - -[Opera/9.3* (Windows 95*)*] -Parent=Opera 9.3 -Platform=Win95 -Win32=true - -[Opera/9.3* (Windows 98*)*] -Parent=Opera 9.3 -Platform=Win98 -Win32=true - -[Opera/9.3* (Windows CE*)*] -Parent=Opera 9.3 -Platform=WinCE -Win32=true - -[Opera/9.3* (Windows ME*)*] -Parent=Opera 9.3 -Platform=WinME -Win32=true - -[Opera/9.3* (Windows NT 4.0*)*] -Parent=Opera 9.3 -Platform=WinNT -Win32=true - -[Opera/9.3* (Windows NT 5.0*)*] -Parent=Opera 9.3 -Platform=Win2000 -Win32=true - -[Opera/9.3* (Windows NT 5.1*)*] -Parent=Opera 9.3 -Platform=WinXP -Win32=true - -[Opera/9.3* (Windows NT 5.2*)*] -Parent=Opera 9.3 -Platform=Win2003 -Win32=true - -[Opera/9.3* (Windows NT 6.0*)*] -Parent=Opera 9.3 -Platform=WinVista -Win32=true - -[Opera/9.3* (Windows NT 6.1*)*] -Parent=Opera 9.3 -Platform=Win7 - -[Opera/9.3* (Windows XP*)*] -Parent=Opera 9.3 -Platform=WinXP -Win32=true - -[Opera/9.3* (X11; FreeBSD*)*] -Parent=Opera 9.3 -Platform=FreeBSD - -[Opera/9.3* (X11; Linux*)*] -Parent=Opera 9.3 -Platform=Linux - -[Opera/9.3* (X11; SunOS*)*] -Parent=Opera 9.3 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.4 - -[Opera 9.4] -Parent=DefaultProperties -Browser=Opera -Version=9.4 -MajorVer=9 -MinorVer=4 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 9.4*] -Parent=Opera 9.4 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.1*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win7 - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.4*] -Parent=Opera 9.4 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.4*] -Parent=Opera 9.4 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.4*] -Parent=Opera 9.4 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win2003 -Win32=true - -[Mozilla/* (Windows NT 6.0;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=WinVista - -[Mozilla/* (Windows NT 6.1;*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Win7 - -[Mozilla/* (X11; Linux*) Opera 9.4*] -Parent=Opera 9.4 -Platform=Linux - -[Opera/9.4* (Linux*)*] -Parent=Opera 9.4 -Platform=Linux - -[Opera/9.4* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.4 -Platform=MacOSX - -[Opera/9.4* (Windows 95*)*] -Parent=Opera 9.4 -Platform=Win95 -Win32=true - -[Opera/9.4* (Windows 98*)*] -Parent=Opera 9.4 -Platform=Win98 -Win32=true - -[Opera/9.4* (Windows CE*)*] -Parent=Opera 9.4 -Platform=WinCE -Win32=true - -[Opera/9.4* (Windows ME*)*] -Parent=Opera 9.4 -Platform=WinME -Win32=true - -[Opera/9.4* (Windows NT 4.0*)*] -Parent=Opera 9.4 -Platform=WinNT -Win32=true - -[Opera/9.4* (Windows NT 5.0*)*] -Parent=Opera 9.4 -Platform=Win2000 -Win32=true - -[Opera/9.4* (Windows NT 5.1*)*] -Parent=Opera 9.4 -Platform=WinXP -Win32=true - -[Opera/9.4* (Windows NT 5.2*)*] -Parent=Opera 9.4 -Platform=Win2003 -Win32=true - -[Opera/9.4* (Windows NT 6.0*)*] -Parent=Opera 9.4 -Platform=WinVista -Win32=true - -[Opera/9.4* (Windows NT 6.1*)*] -Parent=Opera 9.4 -Platform=Win7 - -[Opera/9.4* (Windows XP*)*] -Parent=Opera 9.4 -Platform=WinXP -Win32=true - -[Opera/9.4* (X11; FreeBSD*)*] -Parent=Opera 9.4 -Platform=FreeBSD - -[Opera/9.4* (X11; Linux*)*] -Parent=Opera 9.4 -Platform=Linux - -[Opera/9.4* (X11; SunOS*)*] -Parent=Opera 9.4 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.5 - -[Opera 9.5] -Parent=DefaultProperties -Browser=Opera -Version=9.5 -MajorVer=9 -MinorVer=5 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 9.5*] -Parent=Opera 9.5 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.1*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win7 - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.5*] -Parent=Opera 9.5 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.5*] -Parent=Opera 9.5 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.5*] -Parent=Opera 9.5 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win2003 -Win32=true - -[Mozilla/* (Windows NT 6.0;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=WinVista - -[Mozilla/* (Windows NT 6.1;*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Win7 - -[Mozilla/* (X11; Linux*) Opera 9.5*] -Parent=Opera 9.5 -Platform=Linux - -[Opera/9.5* (Linux*)*] -Parent=Opera 9.5 -Platform=Linux - -[Opera/9.5* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.5 -Platform=MacOSX - -[Opera/9.5* (Windows 95*)*] -Parent=Opera 9.5 -Platform=Win95 -Win32=true - -[Opera/9.5* (Windows 98*)*] -Parent=Opera 9.5 -Platform=Win98 -Win32=true - -[Opera/9.5* (Windows CE*)*] -Parent=Opera 9.5 -Platform=WinCE -Win32=true - -[Opera/9.5* (Windows ME*)*] -Parent=Opera 9.5 -Platform=WinME -Win32=true - -[Opera/9.5* (Windows NT 4.0*)*] -Parent=Opera 9.5 -Platform=WinNT -Win32=true - -[Opera/9.5* (Windows NT 5.0*)*] -Parent=Opera 9.5 -Platform=Win2000 -Win32=true - -[Opera/9.5* (Windows NT 5.1*)*] -Parent=Opera 9.5 -Platform=WinXP -Win32=true - -[Opera/9.5* (Windows NT 5.2*)*] -Parent=Opera 9.5 -Platform=Win2003 -Win32=true - -[Opera/9.5* (Windows NT 6.0*)*] -Parent=Opera 9.5 -Platform=WinVista -Win32=true - -[Opera/9.5* (Windows NT 6.1*)*] -Parent=Opera 9.5 -Platform=Win7 - -[Opera/9.5* (Windows XP*)*] -Parent=Opera 9.5 -Platform=WinXP -Win32=true - -[Opera/9.5* (X11; FreeBSD*)*] -Parent=Opera 9.5 -Platform=FreeBSD - -[Opera/9.5* (X11; Linux*)*] -Parent=Opera 9.5 -Platform=Linux - -[Opera/9.5* (X11; SunOS*)*] -Parent=Opera 9.5 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Opera 9.6 - -[Opera 9.6] -Parent=DefaultProperties -Browser=Opera -Version=9.6 -MajorVer=9 -MinorVer=6 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/* (compatible; MSIE*; Linux*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC Mac OS X;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=MacOSX - -[Mozilla/* (compatible; MSIE*; Mac_PowerPC) Opera 9.6*] -Parent=Opera 9.6 -Platform=MacPPC - -[Mozilla/* (compatible; MSIE*; Windows 2000*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 95*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win95 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows 98*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win98 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows CE*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinCE -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows ME*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinME -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 4.0*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinNT -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.0*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win2000 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.1*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 5.2*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win2003 -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.0*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinVista -Win32=true - -[Mozilla/* (compatible; MSIE*; Windows NT 6.1*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win7 - -[Mozilla/* (compatible; MSIE*; Windows XP*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinXP -Win32=true - -[Mozilla/* (compatible; MSIE*; X11; FreeBSD*) Opera 9.6*] -Parent=Opera 9.6 -Platform=FreeBSD - -[Mozilla/* (compatible; MSIE*; X11; Linux*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Linux - -[Mozilla/* (compatible; MSIE*; X11; SunOS*) Opera 9.6*] -Parent=Opera 9.6 -Platform=SunOS - -[Mozilla/* (Macintosh; *Mac OS X; ?) Opera 9.6*] -Parent=Opera 9.6 -Platform=MacOSX - -[Mozilla/* (Windows 2000;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows 95;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win95 -Win32=true - -[Mozilla/* (Windows 98;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win98 -Win32=true - -[Mozilla/* (Windows ME;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinME -Win32=true - -[Mozilla/* (Windows NT 4.0;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinNT -Win32=true - -[Mozilla/* (Windows NT 5.0;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win2000 -Win32=true - -[Mozilla/* (Windows NT 5.1;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinXP -Win32=true - -[Mozilla/* (Windows NT 5.2;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win2003 -Win32=true - -[Mozilla/* (Windows NT 6.0;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=WinVista - -[Mozilla/* (Windows NT 6.1;*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Win7 - -[Mozilla/* (X11; Linux*) Opera 9.6*] -Parent=Opera 9.6 -Platform=Linux - -[Opera/9.6* (Linux*)*] -Parent=Opera 9.6 -Platform=Linux - -[Opera/9.6* (Macintosh; *Mac OS X;*)*] -Parent=Opera 9.6 -Platform=MacOSX - -[Opera/9.6* (Windows 95*)*] -Parent=Opera 9.6 -Platform=Win95 -Win32=true - -[Opera/9.6* (Windows 98*)*] -Parent=Opera 9.6 -Platform=Win98 -Win32=true - -[Opera/9.6* (Windows CE*)*] -Parent=Opera 9.6 -Platform=WinCE -Win32=true - -[Opera/9.6* (Windows ME*)*] -Parent=Opera 9.6 -Platform=WinME -Win32=true - -[Opera/9.6* (Windows NT 4.0*)*] -Parent=Opera 9.6 -Platform=WinNT -Win32=true - -[Opera/9.6* (Windows NT 5.0*)*] -Parent=Opera 9.6 -Platform=Win2000 -Win32=true - -[Opera/9.6* (Windows NT 5.1*)*] -Parent=Opera 9.6 -Platform=WinXP -Win32=true - -[Opera/9.6* (Windows NT 5.2*)*] -Parent=Opera 9.6 -Platform=Win2003 -Win32=true - -[Opera/9.6* (Windows NT 6.0*)*] -Parent=Opera 9.6 -Platform=WinVista -Win32=true - -[Opera/9.6* (Windows NT 6.1*)*] -Parent=Opera 9.6 -Platform=Win7 - -[Opera/9.6* (Windows XP*)*] -Parent=Opera 9.6 -Platform=WinXP -Win32=true - -[Opera/9.6* (X11; FreeBSD*)*] -Parent=Opera 9.6 -Platform=FreeBSD - -[Opera/9.6* (X11; Linux*)*] -Parent=Opera 9.6 -Platform=Linux - -[Opera/9.6* (X11; SunOS*)*] -Parent=Opera 9.6 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 4.0 - -[Netscape 4.0] -Parent=DefaultProperties -Browser=Netscape -Version=4.0 -MajorVer=4 -Frames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/4.0*(Macintosh*] -Parent=Netscape 4.0 -Version=4.03 -MinorVer=03 -Platform=MacPPC - -[Mozilla/4.0*(Win95;*] -Parent=Netscape 4.0 -Platform=Win95 - -[Mozilla/4.0*(Win98;*] -Parent=Netscape 4.0 -Version=4.03 -MinorVer=03 -Platform=Win98 - -[Mozilla/4.0*(WinNT*] -Parent=Netscape 4.0 -Version=4.03 -MinorVer=03 -Platform=WinNT - -[Mozilla/4.0*(X11;*)] -Parent=Netscape 4.0 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 4.5 - -[Netscape 4.5] -Parent=DefaultProperties -Browser=Netscape -Version=4.5 -MajorVer=4 -MinorVer=5 -Frames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/4.5*(Macintosh; ?; PPC)] -Parent=Netscape 4.5 -Platform=MacPPC - -[Mozilla/4.5*(Win2000; ?)] -Parent=Netscape 4.5 -Platform=Win2000 - -[Mozilla/4.5*(Win95; ?)] -Parent=Netscape 4.5 -Platform=Win95 - -[Mozilla/4.5*(Win98; ?)] -Parent=Netscape 4.5 -Platform=Win98 - -[Mozilla/4.5*(WinME; ?)] -Parent=Netscape 4.5 -Platform=WinME - -[Mozilla/4.5*(WinNT; ?)] -Parent=Netscape 4.5 -Platform=WinNT - -[Mozilla/4.5*(WinXP; ?)] -Parent=Netscape 4.5 -Platform=WinXP - -[Mozilla/4.5*(X11*)] -Parent=Netscape 4.5 -Platform=Linux - -[Mozilla/4.51*(Macintosh; ?; PPC)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 - -[Mozilla/4.51*(Win2000; ?)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=Win2000 - -[Mozilla/4.51*(Win95; ?)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=Win95 - -[Mozilla/4.51*(Win98; ?)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=Win98 - -[Mozilla/4.51*(WinME; ?)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=WinME - -[Mozilla/4.51*(WinNT; ?)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=WinNT - -[Mozilla/4.51*(WinXP; ?)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=WinXP - -[Mozilla/4.51*(X11*)] -Parent=Netscape 4.5 -Version=4.51 -MinorVer=51 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 4.6 - -[Netscape 4.6] -Parent=DefaultProperties -Browser=Netscape -Version=4.6 -MajorVer=4 -MinorVer=6 -Frames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/4.6 * (OS/2; ?)] -Parent=Netscape 4.6 -Platform=OS/2 - -[Mozilla/4.6*(Macintosh; ?; PPC)] -Parent=Netscape 4.6 -Platform=MacPPC - -[Mozilla/4.6*(Win95; ?)] -Parent=Netscape 4.6 -Platform=Win95 - -[Mozilla/4.6*(Win98; ?)] -Parent=Netscape 4.6 -Platform=Win98 - -[Mozilla/4.6*(WinNT; ?)] -Parent=Netscape 4.6 -Platform=WinNT - -[Mozilla/4.61*(Macintosh; ?; PPC)] -Parent=Netscape 4.6 -Version=4.61 -MajorVer=4 -MinorVer=61 -Platform=MacPPC - -[Mozilla/4.61*(OS/2; ?)] -Parent=Netscape 4.6 -Version=4.61 -MajorVer=4 -MinorVer=61 -Platform=OS/2 - -[Mozilla/4.61*(Win95; ?)] -Parent=Netscape 4.6 -Version=4.61 -MajorVer=4 -MinorVer=61 -Platform=Win95 - -[Mozilla/4.61*(Win98; ?)] -Parent=Netscape 4.6 -Version=4.61 -Platform=Win98 - -[Mozilla/4.61*(WinNT; ?)] -Parent=Netscape 4.6 -Version=4.61 -MajorVer=4 -MinorVer=61 -Platform=WinNT - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 4.7 - -[Netscape 4.7] -Parent=DefaultProperties -Browser=Netscape -Version=4.7 -MajorVer=4 -MinorVer=7 -Frames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/4.7 * (Win2000; ?)] -Parent=Netscape 4.7 -Platform=Win2000 - -[Mozilla/4.7*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=7 -Platform=MacPPC - -[Mozilla/4.7*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=7 -Platform=Win95 - -[Mozilla/4.7*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=7 -Platform=Win98 - -[Mozilla/4.7*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=7 -Platform=WinNT -Win32=true - -[Mozilla/4.7*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=7 -Platform=Win2000 -Win32=true - -[Mozilla/4.7*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=7 -Platform=WinXP -Win32=true - -[Mozilla/4.7*(WinNT; ?)*] -Parent=Netscape 4.7 -Platform=WinNT - -[Mozilla/4.7*(X11*)*] -Parent=Netscape 4.7 -Platform=Linux - -[Mozilla/4.7*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -Platform=SunOS - -[Mozilla/4.71*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=MacPPC - -[Mozilla/4.71*(Win95; ?)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=Win95 - -[Mozilla/4.71*(Win98; ?)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=Win98 - -[Mozilla/4.71*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=WinNT -Win32=true - -[Mozilla/4.71*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=Win2000 -Win32=true - -[Mozilla/4.71*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=WinXP -Win32=true - -[Mozilla/4.71*(WinNT; ?)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=WinNT - -[Mozilla/4.71*(X11*)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=Linux - -[Mozilla/4.71*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -Version=4.71 -MinorVer=71 -Platform=SunOS - -[Mozilla/4.72*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=MacPPC - -[Mozilla/4.72*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=Win95 - -[Mozilla/4.72*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=Win98 - -[Mozilla/4.72*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=WinNT -Win32=true - -[Mozilla/4.72*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=Win2000 -Win32=true - -[Mozilla/4.72*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=WinXP -Win32=true - -[Mozilla/4.72*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=WinNT - -[Mozilla/4.72*(X11*)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=Linux - -[Mozilla/4.72*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=72 -Platform=SunOS - -[Mozilla/4.73*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=MacPPC - -[Mozilla/4.73*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=Win95 - -[Mozilla/4.73*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=Win98 - -[Mozilla/4.73*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=WinNT -Win32=true - -[Mozilla/4.73*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=Win2000 -Win32=true - -[Mozilla/4.73*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=WinXP -Win32=true - -[Mozilla/4.73*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=WinNT - -[Mozilla/4.73*(X11*)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=Linux - -[Mozilla/4.73*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=73 -Platform=SunOS - -[Mozilla/4.74*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=MacPPC - -[Mozilla/4.74*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=Win95 - -[Mozilla/4.74*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=Win98 - -[Mozilla/4.74*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=WinNT -Win32=true - -[Mozilla/4.74*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=Win2000 -Win32=true - -[Mozilla/4.74*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=WinXP -Win32=true - -[Mozilla/4.74*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=WinNT - -[Mozilla/4.74*(X11*)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=Linux - -[Mozilla/4.74*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=74 -Platform=SunOS - -[Mozilla/4.75*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=MacPPC - -[Mozilla/4.75*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=Win95 - -[Mozilla/4.75*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=Win98 - -[Mozilla/4.75*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=WinNT -Win32=true - -[Mozilla/4.75*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=Win2000 -Win32=true - -[Mozilla/4.75*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=WinXP -Win32=true - -[Mozilla/4.75*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=WinNT - -[Mozilla/4.75*(X11*)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=Linux - -[Mozilla/4.75*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=75 -Platform=SunOS - -[Mozilla/4.76*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=MacPPC - -[Mozilla/4.76*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=Win95 - -[Mozilla/4.76*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=Win98 - -[Mozilla/4.76*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=WinNT -Win32=true - -[Mozilla/4.76*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=Win2000 -Win32=true - -[Mozilla/4.76*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=WinXP -Win32=true - -[Mozilla/4.76*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=WinNT - -[Mozilla/4.76*(X11*)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=Linux - -[Mozilla/4.76*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=76 -Platform=SunOS - -[Mozilla/4.77*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=MacPPC - -[Mozilla/4.77*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=Win95 - -[Mozilla/4.77*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=Win98 - -[Mozilla/4.77*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=WinNT -Win32=true - -[Mozilla/4.77*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=Win2000 -Win32=true - -[Mozilla/4.77*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=WinXP -Win32=true - -[Mozilla/4.77*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=WinNT - -[Mozilla/4.77*(X11*)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=Linux - -[Mozilla/4.77*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=77 -Platform=SunOS - -[Mozilla/4.78*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=MacPPC - -[Mozilla/4.78*(Win95; ?)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=Win95 - -[Mozilla/4.78*(Win98; ?)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=Win98 - -[Mozilla/4.78*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=WinNT -Win32=true - -[Mozilla/4.78*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=Win2000 -Win32=true - -[Mozilla/4.78*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=WinXP -Win32=true - -[Mozilla/4.78*(WinNT; ?)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=WinNT - -[Mozilla/4.78*(X11*)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=Linux - -[Mozilla/4.78*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -MinorVer=78 -Platform=SunOS - -[Mozilla/4.79*(Macintosh; ?; PPC)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=MacPPC - -[Mozilla/4.79*(Win95; ?)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=Win95 - -[Mozilla/4.79*(Win98; ?)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=Win98 - -[Mozilla/4.79*(Windows NT 4.0; ?)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=WinNT -Win32=true - -[Mozilla/4.79*(Windows NT 5.0; ?)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=Win2000 -Win32=true - -[Mozilla/4.79*(Windows NT 5.1; ?)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=WinXP -Win32=true - -[Mozilla/4.79*(WinNT; ?)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=WinNT - -[Mozilla/4.79*(X11*)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=Linux - -[Mozilla/4.79*(X11; ?; SunOS*)*] -Parent=Netscape 4.7 -Version=4.79 -MinorVer=79 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 4.8 - -[Netscape 4.8] -Parent=DefaultProperties -Browser=Netscape -Version=4.8 -MajorVer=4 -MinorVer=8 -Frames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/4.8*(Macintosh; ?; MacPPC)*] -Parent=Netscape 4.8 -Platform=MacPPC - -[Mozilla/4.8*(Macintosh; ?; PPC Mac OS X*] -Parent=Netscape 4.8 -Platform=MacOSX - -[Mozilla/4.8*(Macintosh; ?; PPC)*] -Parent=Netscape 4.8 -Platform=MacPPC - -[Mozilla/4.8*(Win95; *)*] -Parent=Netscape 4.8 - -[Mozilla/4.8*(Win98; *)*] -Parent=Netscape 4.8 -Platform=Win98 - -[Mozilla/4.8*(Windows NT 4.0; *)*] -Parent=Netscape 4.8 -Platform=WinNT -Win32=true - -[Mozilla/4.8*(Windows NT 5.0; *)*] -Parent=Netscape 4.8 -Platform=Win2000 -Win32=true - -[Mozilla/4.8*(Windows NT 5.1; *)*] -Parent=Netscape 4.8 -Platform=WinXP -Win32=true - -[Mozilla/4.8*(WinNT; *)*] -Parent=Netscape 4.8 -Platform=WinNT - -[Mozilla/4.8*(X11; *)*] -Parent=Netscape 4.8 -Platform=Linux - -[Mozilla/4.8*(X11; *SunOS*)*] -Parent=Netscape 4.8 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 6.0 - -[Netscape 6.0] -Parent=DefaultProperties -Browser=Netscape -Version=6.0 -MajorVer=6 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape6/6.0*] -Parent=Netscape 6.0 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 6.1 - -[Netscape 6.1] -Parent=DefaultProperties -Browser=Netscape -Version=6.1 -MajorVer=6 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape6/6.1*] -Parent=Netscape 6.1 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 6.2 - -[Netscape 6.2] -Parent=DefaultProperties -Browser=Netscape -Version=6.2 -MajorVer=6 -MinorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X*) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape6/6.2*] -Parent=Netscape 6.2 -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 7.0 - -[Netscape 7.0] -Parent=DefaultProperties -Browser=Netscape -Version=7.0 -MajorVer=7 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X;*) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win*9x 4.90; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*) Gecko/* Netscape*/7.0*] -Parent=Netscape 7.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 7.1 - -[Netscape 7.1] -Parent=DefaultProperties -Browser=Netscape -Version=7.1 -MajorVer=7 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X Mach-O; *; rv:*) Gecko/* Netscape*/7.1] -Parent=Netscape 7.1 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X;*) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*) Gecko/* Netscape*/7.1*] -Parent=Netscape 7.1 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 7.2 - -[Netscape 7.2] -Parent=DefaultProperties -Browser=Netscape -Version=7.2 -MajorVer=7 -MinorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X Mach-O; *; rv:*) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X;*) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*) Gecko/* Netscape*/7.2*] -Parent=Netscape 7.2 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 8.0 - -[Netscape 8.0] -Parent=DefaultProperties -Browser=Netscape -Version=8.0 -MajorVer=8 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X Mach-O; *; rv:*) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC Mac OS X;*) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*) Gecko/* Netscape*/8.0*] -Parent=Netscape 8.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Netscape 8.1 - -[Netscape 8.1] -Parent=DefaultProperties -Browser=Netscape -Version=8.1 -MajorVer=8 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; ?; PPC;*) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=MacPPC - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95;*) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win9x 4.90; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 4.0; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win7 - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.0; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.1; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT5.2; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.0; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT6.1; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; *) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*) Gecko/* Netscape*/8.1*] -Parent=Netscape 8.1 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SeaMonkey 1.0 - -[SeaMonkey 1.0] -Parent=DefaultProperties -Browser=SeaMonkey -Version=1.0 -MajorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=WinME - -[Mozilla/5.0 (Windows; ?; Win98; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=Win98 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=Win2000 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; FreeBSD*; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=FreeBSD - -[Mozilla/5.0 (X11; ?; Linux*; *; rv:1.8*) Gecko/20060221 SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*; *; rv:1.8*) Gecko/* SeaMonkey/1.0*] -Parent=SeaMonkey 1.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SeaMonkey 1.1 - -[SeaMonkey 1.1] -Parent=DefaultProperties -Browser=SeaMonkey -Version=1.1 -MajorVer=1 -MinorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=WinME - -[Mozilla/5.0 (Windows; ?; Win98; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=Win98 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=Win2000 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; FreeBSD*; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=FreeBSD - -[Mozilla/5.0 (X11; ?; Linux*; *; rv:1.8*) Gecko/20060221 SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*; *; rv:1.8*) Gecko/* SeaMonkey/1.1*] -Parent=SeaMonkey 1.1 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; SeaMonkey 2.0 - -[SeaMonkey 2.0] -Parent=DefaultProperties -Browser=SeaMonkey -Version=2.0 -MajorVer=2 -Alpha=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=WinME - -[Mozilla/5.0 (Windows; ?; Win98; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=Win98 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=Win2000 - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; ?; Windows NT 6.0; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; ?; Windows NT 6.1; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=Win7 - -[Mozilla/5.0 (X11; ?; FreeBSD*; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=FreeBSD - -[Mozilla/5.0 (X11; ?; Linux*; *; rv:1.9*) Gecko/20060221 SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=Linux - -[Mozilla/5.0 (X11; ?; SunOS*; *; rv:1.9*) Gecko/* SeaMonkey/2.0*] -Parent=SeaMonkey 2.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Flock 1.0 - -[Flock 1.0] -Parent=DefaultProperties -Browser=Flock -Version=1.0 -MajorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; U; *Mac OS X*; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=MacOSX - -[Mozilla/5.0 (Windows; U; Win 9x 4.90; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=WinME - -[Mozilla/5.0 (Windows; U; Windows NT 5.0*; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=Win2000 - -[Mozilla/5.0 (Windows; U; Windows NT 5.1*; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2*; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0*; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1*; *; rv:1.*) Gecko/* Firefox/2.* Flock/1.*] -Parent=Flock 1.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Flock 2.0 - -[Flock 2.0] -Parent=DefaultProperties -Browser=Flock -Version=2.0 -MajorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; U; *Mac OS X*; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=MacOSX - -[Mozilla/5.0 (Windows; U; Win 9x 4.90; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=WinME - -[Mozilla/5.0 (Windows; U; Windows NT 5.0*; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=Win2000 - -[Mozilla/5.0 (Windows; U; Windows NT 5.1*; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 5.2*; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=Win2003 - -[Mozilla/5.0 (Windows; U; Windows NT 6.0*; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1*; *; rv:1.*) Gecko/* Firefox/3.* Flock/2.*] -Parent=Flock 2.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Sleipnir 2.0 - -[Sleipnir] -Parent=DefaultProperties -Browser=Sleipnir -Version=2.0 -MajorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/4.0 (compatible; MSIE ?.0; Windows NT 5.0*) Sleipnir/2.*] -Parent=Sleipnir -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE ?.0; Windows NT 5.1*) Sleipnir/2.*] -Parent=Sleipnir -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE ?.0; Windows NT 5.2*) Sleipnir/2.*] -Parent=Sleipnir -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE ?.0; Windows NT 6.0*) Sleipnir/2.*] -Parent=Sleipnir -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE ?.0; Windows NT 6.1*) Sleipnir/2.*] -Parent=Sleipnir -Platform=Win7 - -[Sleipnir*] -Parent=Sleipnir - -[Sleipnir/2.*] -Parent=Sleipnir - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Fennec 1.0 - -[Fennec 1.0] -Parent=DefaultProperties -Browser=Firefox Mobile -Version=1.0 -MajorVer=1 -Alpha=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1; *; rv:1.9*) Gecko/* Fennec/1.0*] -Parent=Fennec 1.0 -Platform=WinXP - -[Mozilla/5.0 (Windows; U; Windows NT 6.0; *; rv:1.9*) Gecko/* Fennec/1.0*] -Parent=Fennec 1.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1; *; rv:1.9*) Gecko/* Fennec/1.0*] -Parent=Fennec 1.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firebird - -[Firebird] -Parent=DefaultProperties -Browser=Firebird -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Linux; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (OS/2; *; Warp*; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.?; *; rv:1.*) Gecko/* Firebird Browser/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.?; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.?; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.?; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.*; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird -Win32=true - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (X11; *; IRIX*; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (X11; *; Linux*; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.*) Gecko/* Firebird/0.*] -Parent=Firebird - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.*) Gecko/* Mozilla Firebird/0.*] -Parent=Firebird - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox - -[Firefox] -Parent=DefaultProperties -Browser=Firefox -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=MacOSX - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox - -[Mozilla/5.0 (OS/2; *; Warp*; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox - -[Mozilla/5.0 (Windows NT 5.?; ?; rv:1.*) Gecko/* Firefox] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win95; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.*; *; rv:1.*) Gecko/* Deer Park/Alpha*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.?; *; rv:1.*) Gecko/* Firefox/10.5] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0*; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Win32=true - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; FreeBSD*; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox - -[Mozilla/5.0 (X11; *; HP-UX*; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; Linux*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox - -[Mozilla/5.0 (X11; *; Linux*; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.*) Gecko/* Firefox/0.*] -Parent=Firefox -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 1.0 - -[Firefox 1.0] -Parent=DefaultProperties -Browser=Firefox -Version=1.0 -MajorVer=1 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/5.0 (Linux; *; PPC*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=MacPPC - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=MacOSX - -[Mozilla/5.0 (OS/2; *; Warp*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=OS/2 - -[Mozilla/5.0 (Windows; *; Win 9x 4.90*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=Linux - -[Mozilla/5.0 (X11; *; *Linux*; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=Linux - -[Mozilla/5.0 (X11; *; DragonFly*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.*) Gecko/* Firefox/1.0*] -Parent=Firefox 1.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 1.4 - -[Firefox 1.4] -Parent=DefaultProperties -Browser=Firefox -Version=1.4 -MajorVer=1 -MinorVer=4 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/5.0 (Linux; *; PPC*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=Linux - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=MacOSX - -[Mozilla/5.0 (OS/2; *; Warp*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=OS/2 - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; *; Win95*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=Linux - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.*) Gecko/* Firefox/1.4*] -Parent=Firefox 1.4 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 1.5 - -[Firefox 1.5] -Parent=DefaultProperties -Browser=Firefox -Version=1.5 -MajorVer=1 -MinorVer=5 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.5 -w3cdomversion=1.0 - -[Mozilla/5.0 (Linux; *; PPC*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=Linux - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=MacOSX - -[Mozilla/5.0 (OS/2; *; Warp*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=OS/2 - -[Mozilla/5.0 (rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2 x64; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=Linux - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.*) Gecko/* Firefox/1.5*] -Parent=Firefox 1.5 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 2.0 - -[Firefox 2.0] -Parent=DefaultProperties -Browser=Firefox -Version=2.0 -MajorVer=2 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.5 -w3cdomversion=1.0 - -[Mozilla/5.0 (Linux; *; PPC*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Linux - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=MacOSX - -[Mozilla/5.0 (OS/2; *; Warp*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=OS/2 - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; *; Win95; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.1; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=Linux - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.8*) Gecko/* Firefox/2.0*] -Parent=Firefox 2.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 3.0 - -[Firefox 3.0] -Parent=DefaultProperties -Browser=Firefox -Version=3.0 -MajorVer=3 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true -ecmascriptversion=1.5 -w3cdomversion=1.0 - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=MacOSX - -[Mozilla/5.0 (Windows; *; Windows NT 5.0; *; rv:1.*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=Win2000 - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.1; *; rv:1.*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=Win7 - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1 x64; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=WinXP -Win32=false -Win64=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.2 x64; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=Win2003 -Win32=false -Win64=true - -[Mozilla/5.0 (Windows; U; Windows NT 6.0 x64; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1 x64; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=Win7 - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=Linux - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.9*) Gecko/* Firefox/3.0*] -Parent=Firefox 3.0 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 3.1 - -[Firefox 3.1] -Parent=DefaultProperties -Browser=Firefox -Version=3.1 -MajorVer=3 -MinorVer=1 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=MacOSX - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.1; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=Win7 - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1 x64; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=WinXP -Win32=false -Win64=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.2 x64; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=Win2003 -Win32=false -Win64=true - -[Mozilla/5.0 (Windows; U; Windows NT 6.0 x64; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1 x64; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=Win7 - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=Linux - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.9*) Gecko/* Firefox/3.1*] -Parent=Firefox 3.1 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Firefox 3.5 - -[Firefox 3.5] -Parent=DefaultProperties -Browser=Firefox -Version=3.5 -MajorVer=3 -MinorVer=5 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=3 -supportsCSS=true - -[Mozilla/5.0 (Macintosh; *; *Mac OS X*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=MacOSX - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.0; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=WinVista -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 6.1; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=Win7 - -[Mozilla/5.0 (Windows; *; WinNT4.0; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.1 x64; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=WinXP -Win32=false -Win64=true - -[Mozilla/5.0 (Windows; U; Windows NT 5.2 x64; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=Win2003 -Win32=false -Win64=true - -[Mozilla/5.0 (Windows; U; Windows NT 6.0 x64; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=WinVista - -[Mozilla/5.0 (Windows; U; Windows NT 6.1 x64; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=Win7 - -[Mozilla/5.0 (X11; *; *Linux*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=Linux - -[Mozilla/5.0 (X11; *; FreeBSD*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *; HP-UX*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=HP-UX - -[Mozilla/5.0 (X11; *; IRIX64*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=IRIX64 - -[Mozilla/5.0 (X11; *; OpenBSD*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *; SunOS*; *; rv:1.9.*) Gecko/* Firefox/3.5b*] -Parent=Firefox 3.5 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Phoenix - -[Phoenix] -Parent=DefaultProperties -Browser=Phoenix -Version=0.5 -MinorVer=5 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (Windows; *; Win 9x 4.90; *; rv:1.4*) Gecko/* Phoenix/0.5*] -Parent=Phoenix -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; *; Win98; *; rv:1.4*) Gecko/* Phoenix/0.5*] -Parent=Phoenix -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.0*; *; rv:1.4*) Gecko/* Phoenix/0.5*] -Parent=Phoenix -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.1; *; rv:1.4*) Gecko/* Phoenix/0.5*] -Parent=Phoenix -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; *; Windows NT 5.2*; *; rv:1.4*) Gecko/* Phoenix/0.5*] -Parent=Phoenix -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (X11; *; Linux*; *; rv:1.4*) Gecko/* Phoenix/0.5*] -Parent=Phoenix -Platform=Linux - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Iceweasel - -[Iceweasel] -Parent=DefaultProperties -Browser=Iceweasel -Platform=Linux -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (X11; U; Linux*; *; rv:1.8*) Gecko/* Iceweasel/2.0* (Debian-*)] -Parent=Iceweasel -Version=2.0 -MajorVer=2 -MinorVer=0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.0 - -[Mozilla 1.0] -Parent=DefaultProperties -Browser=Mozilla -Version=1.0 -MajorVer=1 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.0.*) Gecko/*] -Parent=Mozilla 1.0 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.1 - -[Mozilla 1.1] -Parent=DefaultProperties -Browser=Mozilla -Version=1.1 -MajorVer=1 -MinorVer=1 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.1.*) Gecko/*] -Parent=Mozilla 1.1 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.2 - -[Mozilla 1.2] -Parent=DefaultProperties -Browser=Mozilla -Version=1.2 -MajorVer=1 -MinorVer=2 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.2.*) Gecko/*] -Parent=Mozilla 1.2 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.3 - -[Mozilla 1.3] -Parent=DefaultProperties -Browser=Mozilla -Version=1.3 -MajorVer=1 -MinorVer=3 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.3.*) Gecko/*] -Parent=Mozilla 1.3 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.4 - -[Mozilla 1.4] -Parent=DefaultProperties -Browser=Mozilla -Version=1.4 -MajorVer=1 -MinorVer=4 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.1; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=Win31 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.11; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=Win31 -Win16=true -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *FreeBSD*; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *Linux*; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=Linux - -[Mozilla/5.0 (X11; *OpenBSD*; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *SunOS*; *rv:1.4*) Gecko/*] -Parent=Mozilla 1.4 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.5 - -[Mozilla 1.5] -Parent=DefaultProperties -Browser=Mozilla -Version=1.5 -MajorVer=1 -MinorVer=5 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.1; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=Win31 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.11; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=Win31 -Win16=true -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *FreeBSD*; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *Linux*; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=Linux - -[Mozilla/5.0 (X11; *OpenBSD*; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *SunOS*; *rv:1.5*) Gecko/*] -Parent=Mozilla 1.5 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.6 - -[Mozilla 1.6] -Parent=DefaultProperties -Browser=Mozilla -Version=1.6 -MajorVer=1 -MinorVer=6 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.1; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=Win31 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.11; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=Win31 -Win16=true -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *FreeBSD*; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *Linux*; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=Linux - -[Mozilla/5.0 (X11; *OpenBSD*; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *SunOS*; *rv:1.6*) Gecko/*] -Parent=Mozilla 1.6 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.7 - -[Mozilla 1.7] -Parent=DefaultProperties -Browser=Mozilla -Version=1.7 -MajorVer=1 -MinorVer=7 -Beta=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.5 -w3cdomversion=1.0 - -[Mozilla/5.0 (*rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.1; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Win31 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.11; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Win31 -Win16=true -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *FreeBSD*; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *Linux*; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=Linux - -[Mozilla/5.0 (X11; *OpenBSD*; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *SunOS*; *rv:1.7*) Gecko/*] -Parent=Mozilla 1.7 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.8 - -[Mozilla 1.8] -Parent=DefaultProperties -Browser=Mozilla -Version=1.8 -MajorVer=1 -MinorVer=8 -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.5 -w3cdomversion=1.0 - -[Mozilla/5.0 (*rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.1; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.11; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=Win31 -Win16=true -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *FreeBSD*; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *Linux*; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=Linux - -[Mozilla/5.0 (X11; *OpenBSD*; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *SunOS*; *rv:1.8*) Gecko/*] -Parent=Mozilla 1.8 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Mozilla 1.9 - -[Mozilla 1.9] -Parent=DefaultProperties -Browser=Mozilla -Version=1.9 -MajorVer=1 -MinorVer=9 -Alpha=true -Frames=true -IFrames=true -Tables=true -Cookies=true -JavaApplets=true -JavaScript=true -CssVersion=2 -supportsCSS=true - -[Mozilla/5.0 (*rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 - -[Mozilla/5.0 (Macintosh; ?; *Mac OS X*; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=MacOSX - -[Mozilla/5.0 (Windows; ?; Win 9x 4.90; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=WinME -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.1; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win3.11; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=Win31 -Win16=true -Win32=true - -[Mozilla/5.0 (Windows; ?; Win95; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=Win95 -Win32=true - -[Mozilla/5.0 (Windows; ?; Win98; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=Win98 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.0; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=Win2000 -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.1; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=WinXP -Win32=true - -[Mozilla/5.0 (Windows; ?; Windows NT 5.2; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=Win2003 -Win32=true - -[Mozilla/5.0 (Windows; ?; WinNT4.0; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=WinNT -Win32=true - -[Mozilla/5.0 (X11; *FreeBSD*; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=FreeBSD - -[Mozilla/5.0 (X11; *Linux*; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=Linux - -[Mozilla/5.0 (X11; *OpenBSD*; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=OpenBSD - -[Mozilla/5.0 (X11; *SunOS*; *rv:1.9*) Gecko/*] -Parent=Mozilla 1.9 -Platform=SunOS - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE Mac - -[IE Mac] -Parent=DefaultProperties -Browser=IE -Platform=MacPPC -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -JavaApplets=true -JavaScript=true -CssVersion=1 -supportsCSS=true - -[Mozilla/?.? (compatible; MSIE 4.0*; *Mac_PowerPC*] -Parent=IE Mac -Version=4.0 -MajorVer=4 -MinorVer=0 - -[Mozilla/?.? (compatible; MSIE 4.5*; *Mac_PowerPC*] -Parent=IE Mac -Version=4.5 -MajorVer=4 -MinorVer=5 - -[Mozilla/?.? (compatible; MSIE 5.0*; *Mac_PowerPC*] -Parent=IE Mac -Version=5.0 -MajorVer=5 -MinorVer=0 - -[Mozilla/?.? (compatible; MSIE 5.1*; *Mac_PowerPC*] -Parent=IE Mac -Version=5.1 -MajorVer=5 -MinorVer=1 - -[Mozilla/?.? (compatible; MSIE 5.2*; *Mac_PowerPC*] -Parent=IE Mac -Version=5.2 -MajorVer=5 -MinorVer=2 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; AOL 9.0/IE 5.5 - -[AOL 9.0/IE 5.5] -Parent=DefaultProperties -Browser=AOL -Version=5.5 -MajorVer=5 -MinorVer=5 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true -AOL=true -aolVersion=9.0 -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/?.* (?compatible; *MSIE 5.5; *AOL 9.0*)*] -Parent=AOL 9.0/IE 5.5 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Win 9x 4.90*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 95*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -CssVersion=2 -supportsCSS=true - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98; Win 9x 4.90*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 4.0*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.0*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.0*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.0*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.0*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.0*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.01*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.01*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.01*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.01*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.01*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.1*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.1*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.1*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.2*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.2*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 5.2*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 6.0*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 6.0*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 6.0*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 6.0*.NET CLR 2*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 5.5; *AOL 9.0; *Windows NT 6.0*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 5.5 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; AOL 9.0/IE 6.0 - -[AOL 9.0/IE 6.0] -Parent=DefaultProperties -Browser=AOL -Version=6.0 -MajorVer=6 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true -AOL=true -aolVersion=9.0 -ecmascriptversion=1.3 -w3cdomversion=1.0 - -[Mozilla/?.* (?compatible; *MSIE 6.0; *AOL 9.0*)*] -Parent=AOL 9.0/IE 6.0 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Win 9x 4.90*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 95*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -CssVersion=2 -supportsCSS=true - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98; Win 9x 4.90*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 4.0*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.0*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.01*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 6.0*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 2*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 6.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 6.0 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; AOL 9.0/IE 7.0 - -[AOL 9.0/IE 7.0] -Parent=DefaultProperties -Browser=AOL -Version=7.0 -MajorVer=7 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true -AOL=true -aolVersion=9.0 - -[Mozilla/?.* (?compatible; *MSIE 7.0; *AOL 9.0*)*] -Parent=AOL 9.0/IE 7.0 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Win 9x 4.90*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 95*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -CssVersion=2 -supportsCSS=true - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98; Win 9x 4.90*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows 98; Win 9x 4.90*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 4.0*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.0*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.0*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.01*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.01*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.1*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 5.2*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 6.0*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 1*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 2*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 7.0; *AOL 9.0; *Windows NT 6.0*.NET CLR 2*.NET CLR 1*)*] -Parent=AOL 9.0/IE 7.0 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Avant Browser - -[Avant Browser] -Parent=DefaultProperties -Browser=Avant Browser -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true - -[Advanced Browser (http://www.avantbrowser.com)] -Parent=Avant Browser - -[Avant Browser*] -Parent=Avant Browser - -[Avant Browser/*] -Parent=Avant Browser - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 4.01 - -[IE 4.01] -Parent=DefaultProperties -Browser=IE -Version=4.01 -MajorVer=4 -MinorVer=01 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (?compatible; *MSIE 4.01*)*] -Parent=IE 4.01 - -[Mozilla/4.0 (compatible; MSIE 4.01; *Windows 95*)*] -Parent=IE 4.01 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 4.01; *Windows 98*)*] -Parent=IE 4.01 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 4.01; *Windows 98; Win 9x 4.90;*)*] -Parent=IE 4.01 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 4.01; *Windows NT 4.0*)*] -Parent=IE 4.01 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 4.01; *Windows NT 5.0*)*] -Parent=IE 4.01 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 4.01; *Windows NT 5.01*)*] -Parent=IE 4.01 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 4.01; Windows NT)] -Parent=IE 4.01 -Platform=WinNT - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 5.0 - -[IE 5.0] -Parent=DefaultProperties -Browser=IE -Version=5.0 -MajorVer=5 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (?compatible; *MSIE 5.0*)*] -Parent=IE 5.0 - -[Mozilla/4.0 (compatible; MSIE 5.0; *Windows 95*)*] -Parent=IE 5.0 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 5.0; *Windows 98*)*] -Parent=IE 5.0 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 5.0; *Windows 98; Win 9x 4.90;*)*] -Parent=IE 5.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.0; *Windows NT 4.0*)*] -Parent=IE 5.0 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 5.0; *Windows NT 5.0*)*] -Parent=IE 5.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.0; *Windows NT 5.01*)*] -Parent=IE 5.0 -Platform=Win2000 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 5.01 - -[IE 5.01] -Parent=DefaultProperties -Browser=IE -Version=5.01 -MajorVer=5 -MinorVer=01 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true - -[Mozilla/?.* (?compatible; *MSIE 5.01*)*] -Parent=IE 5.01 - -[Mozilla/4.0 (compatible; MSIE 5.01; *Windows 95*)*] -Parent=IE 5.01 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 5.01; *Windows 98*)*] -Parent=IE 5.01 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 5.01; *Windows 98; Win 9x 4.90;*)*] -Parent=IE 5.01 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.01; *Windows NT 4.0*)*] -Parent=IE 5.01 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 5.01; *Windows NT 5.0*)*] -Parent=IE 5.01 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.01; *Windows NT 5.01*)*] -Parent=IE 5.01 -Platform=Win2000 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 5.5 - -[IE 5.5] -Parent=DefaultProperties -Browser=IE -Version=5.5 -MajorVer=5 -MinorVer=5 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.2 -w3cdomversion=1.0 - -[Mozilla/?.* (?compatible; *MSIE 5.5*)*] -Parent=IE 5.5 - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows 95*)*] -Parent=IE 5.5 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows 98*)*] -Parent=IE 5.5 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows 98; Win 9x 4.90*)*] -Parent=IE 5.5 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows NT 4.0*)*] -Parent=IE 5.5 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows NT 5.0*)*] -Parent=IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows NT 5.01*)*] -Parent=IE 5.5 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows NT 5.1*)*] -Parent=IE 5.5 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 5.5; *Windows NT 5.2*)*] -Parent=IE 5.5 -Platform=Win2003 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 6.0 - -[IE 6.0] -Parent=DefaultProperties -Browser=IE -Version=6.0 -MajorVer=6 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.2 -w3cdomversion=1.0 -msdomversion=6.0 - -[Mozilla/?.* (?compatible; *MSIE 6.0*)*] -Parent=IE 6.0 - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows 95*)*] -Parent=IE 6.0 -Platform=Win95 - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows 98*)*] -Parent=IE 6.0 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows 98; Win 9x 4.90*)*] -Parent=IE 6.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 4.0*)*] -Parent=IE 6.0 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 5.0*)*] -Parent=IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 5.01*)*] -Parent=IE 6.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 5.1*)*] -Parent=IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 5.2*)*] -Parent=IE 6.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 5.2;*Win64;*)*] -Parent=IE 6.0 -Platform=WinXP -Win32=false -Win64=true - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 5.2;*WOW64;*)*] -Parent=IE 6.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 6.0; *Windows NT 6.0*)*] -Parent=IE 6.0 -Platform=WinVista - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 7.0 - -[IE 7.0] -Parent=DefaultProperties -Browser=IE -Version=7.0 -MajorVer=7 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=2 -supportsCSS=true -ecmascriptversion=1.2 -msdomversion=7.0 -w3cdomversion=1.0 - -[Mozilla/?.* (?compatible; *MSIE 7.0*)*] -Parent=IE 7.0 - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows 98*)*] -Parent=IE 7.0 -Platform=Win98 - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows 98; Win 9x 4.90;*)*] -Parent=IE 7.0 -Platform=WinME - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 4.0*)*] -Parent=IE 7.0 -Platform=WinNT - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 5.0*)*] -Parent=IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 5.01*)*] -Parent=IE 7.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 5.1*)*] -Parent=IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 5.2*)*] -Parent=IE 7.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 5.2;*Win64;*)*] -Parent=IE 7.0 -Platform=WinXP -Win32=false -Win64=true - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 5.2;*WOW64;*)*] -Parent=IE 7.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 6.0*)*] -Parent=IE 7.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 7.0; *Windows NT 6.1*)*] -Parent=IE 7.0 -Platform=Win7 - -[Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; *)*] -Parent=IE 7.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; IE 8.0 - -[IE 8.0] -Parent=DefaultProperties -Browser=IE -Version=8.0 -MajorVer=8 -Win32=true -Frames=true -IFrames=true -Tables=true -Cookies=true -BackgroundSounds=true -CDF=true -VBScript=true -JavaApplets=true -JavaScript=true -ActiveXControls=true -CssVersion=3 -supportsCSS=true -ecmascriptversion=1.2 -msdomversion=8.0 -w3cdomversion=1.0 - -[Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Trident/4.0*)*] -Parent=IE 8.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 8.0; Win32*)*] -Parent=IE 8.0 -Platform=Win32 - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.0*)*] -Parent=IE 8.0 -Platform=Win2000 - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1*)*] -Parent=IE 8.0 -Platform=WinXP - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.2*)*] -Parent=IE 8.0 -Platform=Win2003 - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0*)*] -Parent=IE 8.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0*)*] -Parent=IE 8.0 -Platform=WinVista - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Win64; x64; Trident/4.0*)*] -Parent=IE 8.0 -Platform=WinVista -Win32=false -Win64=true - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; WOW64; Trident/4.0*)*] -Parent=IE 8.0 -Platform=WinVista -Win64=false - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1*)*] -Parent=IE 8.0 -Platform=Win7 - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0*)*] -Parent=IE 8.0 -Platform=Win7 - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0*)*] -Parent=IE 8.0 -Platform=Win7 -Win32=false -Win64=true - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0*)*] -Parent=IE 8.0 -Platform=Win7 -Win64=false - -[Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 7.0; Trident/4.0*)*] -Parent=IE 8.0 -Platform=Win7 - -;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Default Browser - -[*] -Browser=Default Browser -Version=0 -MajorVer=0 -MinorVer=0 -Platform=unknown -Alpha=false -Beta=false -Win16=false -Win32=false -Win64=false -Frames=true -IFrames=false -Tables=true -Cookies=false -BackgroundSounds=false -CDF=false -VBScript=false -JavaApplets=false -JavaScript=false -ActiveXControls=false -Stripper=false -isBanned=false -isMobileDevice=false -isSyndicationReader=false -Crawler=false -CssVersion=0 -supportsCSS=false -AOL=false -aolVersion=0 -AuthenticodeUpdate=0 -CSS=0 -WAP=false -netCLR=false -ClrVersion=0 -ECMAScriptVersion=0.0 -W3CDOMVersion=0.0 diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/config b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/config deleted file mode 100644 index 240eb73e2..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/config +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/mconfig/config.xml b/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/mconfig/config.xml deleted file mode 100644 index a3df3b5e9..000000000 --- a/Builds/test3.app/Contents/MonoBleedingEdge/etc/mono/mconfig/config.xml +++ /dev/null @@ -1,616 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
-
-
- - - - -]]> - - - - - - -
-
-
- - - - - -
- -
-
-
-
- - - -]]> - - - - - -
-
-
-
-
-
-
- - - - - -]]> - - - - - -
-
-
-
-
-
-
- - - - - - - - -]]> - - - - - -
-
-
-
-
- - - - - - - -]]> - - - - - -
-
-
-
-
- - - - -]]> - - - - - -
-
-
-
-
- - - - - - - - - - - - -]]> - - - - - -
-
-
- - - - - - - - - - - - - -]]> - - - - - -
-
-
- - - - - - - - - - - - - - - - - -]]> - - - - - - - -
-
-
- - - - - -
- -
-
-
- - - - ]]> - - - - - -
-
-
-
-
-
-
- - - - -]]> - - - - - -
-
-
-
-
-
-
- - - - -]]> - - - - - -
-
-
-
-
- - - - - - - -]]> - - - - - -
-
-
-
-
- - - - -]]> - - - - - -
-
-
- - - - - - - - - - - - - - - -]]> - - - - - -
-
-
- - - - - - - - - - - - - -]]> - - - - - - -
-
-
-
-
-
-
- - - - -]]> - - - - - -
-
-
-
-
-
-
- - - - - - - - - - - -]]> - - - - - -
-
-
-
-
- - - - -]]> - - - - - - - - ]]> - - - - - - ]]> - - - - - - ]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - - -]]> - - - - -
-
-
-
-
-
- - diff --git a/Builds/test3.app/Contents/PlugIns/lib_burst_generated.bundle b/Builds/test3.app/Contents/PlugIns/lib_burst_generated.bundle deleted file mode 100755 index 8e1854861..000000000 Binary files a/Builds/test3.app/Contents/PlugIns/lib_burst_generated.bundle and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Assembly-CSharp-firstpass.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Assembly-CSharp-firstpass.dll deleted file mode 100644 index aabf629a3..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Assembly-CSharp-firstpass.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Assembly-CSharp.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Assembly-CSharp.dll deleted file mode 100644 index e85c3ed8d..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Assembly-CSharp.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/DOTween.dll b/Builds/test3.app/Contents/Resources/Data/Managed/DOTween.dll deleted file mode 100644 index 4c0bb1061..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/DOTween.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Mono.Security.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Mono.Security.dll deleted file mode 100644 index a9377a7a1..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Mono.Security.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Newtonsoft.Json.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Newtonsoft.Json.dll deleted file mode 100644 index 8b81aab3b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Newtonsoft.Json.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.ComponentModel.Composition.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.ComponentModel.Composition.dll deleted file mode 100644 index 0f6c13a1b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.ComponentModel.Composition.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Configuration.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Configuration.dll deleted file mode 100644 index 7f51fd568..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Configuration.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Core.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Core.dll deleted file mode 100644 index 14abc6413..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Core.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Data.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Data.dll deleted file mode 100644 index 757cc1f29..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Data.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Diagnostics.StackTrace.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Diagnostics.StackTrace.dll deleted file mode 100644 index a9bdde431..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Diagnostics.StackTrace.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Drawing.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Drawing.dll deleted file mode 100644 index 52c49a6d9..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Drawing.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.EnterpriseServices.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.EnterpriseServices.dll deleted file mode 100644 index 397edb2a8..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.EnterpriseServices.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Globalization.Extensions.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Globalization.Extensions.dll deleted file mode 100644 index c5a425f70..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Globalization.Extensions.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.IO.Compression.FileSystem.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.IO.Compression.FileSystem.dll deleted file mode 100644 index 92feb6732..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.IO.Compression.FileSystem.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.IO.Compression.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.IO.Compression.dll deleted file mode 100644 index 8e3b271a9..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.IO.Compression.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Net.Http.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Net.Http.dll deleted file mode 100644 index a75071494..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Net.Http.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Numerics.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Numerics.dll deleted file mode 100644 index bc957a741..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Numerics.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.Serialization.Xml.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.Serialization.Xml.dll deleted file mode 100644 index c85de35b9..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.Serialization.Xml.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.Serialization.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.Serialization.dll deleted file mode 100644 index e9851b7d5..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.Serialization.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.dll deleted file mode 100644 index 795ec0cf1..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Runtime.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.ServiceModel.Internals.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.ServiceModel.Internals.dll deleted file mode 100644 index 7c9e4f984..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.ServiceModel.Internals.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Transactions.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Transactions.dll deleted file mode 100644 index 618d4e8dd..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Transactions.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.Linq.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.Linq.dll deleted file mode 100644 index 3b652f708..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.Linq.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.XPath.XDocument.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.XPath.XDocument.dll deleted file mode 100644 index b61d96405..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.XPath.XDocument.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.dll deleted file mode 100644 index ced51c67f..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.Xml.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/System.dll b/Builds/test3.app/Contents/Resources/Data/Managed/System.dll deleted file mode 100644 index d189a06b4..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/System.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Burst.Unsafe.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Burst.Unsafe.dll deleted file mode 100644 index ac36cfa2c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Burst.Unsafe.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Burst.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Burst.dll deleted file mode 100644 index 8348d16fc..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Burst.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Collections.LowLevel.ILSupport.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Collections.LowLevel.ILSupport.dll deleted file mode 100644 index a0248a9b4..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Collections.LowLevel.ILSupport.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Collections.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Collections.dll deleted file mode 100644 index cd87afe8b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Collections.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Deformations.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Deformations.dll deleted file mode 100644 index a46d6a5a8..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Deformations.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Entities.Hybrid.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Entities.Hybrid.dll deleted file mode 100644 index 1bb430035..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Entities.Hybrid.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Entities.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Entities.dll deleted file mode 100644 index ba8c9fbca..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Entities.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.InputSystem.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.InputSystem.dll deleted file mode 100644 index 8a2dc8a8c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.InputSystem.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.InternalAPIEngineBridge.012.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.InternalAPIEngineBridge.012.dll deleted file mode 100644 index 1d458dd8e..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.InternalAPIEngineBridge.012.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Jobs.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Jobs.dll deleted file mode 100644 index 421fe4c30..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Jobs.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.Extensions.Hybrid.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.Extensions.Hybrid.dll deleted file mode 100644 index 8448f1eaa..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.Extensions.Hybrid.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.Extensions.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.Extensions.dll deleted file mode 100644 index 523d62c52..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.Extensions.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.dll deleted file mode 100644 index 695cbce06..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Mathematics.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Platforms.Common.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Platforms.Common.dll deleted file mode 100644 index 9b9b09e62..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Platforms.Common.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.Reflection.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.Reflection.dll deleted file mode 100644 index 40e25917c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.Reflection.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.UI.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.UI.dll deleted file mode 100644 index b04d2741b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.UI.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.dll deleted file mode 100644 index 02e6619ed..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Properties.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipeline.Universal.ShaderLibrary.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipeline.Universal.ShaderLibrary.dll deleted file mode 100644 index 041c73e8f..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipeline.Universal.ShaderLibrary.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Core.Runtime.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Core.Runtime.dll deleted file mode 100644 index 7263674ec..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Core.Runtime.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Core.ShaderLibrary.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Core.ShaderLibrary.dll deleted file mode 100644 index 2fccc9de4..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Core.ShaderLibrary.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll deleted file mode 100644 index 0d11a7d31..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Universal.Runtime.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Universal.Runtime.dll deleted file mode 100644 index 256569812..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Universal.Runtime.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Universal.Shaders.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Universal.Shaders.dll deleted file mode 100644 index 01861951b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.RenderPipelines.Universal.Shaders.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Scenes.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Scenes.dll deleted file mode 100644 index 6a0795119..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Scenes.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.ScriptableBuildPipeline.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.ScriptableBuildPipeline.dll deleted file mode 100644 index 9612beb28..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.ScriptableBuildPipeline.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Serialization.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Serialization.dll deleted file mode 100644 index bb256b034..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Serialization.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Subsystem.Registration.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Subsystem.Registration.dll deleted file mode 100644 index 070c90412..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Subsystem.Registration.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.TextMeshPro.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.TextMeshPro.dll deleted file mode 100644 index ebbb4e677..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.TextMeshPro.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Timeline.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Timeline.dll deleted file mode 100644 index 633f08c83..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Timeline.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Transforms.Hybrid.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Transforms.Hybrid.dll deleted file mode 100644 index ba03e485b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Transforms.Hybrid.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Transforms.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Transforms.dll deleted file mode 100644 index ea052eb39..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.Transforms.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Interaction.Toolkit.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Interaction.Toolkit.dll deleted file mode 100644 index 318570c0d..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Interaction.Toolkit.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Management.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Management.dll deleted file mode 100644 index fd4113a57..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Management.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Oculus.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Oculus.dll deleted file mode 100644 index e008c74c7..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.Oculus.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.ConformanceAutomation.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.ConformanceAutomation.dll deleted file mode 100644 index 664844dda..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.ConformanceAutomation.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.MockDriver.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.MockDriver.dll deleted file mode 100644 index bed9ea1aa..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.MockDriver.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.MockRuntime.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.MockRuntime.dll deleted file mode 100644 index 839502024..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.MockRuntime.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.RuntimeDebugger.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.RuntimeDebugger.dll deleted file mode 100644 index c20c4d9a3..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.Features.RuntimeDebugger.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.TestHelpers.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.TestHelpers.dll deleted file mode 100644 index 3d2178204..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.TestHelpers.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.dll b/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.dll deleted file mode 100644 index 40225928f..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/Unity.XR.OpenXR.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AIModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AIModule.dll deleted file mode 100644 index b30bceb53..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AIModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ARModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ARModule.dll deleted file mode 100644 index 10fe1564d..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ARModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AccessibilityModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AccessibilityModule.dll deleted file mode 100644 index 247fbec62..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AccessibilityModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AndroidJNIModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AndroidJNIModule.dll deleted file mode 100644 index 8edf672eb..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AndroidJNIModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AnimationModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AnimationModule.dll deleted file mode 100644 index d1baa3508..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AnimationModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AssetBundleModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AssetBundleModule.dll deleted file mode 100644 index 218007ade..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AssetBundleModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AudioModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AudioModule.dll deleted file mode 100644 index 114cadf4e..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.AudioModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClothModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClothModule.dll deleted file mode 100644 index d57b34134..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClothModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClusterInputModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClusterInputModule.dll deleted file mode 100644 index 2e2d5b78c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClusterInputModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClusterRendererModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClusterRendererModule.dll deleted file mode 100644 index 7148a8893..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ClusterRendererModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.CoreModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.CoreModule.dll deleted file mode 100644 index 491285adf..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.CoreModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.CrashReportingModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.CrashReportingModule.dll deleted file mode 100644 index 1a578f8dd..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.CrashReportingModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.DSPGraphModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.DSPGraphModule.dll deleted file mode 100644 index f1d2bd103..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.DSPGraphModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.DirectorModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.DirectorModule.dll deleted file mode 100644 index 3de9923a5..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.DirectorModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GIModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GIModule.dll deleted file mode 100644 index 1559cb81d..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GIModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GameCenterModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GameCenterModule.dll deleted file mode 100644 index 01a396250..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GameCenterModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GridModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GridModule.dll deleted file mode 100644 index 058e92277..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.GridModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.HotReloadModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.HotReloadModule.dll deleted file mode 100644 index bcc42b341..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.HotReloadModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.IMGUIModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.IMGUIModule.dll deleted file mode 100644 index f14dab00e..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.IMGUIModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ImageConversionModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ImageConversionModule.dll deleted file mode 100644 index 0b88e2080..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ImageConversionModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.InputLegacyModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.InputLegacyModule.dll deleted file mode 100644 index 1728d9717..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.InputLegacyModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.InputModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.InputModule.dll deleted file mode 100644 index f5d09a4b9..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.InputModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.JSONSerializeModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.JSONSerializeModule.dll deleted file mode 100644 index 5950e17ad..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.JSONSerializeModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.LocalizationModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.LocalizationModule.dll deleted file mode 100644 index 5a1e15b74..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.LocalizationModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ParticleSystemModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ParticleSystemModule.dll deleted file mode 100644 index 62a0c302d..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ParticleSystemModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.PerformanceReportingModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.PerformanceReportingModule.dll deleted file mode 100644 index 98afb6852..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.PerformanceReportingModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.Physics2DModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.Physics2DModule.dll deleted file mode 100644 index f1784b488..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.Physics2DModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.PhysicsModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.PhysicsModule.dll deleted file mode 100644 index f57fac001..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.PhysicsModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ProfilerModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ProfilerModule.dll deleted file mode 100644 index 96450ff7b..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ProfilerModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll deleted file mode 100644 index ea1a9a012..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ScreenCaptureModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ScreenCaptureModule.dll deleted file mode 100644 index b7f94b5fd..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.ScreenCaptureModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SharedInternalsModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SharedInternalsModule.dll deleted file mode 100644 index 3ac6dff5f..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SharedInternalsModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpatialTracking.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpatialTracking.dll deleted file mode 100644 index b553b70c7..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpatialTracking.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpriteMaskModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpriteMaskModule.dll deleted file mode 100644 index 53ecb0c5e..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpriteMaskModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpriteShapeModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpriteShapeModule.dll deleted file mode 100644 index 1180cf618..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SpriteShapeModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.StreamingModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.StreamingModule.dll deleted file mode 100644 index d076d1c14..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.StreamingModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SubstanceModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SubstanceModule.dll deleted file mode 100644 index 6facd0272..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SubstanceModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SubsystemsModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SubsystemsModule.dll deleted file mode 100644 index 20c58d025..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.SubsystemsModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TLSModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TLSModule.dll deleted file mode 100644 index 0b1fdec86..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TLSModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TerrainModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TerrainModule.dll deleted file mode 100644 index 2528d9e5c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TerrainModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TerrainPhysicsModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TerrainPhysicsModule.dll deleted file mode 100644 index f7ba2d1fc..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TerrainPhysicsModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TextCoreModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TextCoreModule.dll deleted file mode 100644 index 347c7a26a..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TextCoreModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TextRenderingModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TextRenderingModule.dll deleted file mode 100644 index 0ee6ddecd..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TextRenderingModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TilemapModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TilemapModule.dll deleted file mode 100644 index be3737bed..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.TilemapModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UI.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UI.dll deleted file mode 100644 index 563833fcc..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UI.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIElementsModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIElementsModule.dll deleted file mode 100644 index 3773e5160..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIElementsModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIElementsNativeModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIElementsNativeModule.dll deleted file mode 100644 index 5b35cf3e7..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIElementsNativeModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIModule.dll deleted file mode 100644 index 3725c82dd..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UIModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UNETModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UNETModule.dll deleted file mode 100644 index 6a547233c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UNETModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UmbraModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UmbraModule.dll deleted file mode 100644 index 699e32614..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UmbraModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityAnalyticsModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityAnalyticsModule.dll deleted file mode 100644 index cb1640c6c..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityAnalyticsModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityConnectModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityConnectModule.dll deleted file mode 100644 index 697bddc81..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityConnectModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityCurlModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityCurlModule.dll deleted file mode 100644 index 687f44994..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityCurlModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityTestProtocolModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityTestProtocolModule.dll deleted file mode 100644 index 72f2d2f76..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityTestProtocolModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll deleted file mode 100644 index 0ed1a7b2e..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll deleted file mode 100644 index 39270e1ee..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestModule.dll deleted file mode 100644 index 2a4a83864..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll deleted file mode 100644 index 99272c03a..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll deleted file mode 100644 index 4f4d096e2..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VFXModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VFXModule.dll deleted file mode 100644 index 272278981..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VFXModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VRModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VRModule.dll deleted file mode 100644 index 88ee9b39d..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VRModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VehiclesModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VehiclesModule.dll deleted file mode 100644 index 95d31a3b5..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VehiclesModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VideoModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VideoModule.dll deleted file mode 100644 index 794321db9..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VideoModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VirtualTexturingModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VirtualTexturingModule.dll deleted file mode 100644 index 0cd152ddb..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.VirtualTexturingModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.WindModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.WindModule.dll deleted file mode 100644 index 9f3ba49ca..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.WindModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll deleted file mode 100644 index 7d146be8a..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.XRModule.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.XRModule.dll deleted file mode 100644 index c12c3d854..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.XRModule.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.dll b/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.dll deleted file mode 100644 index c1d0125fe..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/UnityEngine.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/mscorlib.dll b/Builds/test3.app/Contents/Resources/Data/Managed/mscorlib.dll deleted file mode 100644 index ba32de682..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/mscorlib.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Managed/netstandard.dll b/Builds/test3.app/Contents/Resources/Data/Managed/netstandard.dll deleted file mode 100644 index 250cf8173..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Managed/netstandard.dll and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/Resources/unity_builtin_extra b/Builds/test3.app/Contents/Resources/Data/Resources/unity_builtin_extra deleted file mode 100644 index 3dadd4625..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/Resources/unity_builtin_extra and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/RuntimeInitializeOnLoads.json b/Builds/test3.app/Contents/Resources/Data/RuntimeInitializeOnLoads.json deleted file mode 100644 index 68e93579d..000000000 --- a/Builds/test3.app/Contents/Resources/Data/RuntimeInitializeOnLoads.json +++ /dev/null @@ -1 +0,0 @@ -{"root":[{"assemblyName":"Unity.Properties","nameSpace":"Unity.Properties","className":"DefaultPropertyBagInitializer","methodName":"Initialize","loadTypes":0,"isUnityClass":true},{"assemblyName":"Unity.Properties.Reflection","nameSpace":"Unity.Properties.Reflection.Internal","className":"Registration","methodName":"Initialize","loadTypes":0,"isUnityClass":true},{"assemblyName":"Unity.InputSystem","nameSpace":"UnityEngine.InputSystem","className":"InputSystem","methodName":"RunInitializeInPlayer","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.Scenes","nameSpace":"Unity.Properties.Generated","className":"PropertyBagRegistry","methodName":"Initialize","loadTypes":2,"isUnityClass":true},{"assemblyName":"Unity.XR.Management","nameSpace":"UnityEngine.XR.Management","className":"XRGeneralSettings","methodName":"AttemptInitializeXRSDKOnLoad","loadTypes":2,"isUnityClass":true},{"assemblyName":"Unity.XR.Management","nameSpace":"UnityEngine.XR.Management","className":"XRGeneralSettings","methodName":"AttemptStartXRSDKOnBeforeSplashScreen","loadTypes":3,"isUnityClass":true},{"assemblyName":"Unity.Transforms","nameSpace":"","className":"__JobReflectionRegistrationOutput__3582838976","methodName":"EarlyInit","loadTypes":2,"isUnityClass":true},{"assemblyName":"Unity.RenderPipelines.Universal.Runtime","nameSpace":"UnityEngine.Rendering.Universal","className":"XRSystem","methodName":"XRSystemInit","loadTypes":3,"isUnityClass":true},{"assemblyName":"Unity.RenderPipelines.Core.Runtime","nameSpace":"UnityEngine.Rendering","className":"DebugUpdater","methodName":"RuntimeInit","loadTypes":0,"isUnityClass":true},{"assemblyName":"Unity.XR.Interaction.Toolkit","nameSpace":"UnityEngine.XR.Interaction.Toolkit.Inputs.Simulation","className":"SimulatedInputLayoutLoader","methodName":"Initialize","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.XR.Interaction.Toolkit","nameSpace":"UnityEngine.XR.Interaction.Toolkit.Inputs.Interactions","className":"SectorInteraction","methodName":"Initialize","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.XR.Interaction.Toolkit","nameSpace":"UnityEngine.XR.Interaction.Toolkit.Inputs.Composites","className":"Vector3FallbackComposite","methodName":"Initialize","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.XR.Interaction.Toolkit","nameSpace":"UnityEngine.XR.Interaction.Toolkit.Inputs.Composites","className":"QuaternionFallbackComposite","methodName":"Initialize","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.Entities","nameSpace":"Unity.Entities","className":"DefaultWorldInitialization","methodName":"CleanupWorldBeforeSceneLoad","loadTypes":4,"isUnityClass":true},{"assemblyName":"Unity.Entities","nameSpace":"","className":"__JobReflectionRegistrationOutput__2052323622","methodName":"EarlyInit","loadTypes":2,"isUnityClass":true},{"assemblyName":"Unity.Entities","nameSpace":"","className":"__UnmanagedPostProcessorOutput__2052323622","methodName":"EarlyInit","loadTypes":2,"isUnityClass":true},{"assemblyName":"Unity.Entities","nameSpace":"Unity.Properties.Generated","className":"PropertyBagRegistry","methodName":"Initialize","loadTypes":2,"isUnityClass":true},{"assemblyName":"Unity.Entities.Hybrid","nameSpace":"Unity.Entities","className":"AutomaticWorldBootstrap","methodName":"Initialize","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.Entities.Hybrid","nameSpace":"Unity.Entities","className":"AttachToEntityClonerInjection","methodName":"Initialize","loadTypes":1,"isUnityClass":true},{"assemblyName":"Unity.Entities.Hybrid","nameSpace":"Unity.Properties.Generated","className":"PropertyBagRegistry","methodName":"Initialize","loadTypes":2,"isUnityClass":true}]} diff --git a/Builds/test3.app/Contents/Resources/Data/ScriptingAssemblies.json b/Builds/test3.app/Contents/Resources/Data/ScriptingAssemblies.json deleted file mode 100644 index 9a8d9d80d..000000000 --- a/Builds/test3.app/Contents/Resources/Data/ScriptingAssemblies.json +++ /dev/null @@ -1 +0,0 @@ -{"names":["UnityEngine.dll","UnityEngine.AIModule.dll","UnityEngine.ARModule.dll","UnityEngine.AccessibilityModule.dll","UnityEngine.AndroidJNIModule.dll","UnityEngine.AnimationModule.dll","UnityEngine.AssetBundleModule.dll","UnityEngine.AudioModule.dll","UnityEngine.ClothModule.dll","UnityEngine.ClusterInputModule.dll","UnityEngine.ClusterRendererModule.dll","UnityEngine.CoreModule.dll","UnityEngine.CrashReportingModule.dll","UnityEngine.DSPGraphModule.dll","UnityEngine.DirectorModule.dll","UnityEngine.GIModule.dll","UnityEngine.GameCenterModule.dll","UnityEngine.GridModule.dll","UnityEngine.HotReloadModule.dll","UnityEngine.IMGUIModule.dll","UnityEngine.ImageConversionModule.dll","UnityEngine.InputModule.dll","UnityEngine.InputLegacyModule.dll","UnityEngine.JSONSerializeModule.dll","UnityEngine.LocalizationModule.dll","UnityEngine.ParticleSystemModule.dll","UnityEngine.PerformanceReportingModule.dll","UnityEngine.PhysicsModule.dll","UnityEngine.Physics2DModule.dll","UnityEngine.ProfilerModule.dll","UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll","UnityEngine.ScreenCaptureModule.dll","UnityEngine.SharedInternalsModule.dll","UnityEngine.SpriteMaskModule.dll","UnityEngine.SpriteShapeModule.dll","UnityEngine.StreamingModule.dll","UnityEngine.SubstanceModule.dll","UnityEngine.SubsystemsModule.dll","UnityEngine.TLSModule.dll","UnityEngine.TerrainModule.dll","UnityEngine.TerrainPhysicsModule.dll","UnityEngine.TextCoreModule.dll","UnityEngine.TextRenderingModule.dll","UnityEngine.TilemapModule.dll","UnityEngine.UIModule.dll","UnityEngine.UIElementsModule.dll","UnityEngine.UIElementsNativeModule.dll","UnityEngine.UNETModule.dll","UnityEngine.UmbraModule.dll","UnityEngine.UnityAnalyticsModule.dll","UnityEngine.UnityConnectModule.dll","UnityEngine.UnityCurlModule.dll","UnityEngine.UnityTestProtocolModule.dll","UnityEngine.UnityWebRequestModule.dll","UnityEngine.UnityWebRequestAssetBundleModule.dll","UnityEngine.UnityWebRequestAudioModule.dll","UnityEngine.UnityWebRequestTextureModule.dll","UnityEngine.UnityWebRequestWWWModule.dll","UnityEngine.VFXModule.dll","UnityEngine.VRModule.dll","UnityEngine.VehiclesModule.dll","UnityEngine.VideoModule.dll","UnityEngine.VirtualTexturingModule.dll","UnityEngine.WindModule.dll","UnityEngine.XRModule.dll","Assembly-CSharp-firstpass.dll","Assembly-CSharp.dll","Unity.Transforms.Hybrid.dll","Unity.Properties.dll","Unity.Serialization.dll","Unity.RenderPipelines.Universal.Shaders.dll","Unity.Properties.Reflection.dll","Unity.InputSystem.dll","Unity.RenderPipelines.Core.ShaderLibrary.dll","UnityEngine.UI.dll","UnityEngine.SpatialTracking.dll","Unity.Scenes.dll","Unity.RenderPipeline.Universal.ShaderLibrary.dll","Unity.Mathematics.Extensions.dll","Unity.XR.Management.dll","Unity.Transforms.dll","Unity.XR.OpenXR.Features.RuntimeDebugger.dll","Unity.Collections.dll","Unity.Platforms.Common.dll","Unity.XR.OpenXR.Features.MockDriver.dll","Unity.Mathematics.Extensions.Hybrid.dll","Unity.RenderPipelines.Universal.Runtime.dll","Unity.Timeline.dll","Unity.TextMeshPro.dll","Unity.XR.OpenXR.Features.MockRuntime.dll","Unity.RenderPipelines.Core.Runtime.dll","Unity.XR.Interaction.Toolkit.dll","Unity.Subsystem.Registration.dll","Unity.Entities.dll","Unity.Entities.Hybrid.dll","Unity.InternalAPIEngineBridge.012.dll","Unity.Mathematics.dll","Unity.XR.OpenXR.TestHelpers.dll","Unity.Burst.dll","UnityEngine.XR.LegacyInputHelpers.dll","Unity.Jobs.dll","Unity.Deformations.dll","Unity.Properties.UI.dll","Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll","Unity.ScriptableBuildPipeline.dll","Unity.XR.OpenXR.dll","Unity.XR.OpenXR.Features.ConformanceAutomation.dll","Unity.XR.Oculus.dll","Newtonsoft.Json.dll","Unity.Collections.LowLevel.ILSupport.dll","DOTween.dll","Unity.Burst.Unsafe.dll"],"types":[2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16]} \ No newline at end of file diff --git a/Builds/test3.app/Contents/Resources/Data/UnitySubsystems/OculusXRPlugin/UnitySubsystemsManifest.json b/Builds/test3.app/Contents/Resources/Data/UnitySubsystems/OculusXRPlugin/UnitySubsystemsManifest.json deleted file mode 100644 index 92e58250f..000000000 --- a/Builds/test3.app/Contents/Resources/Data/UnitySubsystems/OculusXRPlugin/UnitySubsystemsManifest.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "OculusXRPlugin", - "version": "1.0.0-preview", - "libraryName": "OculusXRPlugin", - - "displays": [ - { - "id": "oculus display", - "disablesLegacyVr" : true, - "supportedMirrorBlitReservedModes" : ["leftEye","rightEye", "sideBySide","occlusionMesh"] - } - ], - "inputs": [ - { - "id": "oculus input" - } - ] -} diff --git a/Builds/test3.app/Contents/Resources/Data/UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json b/Builds/test3.app/Contents/Resources/Data/UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json deleted file mode 100644 index e8fcb05c9..000000000 --- a/Builds/test3.app/Contents/Resources/Data/UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "OpenXR XR Plugin", - "version": "0.1.0-preview.1", - "libraryName": "UnityOpenXR", - "displays": [ - { - "id": "OpenXR Display" - } - ], - "inputs": [ - { - "id": "OpenXR Input" - } - ] -} diff --git a/Builds/test3.app/Contents/Resources/Data/app.info b/Builds/test3.app/Contents/Resources/Data/app.info deleted file mode 100644 index d6b161087..000000000 --- a/Builds/test3.app/Contents/Resources/Data/app.info +++ /dev/null @@ -1,2 +0,0 @@ -DefaultCompany -New Proton \ No newline at end of file diff --git a/Builds/test3.app/Contents/Resources/Data/boot.config b/Builds/test3.app/Contents/Resources/Data/boot.config deleted file mode 100644 index 990e50652..000000000 --- a/Builds/test3.app/Contents/Resources/Data/boot.config +++ /dev/null @@ -1,3 +0,0 @@ -wait-for-native-debugger=0 -hdr-display-enabled=0 -gc-max-time-slice=3 diff --git a/Builds/test3.app/Contents/Resources/Data/globalgamemanagers b/Builds/test3.app/Contents/Resources/Data/globalgamemanagers deleted file mode 100644 index 9e7550ff4..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/globalgamemanagers and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/globalgamemanagers.assets b/Builds/test3.app/Contents/Resources/Data/globalgamemanagers.assets deleted file mode 100644 index 3f2e4ad07..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/globalgamemanagers.assets and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/globalgamemanagers.assets.resS b/Builds/test3.app/Contents/Resources/Data/globalgamemanagers.assets.resS deleted file mode 100644 index a051bc873..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/globalgamemanagers.assets.resS and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/level0 b/Builds/test3.app/Contents/Resources/Data/level0 deleted file mode 100644 index a92d6ae6f..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/level0 and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/level0.resS b/Builds/test3.app/Contents/Resources/Data/level0.resS deleted file mode 100644 index 782161efa..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/level0.resS and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/resources.assets b/Builds/test3.app/Contents/Resources/Data/resources.assets deleted file mode 100644 index 601d9e308..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/resources.assets and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/resources.assets.resS b/Builds/test3.app/Contents/Resources/Data/resources.assets.resS deleted file mode 100644 index 742519243..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/resources.assets.resS and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/sharedassets0.assets b/Builds/test3.app/Contents/Resources/Data/sharedassets0.assets deleted file mode 100644 index b765d33a3..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/sharedassets0.assets and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/Data/sharedassets0.assets.resS b/Builds/test3.app/Contents/Resources/Data/sharedassets0.assets.resS deleted file mode 100644 index 06737351f..000000000 Binary files a/Builds/test3.app/Contents/Resources/Data/sharedassets0.assets.resS and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/DefaultPreferences.plist b/Builds/test3.app/Contents/Resources/DefaultPreferences.plist deleted file mode 100644 index 9615aa377..000000000 --- a/Builds/test3.app/Contents/Resources/DefaultPreferences.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - -Screenmanager Is Fullscreen mode -True - - diff --git a/Builds/test3.app/Contents/Resources/MainMenu.nib/designable.nib b/Builds/test3.app/Contents/Resources/MainMenu.nib/designable.nib deleted file mode 100644 index f0cc9736a..000000000 --- a/Builds/test3.app/Contents/Resources/MainMenu.nib/designable.nib +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Builds/test3.app/Contents/Resources/MainMenu.nib/keyedobjects.nib b/Builds/test3.app/Contents/Resources/MainMenu.nib/keyedobjects.nib deleted file mode 100644 index 73f61fa47..000000000 Binary files a/Builds/test3.app/Contents/Resources/MainMenu.nib/keyedobjects.nib and /dev/null differ diff --git a/Builds/test3.app/Contents/Resources/unity default resources b/Builds/test3.app/Contents/Resources/unity default resources deleted file mode 100644 index 8c377f32c..000000000 Binary files a/Builds/test3.app/Contents/Resources/unity default resources and /dev/null differ diff --git a/Builds/test3.app/Contents/_CodeSignature/CodeResources b/Builds/test3.app/Contents/_CodeSignature/CodeResources deleted file mode 100644 index a9ce8f753..000000000 --- a/Builds/test3.app/Contents/_CodeSignature/CodeResources +++ /dev/null @@ -1,1995 +0,0 @@ - - - - - files - - Resources/Data/Managed/Assembly-CSharp-firstpass.dll - - vBwoxr8D7h8GIOYtHZkHVygL86U= - - Resources/Data/Managed/Assembly-CSharp.dll - - ptqfoO/euCMLVzAARHX7mYAf0bg= - - Resources/Data/Managed/DOTween.dll - - B2JbTMqNzU0/vxK556eGPlK711M= - - Resources/Data/Managed/Mono.Security.dll - - 6UAFjP9dxYTBHcbksRHoWj9soG4= - - Resources/Data/Managed/Newtonsoft.Json.dll - - 2PiSgN+ArTVGvJ8Wr1YmM9JgdjU= - - Resources/Data/Managed/System.ComponentModel.Composition.dll - - SCDsSnVY4Yqh6hUdIs8ZILgrI6c= - - Resources/Data/Managed/System.Configuration.dll - - f3AmC1CA9083V2qjkXSItwKPwlg= - - Resources/Data/Managed/System.Core.dll - - ysgRMu+KdswL7pnfpf/CCWwCuEg= - - Resources/Data/Managed/System.Data.dll - - WZa1x4JjGi5/J29fZggJxCGBCRY= - - Resources/Data/Managed/System.Diagnostics.StackTrace.dll - - bFzumljc9JP5TfJ7feF/Gb3wIeM= - - Resources/Data/Managed/System.Drawing.dll - - mpWFXd8BZjjnLDu6h0mCOWn82ec= - - Resources/Data/Managed/System.EnterpriseServices.dll - - PddIGGEEOJtGl/8Vyc1pghOx310= - - Resources/Data/Managed/System.Globalization.Extensions.dll - - RL/x8ksjX3QvhOTxUukS+gRS7J8= - - Resources/Data/Managed/System.IO.Compression.FileSystem.dll - - uAl5lJuBfSav4KiosDWPcE7OgrI= - - Resources/Data/Managed/System.IO.Compression.dll - - w647zVyNmvd8xXnh0zX4z20qJBU= - - Resources/Data/Managed/System.Net.Http.dll - - iKAnTxEJiRyRQvs8S14Efok0rmQ= - - Resources/Data/Managed/System.Numerics.dll - - 4nHOnv5OFAqKVIkgKZK/gPv0WYY= - - Resources/Data/Managed/System.Runtime.Serialization.Xml.dll - - 0srTtegP4BBWYTsNlCwXfMbQzKE= - - Resources/Data/Managed/System.Runtime.Serialization.dll - - PjiaN5ZWtXhrYByOzQpJ8Rmlyso= - - Resources/Data/Managed/System.Runtime.dll - - GcDI1G7JMReQ/preT9hV23f2YJ0= - - Resources/Data/Managed/System.ServiceModel.Internals.dll - - nv/tWv+kx1ZtRdn8QDE9E2msOeA= - - Resources/Data/Managed/System.Transactions.dll - - zhCHMvnuRMGOZDTIhrzXXhEum70= - - Resources/Data/Managed/System.Xml.Linq.dll - - J9mvsx21T69xo6eAJfcD5hBDubg= - - Resources/Data/Managed/System.Xml.XPath.XDocument.dll - - 0wN2Wbb5ERsTKBQWJfmarwrzX5Y= - - Resources/Data/Managed/System.Xml.dll - - ySnfKHrPWnJzl1Qe8sS4pZWuxg0= - - Resources/Data/Managed/System.dll - - h4JR3g9bcpVndbAYu0M7gIkIA9w= - - Resources/Data/Managed/Unity.Burst.Unsafe.dll - - OzTLs/dqc+LxRXHBBSAtxfFH2Ds= - - Resources/Data/Managed/Unity.Burst.dll - - mFM2zFLd51zzwqaeR2YRSWClR1g= - - Resources/Data/Managed/Unity.Collections.LowLevel.ILSupport.dll - - VPkecSmaxwC2B385o7B9J64tW+g= - - Resources/Data/Managed/Unity.Collections.dll - - U38682lPsR3UzAxJ/bzLd6Lm0DQ= - - Resources/Data/Managed/Unity.Deformations.dll - - hnvMUOLN52HgyaakYfhTPwDs0PM= - - Resources/Data/Managed/Unity.Entities.Hybrid.dll - - 6ZFhXz1J0QMrr+HuBIir0ebKwzc= - - Resources/Data/Managed/Unity.Entities.dll - - Ioo9RRqsB4Tlmnzp21cHpxxjJDo= - - Resources/Data/Managed/Unity.InputSystem.dll - - I2OiR2BkkjECthnsBdCBJQMYICM= - - Resources/Data/Managed/Unity.InternalAPIEngineBridge.012.dll - - HpHcHF38REAo/xjRCq/K6kLfGL4= - - Resources/Data/Managed/Unity.Jobs.dll - - TjQxL23PLZ1tK5Ek0ReSj1E12yk= - - Resources/Data/Managed/Unity.Mathematics.Extensions.Hybrid.dll - - XznoVeip25Zmhr5EUfPtMHLzn+U= - - Resources/Data/Managed/Unity.Mathematics.Extensions.dll - - YC7Zt8JFvWSF4wMYAt3AIGP7Z8U= - - Resources/Data/Managed/Unity.Mathematics.dll - - mfqxeABEIJsoBOPimWKupYe1apY= - - Resources/Data/Managed/Unity.Platforms.Common.dll - - At5MAtp32aK9P0W5/0gDPf2sOgM= - - Resources/Data/Managed/Unity.Properties.Reflection.dll - - OIhW0UU1oO/iP9h+NdrmSybURvg= - - Resources/Data/Managed/Unity.Properties.UI.dll - - /uXvvGU0MdQjZH73Sm1LzXhPiZI= - - Resources/Data/Managed/Unity.Properties.dll - - xP4DOE+uryU0gwscA7GCqrpcFJQ= - - Resources/Data/Managed/Unity.RenderPipeline.Universal.ShaderLibrary.dll - - isgaAxx4QNrQo6BCbJ0QqJyzzxI= - - Resources/Data/Managed/Unity.RenderPipelines.Core.Runtime.dll - - BWS2FQPpEVZqpJ+Qm9uQ+JwSeyk= - - Resources/Data/Managed/Unity.RenderPipelines.Core.ShaderLibrary.dll - - 3vSKj7WReMNCRKKhQbd0YuczVCc= - - Resources/Data/Managed/Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll - - 0esIHp5qyOzDTLvAmchOVY3nins= - - Resources/Data/Managed/Unity.RenderPipelines.Universal.Runtime.dll - - fFYWJuhwvqUq3RsJiMM6KqlPQzk= - - Resources/Data/Managed/Unity.RenderPipelines.Universal.Shaders.dll - - uIKzhK9jZ3Ndj1p7k4GQrq9C+rY= - - Resources/Data/Managed/Unity.Scenes.dll - - 0y3opub+VdtoFO013r/pdqwkPu8= - - Resources/Data/Managed/Unity.ScriptableBuildPipeline.dll - - CVwIXXnXb++oNkSvIyp2qyKs4MY= - - Resources/Data/Managed/Unity.Serialization.dll - - IRUzSJtouLeT1yXKZ+N50o8IiXM= - - Resources/Data/Managed/Unity.Subsystem.Registration.dll - - G2A8OO3ZWgYUrSIB0uy34CRrhvE= - - Resources/Data/Managed/Unity.TextMeshPro.dll - - 6s7SOEmazOKoNN6GBP1qTv+sXJQ= - - Resources/Data/Managed/Unity.Timeline.dll - - vsZWFy3QuXvSCFDCWpBihGgReEQ= - - Resources/Data/Managed/Unity.Transforms.Hybrid.dll - - JqE5LWj+JnyVM2D1wKlSBhX0lzk= - - Resources/Data/Managed/Unity.Transforms.dll - - vJfmdAaCifqwaOLx75IkI5Vmwqc= - - Resources/Data/Managed/Unity.XR.Interaction.Toolkit.dll - - MJZS4oymUpSIdwoORb4rO9K+gfs= - - Resources/Data/Managed/Unity.XR.Management.dll - - 19tgd5idJHrHkALzZ74osMrlLiE= - - Resources/Data/Managed/Unity.XR.Oculus.dll - - LlcayQFnxCvL09I6fteUSMq0Ous= - - Resources/Data/Managed/Unity.XR.OpenXR.Features.ConformanceAutomation.dll - - wwMMLFpInYi0TXcsy6hpOj/v+aU= - - Resources/Data/Managed/Unity.XR.OpenXR.Features.MockDriver.dll - - UozVOYMaTMNWajquZUsbeFNeEEs= - - Resources/Data/Managed/Unity.XR.OpenXR.Features.MockRuntime.dll - - 3sj8swKNI2zeXDymH4vCnZ46i2M= - - Resources/Data/Managed/Unity.XR.OpenXR.Features.RuntimeDebugger.dll - - cHp96UDwywxz5GpfluGszvKI150= - - Resources/Data/Managed/Unity.XR.OpenXR.TestHelpers.dll - - GHU+wEiXL+pL3D+Mf5mAKinVPi4= - - Resources/Data/Managed/Unity.XR.OpenXR.dll - - USnVS0CXpprsiwTVTIy1sFlUMPk= - - Resources/Data/Managed/UnityEngine.AIModule.dll - - bW15WPSkkS05M/YUf1QGCrAV350= - - Resources/Data/Managed/UnityEngine.ARModule.dll - - iPPlJ2Xpg+8jimbXLsRiJ7E0FRI= - - Resources/Data/Managed/UnityEngine.AccessibilityModule.dll - - KMYih1Tkr2VjDh6+qDRxK5tVEo0= - - Resources/Data/Managed/UnityEngine.AndroidJNIModule.dll - - Z1tPsTv3y+8NbOiSH/vWttrjPq0= - - Resources/Data/Managed/UnityEngine.AnimationModule.dll - - RBN/G/jR3DMspf4m63R9NaMnvw0= - - Resources/Data/Managed/UnityEngine.AssetBundleModule.dll - - sQBtNbhPWMevu/1+BObdQN04vOk= - - Resources/Data/Managed/UnityEngine.AudioModule.dll - - 6auOI99X5eEmQkHCLWCHecXEDHw= - - Resources/Data/Managed/UnityEngine.ClothModule.dll - - BhFRkUkyJh64IcPjrPFUId3wyLs= - - Resources/Data/Managed/UnityEngine.ClusterInputModule.dll - - SzdBh7YfT1gu9ALKTr00S4twTmM= - - Resources/Data/Managed/UnityEngine.ClusterRendererModule.dll - - rUYOS2MokSbcf8457YPR/2cehwk= - - Resources/Data/Managed/UnityEngine.CoreModule.dll - - MfLTGODHtdwVvO4dJrBsZ9h9Fgc= - - Resources/Data/Managed/UnityEngine.CrashReportingModule.dll - - N8prVzWDdzPO3NAyRw//MiwJIVM= - - Resources/Data/Managed/UnityEngine.DSPGraphModule.dll - - H+zA2TXuF2qEJ9DhUI3x37ElylQ= - - Resources/Data/Managed/UnityEngine.DirectorModule.dll - - abFAzTYLoKSC4ED4mdp1/s1Nlyc= - - Resources/Data/Managed/UnityEngine.GIModule.dll - - KEmaYy9EBeNv8oS23NG4GW0IcCw= - - Resources/Data/Managed/UnityEngine.GameCenterModule.dll - - VLkq1O+DFn7cGSGBo7HcwvWmg5c= - - Resources/Data/Managed/UnityEngine.GridModule.dll - - +wTauMSDdSRS7hiOG4UOhF4paXI= - - Resources/Data/Managed/UnityEngine.HotReloadModule.dll - - 8O9YGHPgljxeC1LVAruFNR+kDgs= - - Resources/Data/Managed/UnityEngine.IMGUIModule.dll - - XwyNttNp2lF3IZPLYBqyEQh8CFE= - - Resources/Data/Managed/UnityEngine.ImageConversionModule.dll - - kTwqAN8guYJJJyAehJg48q2nMns= - - Resources/Data/Managed/UnityEngine.InputLegacyModule.dll - - 5MZqIlvzDe411gPZsW7xu4GxVNQ= - - Resources/Data/Managed/UnityEngine.InputModule.dll - - 3Uzein52En7KQ2uv6Os0i9KhHkc= - - Resources/Data/Managed/UnityEngine.JSONSerializeModule.dll - - CRCRN2Pal9f7/jyDCnenAXgGElA= - - Resources/Data/Managed/UnityEngine.LocalizationModule.dll - - QpCyy9O4dXMfXKckPKT0FXfxcaM= - - Resources/Data/Managed/UnityEngine.ParticleSystemModule.dll - - go629p2I9mJU0DP7IHFb+a1m17k= - - Resources/Data/Managed/UnityEngine.PerformanceReportingModule.dll - - Y6qge8zEbwYXZIn3GMn87MBj4wY= - - Resources/Data/Managed/UnityEngine.Physics2DModule.dll - - dbl00CgMFQr7SXfxok2+uCviwVw= - - Resources/Data/Managed/UnityEngine.PhysicsModule.dll - - oDxzYrR4FA7VNLeibqbuyh7U3OU= - - Resources/Data/Managed/UnityEngine.ProfilerModule.dll - - 4SvHVzH588vxonWiVd9Xg4JJ8RA= - - Resources/Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll - - IgM1xv8RNtbxWTICocKErXWgfwc= - - Resources/Data/Managed/UnityEngine.ScreenCaptureModule.dll - - ug64mTmSQIc6jaOb1vaYTfEnZS4= - - Resources/Data/Managed/UnityEngine.SharedInternalsModule.dll - - w0LIZKog6qaJuK9YSpEiQag8eVE= - - Resources/Data/Managed/UnityEngine.SpatialTracking.dll - - dRCrszuw0FtS8GnpOAn8tqYrDQc= - - Resources/Data/Managed/UnityEngine.SpriteMaskModule.dll - - 1x3n/pQsSOJ04NV4tvgskYbt44I= - - Resources/Data/Managed/UnityEngine.SpriteShapeModule.dll - - 3+Z/RmJYnnWQHXIrqBkZBHapmUE= - - Resources/Data/Managed/UnityEngine.StreamingModule.dll - - YJkJRj7CNN08S81KHD1MtbLroYk= - - Resources/Data/Managed/UnityEngine.SubstanceModule.dll - - t/kLSQAsJBc8mo1qNsLP3pKr6BY= - - Resources/Data/Managed/UnityEngine.SubsystemsModule.dll - - UAlY+aab1i9vf7HvHUhcRa381ZI= - - Resources/Data/Managed/UnityEngine.TLSModule.dll - - ovElg6JEZv26kKV7yn8ts2lTAQg= - - Resources/Data/Managed/UnityEngine.TerrainModule.dll - - BLvCW7oWXtzlsi2bUl9LnjH3ucg= - - Resources/Data/Managed/UnityEngine.TerrainPhysicsModule.dll - - w/ZBvWwqR6EUzreUlRJnSXgmQaI= - - Resources/Data/Managed/UnityEngine.TextCoreModule.dll - - NciKX1o59oF2bbKM8tBnl3VGsDM= - - Resources/Data/Managed/UnityEngine.TextRenderingModule.dll - - W9qksuQSpSUeket9hKzWWh6nzQo= - - Resources/Data/Managed/UnityEngine.TilemapModule.dll - - TR7iNgE8FnZGpy/7OBaGnigYD4k= - - Resources/Data/Managed/UnityEngine.UI.dll - - OFUtOWtQ5aD263o3YI102P5NhKI= - - Resources/Data/Managed/UnityEngine.UIElementsModule.dll - - szzhI9Dj7StuU5tEA20zZ/eXHPk= - - Resources/Data/Managed/UnityEngine.UIElementsNativeModule.dll - - XK1QE5q34e+JSSNJ+R9Yw0Wv6gI= - - Resources/Data/Managed/UnityEngine.UIModule.dll - - Ht/tY19QdrsP9T8rdIDftv2Ww4A= - - Resources/Data/Managed/UnityEngine.UNETModule.dll - - 6fzh4o/AwBSetgLNE0qfGN7Nv/0= - - Resources/Data/Managed/UnityEngine.UmbraModule.dll - - Uu1awMDirblQL/ae+npAcaw+GaM= - - Resources/Data/Managed/UnityEngine.UnityAnalyticsModule.dll - - /YBse67euv6qd3O0OoMwdB1sXCY= - - Resources/Data/Managed/UnityEngine.UnityConnectModule.dll - - DW4XnQOAFbY17Ht8JlIhGwLYRSw= - - Resources/Data/Managed/UnityEngine.UnityCurlModule.dll - - jHQJ4a0uQR2ogKNlCHYU/LWJbow= - - Resources/Data/Managed/UnityEngine.UnityTestProtocolModule.dll - - LI32VcUMg5sTiX0Ao78PFDe+YAE= - - Resources/Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll - - Z/kirPsXMQKWJ2jJOygo2UH/3LM= - - Resources/Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll - - OvKmN/pESRiUjnX9s8Jp2Q6tNz8= - - Resources/Data/Managed/UnityEngine.UnityWebRequestModule.dll - - JW7eoGZqwyPYT+KQunc/vq2HmQM= - - Resources/Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll - - Y2/5fj6Bplxtye6tPBV8sZwyBwA= - - Resources/Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll - - u2J+sQT+WeB9+OVj/hk/RiIFguA= - - Resources/Data/Managed/UnityEngine.VFXModule.dll - - C24bSJO4wquVuD9w9QrOQe5oY8o= - - Resources/Data/Managed/UnityEngine.VRModule.dll - - RqDvbNTscGyBYUFDJJ0TxoEIdzw= - - Resources/Data/Managed/UnityEngine.VehiclesModule.dll - - /cRVwP8bHmMHRcXusCWnW9g32qg= - - Resources/Data/Managed/UnityEngine.VideoModule.dll - - 5rY3y5wrdUQYWT6195TqGoWORuM= - - Resources/Data/Managed/UnityEngine.VirtualTexturingModule.dll - - QriAT+2fmOt0Zt4LkBnoFpYzsvw= - - Resources/Data/Managed/UnityEngine.WindModule.dll - - 1UM9erTqBhTrd870V4ZZeqbx4Ys= - - Resources/Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll - - JUgpHrXD7MOF7F7L4ISGghdviAQ= - - Resources/Data/Managed/UnityEngine.XRModule.dll - - 9jXThjUKLC78u9WFpTTpUXt7xEI= - - Resources/Data/Managed/UnityEngine.dll - - w23wYw792CH7NcrrEA3YfMRMtIg= - - Resources/Data/Managed/mscorlib.dll - - j2hH233uKytdKw2uEta/qLZU0Yw= - - Resources/Data/Managed/netstandard.dll - - fIAi//MKRboElA67fvkkqRRgVuM= - - Resources/Data/Resources/unity_builtin_extra - - 4qbYe6Jw7BJCLwx/YMPSYhTq/GY= - - Resources/Data/RuntimeInitializeOnLoads.json - - gmAOMyBT9DHMmCgjgQRbDl4saIM= - - Resources/Data/ScriptingAssemblies.json - - Ty+3gKrxMe+FW5uCYqa9FFMu9a0= - - Resources/Data/UnitySubsystems/OculusXRPlugin/UnitySubsystemsManifest.json - - eF2X3PueR1fF2VQ9ADw50Za4NB4= - - Resources/Data/UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json - - bA8hctdniGibuyTecS61ywBsXG0= - - Resources/Data/app.info - - 9dRRZS/K4bUdGTFoz8jJt2rNVpc= - - Resources/Data/boot.config - - B1FkgzcuObgo+KTYpvPhPypgeyI= - - Resources/Data/globalgamemanagers - - /nxEocyjRlo6441t9pG10A7dr7k= - - Resources/Data/globalgamemanagers.assets - - BfWru3+x4q6DFf/nbqy2HAVyEmA= - - Resources/Data/globalgamemanagers.assets.resS - - /Wl2brX8mR1ToVqWggDxZeyDbq8= - - Resources/Data/level0 - - JExbx6m4r34GhXYA9kAJshoN2PA= - - Resources/Data/level0.resS - - UBLJDTULAp/YTIoyUlNdyTNN9VE= - - Resources/Data/resources.assets - - XeYUePDKrxL4VbFc7nwfYdxvZjA= - - Resources/Data/resources.assets.resS - - 88b1oPRzqvkSfMEtt+sWKZ2jxbk= - - Resources/Data/sharedassets0.assets - - LRXVq83ry5oPG8Gn7uAjP0ilARo= - - Resources/Data/sharedassets0.assets.resS - - fnvW/c9sI2mjnjEIvttEsLAZ7Mc= - - Resources/DefaultPreferences.plist - - VNbnYUGjCc5cH+QpbqXpbK3KbT8= - - Resources/MainMenu.nib/designable.nib - - 2IP4b7ubCnWV55RHCalaHT5vaGQ= - - Resources/MainMenu.nib/keyedobjects.nib - - 0pKU0tdl1Ei4v7c0cAAQPj+MzEY= - - Resources/unity default resources - - ihaPSqw90rBMZyfWQLCIhhYhw6c= - - - files2 - - Frameworks/UnityPlayer.dylib - - cdhash - - 2qm5cZEOAnBj8YeEvLyDaCKIcJg= - - requirement - cdhash H"daa9b971910e027063f18784bcbc836822887098" or cdhash H"46206b42646bb7ad79b1e27abf5615d5cf14e8e4" - - Frameworks/libMonoPosixHelper.dylib - - cdhash - - kG4mLGReL3KEDBq/N8ZwxnyKYJw= - - requirement - cdhash H"906e262c645e2f72840c1abf37c670c67c8a609c" or cdhash H"8003bef71c9e0caaa036280de9d0b0366b9a4f5c" - - Frameworks/libmonobdwgc-2.0.dylib - - cdhash - - mZUtV40mUo6+FSEgEK1yiMy+w4Q= - - requirement - cdhash H"99952d578d26528ebe15212010ad7288ccbec384" or cdhash H"26cffe38d1f601542a4df1f45e02dc27e9bb7969" - - MonoBleedingEdge/etc/mono/2.0/Browsers/Compat.browser - - hash2 - - ihCCBXrFaB3NTpwiftf7jrQqwWGJY7XeO2Vzndd+J0E= - - - MonoBleedingEdge/etc/mono/2.0/DefaultWsdlHelpGenerator.aspx - - hash2 - - dRhhBAtp6mOjgnUHt8janH9UncGBwcivS3ynjMl9cQo= - - - MonoBleedingEdge/etc/mono/2.0/machine.config - - hash2 - - 7cW89oXZMKYHvAl5JyYKP5rH9S3YCdtoFYKYv9k0t84= - - - MonoBleedingEdge/etc/mono/2.0/settings.map - - hash2 - - ScYWD51Ur0Jwo7Tpl/xKgwH3m54gcBGPpG3by7xE+aI= - - - MonoBleedingEdge/etc/mono/2.0/web.config - - hash2 - - PBp2pYSQdLQ30pdlaiCKO+9thLmCFTVCuceXBGxgHfw= - - - MonoBleedingEdge/etc/mono/4.0/Browsers/Compat.browser - - hash2 - - ihCCBXrFaB3NTpwiftf7jrQqwWGJY7XeO2Vzndd+J0E= - - - MonoBleedingEdge/etc/mono/4.0/DefaultWsdlHelpGenerator.aspx - - hash2 - - dRhhBAtp6mOjgnUHt8janH9UncGBwcivS3ynjMl9cQo= - - - MonoBleedingEdge/etc/mono/4.0/machine.config - - hash2 - - aRnVr1Bqrg2T6RvYNBioGJWlVUufVM+UqtINAlpNtmQ= - - - MonoBleedingEdge/etc/mono/4.0/settings.map - - hash2 - - zh2xrYqVEgcxZOPszcGT9+2gNuGpczyuxGNd4hsoZcg= - - - MonoBleedingEdge/etc/mono/4.0/web.config - - hash2 - - 8aZBbu7dnQQDh/2F3PfW4HS2ZExoKdCL4iD/n8Mu+zE= - - - MonoBleedingEdge/etc/mono/4.5/Browsers/Compat.browser - - hash2 - - ihCCBXrFaB3NTpwiftf7jrQqwWGJY7XeO2Vzndd+J0E= - - - MonoBleedingEdge/etc/mono/4.5/DefaultWsdlHelpGenerator.aspx - - hash2 - - dRhhBAtp6mOjgnUHt8janH9UncGBwcivS3ynjMl9cQo= - - - MonoBleedingEdge/etc/mono/4.5/machine.config - - hash2 - - 75uThxaP0d1smW+WwTTZxE+OsG+VhwBL+ZclKlIBgtY= - - - MonoBleedingEdge/etc/mono/4.5/settings.map - - hash2 - - zh2xrYqVEgcxZOPszcGT9+2gNuGpczyuxGNd4hsoZcg= - - - MonoBleedingEdge/etc/mono/4.5/web.config - - hash2 - - FaLHqSQr9U08yz4H+m2PhLqLMD2IdyQ3h6EQMAmUG9s= - - - MonoBleedingEdge/etc/mono/browscap.ini - - hash2 - - Td1Q8x+5aPML7e/CU6Rtw/KJAZLQXNqp4KZKBW7ugH4= - - - MonoBleedingEdge/etc/mono/config - - hash2 - - YAmc+RuxpXF/wfLSPPNqYdO/tw2Uifu29LrpjFYL89U= - - - MonoBleedingEdge/etc/mono/mconfig/config.xml - - hash2 - - DFbjTGkSRRD6jBnntMLKbBxP9GCuGfeY3QygNYCeOW0= - - - PlugIns/lib_burst_generated.bundle - - cdhash - - 9BizyozF0S4Pz9qVSuhgT9Yac+g= - - requirement - cdhash H"f418b3ca8cc5d12e0fcfda954ae8604fd61a73e8" - - Resources/Data/Managed/Assembly-CSharp-firstpass.dll - - hash2 - - qejMOVO3jy3DcZFoKFC4EgQSiOUVuvFqeisDqcoqs3A= - - - Resources/Data/Managed/Assembly-CSharp.dll - - hash2 - - 6LlkfJ5bvN1EZs97Q6grhygbAiRwx3U2W6VjcHuPu74= - - - Resources/Data/Managed/DOTween.dll - - hash2 - - pdX0XYYrL7xvRZfC/QHTH1BZGEWQBcRhtxQs+JjzuGE= - - - Resources/Data/Managed/Mono.Security.dll - - hash2 - - jEeyM4n57t4GhoPti2S1pGb5hkmREpgykHeLMKzP0bo= - - - Resources/Data/Managed/Newtonsoft.Json.dll - - hash2 - - muuOlkdNUYcdQSkY7XQB7BO94xIlTauBIp4YMF4SgRY= - - - Resources/Data/Managed/System.ComponentModel.Composition.dll - - hash2 - - WWUAwV6Q1LY1c6GdopIAnJWwLgUAX0gHfX/AhQ3SIP0= - - - Resources/Data/Managed/System.Configuration.dll - - hash2 - - A3mtDMTH/9Zlxw/kYe1Vn5c6T9xn7WYI8CLB/y9Ijqk= - - - Resources/Data/Managed/System.Core.dll - - hash2 - - LXAtIR006blMoYpe8QpsKw+kD7LLCXUTSMfVvU3/7QI= - - - Resources/Data/Managed/System.Data.dll - - hash2 - - I9roN56MQS9pyqBmi+QRyHZyp3XORz4Y+vAfVsEU4Hk= - - - Resources/Data/Managed/System.Diagnostics.StackTrace.dll - - hash2 - - RwHoQwWWdKzMHIcDjsQfPOy63OKmV1X1J8i2WwzryM4= - - - Resources/Data/Managed/System.Drawing.dll - - hash2 - - Qdf5kHxD0cndo81Kntp2yDbcx9r39le6mT9rbZwUauE= - - - Resources/Data/Managed/System.EnterpriseServices.dll - - hash2 - - CexSEhBlOpr/gHaobU6NhuudED+l0eLVh18gAzwRvZw= - - - Resources/Data/Managed/System.Globalization.Extensions.dll - - hash2 - - Toxa00UEULprxqR0MA8kRQlIcPK8ycoWRy+y8624jr0= - - - Resources/Data/Managed/System.IO.Compression.FileSystem.dll - - hash2 - - Ihq+TuoANHxRrHQJtHunsIzP2q6ONucGqO4NTebOuHo= - - - Resources/Data/Managed/System.IO.Compression.dll - - hash2 - - YEXRbmWDT2eyYENZoTekt0Q0KTgTzKsNhrNMX3sXhfo= - - - Resources/Data/Managed/System.Net.Http.dll - - hash2 - - uW5Wkr95HwLwNtsCZ98l37MInOlEcjRYZ7rt8Mr9P0g= - - - Resources/Data/Managed/System.Numerics.dll - - hash2 - - AdOy3WN12kN4uMmVGmu7SZfdagZRdT5XNqobBYcBXzU= - - - Resources/Data/Managed/System.Runtime.Serialization.Xml.dll - - hash2 - - I5Tf8gmVThQ3lb7bqOycc34X7NluOjoC3m18JjHwQVI= - - - Resources/Data/Managed/System.Runtime.Serialization.dll - - hash2 - - mIVkpqbN1+/I1UFDTM/5a7wvf5NJKQsO+vVzUEbNWC8= - - - Resources/Data/Managed/System.Runtime.dll - - hash2 - - yJ1JOPJM29888jbxDWKNPLcRGMRylRonXHXNfAT5v1w= - - - Resources/Data/Managed/System.ServiceModel.Internals.dll - - hash2 - - qyfdKv36tz3TbFuQpULHimmCLYrdK7o8yV24mQsj9MQ= - - - Resources/Data/Managed/System.Transactions.dll - - hash2 - - /3iotogJU1wdk8xuURx54NL4XZezWNoqinbsqMjy5Lw= - - - Resources/Data/Managed/System.Xml.Linq.dll - - hash2 - - cVIZfC1ptgokua8zI7Rbdr3p+fY6RHxpCQZWKJrDLB4= - - - Resources/Data/Managed/System.Xml.XPath.XDocument.dll - - hash2 - - xTMH7WXhC+fyUu6Mk6YmGvenxEtQBmMfV5UGJMPwb14= - - - Resources/Data/Managed/System.Xml.dll - - hash2 - - goPhdkRmlcBIa4sc2nWBF46d3VzrSYc919pRlzBJdgk= - - - Resources/Data/Managed/System.dll - - hash2 - - C0CZG2hlREcOgxAOQvsOW1jVx1l9qO9RBbaGwZF8IDw= - - - Resources/Data/Managed/Unity.Burst.Unsafe.dll - - hash2 - - nZwf9SQR3svuXZ8NHNYevqoiIHeqd6UhAeo966+umOI= - - - Resources/Data/Managed/Unity.Burst.dll - - hash2 - - Zh++lwJoIOAwvwFF+qljPmGFx730oOsI6PORCxZfhqc= - - - Resources/Data/Managed/Unity.Collections.LowLevel.ILSupport.dll - - hash2 - - 29f7N+NTv2YJk4vhVlwUyVL/a2pn0uZDauMUeghNQPE= - - - Resources/Data/Managed/Unity.Collections.dll - - hash2 - - hAs4efMVmaNZiLyigyN/OhKCPfOTIxExit2M+4ReFoo= - - - Resources/Data/Managed/Unity.Deformations.dll - - hash2 - - ftfiHn1Jk4qaoMZTLQLLoT8ncqd+3+2yZLe3JobTZ6E= - - - Resources/Data/Managed/Unity.Entities.Hybrid.dll - - hash2 - - CEesuObixO6tnRx6uWwz9w+BoaMbD7CCSwwYuSv0P/k= - - - Resources/Data/Managed/Unity.Entities.dll - - hash2 - - mbsUCk4QJx7aUPd/xyNGIy5xmhWBOu01r4No9FnfOyA= - - - Resources/Data/Managed/Unity.InputSystem.dll - - hash2 - - 4z8BNC7mQoWwQguKpx7CML4jcEGsflOIwdYK8I3BWLY= - - - Resources/Data/Managed/Unity.InternalAPIEngineBridge.012.dll - - hash2 - - YiuKkzSMRXcDvRTqO+73qRZVJfXViXSGQIqUpyRr7jU= - - - Resources/Data/Managed/Unity.Jobs.dll - - hash2 - - 0BWj9QotQ8cUHLhyRoL3tc+20p9rUAH5DjllX0jwAVM= - - - Resources/Data/Managed/Unity.Mathematics.Extensions.Hybrid.dll - - hash2 - - oRyL0B7NQhGzsghWqvW84M9YD3PCgKR4GDaG/kHascE= - - - Resources/Data/Managed/Unity.Mathematics.Extensions.dll - - hash2 - - k5OMKQxX3hFR3jnw8JIcoqzNq/UJt+HHpJeJtRel4EU= - - - Resources/Data/Managed/Unity.Mathematics.dll - - hash2 - - e7Qu8wP4fSPYKdA/Qzr9cw6JNS5iX5Cv4ckWil3dFhg= - - - Resources/Data/Managed/Unity.Platforms.Common.dll - - hash2 - - fqczV9d+Om+FkmGOzxho7RHuhvEWiLcyT1cNEgVFSoA= - - - Resources/Data/Managed/Unity.Properties.Reflection.dll - - hash2 - - WWAN7AJcQZIApYBV5+yRJ6kdvd/6GiAeCPAG+gudMeo= - - - Resources/Data/Managed/Unity.Properties.UI.dll - - hash2 - - jTvbsDRSzvfNnNchZYDBdB0Luq4nyBJ1ec9h6H5HLJE= - - - Resources/Data/Managed/Unity.Properties.dll - - hash2 - - BTNo13k8p+q0FJKhRXwZEPIfELN2V+bOUUXobdHfytM= - - - Resources/Data/Managed/Unity.RenderPipeline.Universal.ShaderLibrary.dll - - hash2 - - +mdo8zRnW7ipRFVlToS05mqPnDHHumYOlKoO9dzHe9o= - - - Resources/Data/Managed/Unity.RenderPipelines.Core.Runtime.dll - - hash2 - - SmAOc+gex+8e+7NZGU78cp001ooTsOztLgf2NpHNXl8= - - - Resources/Data/Managed/Unity.RenderPipelines.Core.ShaderLibrary.dll - - hash2 - - hlCUV/ICuU7RG1IZtKQskin/by8w07mo0l74CmgVA70= - - - Resources/Data/Managed/Unity.RenderPipelines.ShaderGraph.ShaderGraphLibrary.dll - - hash2 - - XSQEl2uG1uGI1VAqg97xsTIInUdUl0tdnxXfWGn518o= - - - Resources/Data/Managed/Unity.RenderPipelines.Universal.Runtime.dll - - hash2 - - q29PyznwHvAdFor4B4fwaaFVQLi7/djMRtIpAZn+xgc= - - - Resources/Data/Managed/Unity.RenderPipelines.Universal.Shaders.dll - - hash2 - - yqWvKTygmsSfzruIKuyr4ilXBWjgjxoxjfceAd7gxJA= - - - Resources/Data/Managed/Unity.Scenes.dll - - hash2 - - SqCGuKSADXj4AzTeDZzaFe/akljaw2h0fvOpohezf7k= - - - Resources/Data/Managed/Unity.ScriptableBuildPipeline.dll - - hash2 - - ND/q/staNI/T4eiAinxhgEjfqS7MA1aXjXGm1QCMfaU= - - - Resources/Data/Managed/Unity.Serialization.dll - - hash2 - - tp1v0ok5rrl5ma5OFxQIY8cqSDTrQSfYZLvPdUHulhI= - - - Resources/Data/Managed/Unity.Subsystem.Registration.dll - - hash2 - - epYISu/3zanacjDiiNxJx1hqDTBJl2pqD7bgD8/UxQA= - - - Resources/Data/Managed/Unity.TextMeshPro.dll - - hash2 - - p5WQ9vrgHOghz5W6dUSk9rSkXGGWpGoW+GFUTmKAFko= - - - Resources/Data/Managed/Unity.Timeline.dll - - hash2 - - ai31EK04V/6b1TEP4qJ6+O6AYaArxyhNSIl/8XGMZIE= - - - Resources/Data/Managed/Unity.Transforms.Hybrid.dll - - hash2 - - /09beQpjdQ+tZPDxvZLaF8PM2T5ceOznXl6MP0OAd0s= - - - Resources/Data/Managed/Unity.Transforms.dll - - hash2 - - C3OtqGMGikcHYOIM/G/nFbnjE/pVpQnaVXlMQ0d+Bbs= - - - Resources/Data/Managed/Unity.XR.Interaction.Toolkit.dll - - hash2 - - Gxys0g+eDbCm3/IcJRofkpYMJjR0OBrNyNHKGMhy++I= - - - Resources/Data/Managed/Unity.XR.Management.dll - - hash2 - - mpOeDX3vh+wKHW3QswqbrHxGy2fzJXBKI1eJiryL3E0= - - - Resources/Data/Managed/Unity.XR.Oculus.dll - - hash2 - - Wm+zNVaQ4eqoSAPjPeMNFxEprfPrN61/rsnJ6Xo0fF0= - - - Resources/Data/Managed/Unity.XR.OpenXR.Features.ConformanceAutomation.dll - - hash2 - - mqJqoUF2FjfXmZX+uA0M0sC6Nh8TT4ibXCjHrvURwq4= - - - Resources/Data/Managed/Unity.XR.OpenXR.Features.MockDriver.dll - - hash2 - - rfkkeX4SRGJNfLpCiQ9lOUvxbjUCMvM98MrLt2+0omY= - - - Resources/Data/Managed/Unity.XR.OpenXR.Features.MockRuntime.dll - - hash2 - - CtOv3FKwwaDWB/x2GDVMd1DSCIZy/2NDdiVStV10zPQ= - - - Resources/Data/Managed/Unity.XR.OpenXR.Features.RuntimeDebugger.dll - - hash2 - - PoD4bkf5wp20z0KDHC5rYTNxNZtV6MpTnbns2pYWzlU= - - - Resources/Data/Managed/Unity.XR.OpenXR.TestHelpers.dll - - hash2 - - YJXaO/LMehUDrIqDrYlkSKvmaSid98qTehXUUsCZD4c= - - - Resources/Data/Managed/Unity.XR.OpenXR.dll - - hash2 - - ShmDU1el19Yl2V7PpItQL7meqANWzb6neY9ggoo0nx4= - - - Resources/Data/Managed/UnityEngine.AIModule.dll - - hash2 - - hMirqilT9skhjahqfHH3lJJpxVavoqhQCDmeqqCm/I8= - - - Resources/Data/Managed/UnityEngine.ARModule.dll - - hash2 - - TpyS62jamaG0X4BW0lP+Jt2dAIrRBEfOopvl4Ygkkzw= - - - Resources/Data/Managed/UnityEngine.AccessibilityModule.dll - - hash2 - - wA3AV+9acB0CCLvhvDP8QjyDS4gVlsenYO3Hpm6P37Y= - - - Resources/Data/Managed/UnityEngine.AndroidJNIModule.dll - - hash2 - - dzrpWeAcmdWcaBJyLHrmnc2dJNd+lO6i8xDRt1BbvDI= - - - Resources/Data/Managed/UnityEngine.AnimationModule.dll - - hash2 - - xJoCcfW0YYp+cLG1gvF/LR0apMT/B1t9O0OQOQ17cMg= - - - Resources/Data/Managed/UnityEngine.AssetBundleModule.dll - - hash2 - - pnxnfei6y+cNlTT3BpsisLqIiEEndJ9/+xWdhh8k2kE= - - - Resources/Data/Managed/UnityEngine.AudioModule.dll - - hash2 - - LaisqvouXvV8VdlBfw6adk8OrmVRu/PvojWWGDkJ9gY= - - - Resources/Data/Managed/UnityEngine.ClothModule.dll - - hash2 - - Jr/acy28gdFXCu/WeAtRerXiAaMkVwBgV4KKtsYs2lI= - - - Resources/Data/Managed/UnityEngine.ClusterInputModule.dll - - hash2 - - 2Ln4KkAfEJFHcjf8HFAIbFZHVUkiLnq48yllvb0GtvU= - - - Resources/Data/Managed/UnityEngine.ClusterRendererModule.dll - - hash2 - - r5+HxeaMecYCugHYu6hvVdRgEK72fQRqOcSL9mqEGsk= - - - Resources/Data/Managed/UnityEngine.CoreModule.dll - - hash2 - - ItrDCaotji7XXpb9tvo7pYNAYgNO2rKtQCbz9SWUOHU= - - - Resources/Data/Managed/UnityEngine.CrashReportingModule.dll - - hash2 - - blxC5yBYcyH1zVVJ+SgxEFNTeQuFAolL5KudcnSYxt8= - - - Resources/Data/Managed/UnityEngine.DSPGraphModule.dll - - hash2 - - ZWEZCQ9N4numIF93oXZOs25UKdCLTPh8N/jim4d/f1k= - - - Resources/Data/Managed/UnityEngine.DirectorModule.dll - - hash2 - - YnmJB1GjeiueMXnkCjl1LcJbTQX3mtlHPGEopN4UhRU= - - - Resources/Data/Managed/UnityEngine.GIModule.dll - - hash2 - - x7jcRru18YNeKpReiXiSPVbpKTL81oRAlmd7usp/ml0= - - - Resources/Data/Managed/UnityEngine.GameCenterModule.dll - - hash2 - - MJ6vzAD34g98GTlswcPnyRw6Bgh9I+0hM5TndKoN++o= - - - Resources/Data/Managed/UnityEngine.GridModule.dll - - hash2 - - V65dJPd9te3fqFLEr/B0jFRxa03POPVBvZ7AtJ3Z9+8= - - - Resources/Data/Managed/UnityEngine.HotReloadModule.dll - - hash2 - - Wnj/0s1atyTe9Hfz8ugc+5s2eVadbKTJZiTchzuzSmg= - - - Resources/Data/Managed/UnityEngine.IMGUIModule.dll - - hash2 - - 2jhirr2meP2oK3YokscqsEWKFEnfb9b4W4P1aymy9JA= - - - Resources/Data/Managed/UnityEngine.ImageConversionModule.dll - - hash2 - - mtYeEV2cghGCcAr4Ph6BSQ42VWeHrup4i8U3iQh+/z4= - - - Resources/Data/Managed/UnityEngine.InputLegacyModule.dll - - hash2 - - ATa/HRaw7XiuU/Z6HIEcgmmRJDbRhFXUTpXsPu8+5yQ= - - - Resources/Data/Managed/UnityEngine.InputModule.dll - - hash2 - - QHcfl4MQN/wtCnu9WAze+wJQqc5Dj/75mjUAOFQS8hY= - - - Resources/Data/Managed/UnityEngine.JSONSerializeModule.dll - - hash2 - - IWlnz8VFVE/rA40WqStFeyu/E2M0vJEtFJtzujEWdpQ= - - - Resources/Data/Managed/UnityEngine.LocalizationModule.dll - - hash2 - - 7SfL2tvCJOjZa6tpTHR7q9OG/BfY6QRsC9uvtwgSqgo= - - - Resources/Data/Managed/UnityEngine.ParticleSystemModule.dll - - hash2 - - HkYF4/sfqZHARY0M59YCpJaJ9RNhk/j+XTyHU89TFLY= - - - Resources/Data/Managed/UnityEngine.PerformanceReportingModule.dll - - hash2 - - QMcXzoqhb1NKYGGsomUq6Itz2ALicbFvAnwblPVgrKE= - - - Resources/Data/Managed/UnityEngine.Physics2DModule.dll - - hash2 - - HfrryW5NTFnyLAdi7S3qsQOffyC6mmV/PHyyMYXdPq4= - - - Resources/Data/Managed/UnityEngine.PhysicsModule.dll - - hash2 - - +S4UVm4WH4IURE8R1lbHfCQ3GSmkv7LBZbUFcgTeAUY= - - - Resources/Data/Managed/UnityEngine.ProfilerModule.dll - - hash2 - - U/WJ5wApRuC1dqxUcOp37aWo+5NtjMntm4KcIj8ZpR0= - - - Resources/Data/Managed/UnityEngine.RuntimeInitializeOnLoadManagerInitializerModule.dll - - hash2 - - jU8hkGFWf8bK9izfbVIkTn3HezQsGwdhZ0lcBzCGPTI= - - - Resources/Data/Managed/UnityEngine.ScreenCaptureModule.dll - - hash2 - - 5vfBAMQurZdnnk7QE52ZjW98LpKbPfmI4OkIcI9Grpw= - - - Resources/Data/Managed/UnityEngine.SharedInternalsModule.dll - - hash2 - - 235EozW+Y/GqBMUvfShpRNCcbi3Dus6Pv3E6CkV/aQU= - - - Resources/Data/Managed/UnityEngine.SpatialTracking.dll - - hash2 - - w/nCzvcrw71hfzaWVzYumVr9k9se1aWm+7cZHBpKZQg= - - - Resources/Data/Managed/UnityEngine.SpriteMaskModule.dll - - hash2 - - IYU9L157mQJxwUUp3DzLE00Y6ct/Plarky/jLoDAiTY= - - - Resources/Data/Managed/UnityEngine.SpriteShapeModule.dll - - hash2 - - NFDEHv6PwDwKYp/6GLQi/KGbjEJlwBGscmw1W2/AvWc= - - - Resources/Data/Managed/UnityEngine.StreamingModule.dll - - hash2 - - 20/83QHA4cEIfBiqmHblCRUXCSjMlW+6R5oYQp0+zUM= - - - Resources/Data/Managed/UnityEngine.SubstanceModule.dll - - hash2 - - DDVoIJoqNPSZXqBkMrWXYGwPx2M20supabXowS9O4k8= - - - Resources/Data/Managed/UnityEngine.SubsystemsModule.dll - - hash2 - - D5GGhhj/at51Dz9VY41werK1vZmZb1Rjb400TGhx+6U= - - - Resources/Data/Managed/UnityEngine.TLSModule.dll - - hash2 - - VwsTY2WRfTacEiI/8r4kCSHcgQtSnK9NiOQlo/8OpGM= - - - Resources/Data/Managed/UnityEngine.TerrainModule.dll - - hash2 - - kMuC1eXJg6x2hNqBPScCERG4Tr0AWI1r1L9tlBPVolI= - - - Resources/Data/Managed/UnityEngine.TerrainPhysicsModule.dll - - hash2 - - EgJs18DOzmZeTA7mWSJ92VBHo1UZt47Bo83ewStzPak= - - - Resources/Data/Managed/UnityEngine.TextCoreModule.dll - - hash2 - - V7Atu5mM+ptvilDxFhQ9G6pUf6Hbp4tR+0WlfVTF5rY= - - - Resources/Data/Managed/UnityEngine.TextRenderingModule.dll - - hash2 - - RucB0o084XjogQjncxznbaD2TRGhuymozgUPe8bBXZs= - - - Resources/Data/Managed/UnityEngine.TilemapModule.dll - - hash2 - - 0ejzCKN7x1tlgneW8DMffTdl23oodN7JvZM3SnmmdN8= - - - Resources/Data/Managed/UnityEngine.UI.dll - - hash2 - - 7rmYZ60eVuVs/2VMB/Prpv5ZeMU8DjsvHDkxeFCATfI= - - - Resources/Data/Managed/UnityEngine.UIElementsModule.dll - - hash2 - - JX3RJxy56VV4Q+A4pOiTr+lo/+lYioEARv6u8tT0Bd4= - - - Resources/Data/Managed/UnityEngine.UIElementsNativeModule.dll - - hash2 - - f1NVsjtQgjwPuuZvaUm51UXP5EadBn4K06ppXw0KVH8= - - - Resources/Data/Managed/UnityEngine.UIModule.dll - - hash2 - - cMjMLryZnHcH0Jan5Q1tru5HTfHIVXHIJsUucGi2Je0= - - - Resources/Data/Managed/UnityEngine.UNETModule.dll - - hash2 - - wp98Ti1Lon0b9qln3+qCmBqkcxicfrl0cNMgEYgr7GI= - - - Resources/Data/Managed/UnityEngine.UmbraModule.dll - - hash2 - - n5uxLWePYxFT6z6P14atiBV5fn4cjO46nbvoJpRtgW0= - - - Resources/Data/Managed/UnityEngine.UnityAnalyticsModule.dll - - hash2 - - Q8GZvdj7tbdX7rHETVn96eYej6S354j+/rHqOnjmoDE= - - - Resources/Data/Managed/UnityEngine.UnityConnectModule.dll - - hash2 - - iAgtTAbKa+upaexId4kYVNNjLCluvIllqDR1RGAShhE= - - - Resources/Data/Managed/UnityEngine.UnityCurlModule.dll - - hash2 - - nPtBiLDLnlv/DsVcvWTRWdx6PsG7ufHtPEERBhULTiY= - - - Resources/Data/Managed/UnityEngine.UnityTestProtocolModule.dll - - hash2 - - w6D3w9Z028DHcaR1odu1/1ELFqxMpC1YVTMn2XrNlwI= - - - Resources/Data/Managed/UnityEngine.UnityWebRequestAssetBundleModule.dll - - hash2 - - h/xeNvUMeAB/I3oZSnA4o6fvx2OEw+0Z6wTJSceieio= - - - Resources/Data/Managed/UnityEngine.UnityWebRequestAudioModule.dll - - hash2 - - sLtbCUcVOtD7YjRtMsNWf08nCnagBNjnvECggmJjEQM= - - - Resources/Data/Managed/UnityEngine.UnityWebRequestModule.dll - - hash2 - - EMfzeoCxcpZZnOISMzKA7qc9SGkzBy+0XYFAb7j3l74= - - - Resources/Data/Managed/UnityEngine.UnityWebRequestTextureModule.dll - - hash2 - - 7KTGAmzZ4CORJFY/HCRG4WrrQiMKXW6gyMzfLadZyGo= - - - Resources/Data/Managed/UnityEngine.UnityWebRequestWWWModule.dll - - hash2 - - i8upfqBRjo1OTyy4gN3xJ9/BNUnQnxu/6H3tDb0ABHk= - - - Resources/Data/Managed/UnityEngine.VFXModule.dll - - hash2 - - apyuYzmSaqMMpBeRlAqO5uinYTZYYKxWkj9U2fkVywc= - - - Resources/Data/Managed/UnityEngine.VRModule.dll - - hash2 - - j5LTBEjeKmZbw7r8JYEtX9K1iDsYA4IW4+dm1QPAD28= - - - Resources/Data/Managed/UnityEngine.VehiclesModule.dll - - hash2 - - Uvmaqhe5zbNynunkzn+7AysqUsMyNLGGDcZuAbnd+xw= - - - Resources/Data/Managed/UnityEngine.VideoModule.dll - - hash2 - - 0+OdILLb7Uri5iLs2csTpCz14vwWS84/6zWwtDMmP60= - - - Resources/Data/Managed/UnityEngine.VirtualTexturingModule.dll - - hash2 - - EPwQPK0i9UXpoqP2ir95wcun3047FnGizqOeoyB7Q+c= - - - Resources/Data/Managed/UnityEngine.WindModule.dll - - hash2 - - g6jgKXYyeVE6UI/ZiUBTygwPizG8G42kuAcc4PUqnPk= - - - Resources/Data/Managed/UnityEngine.XR.LegacyInputHelpers.dll - - hash2 - - WSySfanWri+5Sqdij2RNzF4HTBuWljA0j88LhtZSUHE= - - - Resources/Data/Managed/UnityEngine.XRModule.dll - - hash2 - - COZvWteVGX8pVhrfPGPvfHLAWNm2iJpPWqUbWxrw/7U= - - - Resources/Data/Managed/UnityEngine.dll - - hash2 - - ZEd2GYFI4KjJM/W71XTJc+a9XNojh/zgGrB4v+fOUj4= - - - Resources/Data/Managed/mscorlib.dll - - hash2 - - GE86nEUk20v/ge9QuTRBxqUlU5fmt47iGfjAsZPaou4= - - - Resources/Data/Managed/netstandard.dll - - hash2 - - mUvgOesj2nsMFPwvosCbPKKnO7Mw6EAnWrgnUGNxbw4= - - - Resources/Data/Resources/unity_builtin_extra - - hash2 - - LMvauigdw4PLwmGLc4uqaNV7Db6TRbWMDQFzyL9Vsl8= - - - Resources/Data/RuntimeInitializeOnLoads.json - - hash2 - - 4tTXvgbhLUp4H+zkEseN3i77D/ZVnTChvPCbx7vnDp4= - - - Resources/Data/ScriptingAssemblies.json - - hash2 - - bg4CFfJb6ovkqdZYZdoODIEAHNRME3LuZ8ocn7BxT7g= - - - Resources/Data/UnitySubsystems/OculusXRPlugin/UnitySubsystemsManifest.json - - hash2 - - 9sXh1BwnJnZViXkYaT2rTXW3e98yZ+HmhPPzV6rH7Oc= - - - Resources/Data/UnitySubsystems/UnityOpenXR/UnitySubsystemsManifest.json - - hash2 - - ubj86nnhu/byOnRGoIpe+rryYADeh8WpmsDWIUa29Gc= - - - Resources/Data/app.info - - hash2 - - tL2oy0PA60rRJOaW87gJwNY1xGFiBUrsUTeeguzHU2Y= - - - Resources/Data/boot.config - - hash2 - - JSAsjwyqgTnSIMHbgprARF3lIEcFmwPJIMfRRd3+tLo= - - - Resources/Data/globalgamemanagers - - hash2 - - R6VZOeHbngRrZrnR6qgOb9KhuMQhYw4vMQug5Gq+Wmc= - - - Resources/Data/globalgamemanagers.assets - - hash2 - - m4AA819FXKiQrVZAWdzKeCC6QZIqRo9lPmEU+8yIHV4= - - - Resources/Data/globalgamemanagers.assets.resS - - hash2 - - W+ZGfkZ20T4UZOHDi33qFes8LXmtRn/OcArs+rsa6Ng= - - - Resources/Data/level0 - - hash2 - - iNQrShFnboFZsPaR5ZDaoHNYECNfZdnVs1xQ2lrkbC8= - - - Resources/Data/level0.resS - - hash2 - - 5+fR/x8WxXPc+/oBc+QVtgFFGkxuNib9Aa1SqfWRD4g= - - - Resources/Data/resources.assets - - hash2 - - i9Pl6OG2AwPqLfAvakmtOAZcN1vRMF6PdAcVOnkEIGo= - - - Resources/Data/resources.assets.resS - - hash2 - - RDaz8NVeCE1Kpz4fxlnpaBf3Kq6LEeDnNibrOxVNGyU= - - - Resources/Data/sharedassets0.assets - - hash2 - - wr6tS+wgpn+PqEUL1DJfq0eO6/jmZ3DWwxcV9976zVA= - - - Resources/Data/sharedassets0.assets.resS - - hash2 - - j3naMKS7cuVanL+K072PFq1D+x8k8mbATB3bn+RRY8U= - - - Resources/DefaultPreferences.plist - - hash2 - - W9oOJGpWGJUa6Ru37jQt0rSm6JGOOXZkQxPBaqSD0mI= - - - Resources/MainMenu.nib/designable.nib - - hash2 - - VxiCIbqdyIm+TJ4D8MhnvOggcmSR4yovpJKGgfAG8wg= - - - Resources/MainMenu.nib/keyedobjects.nib - - hash2 - - H65bfG7psXp2exY2hnpBs+ROr49lSxxeLK+jJhRjEE0= - - - Resources/unity default resources - - hash2 - - S/VXGlgcRFlwPFcOzH/Tu6G0dfgCoPO6YS87CZp9BHA= - - - - rules - - ^Resources/ - - ^Resources/.*\.lproj/ - - optional - - weight - 1000 - - ^Resources/.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Resources/Base\.lproj/ - - weight - 1010 - - ^version.plist$ - - - rules2 - - .*\.dSYM($|/) - - weight - 11 - - ^(.*/)?\.DS_Store$ - - omit - - weight - 2000 - - ^(Frameworks|SharedFrameworks|PlugIns|Plug-ins|XPCServices|Helpers|MacOS|Library/(Automator|Spotlight|LoginItems))/ - - nested - - weight - 10 - - ^.* - - ^Info\.plist$ - - omit - - weight - 20 - - ^PkgInfo$ - - omit - - weight - 20 - - ^Resources/ - - weight - 20 - - ^Resources/.*\.lproj/ - - optional - - weight - 1000 - - ^Resources/.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Resources/Base\.lproj/ - - weight - 1010 - - ^[^/]+$ - - nested - - weight - 10 - - ^embedded\.provisionprofile$ - - weight - 20 - - ^version\.plist$ - - weight - 20 - - - - diff --git a/Builds/test4.apk b/Builds/test4.apk deleted file mode 100644 index 989c15256..000000000 Binary files a/Builds/test4.apk and /dev/null differ diff --git a/New Proton.sln b/New Proton.sln deleted file mode 100644 index c6f780b41..000000000 --- a/New Proton.sln +++ /dev/null @@ -1,25 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 11.00 -# Visual Studio 2010 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp", "Assembly-CSharp.csproj", "{c2cf8b50-4fa7-f004-23f4-9be0d8eec837}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-firstpass", "Assembly-CSharp-firstpass.csproj", "{918e6c40-ba9f-3cc9-c61c-8a64f44e66aa}" -EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Assembly-CSharp-Editor", "Assembly-CSharp-Editor.csproj", "{0cc416e4-a186-2796-b678-b8fe8c3f7cbf}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {c2cf8b50-4fa7-f004-23f4-9be0d8eec837}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {c2cf8b50-4fa7-f004-23f4-9be0d8eec837}.Debug|Any CPU.Build.0 = Debug|Any CPU - {918e6c40-ba9f-3cc9-c61c-8a64f44e66aa}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {918e6c40-ba9f-3cc9-c61c-8a64f44e66aa}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0cc416e4-a186-2796-b678-b8fe8c3f7cbf}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0cc416e4-a186-2796-b678-b8fe8c3f7cbf}.Debug|Any CPU.Build.0 = Debug|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/Packages/manifest.json b/Packages/manifest.json index 04df904a0..4e056d49d 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -10,6 +10,7 @@ "com.unity.test-framework": "1.1.24", "com.unity.textmeshpro": "3.0.4", "com.unity.timeline": "1.4.6", + "com.unity.toolchain.win-x86_64-linux-x86_64": "2.0.2", "com.unity.ugui": "1.0.0", "com.unity.xr.interaction.toolkit": "1.0.0-pre.5", "com.unity.xr.oculus": "1.8.1", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index f13b0e7de..f66a260a7 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -223,6 +223,22 @@ "dependencies": {}, "url": "https://packages.unity.com" }, + "com.unity.sysroot": { + "version": "2.0.3", + "depth": 1, + "source": "registry", + "dependencies": {}, + "url": "https://packages.unity.com" + }, + "com.unity.sysroot.linux-x86_64": { + "version": "2.0.2", + "depth": 1, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.3" + }, + "url": "https://packages.unity.com" + }, "com.unity.test-framework": { "version": "1.1.24", "depth": 0, @@ -265,6 +281,16 @@ }, "url": "https://packages.unity.com" }, + "com.unity.toolchain.win-x86_64-linux-x86_64": { + "version": "2.0.2", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.sysroot": "2.0.3", + "com.unity.sysroot.linux-x86_64": "2.0.2" + }, + "url": "https://packages.unity.com" + }, "com.unity.ugui": { "version": "1.0.0", "depth": 0, diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index dcd1607a0..3bb9c4a23 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -679,6 +679,7 @@ PlayerSettings: webGLDecompressionFallback: 0 scriptingDefineSymbols: 1: ENABLE_HYBRID_RENDERER_V2 + 7: ENABLE_HYBRID_RENDERER_V2 additionalCompilerArguments: {} platformArchitecture: {} scriptingBackend: {} @@ -698,8 +699,8 @@ PlayerSettings: apiCompatibilityLevelPerPlatform: {} m_RenderingPath: 1 m_MobileRenderingPath: 1 - metroPackageName: Template_3D - metroPackageVersion: + metroPackageName: Template3D + metroPackageVersion: 1.0.0.0 metroCertificatePath: metroCertificatePassword: metroCertificateSubject: @@ -707,7 +708,7 @@ PlayerSettings: metroCertificateNotAfter: 0000000000000000 metroApplicationDescription: Template_3D wsaImages: {} - metroTileShortName: + metroTileShortName: New Proton metroTileShowName: 0 metroMediumTileShowName: 0 metroLargeTileShowName: 0 diff --git a/ProjectSettings/TagManager.asset b/ProjectSettings/TagManager.asset index 1c92a7840..a8cffd892 100644 --- a/ProjectSettings/TagManager.asset +++ b/ProjectSettings/TagManager.asset @@ -3,7 +3,9 @@ --- !u!78 &1 TagManager: serializedVersion: 2 - tags: [] + tags: + - Quark + - FluxCenter layers: - Default - TransparentFX diff --git a/README.md b/README.md index e69de29bb..dfef64521 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,70 @@ +

3D Proton: Electomagnetic V1.0

+

What's Different?

+

Electric Charge

+

All quarks and seaquarks are charged with either a +2/3 or -1/3 electric charge before they are created

+

The charge can be modified in any script of type TypeQuark by two boolean values +

    +
  • IsCharged tells Unity if the object has a charge or if it is uncharged (used by force probes)
  • +
  • Charge tells Unity if the object has a +2/3 charge (true) or a -1/3 charge (false)
  • +
+ +

TypeQuark

+

Quark has been modified to be an extension of TypeQuark to standardize all quarks and make EM calculations easier to understand

+

The new QuarkPair script is used by individual quarks contained within seaquarks and is also an extension of TypeQuark

+

Force probes have also been added to calculate the EM force at any point placed via the Unity editor and cannot contribute to EM forces

+

The force probe prefab can be accessed under Prefabs > Models

+ +

Electromagnetic Fields

+

Charged TypeQuark particles contribute to EM fields within the proton

+

All calculations are handled by the proton in the script EMField

+

Several variables have also been added to modify EM calculations and each have associated tooltips to tell you more about them

+
    +
  • U0 Pi is the physics constant for the permittivity of free space divided by 4 pi (1E-7) used in the magnetic field calculation
  • +
  • K is the electric k constant used in the electric field calculation
  • +
  • Scale scales down the size of the proton down to around the actual size of the proton
  • +
  • C Scale converts the charges to Coulombs
  • +
  • V Scale increases the power velocity contributes to the magnetic field calculation (velocity^2)
  • +
  • Strength multiplies the total force calculated (F = strength * (F from E + F from B))
  • +
  • Sea Strength modifies the strength EM fields contribute to non-physics based quarks (Broken)
  • +
  • Fast field skips magnetic field calculations (Should only be used if magnetic field calculations are close to 0)
  • +
  • Physics Quarks enables non-physics based seaquarks (Broken)
  • +
  • Sea Lines are unused and force lines for seaquarks are instead handled by the All Quark Script
  • +
  • Cancel Threshold is the minimum distance (in-editor units) of which forces are not calculated between quarks to prevent /0 exceptions and will automatically cancel each other out if both quarks are seaquarks of opposite color types
  • +
+

The EMField script can be disabled from the editor without error if needed, including during runtime

+ +

1/r Centripetal Force

+

A centripetal force is applied to all TypeQuark with a Rigidbody (accepts Physics calculations) towards the center of the proton at all times

+

The strength of this force can be modified by the Centripetal Force slider in the menu

+ +

Sea Quark Spawn Changes

+

The proton now requires a certain amount of energy before creating a new seaquark

+

Creating a new pair reduces the available energy by 1

+

Deleting a seaquark by reducing its HP to 0 will increase the available energy by 1

+

Seaquarks will also automatically be deleted if they reach 100 units away from the proton

+ +

Parton Spin Sum (WIP)

+

A work in progress feature still being prototyped

+

This script will take 2 passes through each TypeQuark and assign either a spin up or spin down value based off of its angular momentum and the angular momentum of other TypeQuarks

+

Currently only works along the z-axis and spins cannot be in any direction other than up or down

+

Also currently attempts to sum spins to 0 instead of 1/2

+

Unlike EM, this has not yet been properly scaled

+

If enabled, the console will output some information on the calculated spin in 5 chunks separated by |'s:

+
    +
  1. Total spin calculated via Σ(spin * angular momentum) = Σ(s * m(v x R)) (mass not yet multiplied)
  2. +
  3. Number of quarks with spin up (# ^), and spin down (# v)
  4. +
  5. Highest contributing quark to total
  6. +
  7. Average total spin during runtime
  8. +
  9. Greatest total spin during runtime
  10. +
+

Can be disabled without error, including during runtime

+ +

Visuals

+

Forcelines have been added to each TypeQuark to visualize the direction and strength of EM forces on the object

+

These forcelines can be disabled from the menu by pressing Toggle Lines

+

Quark visuals and color have been moved to TypeQuark

+

An FPS counter has also been added to the menu

+ +

Music

+

A music player and track has been added in the Scene Hierarchy at the top

+

The track will be turned off by default and can be enabled by checking Auto Play before runtime