Jump to content

257 posts in this topic

Recommended Posts

Posted

<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="39">
  <CheatEntries>
    <CheatEntry>
      <ID>79</ID>
      <Description>"[[ ENABLE ]]"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <Color>FF8000</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript Async="1">[ENABLE]
{$lua}
if syntaxcheck then return end
  if process and readInteger(process) ~= 0 then
      local processList = createStringlist()
      getProcesslist(processList)
      for i = 1,processList.count-1 do
      if string.match(processList[i], "-(.*)") == 'BloonsTD6.exe' then openProcess('BloonsTD6.exe') LaunchMonoDataCollector() break end end
      if process == nil then local msg = 'No process detected.' print(msg) end
  end
while not monoSymbolList.FullyLoaded do sleep(3) end

if getStructureCount() ~= 0 then
for i = getStructureCount()-1,0,-1 do
getStructure(i).removeFromGlobalStructureList()
end end
if BTD6Offsets ~= nil then BTD6Offsets = nil end
BTD6Offsets = createStructure(BTD6Offsets)
BTD6Offsets.Name='BTD6Offsets'
ProfileModelC = mono_class_enumFields(mono_findClass('Assets.Scripts.Models.Profile','ProfileModel'))
SimulationC = mono_class_enumFields(mono_findClass('Assets.Scripts.Simulation','Simulation'))
Btd6PlayerC = mono_class_enumFields(mono_findClass('Assets.Scripts.Unity.Player','Btd6Player'))
GameModelC = mono_class_enumFields(mono_findClass('Assets.Scripts.Models','GameModel'))
MapC = mono_class_enumFields(mono_findClass('Assets.Scripts.Simulation.Track','Map'))
SpawnerC = mono_class_enumFields(mono_findClass('Assets.Scripts.Simulation.Track','Spawner'))
ProfileModelVars = {"dailyRewardIndex", "monkeyMoney", "xp", "knowledgePoints"}
SimulationVars = {"instantCooldowns", "immunity", "model", "map"}
Btd6PlayerVars = {"debugUnlockAllUpgrades", "debugUnlockAllTowers", "model", "map"}
GameModelVars = {"cash", "startingHealth", "maxHealth", "startingShield", "maxShield", "sellMultiplier", "startRound", "endRound", "maxTowerCount", "maxPowerCount", "towerSellEnabled", "powersEnabled", "continueEnabled", "doubleCashAllowed"}
MapVars = {"spawner"}
SpawnerVars = {"spawnedRound"}

function containsName(nameCheck, varCheck)
  for v=1,#varCheck do
    if varCheck[v] == nameCheck then return true end
  end
  return false
end

function checkClass(Class, varCheck)
for i=1,#Class do
  if containsName(Class[i].name,varCheck) == true then
  --printf((Class[i].name) .. '---&gt;' .. "%X",(Class[i].offset))
  local tempElement = BTD6Offsets.addElement()
  tempElement.Offset=Class[i].offset
  tempElement.Name=Class[i].name
end end
BTD6Offsets.addToGlobalStructureList()
end

checkClass(ProfileModelC, ProfileModelVars)
checkClass(SimulationC, SimulationVars)
checkClass(Btd6PlayerC, Btd6PlayerVars)
checkClass(GameModelC, GameModelVars)
checkClass(MapC, MapVars)
checkClass(SpawnerC, SpawnerVars)
{$asm}
alloc(newmem,2048,Assets.Scripts.Models.Profile.ProfileModel.get_KnowledgePoints)
aobscanregion(get_HackerDetected,Assets.Scripts.Unity.Analytics.AnalyticsManager.HackerDetected,Assets.Scripts.Unity.Analytics.AnalyticsManager.HackerDetected+4,48 89 ? 24)
registersymbol(get_HackerDetected)
alloc(Content,8)
alloc(Simulation,8,Assets.Scripts.Simulation.Simulation.Simulate)
registersymbol(Content)
registersymbol(Simulation)
label(getContent)
label(getContentRet)
label(getSimulation)
label(getSimulationRet)

newmem:
getContent:
mov [Content],rcx
sub rsp,28
mov rcx,[rcx+BTD6Offsets.knowledgePoints]
jmp getContentRet

getSimulation:
mov [Simulation],rcx
mov [rsp+08],rcx
jmp getSimulationRet

Assets.Scripts.Models.Profile.ProfileModel.get_KnowledgePoints:
jmp newmem
nop 6
getContentRet:

Assets.Scripts.Simulation.Simulation.Simulate:
jmp getSimulation
getSimulationRet:

get_HackerDetected:
db C3
//VISUAL LEAF
//Assets.Scripts.Unity.UI_New.Utils.EnableIfBadActor.OnEnable:
//db C3

[DISABLE]
Assets.Scripts.Models.Profile.ProfileModel.get_KnowledgePoints:
sub rsp,28
mov rcx,[rcx+BTD6Offsets.knowledgePoints]

Assets.Scripts.Simulation.Simulation.Simulate:
db 48 89 4C 24 08

get_HackerDetected:
db 48
//VISUAL LEAF
//Assets.Scripts.Unity.UI_New.Utils.EnableIfBadActor.OnEnable:
//db 48

unregistersymbol(get_Content)
unregistersymbol(get_Simulation)
unregistersymbol(get_HackerDetected)
dealloc(Content)
dealloc(Simulation)
unregistersymbol(Content)
unregistersymbol(Simulation)
dealloc(newmem)
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>92</ID>
          <Description>"[ Editable Values ]"</Description>
          <Options moHideChildren="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <Color>FF8000</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>81</ID>
              <Description>"Current Daily Reward"</Description>
              <ShowAsSigned>1</ShowAsSigned>
              <Color>000000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>Content</Address>
              <Offsets>
                <Offset>BTD6Offsets.dailyRewardIndex</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>1824</ID>
              <Description>"Next Round [+2 (98 = 100)]"</Description>
              <ShowAsSigned>1</ShowAsSigned>
              <Color>000000</Color>
              <VariableType>4 Bytes</VariableType>
              <Address>Simulation</Address>
              <Offsets>
                <Offset>BTD6Offsets.spawnedRound</Offset>
                <Offset>BTD6Offsets.spawner</Offset>
                <Offset>BTD6Offsets.map</Offset>
              </Offsets>
            </CheatEntry>
            <CheatEntry>
              <ID>94</ID>
              <Description>"Match Cheats"</Description>
              <Options moHideChildren="1"/>
              <LastState Value="" RealAddress="00000000"/>
              <Color>FF8000</Color>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>95</ID>
                  <Description>"Instant Cooldowns"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">1:Enabled
0:Disabled
*:Unknown
</DropDownList>
                  <ShowAsSigned>1</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.instantCooldowns</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>96</ID>
                  <Description>"Immunity"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">1:Enabled
0:Disabled
*:Unknown
</DropDownList>
                  <ShowAsSigned>1</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.immunity</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>1770</ID>
              <Description>"Match Default Settings [Restart match to set]"</Description>
              <Options moHideChildren="1"/>
              <LastState Value="" RealAddress="00000000"/>
              <Color>FF8000</Color>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>1771</ID>
                  <Description>"Starting Cash"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Float</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.cash</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1772</ID>
                  <Description>"Starting Health"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Float</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.startingHealth</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1775</ID>
                  <Description>"Max Health"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Float</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.maxHealth</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1774</ID>
                  <Description>"Starting Shield"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Float</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.startingShield</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1773</ID>
                  <Description>"Max Shield"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Float</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.maxShield</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1920</ID>
                  <Description>"Starting Round"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>4 Bytes</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.startRound</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2176</ID>
                  <Description>"Last Round"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>4 Bytes</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.endRound</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2180</ID>
                  <Description>"Sell Multiplier"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Float</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.sellMultiplier</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2178</ID>
                  <Description>"Max Tower Count [-1 = Infinite]"</Description>
                  <ShowAsSigned>1</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>4 Bytes</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.maxTowerCount</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2179</ID>
                  <Description>"Max Power Count [-1 = Infinite]"</Description>
                  <ShowAsSigned>1</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>4 Bytes</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.maxPowerCount</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2175</ID>
                  <Description>"Tower Sell Enabled?"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">1:Enabled
0:Disabled
*:Unknown
</DropDownList>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Byte</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.towerSellEnabled</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1921</ID>
                  <Description>"Powers Enabled?"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">1:Enabled
0:Disabled
*:Unknown
</DropDownList>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Byte</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.powersEnabled</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2177</ID>
                  <Description>"Continue Enabled?"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">1:Enabled
0:Disabled
*:Unknown
</DropDownList>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Byte</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.continueEnabled</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>1922</ID>
                  <Description>"Double Cash Allowed?"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">1:Enabled
0:Disabled
*:Unknown
</DropDownList>
                  <ShowAsSigned>0</ShowAsSigned>
                  <Color>000000</Color>
                  <VariableType>Byte</VariableType>
                  <Address>Simulation</Address>
                  <Offsets>
                    <Offset>BTD6Offsets.doubleCashAllowed</Offset>
                    <Offset>BTD6Offsets.model</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>2140</ID>
              <Description>"Get Player [High Probability of Getting Marked as a Cheater]"</Description>
              <Options moHideChildren="1"/>
              <LastState/>
              <Color>FF8000</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_Player,Assets.Scripts.Unity.UI_New.CommonForegroundScreen.Update,Assets.Scripts.Unity.UI_New.CommonForegroundScreen.Update+100,48 8B 48 48 48 85 C9)
alloc(newmem,$1000,get_Player)
label(code)
label(return)
alloc(doAction,4)
alloc(Player,8)
alloc(PlayerInfo,100)
registersymbol(doAction)
registersymbol(Player)
registersymbol(PlayerInfo)

newmem:
  cmp byte ptr [doAction],00
  je code
  cmp byte ptr [doAction],01
  je GetProfile
  cmp byte ptr [doAction],02
  je SetProfile
  jmp code

GetProfile:
  mov [Player],rcx
  mov byte ptr [doAction],00
  push rax
  push rbx
  push rcx
  push rdx
  push rsi
  push rdi
  push r8
  push r9
  sub rsp,20
  mov rcx,Content
  cmp rcx,00000000
  je @f
  mov rcx,[rcx]
  mov rcx,[rcx+BTD6Offsets.knowledgePoints]
  xor edx,edx
  call Assets.Scripts.Utils.KonFuze.Read
  cvttsd2si eax,xmm0
  mov [PlayerInfo],eax //Knowledge Points
  mov rcx,Content
  mov rcx,[rcx]
  mov rcx,[rcx+BTD6Offsets.monkeyMoney]
  xor edx,edx
  call Assets.Scripts.Utils.KonFuze.Read
  cvttsd2si eax,xmm0
  mov [PlayerInfo+4],eax //Monkey Money
  mov rcx,Content
  mov rcx,[rcx]
  mov rcx,[rcx+BTD6Offsets.xp]
  xor edx,edx
  call Assets.Scripts.Utils.KonFuze.Read
  cvttsd2si eax,xmm0
  mov [PlayerInfo+8],eax //Experience
  /*mov rcx,Content - DON'T USE. OFFSETS ARE WRONG, THEY'RE NOT IN THE ADDRESS LIST AND TROPHIES ARE SERVER SIDED ANYWAYS.
  mov rcx,[rcx]
  mov rcx,[rcx+158]
  xor edx,edx
  call Assets.Scripts.Utils.KonFuze.Read
  cvttsd2si eax,xmm0
  mov [PlayerInfo+C],eax //Trophies */
@@:
  add rsp,20
  pop r9
  pop r8
  pop rdi
  pop rsi
  pop rdx
  pop rcx
  pop rbx
  pop rax
  jmp code

SetProfile:
  mov [Player],rcx
  mov byte ptr [doAction],00
  push rax
  push rbx
  push rcx
  push rdx
  push rsi
  push rdi
  push r8
  push r9
  sub rsp,20
  mov rcx,Content
  cmp rcx,00000000
  je @f
  mov rcx,[rcx]
  mov rcx,[rcx+BTD6Offsets.knowledgePoints]
  movd xmm1,[PlayerInfo] //Knowledge Points
  cvtdq2pd xmm1,xmm1
  call Assets.Scripts.Utils.KonFuze.Write
  mov rcx,Content
  mov rcx,[rcx]
  mov rcx,[rcx+BTD6Offsets.monkeyMoney]
  movd xmm1,[PlayerInfo+4] //Monkey Money
  cvtdq2pd xmm1,xmm1
  call Assets.Scripts.Utils.KonFuze.Write
  mov rcx,Content
  mov rcx,[rcx]
  mov rcx,[rcx+BTD6Offsets.xp]
  movd xmm1,[PlayerInfo+8] //Experience
  cvtdq2pd xmm1,xmm1
  call Assets.Scripts.Utils.KonFuze.Write
  /*mov rcx,Content - DON'T USE. OFFSETS ARE WRONG, THEY'RE NOT IN THE ADDRESS LIST AND TROPHIES ARE SERVER SIDED ANYWAYS.
  mov rcx,[rcx]
  mov rcx,[rcx+138]
  movd xmm1,[PlayerInfo+C] //Trophies
  cvtdq2pd xmm1,xmm1
  call Assets.Scripts.Utils.KonFuze.Write*/
@@:
  add rsp,20
  pop r9
  pop r8
  pop rdi
  pop rsi
  pop rdx
  pop rcx
  pop rbx
  pop rax
  jmp code

code:
  mov [Player],rax
  mov rcx,[rax+48]
  test rcx,rcx
  jmp return

get_Player:
  jmp newmem
  nop 2
return:
registersymbol(get_Player)

[DISABLE]
get_Player:
  db 48 8B 48 48 48 85 C9

unregistersymbol(get_Player)
dealloc(newmem)
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>2141</ID>
                  <Description>"ACTION"</Description>
                  <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:None
1:Get Player Info
2:Set Player Info
*:Unknown
</DropDownList>
                  <Color>000080</Color>
                  <VariableType>4 Bytes</VariableType>
                  <Address>doAction</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>2142</ID>
                  <Description>"Knowledge Points"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>PlayerInfo</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>2143</ID>
                  <Description>"Monkey Money"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>PlayerInfo+4</Address>
                </CheatEntry>
                <CheatEntry>
                  <ID>2144</ID>
                  <Description>"Total Experience"</Description>
                  <VariableType>4 Bytes</VariableType>
                  <Address>PlayerInfo+8</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>85</ID>
          <Description>"[ Scripts ]"</Description>
          <Options moHideChildren="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <Color>FF8000</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>84</ID>
              <Description>"Infinite Insta Monkeys"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Unity.Player.Btd6Player.ConsumeInstaTower:
db C3

[DISABLE]
Assets.Scripts.Unity.Player.Btd6Player.ConsumeInstaTower:
db 48
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1757</ID>
              <Description>"Infinite In-Game Cash"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Simulation.Simulation.RemoveCash:
db C3

[DISABLE]
Assets.Scripts.Simulation.Simulation.RemoveCash:
db 44

</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>82</ID>
              <Description>"Infinite Monkey Money"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Unity.Player.Btd6Player.SpendMonkeyMoney:
db C3

[DISABLE]
Assets.Scripts.Unity.Player.Btd6Player.SpendMonkeyMoney:
db 48
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>89</ID>
              <Description>"Unlock All Towers/Upgrades/Heroes"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_HasUpgrade,Assets.Scripts.Unity.Player.Btd6Player.HasUpgrade,Assets.Scripts.Unity.Player.Btd6Player.HasUpgrade+50,80 BB * * 00 00 00)
alloc(newmem,$1000,GameAssembly.dll)
label(code)
label(return)

newmem:

code:
mov byte ptr [rbx+BTD6Offsets.debugUnlockAllUpgrades],1
mov byte ptr [rbx+BTD6Offsets.debugUnlockAllTowers],1
//mov byte ptr [rbx+0000009A],1 //debugSeenAllRounds
//mov byte ptr [rbx+0000009B],1 //debugUnlockAllModes
cmp byte ptr [rbx+BTD6Offsets.debugUnlockAllUpgrades],00
jmp return

get_HasUpgrade:
  jmp code
  nop 2
return:
registersymbol(get_HasUpgrade)

Assets.Scripts.Unity.Player.Btd6Player.HasUnlockedHero:
db B0 01 C3

[DISABLE]
get_HasUpgrade:
cmp byte ptr [rbx+BTD6Offsets.debugUnlockAllUpgrades],00

Assets.Scripts.Unity.Player.Btd6Player.HasUnlockedHero:
db 48 89 5C

unregistersymbol(get_HasUpgrade)
dealloc(newmem)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2162</ID>
              <Description>"Free Upgrades"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Simulation.Towers.TowerManager.GetFreeUpgrade:
db B0 01 C3

[DISABLE]
Assets.Scripts.Simulation.Towers.TowerManager.GetFreeUpgrade:
db 44 89 54
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1854</ID>
              <Description>"Free Tower Upgrades [Unlocking]"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_TUpgradeCost,Assets.Scripts.Unity.Player.Btd6Player.AcquireUpgrade,Assets.Scripts.Unity.Player.Btd6Player.AcquireUpgrade+50,0F 28 F3)
registersymbol(get_TUpgradeCost)

get_TUpgradeCost:
db 0F 28 DE

Assets.Scripts.Unity.Player.Btd6Player.CanAcquireUpgrade:
db B0 01 C3

[DISABLE]
get_TUpgradeCost:
db 0F 28 F3

Assets.Scripts.Unity.Player.Btd6Player.CanAcquireUpgrade:
db 48 89 5C

unregistersymbol(get_TUpgradeCost)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>86</ID>
              <Description>"Freeze Knowledge + No Monkey Money Cost"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_SetKnowledgePoints,Assets.Scripts.Unity.Player.Btd6Player.AcquireKnowledge,Assets.Scripts.Unity.Player.Btd6Player.AcquireKnowledge+100,8D 50 FF E8 * * * * 48 8B)
registersymbol(get_SetKnowledgePoints)
alloc(saved,5)
registersymbol(saved)

saved:
readMem(get_SetKnowledgePoints+3,5)

get_SetKnowledgePoints+3:
  db 90 90 90 90 90

Assets.Scripts.Unity.UI_New.Knowledge.KnowledgeHelper.GetMMCost:
db B8 00 00 00 00 C3

[DISABLE]
get_SetKnowledgePoints+3:
readMem(saved,5)

Assets.Scripts.Unity.UI_New.Knowledge.KnowledgeHelper.GetMMCost:
db 41 57 48 83 EC 50 80

unregistersymbol(get_SetKnowledgePoints)
unregistersymbol(saved)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>83</ID>
              <Description>"Chest Always Available"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Unity.UI_New.Main.WorldItems.OpenChest.IsChestReady:
db B0 01 C3

[DISABLE]
Assets.Scripts.Unity.UI_New.Main.WorldItems.OpenChest.IsChestReady:
db 48 83 EC
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1830</ID>
              <Description>"Attack Through Everything [Enable before placing tower]"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Simulation.Track.Map.IsTargetLineClear:
db B0 01 C3

Assets.Scripts.Simulation.Towers.Projectiles.Projectile.ShouldCollideWithMap:
db B0 00 C3

[DISABLE]
Assets.Scripts.Simulation.Track.Map.IsTargetLineClear:
db 40 55 56

Assets.Scripts.Simulation.Towers.Projectiles.Projectile.ShouldCollideWithMap:
db 48 89 5C
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1832</ID>
              <Description>"Place Towers Anywhere"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
alloc(CanPlaceSave,3)
registersymbol(CanPlaceSave)

CanPlaceSave:
readMem(Assets.Scripts.Simulation.Track.Map.CanPlace,3)

Assets.Scripts.Simulation.Track.Map.CanPlace:
db B0 01 C3

[DISABLE]
Assets.Scripts.Simulation.Track.Map.CanPlace:
readMem(CanPlaceSave,3)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1833</ID>
              <Description>"Infinite Tier 5 Monkeys"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Simulation.Towers.TowerManager.IsTowerPathTierLocked:
db B0 00 C3

[DISABLE]
Assets.Scripts.Simulation.Towers.TowerManager.IsTowerPathTierLocked:
db 48 89 5C
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2238</ID>
              <Description>"Infinite Paragon [DON'T ENABLE UNLESS YOU HAVE THE REQUIREMENTS]"</Description>
              <LastState/>
              <Color>0000FF</Color>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Simulation.Towers.Tower.CanUpgradeToParagon:
db B0 01 C3
 
[DISABLE]
Assets.Scripts.Simulation.Towers.Tower.CanUpgradeToParagon:
db 53 56 57
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1919</ID>
              <Description>"Infinite Heroes"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_HasTowerInventory,Assets.Scripts.Unity.UI_New.InGame.StoreMenu.TowerPurchaseButton.GetLockedState,Assets.Scripts.Unity.UI_New.InGame.StoreMenu.TowerPurchaseButton.GetLockedState+200,48 8B 53 68 45 33 C0)
aobscanregion(get_isThereAny,Assets.Scripts.Simulation.Input.InputManager.CreateTowerAt,Assets.Scripts.Simulation.Input.InputManager.CreateTowerAt+200,48 8B C8 E8 * * * * 84 C0)
registersymbol(get_isThereAny)
alloc(newmem,$1000,"GameAssembly.dll"+3BA79E)
label(code)
label(return)

newmem:

code:
  mov rdx,[rbx+68]
  xor r8d,r8d
  mov al,01
  jmp return+05

get_HasTowerInventory:
  jmp newmem
  nop 2
return:
registersymbol(get_HasTowerInventory)

get_isThereAny:
mov rcx,rax
mov al,01
nop 3
test al,al

[DISABLE]
get_HasTowerInventory:
db 48 8B 53 68 45 33 C0

get_isThereAny:
mov rcx,rax
call Assets.Scripts.Simulation.Input.TowerInventory.HasInventory
test al,al

unregistersymbol(get_isThereAny)
unregistersymbol(get_HasTowerInventory)
dealloc(newmem)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1930</ID>
              <Description>"Rapid Fire"</Description>
              <Options moHideChildren="1"/>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_CalcRateFrames,Assets.Scripts.Simulation.Towers.Weapons.Weapon.CalcRateFrames,Assets.Scripts.Simulation.Towers.Weapons.Weapon.CalcRateFrames+100,F3 0F 10 40 70)
alloc(newmem,$1000,GameAssembly.dll)
label(code)
label(return)
label(fireRate)
registersymbol(fireRate)

newmem:

code:
  movss xmm0,[fireRate]
  jmp return

fireRate:
dd (float)0.01 //CHANGE THIS TO INCREASE/DECREASE RATE (CURRENT VALUE IS AS FAST AS IT CAN BE)

get_CalcRateFrames:
  jmp newmem
return:
registersymbol(get_CalcRateFrames)

[DISABLE]
get_CalcRateFrames:
  db F3 0F 10 40 70

unregistersymbol(get_CalcRateFrames)
dealloc(newmem)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2207</ID>
              <Description>"Banana Farm Rain"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
Assets.Scripts.Simulation.Towers.Weapons.Behaviors.EmissionsPerRoundFilter.FilterEmission:
db B0 01 C3

[DISABLE]
Assets.Scripts.Simulation.Towers.Weapons.Behaviors.EmissionsPerRoundFilter.FilterEmission:
db 40 53 48
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>2208</ID>
              <Description>"Auto Pickup Everything"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_PickupProcess,Assets.Scripts.Simulation.Towers.Projectiles.Behaviors.Pickup.Process,Assets.Scripts.Simulation.Towers.Projectiles.Behaviors.Pickup.Process+300,80 7B 70 00 C6 43 71 00)
registersymbol(get_PickupProcess)
alloc(get_PickupProcessS,12)
registersymbol(get_PickupProcessS)

get_PickupProcessS:
readMem(get_PickupProcess+8,6)

get_PickupProcess+8:
db 90 90 90 90 90 90

[DISABLE]
get_PickupProcess+8:
readMem(get_PickupProcessS,6)

unregistersymbol(get_PickupProcess)
</AssemblerScript>
            </CheatEntry>
            <CheatEntry>
              <ID>1865</ID>
              <Description>"All Avatars Usable"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanregion(get_Avatar,Assets.Scripts.Unity.UI_New.PlayerStats.AvatarItem.ShowLockedAvatar,Assets.Scripts.Unity.UI_New.PlayerStats.AvatarItem.ShowLockedAvatar+100,0F 85 85 00 00 00)
registersymbol(get_Avatar)

get_Avatar:
db E9 86 00 00 00 90

[DISABLE]
get_Avatar:
db 0F 85 85 00 00 00

unregistersymbol(get_Avatar)
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>2166</ID>
          <Description>"[ Temporary Scripts ] [Current: 0]"</Description>
          <Options moHideChildren="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <Color>FF8000</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>2168</ID>
              <Description>"[!] Scripts here will come and go with events [!]"</Description>
              <LastState Value="" RealAddress="00000000"/>
              <Color>000080</Color>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1753</ID>
      <Description>"Other Stuff [Don't use]"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <Color>0000FF</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]
{$lua}
showMessage("TESTING AND OLD SCRIPTS. DON'T USE!!!")

{$asm}
[DISABLE]
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>115</ID>
          <Description>"x100 Insta Monkeys"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
alloc(newmem,2048,"GameAssembly.dll"+3C8E6B) 
label(returnhere)
label(originalcode)
label(exit)

newmem:

originalcode:
mov rax,00000064
xor r8d,r8d
mov rcx,rdi
//SETS TO 100 AND ALLOWS INFINITE USE, BUT ON DISABLE THE AMOUNT YOU USED GETS DECREASED

exit:
jmp returnhere

"GameAssembly.dll"+3C8E6B:
jmp newmem
nop
returnhere:


 
 
[DISABLE]
dealloc(newmem)
"GameAssembly.dll"+3C8E6B:
xor r8d,r8d
mov rcx,rdi
//Alt: db 45 33 C0 48 8B CF
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>1756</ID>
          <Description>"Old MMCost"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanmodule(get_KnowledgeMMCosts,GameAssembly.dll,48 8B 52 78 45 33 C0 48 8B CF)
registersymbol(get_KnowledgeMMCosts)
alloc(savedMMC,5)
registersymbol(savedMMC)

savedMMC:
readMem(get_KnowledgeMMCosts+A,5)

get_KnowledgeMMCosts+A:
db 90 90 90 90 90

get_KnowledgeMMCosts+32:
db 90 90

[DISABLE]
get_KnowledgeMMCosts+A:
readMem(savedMMC,5)

get_KnowledgeMMCosts+32:
db 8B F8

unregistersymbol(get_KnowledgeMMCosts)
unregistersymbol(savedMMC)
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>1769</ID>
          <Description>"Free Crates"</Description>
          <Options moHideChildren="1"/>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanmodule(get_CrateCosts,GameAssembly.dl1,8B 51 10 48 85 C0 0F) //Assets.Scripts.Unity.CollectionEvent.CollectionEventDataHelper.SyncToSku
alloc(newmem,$1000,"GameAssembly.dll"+43A52F)
label(code)
label(return)

newmem:

code:
  mov [rcx+10],#0 //WOOD
  mov [rcx+14],#0 //BRONZE
  mov [rcx+18],#0 //SILVER
  mov [rcx+1C],#0 //GOLD
  mov [rcx+20],#0 //DIAMOND
  mov edx,[rcx+10]
  test rax,rax
  jmp return

get_CrateCosts:
  jmp newmem
  nop
return:
registersymbol(get_CrateCosts)

[DISABLE]
get_CrateCosts:
  db 8B 51 10 48 85 C0

unregistersymbol(get_CrateCosts)
dealloc(newmem)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>2230</ID>
              <Description>"monk"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
{$lua}
if readBytes('get_Hxr') ~= 233 then writeBytes('[Content]+128',255) end
{$asm}
[DISABLE]
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>1779</ID>
          <Description>"[ Extra ]"</Description>
          <Options moHideChildren="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <Color>FF8000</Color>
          <GroupHeader>1</GroupHeader>
          <CheatEntries>
            <CheatEntry>
              <ID>1780</ID>
              <Description>"Remove Player Paused Popup NEEDS FIXING/AOB TO WRONG FUNCTION"</Description>
              <Options moHideChildren="1"/>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
aobscanmodule(get_ShowPlayerPause,GameAsssembly.dll,C3 CC CC 48 89 5C 24 08 48 89 74 24 10 57 48 83 EC 30 80 3D * * * * 00 48 8B FA 48 8B F1 75 12 8B 0D * * * * E8 * * * * C6 05 * * * * 01 48 8B 0D * * * * E8 * * * * 33 D2 48 8B C8 48 8B D8 E8 * * * * 48 8B 15 * * * * 45 33 C9 4C 8B C7 48 8B CB E8 * * * * 48 8B 15 * * * * 45 33 C9 4C 8B C0 48 C7 44 24 20 00 00 00 00 48 8B CE E8 * * * * 48 8B 5C 24 40 48 8B 74 24 48 48 83 C4 30 5F C3 CC CC CC CC 48 89 5C 24 08 48 89 6C 24 10 48 89 74 24 18 48) //Assets.Scripts.Unity.Analytics.AnalyticsManager.CoopLeftLobby
registersymbol(get_ShowPlayerPause)

get_ShowPlayerPause+3:
db C3

[DISABLE]
get_ShowPlayerPause+3:
db 48

unregistersymbol(get_ShowPlayerPause)
</AssemblerScript>
              <CheatEntries>
                <CheatEntry>
                  <ID>2223</ID>
                  <Description>"Hxr"</Description>
                  <LastState/>
                  <VariableType>Auto Assembler Script</VariableType>
                  <AssemblerScript>[ENABLE]
{$lua}
if readQword('[_Hxr]') ~= nil then writeBytes('[_Hxr]+48',00,01) end
AddressList.getMemoryRecordByDescription('monk').Active = false
AddressList.getMemoryRecordByDescription('monk').Active = true
writeBytes('[_Hxr]+48',00)
{$asm}
[DISABLE]
</AssemblerScript>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>1846</ID>
          <Description>"Auto Assemble script"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : BloonsTD6.exe
  Version: 
  Date   : 2020-04-05
  Author : Green

  This script does blah blah blah
}

[ENABLE]
//Assets.Scripts.Unity.CollectionEvent.CollectionEventUI.Open
aobscanmodule(INJECT,GameAssembly.dll,C6 83 F4 00 00 00 01 E8) // should be unique
alloc(newmem,$1000,"GameAssembly.dll"+43F3EB)
alloc(CollectionEventUI,8)
registersymbol(CollectionEventUI)
label(code)
label(return)

newmem:

code:
  mov [CollectionEventUI],rbx
  mov byte ptr [rbx+000000F4],01
  jmp return

INJECT:
  jmp newmem
  nop 2
return:
registersymbol(INJECT)

[DISABLE]
//code from here till the end of the code will be used to disable the cheat
INJECT:
  db C6 83 F4 00 00 00 01

unregistersymbol(INJECT)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "GameAssembly.dll"+43F3EB

"GameAssembly.dll"+43F3C6: 45 33 C0                 -  xor r8d,r8d
"GameAssembly.dll"+43F3C9: 48 8B D9                 -  mov rbx,rcx
"GameAssembly.dll"+43F3CC: E8 1F FD DB FF           -  call GameAssembly.dll+1FF0F0
"GameAssembly.dll"+43F3D1: 33 C9                    -  xor ecx,ecx
"GameAssembly.dll"+43F3D3: E8 48 BC FF FF           -  call GameAssembly.dll+43B020
"GameAssembly.dll"+43F3D8: 33 D2                    -  xor edx,edx
"GameAssembly.dll"+43F3DA: 48 89 83 E8 00 00 00     -  mov [rbx+000000E8],rax
"GameAssembly.dll"+43F3E1: 48 8B CB                 -  mov rcx,rbx
"GameAssembly.dll"+43F3E4: E8 B7 F8 FF FF           -  call GameAssembly.dll+43ECA0
"GameAssembly.dll"+43F3E9: 33 C9                    -  xor ecx,ecx
// ---------- INJECTING HERE ----------
"GameAssembly.dll"+43F3EB: C6 83 F4 00 00 00 01     -  mov byte ptr [rbx+000000F4],01
// ---------- DONE INJECTING  ----------
"GameAssembly.dll"+43F3F2: E8 C9 E5 A6 00           -  call GameAssembly.dll+EAD9C0
"GameAssembly.dll"+43F3F7: 48 8B 8B E0 00 00 00     -  mov rcx,[rbx+000000E0]
"GameAssembly.dll"+43F3FE: F3 0F 11 83 F0 00 00 00  -  movss [rbx+000000F0],xmm0
"GameAssembly.dll"+43F406: 48 85 C9                 -  test rcx,rcx
"GameAssembly.dll"+43F409: 74 1E                    -  je GameAssembly.dll+43F429
"GameAssembly.dll"+43F40B: 33 D2                    -  xor edx,edx
"GameAssembly.dll"+43F40D: E8 CE D8 85 00           -  call GameAssembly.dll+C9CCE0
"GameAssembly.dll"+43F412: 48 85 C0                 -  test rax,rax
"GameAssembly.dll"+43F415: 74 12                    -  je GameAssembly.dll+43F429
"GameAssembly.dll"+43F417: 45 33 C0                 -  xor r8d,r8d
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>1881</ID>
          <Description>"Infinite Range"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
//Assets.Scripts.Simulation.Towers.Behaviors.Attack.Attack.GetVisibleTarget [~+100]
//Assets.Scripts.Simulation.Towers.Projectiles.Projectile.Initialise [~+200]
aobscanmodule(get_OnTheMoveTargetting,GameAssembly.dll,80 BB BC 00 00 00 00 48 C7)
aobscanmodule(get_ProjectileRadius,GameAssembly.dll,8B 41 74 89 87 C0 00 00 00)
alloc(newmem,$1000,"GameAssembly.dll"+78CEE7)
label(code)
label(return)
label(ProjectileRadius)
label(ProjectileRadiusRet)

newmem:
code:
  mov byte ptr [rbx+000000BC],01
  mov [rbx+000000B4],(float)100000
  cmp byte ptr [rbx+000000BC],00
  jmp return

ProjectileRadius:
  mov eax,(float)100000
  mov [rdi+000000C0],eax
  jmp ProjectileRadiusRet

get_OnTheMoveTargetting:
  jmp newmem
  nop 2
return:
registersymbol(get_OnTheMoveTargetting)

get_ProjectileRadius:
  jmp ProjectileRadius
  nop 4
ProjectileRadiusRet:
registersymbol(get_ProjectileRadius)

[DISABLE]
get_OnTheMoveTargetting:
  db 80 BB BC 00 00 00 00

get_projectileRadius:
  db 8B 41 74 89 87 C0 00 00 00

unregistersymbol(get_OnTheMoveTargetting)
unregistersymbol(get_ProjectileRadius)
dealloc(newmem)
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>1825</ID>
          <Description>"Current Selected Tower"</Description>
          <ShowAsSigned>1</ShowAsSigned>
          <Color>000000</Color>
          <VariableType>4 Bytes</VariableType>
          <Address>Simulation</Address>
          <Offsets>
            <Offset>0</Offset>
            <Offset>278</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1778</ID>
          <Description>"Free Upgrades [OLD]"</Description>
          <Options moHideChildren="1"/>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanmodule(get_GetTowerUpgradeCost,GameAssembly.d1l,FF CC CC CC CC CC CC CC CC CC CC CC CC 44 89 4C 24 20 44 89 44 24 18 48 89 54 24 10 48 89 4C 24 08 55 53 56 57 41 54 41 55 41 56 41 57 48 81 EC 98 00 00 00 48 8D 6C 24 30 0F 29 75) //Assets.Scripts.Simulation.Towers.TowerManager.GetTowerUpgradeCost
registersymbol(get_GetTowerUpgradeCost)

get_GetTowerUpgradeCost+0d:
  db C3

[DISABLE]
get_GetTowerUpgradeCost+0d:
  db 44

unregistersymbol(get_GetTowerUpgradeCost)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>2224</ID>
              <Description>"Struct"</Description>
              <LastState/>
              <VariableType>Auto Assembler Script</VariableType>
              <AssemblerScript>[ENABLE]
{$lua}
writeBytes('[_Hxr]+48',00)
{$asm}
[DISABLE]
</AssemblerScript>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>1837</ID>
          <Description>"Collection Event Cheat"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanmodule(get_CollectionInstance,GameAssembly.dll,48 8B 81 B8 00 00 00 48 83 38 00 0F 85 AB)
alloc(newmem,$1000,"GameAssembly.dll"+43B046)
label(code)
label(return)
alloc(CollectionEvent,8) //[x]+x pointer
registersymbol(CollectionEvent)

newmem:

code:
  mov rax,[rcx+000000B8]
  mov [CollectionEvent],rbx
  /*
  push rdi
  push rbx
  mov rax,[rax]
  mov rdi,[rax+30]
  mov rbx,[rdi+18]
  mov rdi,[rbx+10]
  mov rbx,[rdi+30]
  mov [rdi+10],rbx //DIAMOND -&gt; WOOD (1)
  //mov [rdi+14],rbx //DIAMOND -&gt; BRONZE (2)
  //mov [rdi+18],rbx //DIAMOND -&gt; SILVER (3)
  //mov [rdi+1C],rbx //DIAMOND -&gt; GOLD (4)
  mov rdi,[rax+30]
  mov rbx,[rdi+20]
  mov [rbx+10],#0 //WOOD COST(1)
  //mov [rbx+14],#0 //BRONZE COST (2)
  //mov [rbx+18],#0 //SILVER COST (3)
  //mov [rbx+1C],#0 //GOLD COST (4)
  //mov [rbx+20],#0 //DIAMOND COST (5)
  mov rbx,[rdi+30]
  mov [rbx+10],#900 //INCREASE FEATURED AMMOUNT
  pop rbx
  pop rdi
  mov rax,[rcx+000000B8]
  */
  jmp return

get_CollectionInstance:
  jmp newmem
  nop 2
return:
registersymbol(get_CollectionInstance)

[DISABLE]
get_CollectionInstance:
  db 48 8B 81 B8 00 00 00

unregistersymbol(get_CollectionInstance)
dealloc(newmem)
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>2167</ID>
          <Description>"Open Gunner Gift Box"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanregion(get_CanGiftboxBeOpened,Assets.Scripts.Unity.UI_New.Main.WorldItems.OpenGiftbox.CanGiftboxBeOpened,Assets.Scripts.Unity.UI_New.Main.WorldItems.OpenGiftbox.CanGiftboxBeOpened+50,48 83 EC 28 80)
registersymbol(get_CanGiftboxBeOpened)

get_CanGiftboxBeOpened:
db B0 01 C3

[DISABLE]
get_CanGiftboxBeOpened:
db 48 83 EC

unregistersymbol(get_CanGiftboxBeOpened)
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>2187</ID>
          <Description>"C1"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanmodule(get_hasCurrency1,GameAssembly.dll,3B E8 0F 8F 2C 03 00 00)
alloc(newmem,$1000,get_hasCurrency1)
label(code)
label(return)

newmem:

code:
  cmp ebp,eax
  jmp return

get_hasCurrency1:
  jmp newmem
  nop 3
return:
registersymbol(get_hasCurrency1)

[DISABLE]
get_hasCurrency1:
  db 3B E8 0F 8F 2C 03 00 00

unregistersymbol(get_hasCurrency1)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: GameAssembly.dll+3C8937

GameAssembly.dll+3C8905: 0F 84 45 04 00 00        - je GameAssembly.dll+3C8D50
GameAssembly.dll+3C890B: 48 8B 15 F6 47 D4 01     - mov rdx,[GameAssembly.dll+210D108]
GameAssembly.dll+3C8912: E8 39 B4 5D 00           - call GameAssembly.dll+9A3D50
GameAssembly.dll+3C8917: 48 85 C0                 - test rax,rax
GameAssembly.dll+3C891A: 0F 84 30 04 00 00        - je GameAssembly.dll+3C8D50
GameAssembly.dll+3C8920: 48 8B 88 38 01 00 00     - mov rcx,[rax+00000138]
GameAssembly.dll+3C8927: 48 85 C9                 - test rcx,rcx
GameAssembly.dll+3C892A: 0F 84 20 04 00 00        - je GameAssembly.dll+3C8D50
GameAssembly.dll+3C8930: 33 D2                    - xor edx,edx
GameAssembly.dll+3C8932: E8 29 2A FD FF           - call Assets.Scripts.Utils.KonFuze.GetHashCode
// ---------- INJECTING HERE ----------
GameAssembly.dll+3C8937: 3B E8                    - cmp ebp,eax
// ---------- DONE INJECTING  ----------
GameAssembly.dll+3C8939: 0F 8F 2C 03 00 00        - jg GameAssembly.dll+3C8C6B
GameAssembly.dll+3C893F: 4C 89 A4 24 D8 00 00 00  - mov [rsp+000000D8],r12
GameAssembly.dll+3C8947: 4C 89 BC 24 90 00 00 00  - mov [rsp+00000090],r15
GameAssembly.dll+3C894F: 48 8B 83 30 01 00 00     - mov rax,[rbx+00000130]
GameAssembly.dll+3C8956: 48 85 C0                 - test rax,rax
GameAssembly.dll+3C8959: 0F 84 43 04 00 00        - je GameAssembly.dll+3C8DA2
GameAssembly.dll+3C895F: 48 8B 88 B0 00 00 00     - mov rcx,[rax+000000B0]
GameAssembly.dll+3C8966: 48 85 C9                 - test rcx,rcx
GameAssembly.dll+3C8969: 0F 84 33 04 00 00        - je GameAssembly.dll+3C8DA2
GameAssembly.dll+3C896F: 33 D2                    - xor edx,edx
}
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>2191</ID>
          <Description>"Get Collection Event"</Description>
          <Options moHideChildren="1"/>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanregion(get_collectionEvent,Assets.Scripts.Unity.CollectionEvent.CollectionEventFeaturedInstas.Process,Assets.Scripts.Unity.CollectionEvent.CollectionEventFeaturedInstas.Process+100,48 8B D8 48 85 C0) // should be unique
alloc(newmem,$1000,get_collectionEvent)
label(code)
label(return)
alloc(CollectionEvent,8)
registersymbol(CollectionEvent)

newmem:

code:
  mov [CollectionEvent],rax
  mov rbx,rax
  test rax,rax
  jmp return

get_collectionEvent:
  jmp newmem
  nop
return:
registersymbol(get_collectionEvent)

[DISABLE]
get_collectionEvent:
  db 48 8B D8 48 85 C0

unregistersymbol(get_collectionEvent)
dealloc(newmem)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>2192</ID>
              <Description>"Crate Costs"</Description>
              <Options moHideChildren="1"/>
              <LastState Value="" RealAddress="00000000"/>
              <Color>FF8000</Color>
              <GroupHeader>1</GroupHeader>
              <CheatEntries>
                <CheatEntry>
                  <ID>2195</ID>
                  <Description>"Wood"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>CollectionEvent</Address>
                  <Offsets>
                    <Offset>10</Offset>
                    <Offset>20</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2203</ID>
                  <Description>"Bronze"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>CollectionEvent</Address>
                  <Offsets>
                    <Offset>14</Offset>
                    <Offset>20</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2202</ID>
                  <Description>"Silver"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>CollectionEvent</Address>
                  <Offsets>
                    <Offset>18</Offset>
                    <Offset>20</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2201</ID>
                  <Description>"Gold"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>CollectionEvent</Address>
                  <Offsets>
                    <Offset>1C</Offset>
                    <Offset>20</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2200</ID>
                  <Description>"Diamond"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>Byte</VariableType>
                  <Address>CollectionEvent</Address>
                  <Offsets>
                    <Offset>20</Offset>
                    <Offset>20</Offset>
                    <Offset>30</Offset>
                  </Offsets>
                </CheatEntry>
                <CheatEntry>
                  <ID>2194</ID>
                  <Description>"No description"</Description>
                  <ShowAsSigned>0</ShowAsSigned>
                  <VariableType>4 Bytes</VariableType>
                  <Address>CollectionEvent</Address>
                  <Offsets>
                    <Offset>0</Offset>
                  </Offsets>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>2219</ID>
          <Description>"Start Match 1 Player"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
aobscanmodule(isReady,GameAssembly.dll,80 BB 89 01 00 00 00 0F 85)
alloc(newmem,$1000,isReady)
label(code)
label(return)

newmem:
  mov byte ptr [rbx+00000189],01

code:
  cmp byte ptr [rbx+00000189],00
  jmp return

isReady:
  jmp newmem
  nop 2
return:
registersymbol(isReady)

[DISABLE]
isReady:
  db 80 BB 89 01 00 00 00

unregistersymbol(isReady)
dealloc(newmem)
</AssemblerScript>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
  <UserdefinedSymbols/>
  <Comments>GET DUPLICATED METHOD -- TO DO
mF = 0
function getDuplicatedMethod(class, methodName,params)
  local methods = mono_class_enumMethods(mono_findClass(string.match(class, "(.*):"),string.match(class, ":(.*)")))
  for v=1,#methods do
    --print(methods[v].name)
    if methods[v].name == methodName then
       if mF ~= 0 then end mF = mF .. '\n' .. methods[v].method
       else mF = methods[v].method end
    end
  end
  --if params ~= nil then
  --end
end
getDuplicatedMethod('Assets.Scripts.Unity.Player:Btd6Player','ClaimRacePass',nil)
--print(mF)
--print(string.find(mF, "(.*)\n"))
return mono_method_getSignature(mF)
--return
--mono_findMethod('Assets.Scripts.Unity.Player','Btd6Player','GetInstaTower')
--mono_method_getSignature(mono_findMethod('Assets.Scripts.Unity.Player','Btd6Player','GetInstaTower'))
</Comments>
  <Signature>
    <SignedHash HashSize="132">0NS$L^YXqf0:sVPQ(3R?cIqt+k,)gI9vlZeZ*HL9iTI%n$;9+2aTKF4UMTn}pB,:nUD_$T2lhy[Z6_@9o]nESvdqqHSUzY0^qHOYX=e?5Z({Sap9]Mb]ZB96NwIQF]S^[vKI{YdX3[NEr_Fr*Q4Md;lwr}]u8d+Rr4}n{</SignedHash>
    <PublicKey Size="32808">00000i}s?vMMG0HLI3}(0a9]eMc93U:3CmO]+{n-)wvT(4QO;mZ(9d5yOT^o]1-bSy]ZVGZ5nU3hD,*-hEtGKK*D_IDN%!?,?DN(U.qKxAaTg-1{v{G4[15M-hDKPh8W3[vg/1$McT3ImtA7/gOoMI99)9.FAhAkPKzn2V@z{xcEoD98ur*@mRLNd1[yrt0EtjeM-2*Z3IG5A4M_8uQUCw{Pyhe]B=txp000zlu@#^c010qNS#tmY3ljhU3ljkVnw%H[06#2gR9JLaO-wptZ+4ANWN%[,E[iKl0000006af/aA9L;Wpp57WoKz[JtFVBzak*MWIZBRHBB(0a6?HiX-Il/Wm9?iRAYK.V;x6ZKRyaPcsh7)aBXFDVIX+IY.JQpcs)LvWN%[,I(O11ZDn+{FCrj#I)ThxbZb2#L1b?YWgu8hP#^BZa%CVjE.TJ/FflYBH#sgbH8C[eF*Sc5FflVPFf%VPGc7SPIxsmpF+P6^ARr)hARr/;3LqdLJaS{aI#NVNAb4$TZgV/vWM){gXmoUNIxjDGcXuv#GcIp)XD:}1IXN#dGA{YREplXLEpvHpbYXZcZgV3dJ[.ZpARr)hJaS{aIz)l2V^(P5bZKvHAaZ18I$;gOb#y%/A[@cNARr)hARr)[email protected]]Y!B4}7Ua5@t9ZgVbSWN%[,E?N,PFL,@aFEK7KFCq#cARr)hARr)hARr*kZES9HI%H!#B4}7Ua5@t9aCLHQE@l(YFJxmcWo%[[Wo}qHFEK7LFCq#cARr)hARr)hARr*kZES9HI)ThxO-)%[XmoUNIxjD7b1q=IZ)=OGV^dIQcwulaF*lDKZEY[i3LqdLARr)hARr)hAb4$TZgV/wbVYV[JtAmybZ_N@FK%-#VPtP(WiDfHZ7,CXa4#[}FfVgdd2nSfQe_@+b#h}6MRsLwbR!{PARr)hARr)hARr)hcx]NMb2?W$Qe_d6B4}7Ua5@t9ZgVbSWN%[,E?N,PFL,@aFEK7KFLP9RaAhx2Wpi)Ja$^vuWo9EH3LqdLARr)hARr)hAb4$TZgV/tXm50Hb7+gHJtAmybZ_N@FK%-#VPtP(WiDfHZ7+/[email protected]*lDKA[@cNARr)hARr)[email protected]_N@FK%-#VPtP(WiDfHZ7,0bW?axjE-*]53LqdLARr)hARr)hAb4$TZgV/icxh%mB4}7Ua5@t9ZgVbSWN%[,E?N,PFJ+XXW-l::FfSrL3LqdLARr)hARs):ZE!k6a%Ew3Z+o+]Z*]q6WN%[,AW(#.bZ;KLZ+U,)Lm))uX;Me1cXKH]FL-TmIzw]0VRUbDRBvx:J[.ZpARr)hARr)-cx]YxLvm$dbY)/gbY)s:FflnTF*%GMF.p?#Ix^pnG(L)QGCD9YJTG]^a5[VBWnpw;L{7GgJ[.ZpARr)hARr)-cx]YxO:WapWMOn,L{7GgJ}A+dIV}_TEiy4wGBP=dG()dmD:.!TFfcqXcx]YxO:WapWMOn,L{7GgJ[.ZpARr)hARr)-cx]YxO;bmrW[d)mbY)s:FflnTF*%GMF.p?#Ix^pnG(n0TGCD9YJTG]^a5[zIWNBu3L{7GgJ[.ZpARr)hARr)-WMevJZ+py6bUtZqVP_D8aBgQjFJxmnW@ZzBVRSwUARr)hARr)hAUt=(a7_4+Np5p:VQyn)Nkl$*ZE!AWX:FMzW-}HkH*S+{I5Rh8EjVQ}Wi4SiHexL=GGb)9Ibk[sGBjd5FL-TmO-)vUZgX@DZewLhL[P^2ARr)hARr)hJa{zzO-)vPZ*0[BWo}pyL[T/Ja4uwNWIAGDWnyMIF+YqQG-Nj_W-v4^En.LfGA)8@VKz84He*woIWashcx]Y@O+%wxV_8t1ZgfdRJ[.ZpARr)hARr)-cx]Y@O+(6/X:iC{VQfTiV_8t1ZgfdRK6q[#E?WwBI$}jEVrDrpHZ3qTWH(8lFf:hOVq]TkEoL*eHaIjkV;e,rF,4ALZE#IZI!_)GXK8L;Y)#Hkb!{yCbV*:$3LqdLARr)hARs):ZE#IZI!I{AbZ;HbJ[.ZpARr)hARr)hARs)*WM);3WpO=VARr)hARr)hARr)hARr)-a%5(YY-u2JWM);WVRCb2RC#b@Jt9)Nb8mHWV]U.f3LqdLARr)hARr)hARr)hARr)[email protected]:JTG%{MRs(LVPkY?Z+D#cARr)hARr)hARr)hARr)hARs)+bVYV[I%#fmbYX5_Wl2Oncx]YlX:!9SVqs-sW.ro7Eig1;H!Wr]G%,n:[email protected]/nI5ak6H)?z3JTG%{MRs(LX;N0LVQyn)Nkl#hARr)hARr)hARr)hARr)hARs)+bVYV[I)KMgZay,FF+z,UFfB4MR5CI.Gc-ChH7hVOIxsLiFLQK7c62(-Xk}6b3LqdLARr)hARr)hARr)hARr)-b96.@bUJfyW@^L9a%DkhWo}[email protected]{aS7}l!Z,CMkJTG%{MRs(Lb8lvJcVTj6L1$%dbUq3oARr)hARr)hARr)hARs)1a%5(YY-v6UARr)hARr)hARr)hARr)-a%5(YY-u2JWM);WVRCb2RC#b@Jt9)Nb8mHWV]U.f3LqdLARr)hARr)hARr)hARr)[email protected][email protected][.ZpARr)hARr)hARr)hARr)hJacqKc62(vZgX@DZewLhL[T/Ja4u/SWI8c3IXGlEWMVBbFfuhQVq!EkEjck@HZ3z_I5.q4HZ?{}V;[email protected]]WK1J[.ZpARr)hARr)hARr)hARr)hJacqKc62(-Xk}6bGB7bYEio]HGBH##GCDIfIy5+dFfuwYFg!1FbVYV[I)KMgZaxYiARr)hARr)hARr)hARr)hAUtz*MRs(Lb8lvJcVTj6L1$%dbUs03Z)=O2P-t(-Z+ypGa3DiNAShR9Ze)wFb16J8b96.@bUJfyW@^L9a%DkhWo}pn3LqdLARr)hARr)hARr)hARr)-b96.@bUI@bVQyz-WIiuEFLQK7c62(pXkl):Wn={IARr)hARr)hARr)hARr)-FLGpNI(5h@3LqdLARr)hARr)hARr)hJaS{aI(5hma%5(YaA9)DWmI]@Wj!KNWpi)Ja$^v8J[.ZpARr)hARr)hARr)hARr)hJacqKc62(nV^}b6Za!mgZgypIbY*}bFLQK7c62(nV^}b6ZaxYiARr)hARr)hARr)hARr)hAUtz*MRs(LaA9(]ZDn,2a(tara(K*QVQ[G4X:7n?X;V;Xc5Y-YVPtP(WiD][email protected],FK{+WJTG%{MRs(LaA9(]ZDn,2a(tZkARr)hARr)hARr)hARr)-FLGpNI(5h@3LqdLARr)hARr)hARr)hJaS{aI(5hma%5(YaA9)DWmI]@Wj!KNWpi)Ja$^v8J[.ZpARr)hARr)hARr)hARr)hJacqKc62(nV^}b6Za!pXa%pyDWIQi)bVYV[I$;jUX;V;m3LqdLARr)hARr)hARr)hARr)-b96.@bUJWha$#+^bY+gLK4Wigc4cyOWn;@]a(K*QVQ[G4X:7n?X;V;Xc5Y-YVPtP(WiD][email protected],FK{+WJTG%{MRs(LaA9(]ZDn,2a(tZkARr)hARr)hARr)hARr)-FLGpNI(5h@3LqdLARr)hARr)hARr)hJaS{aI(5hma%5(YaA9)DWmI]@Wj!KNWpi)Ja$^v8J[.ZpARr)hARr)hARr)hARr)hJacqKc62(nV^}b6Za#Bic4cHdFLQK7c62(nV^}b6ZaxYiARr)hARr)hARr)hARr)hAUtz*MRs(LX;N0LVQyn)Nkl$*ZE!AWX:FMzW-}HkH*S+{I5Rh8EjVQ}Wi4SiHexL=GGb)9Ibk[sGBjd5FLQK7c62(vZgX@DZewLhL[P^2ARr)hARr)hARr)hARr)hAUtz*MRs(LcW7m9J}A+dIV}_TEiy4wGBP=dG()dmD:.!TFfcqXb96.@bUJrvWo_wSARr)hARr)hARr)hARr)hARs)+bVYV[I(+Jkba!ELWkF_UZgf6DWN%[,AW(#.bZ;KLZ+U,)Lm))uX;Me1cXKH]FLQK7c62()Z*S9NVRB[bXJu{5J[.ZpARr)hARr)hARr)hARr)hJacqKc62(pXkl):Wn={tJTG%{MRs(LV]yP,XJuqQ3LqdLARr)hARr)hARr)hJTG!(W.$$XJ[.ZpARr)hARr)hARs)1a%5(YQ*O^J3LqdLARr)hARs)1cx]Y@O+%,vb98TVc_HmtARr)hARr)hJa{zzO-)vPWpZhDWn?NjZ+3rQWM);WVRCb2RC#b@Jt9)Nb8mHWV]U.f3LqdLARr)hARr)hAUtz*Qe_d3X;N0LVQyn)Nkl$*ZE!AWX:FMvGdVb9IAmfiF*%VUEn.FcH7z,YVKyx?W.i%7V;UHoFk=47FLQKKWo9}QZgX@DZewLhL[P^2ARr)hARr)hARr)-b97Q:W.$eVV_8t1ZgfdRK6q[#E?WwBI$}jEVrDrpHZ3qTWH(8lFf:hOVq]TkEoL*eHaIjkV;e,rF,4AGbW(wzI%IESb!{yCbV*:$3LqdLARr)hARr)hAUtz*Qe_d3Z+pm8X;MU]L}mntZDnqBNkl$*ZE!ARX:FNLVP#?wIWaaZFf=R0EoLw?F*d/bH8L$]GhsG3G(W.5VL358FLQKKWo9}Wa%pF2ZeeUhZ*0[BWo}pyL[P^2ARr)hARr)hJTG]^a7_4+L{hYmc4cHna(K*u3LqdLARr)hARs)(Xm50Hb7+gHIzw-4Z+om/WMw]xJTGu*[email protected])va!qe!Wj,cZARr)hARr)hJalPhW.#!DX:QG7VRUJ4Zay)QFLY@UW.#!DX:QG7VRUJ4ZaxYiARr)hARr)hJalPhW.$3;Wpi)Ab#!TOZaz0MFfcGMFEKDMFfcqXbZKU0I#@O:b8l;QbZKvHJ[.ZpARr)hARr)-bZKU0I$2U;b8l;QbZKvHJ}uKjFfcGLF*%PNFg!1GX:Y_RSyE,lZ*_mRX;V;m3LqdLARr)hARs),X:Y_RQe_@+Y._.LZ+Em=X;;j@JTG*/W?b84Wpi)Ab#!TOZdGn,bUq3oARr)hARr)hJY^%kW.#P{Y.ST=aA9L+J}lNqGc]OfWq4[3Izw-4Z+o(]VPj:J3LqdLARr)hARs)tcxh%jP-%E(Y+/8TZDnqAX;V;mGcz[kFJ+XXW.#%5cx7x?L{[hhZgXjGZaxYiARr)hARr)hJY^%kW.#%5cx7x@L{[hhZgXjGZay/NJTGN/X:XZ5X=SI9Swv{VWo}n6Z+D#cARr)hARs)1a%5(YL{hbha%pgMX;V;m3LqdLJTG!(W.#,tMm]EWFL+k5ZE$U6bYVUUARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)LARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)h3LqdLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hAPOKLARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr)hARr1LARr)hARr)hARr)hARr)hARr)hARr)hARr)LJU?7FVPk7$bRcDJWIZBxB0oOU4N%Vj001CkNK#Dz0D2[:0Dyx40Qvs[0D$QL0Cg_]0P0];06Lfe02gnPU(TfM06$epL[t)_,U$LIcvMyX[vhX[HIrl{J(-afBtuQ.O$ky)A(9Gh1r));+R?}*cXbzbT]ar%lMb#0P!Yuf)gPSk;5xDmg[KF{nVC$#=fql!o!pru5Y}P7[1z!mdFCO@,=jjMw_u[!oJ({3EdT)5AVAYJDl2M^lpGJ}U_9w#We^XCIri=]i+jQL9-H_X8X8.h]4@wTkeZAh$p-8?a1c]-oP=jxoW+aZO,](?9m/TQxRP?X((-+FlpZN*YHC1DO$^0w8@MEzLaxBQPPQk2:VNI1!ieBt6u8]QaNMSvJ{HaQ!HABI;F90r=Aa3lke^EAyW^S-JMNDE,e0S*K}W@kCI[OTA_aQ^LDMt/faiGtBq(M-hG9?xSO_k52[YfjICkPBD2hOWJ]pzx3K1V4hx,/?L]O$KE_bG#Hlw-4gb-aQQhKC-:UIe;MIbCJ0vyMII-X5_Wv2u9H1%eoJod(7xQhyq]r-:Y0E?c4vT8X#^g?T!SW^EU-){g_ad,Guzd8WrI356nb=Y_b%^Siw!!Y1Dmf$#!m(ueM2m*ngWpKNlNK8n8-EK!_X*%JeLD1:RC?m_*+fFDVEiVtlhYo=c*dHu{j^1g1j2/:GdqbXQK?cRU/Jp?CV4:ohMz@1T0*6lx!Uqn4vU=mj,JzjM5{5YzXngwdj^rCTyiDc,?!Jj26Yc6KIG%l167G);/A3QejLGo,ee=Stv{}YeF#yQx;Nh1lKEnb*;bQCT(d/.H0H^nRBiwG9FDom/x%21o!}VmV^NN-pfG1gw:K$d1#fylD2t!/K0tyNXVY6A0oYV*6jm?BB6cln9IF3hjR1{Qm/+=eUAV8qSYz5DAAPCBnF338ui3Ao7sx)6J-Co#h8!;#]M2sCj0q4$}MuXi31S/ia)+uwLU.wZY5z)lsD+yL.q1}f=83POkqTtwx1t7=A1j{wp9Y5xTl-LCY1$RB=_Cb7Kmp@yMtp!B/i)msauVBOa+8qT-zmNj)jvyzz.K:!aC]k_=tX4Z8d@V?gNV_K^ffrtyJ4LDLPh[1=y!FSo[?O7ykQ6B,0HCC[7;Nl92ny2T;a{Z7D(/JfC+azRd=Y6)qOz)6]nWiN2P}FWm]oP19D!z(8E*Ewqel.d$U5/9AVn;Fu)$^jKOBJC#UMSc9_jK?44P(Df]r9l?yyQQ(.U;Xpa2j6aO3++U!!uqgq:G#Vd4DgJV7iG/{4Flq][by=n;!h^?fkE]ayso7h(BxAUhi%$=+Wx5[zH8h44Jj@Wm4Te-TU(GZV^:sI096lbi(LE)CAhGkP0b=s-JkiOm3)yd$GHeY[qmEhbb{mLoJ(i?_1R0#bT90E7XE0B^]zCA{e2,mX]e?_#U)nY4bX.5c9cp+j?JaTCWj*S}3GT{bZH1H6VoYR=^@C:vt,SWFf*D-?pDSu8RDDgpUf031n?zdoXaSd8?[07fIQblD?u4V%^Mmn@y^c,QO1f;qZgf#U]n#?*BuCx!68$pfmcOA?@Pl3yKv=vDS{qv)eNgOQsP0/%d7zF7*?27p]g60yhwpn+T/gaMctW3$5c[y56f#+fGKW5.08Y0.RFIM14t2v/z)LU%yG!j{gO,w@j3=/LrOC.]Jq#RFIo1w3e[X,*]%.LRqOwIN6Vj}1sBMwuLM4j.DV%=9(PG,bgqk]u=(*{Ue6Zs;F(Fc=xn5/qxZBsd.uYN]jvGN^#scxIQAV-)Qe1%L#Alc#@in6VRnWmbzwgwg2vUs@i!V:^@X1PJpc0C1=Rc@F3HSIEslLDq={hH;^T7ZulFFz@8Q_9T+.teFR,aVr2271eL2jvw:e1ib!lt-ovhX$#N)vuOn(1VD;n=0sAP@K5rh3.$[H2%#^W,umRq82}K,2LQXk7oQ?G3[uD11T!=EQj(4sy]vEu5eZXc18QsQP.ve_Oxj=]=w@SK*Sio,M};-38Rmgjp2NVBVx,4B.5dI4LHb0fSQ[?G2593FLC9seqEG=h5etZ?umz/}HxgT#QL_$wMvNGV]uYY01Oy.7G!$,)4Vq=PX_.mqdB]Dnnb-4dVwfc=kVsCB_3yMoc.wh%5JZR%/v7k0!jUAOI)_(nod_L9=yr-j%1Jt%+9E1p3-k66ogfxt#Y?1,Y}bMGg^2;Vx-*UkQ/ns5Ccge[6}/sN5CsIW7z@hEMkDy@]HKLo5hDu#tifPl_J_U]MgGwLQBAF:9$P==i=MUZqcEEQtqz4pvWCj5YqljmJ=pYa6NACP-38JA,#sDUN?[)3nvn_tN)wSci;bsm0A(}#WHQvM0{v{CP+,opUVZw)ZnvUGs_5]WbugBdq4eu-Ff2Y6x*CEE2%u;YH{YXf;H${MGg9sujq0i?D7C:_)I:v_rXIA+g$xA.71sz=Q3/,NmBG:^0,Z8*yldA$JDs2iVA7PysHv#_!I20K)!xc%5vY*RW_x{U9VfGkMeh;.G?5]e$+5?E363Xtf:B^EB!VCYdR%n#EdVy[8[I0ilKkkyCj[PD0CXzIyi%2n8#g?v)P{_BosJHO=gG!Z5#DSDsZe$kydbx54R0[Q^%gI@o8Nrj1Lfrdk))oMh_me*5iNP}))vftF{lbf.y)$VytOq8D[#cne(06F,=.2b-?mB/?H?dXrUB6ZUx8=KT],iV3F(ZbNtygW%l}(NDvtG$1Hu!,2MIFi7Cccu0G%{93XUGXUZqg;[email protected]=#(nt,C])Tp#eQg%b-u^fuMUvgCKeEJO]V#72Uc.!_8OwX_p3TG7JpMf}8rw,-=MFwHOjM5EiouhLlveX(R;HX4KZ#!*P:?8x#bV:V5o*p-^=DDU$.X3*I!w^U+%URM,2?4h6=fEWpm4n[xD1TsouC@UBSIH@0%D!evf/nES@EG5{].qA]L8*lQHN1[Mz^)[^xk4-}%V6cW!A!SjUo%UUgzrNyjpokMt,]FDfIugUu=Qpl50ZuI_1C#,vegMaINyU3sa2!K*rH=:H5Eb*S.UJuNg4eZzs=AQ*(=Ypx8ya}W6c+xwZHa{ZkHwfLMF8V_mJoi@?SigvyHTy3]]wmP?nexC1Ns8+%ZU[j1X4,);,z3vs=k,ev4tTnOsP,K+.m2_Sy#atvOT+2LTj0Kb5.(GdtEClXr6mXr3rDb4i)(VSK#+1o,U0]NX$8wN.Cat3CcE7Zf+];2JX^V32+Oho3Q*/xaXbhD:pGvjf(#2IEBb2s.o@l$xOC_fh7K8u$nMd_FDQUEDgq4+3z+F%+tfS+nj-@%kt0Xk**OaK(I49!R@R$ct/EFBI(Ir}Q;H=lb7dDi*i+Je:L)M.8$:L92.p+Glvr1SV0.x6JV)M*[;xQ04=IaEdI2OY9nrsCUJW2vl7n.qr$fnKsz3zGhWgQ=Q+VQp$p=A8($bZ.pjDs_D_lZ2UajaNfBq9jq%a]hRcu]Uh!.E$9*[yAdb1N*i0o]oCeuYhCOEVexPDbel]6QYWdk+DBR6LeDr,^YZ]@o2e%WFR#0vJB*j*18]1KnW1Nd2zo,AF8DH]%-NhqgQFYu)][:_U%dh1YD#8jT)ba85R6aXdKs[/lc0G(IB#@J0F8IqiPHnJOHBf]+7Ux#2#0Ky]_keHl:n{vnw+FPO$VPR-7nZR=rfF2_W!XL(7$vt;+oabMfcB8qe5hOuErjWs8vS7%NA-HhiJX%a9L[_e[W?yO6BB0[pIJMd(BqS)NR[0?Yd-gQkmJq2E#%=P-oHdZo%$$$hTmiJwJb)!R;p$;-Yg!s*@A{uGmX%%wNwJ)l=$,,!by*kuz5*S2+_M!4[Hid9KEq$nn,vlUd_Da]j}=GcwpzCIc:){g!r[$ph5/Z?ww4Ex.3Nn#!JCWoj9{qkTJVI3^^ZMMFpSCA]b$D9qP%JVPmzm{n:[wpPmdE}%EQm(APANvJGfbh#Pf7WQ#Jp#!T]$:UEmK70EDqJnU[*135MOBI(qv(m%uMo^Gx-02k?1ZuVURg(l^V!LTxl_iGKH.ll9A%2fJoG*;re;;BEw!ME.-jj!^,fG6-?Jcy5zn=0xS@!AM-cU/8)6!,H-.u3WXy[3XSV0Pp,!mPgK$B]F%wIpA+TO.@[q0=:X?lTmsrniJ)!12}*Y5/dE.XOd}?C[H-nIBB)R=J,I$TQQ%0hhA?IboQ5)b^[(*F29I?gXZS49D4TZg^(h7?$^T$!7vOQHU}mNwFnFhgw5sv$FLwN;R/4WJ:.YAfTbC5Jdb9R3B7vvL4}m#cB;UKih]46,T0M83TUg4asW[LQi?*@]rXz+rA^38V$1ZI?7jh88BSR(8r^m+D%5#-eC1!=dC}=v4gk;WA,M^o#lG[L1tDaz2.q_(fUD_HYkJVJaZm8Czxp)GY=p?lzhRdy]%T4rf15}I%qm_l?S,7FBtqCm[[TCTt+tl3dq?}W6dgP}01Cw-5afK1vUA(HCexPWN2XnohI4nS%wDfy$M!]9StkY;#?,W@)f(izpi)UWkVLS_:F_z{-YeR7Ae}dI7l9-n0nc9_-0sb)lO{v4-nZ!B.r/+,F2+Y;:5/7m?@u?:#V:cOK{;xJX%7wn!OP]ik:/@]msYse=zQluA[Ga[]BGtS?B2j{U8aGLSK,HHzWk{Gd6[S-Sc]q%gP$[;FQwae[DY:nWJ(R@uj1ISu!W?4xiMwR14e(P;8kfxAXj*:smvx_/tivbL%*lk^p2A4n%GxfJ]7,V0GniPL_4JnYt)KbH$=^z[vbp7Efj!Qj1fZ/v3cv-.?w{L0uPo63!4uhiQw2QbwS{KEL(@:(nHVA0n%/*3Sn.B$jt#Slcxzzf*fB$zHUQ.E4fFE.em.V^plxkBy2!#(LU]aC[H-n=bPvOes3?s[?aY^2XJylqNMeYC=LrtShE@FGB[$?47,mGn4%vJe4H{+f!}QTNR{G:a$V3VAv*:Z-XeIC9r1,ZIEKfHm#kozolXEHefxm_2RF@3rm7lBg(eW+ddTE+xSXyogD21PAUfke0gxmCmS#W?1gy4JR8(:i/N(o!3#ZuYSz2oIw@{!?7jzjoLU!,Jja}85+;0:/cu{2}:dtP;+R{w=9]c%M5in%{aab^Ya-^cviu=U44_t{f1DR7j-]o2:a55WAWaRyn,1y!G%gY$!hD](!.j2}*!sWC{LP!b#ar3*/b2z8-B3?ZBAKjxoyQ5xRF@^3hbH/IEhYNF+1EB7t?!Mc95S-^Wtau6dZ0EwF1BW,q7tZg)V;8BK/gi5k]t]SqemL,}j-fB$*fMy5%MgOcW^d,xEoq!PFG;h]6,9)df;#Cb=0[DuR]-CAbQkAJqN=WQf?41x?jw4]Uk5qRKuI]F6(@bJ5A55w79*lxp=efCa#$jN.K18O2M%u%lvIg3Yknu%zrhp!^1HA]jK]+XB9ndJgVkyuYgoLr8;3X+/lp_w%N#=ORJ]{M2(qTXRX(t%-x-EhOPkS_H5:Xk[}tHQJ+42BIRpT82,GeEfA!7Of}+sVP+r.rRkgc]@2+l/W94G%dO=c8V2}LM28t-Jn$O#.mu?9DMf)mcyp=P/EMD3j7PF[-%WMW05b!8tx1YtUE9T,xnPd6Qo7T8]B)H6p@Gq}(zK0KhI[xR_C/Fc1=d.V%wq*n$ZxkFmQRD}:y2[nDcd,2tiHk-14:n[sFc:JSgTX*+=K=0K/rRxCX)BLbB6yNq1VCN9:erqPLBTovuy0pE*]@V{H$M:;qu9IGbCZ;.JZZSxTwu}fa2GGmF;cy26M+LCH^UPls!rX*Sak{X03dVIE^]zXy!l7.=D:F}U?#[k;xRo$E{;gw6jW+z0t18KcDn%Z-khhuV=[_}d]1!:cz]De5F]nL:fQd6crU2).6ad^FF5RWBqk?LzNQwYmPYX1hI@#Ctn2[;F52Hpl$V!v3BMt(fO_X}0szki2g[[email protected]^*yXLUpefy+rEOveAVUnbBO18EJQWi?ff]Zyjz/mFtZqA.*BBTECw]@Xe4nbq1basR@BxubT9mHug@Dy{VAUCHi*gUMwz4DF40A3KRxk}]XuIH1amep)mcmCY7m@r:e@O-ZiojLmg7R;[email protected][Eoz,x}I$,r10.FFv1pOL_zX8lf.m0N?J]XZ-]GPR,-Pm+AJa5Qi5Oi,6wh3V-O{JS=2:HEu8)frazI^e14)]sbeiXXO9/y,ELWyUWFuj:c(W^uJ%qKMy.1cmO0V9hfy65t{xCWu81]IC676DIc8^(ZnPQB!sKp,}n:5/OYL+D2$4pj$L1P!Bb)e;^k^Qv4ZltB,+Z,?N$%X^ONF{s(WUGEE39XI]C.{k3y;hJ1PT)M}]12TU$Q[LCnR;8J*[FWx}X[c%@b79)lOaYaBGa+PH4Bz{;w00%p!:E4ZG[1[#VF(3Z}nFpNyPSP9SD6##2qdF:*In;_yoZe81NrKJzxc73[A[^+:A$ul1L7y!+H6-%*G1Fw7v9U8%]MzauWR)oW!x@5wWm*n6?ydH_F5AAo*n+AVFybP?S0Q9zhK4ZP--k-QY(3sIm,+O?o/yBQ;=s*y{0Myq5b-5fKm0q@E3@aYXMWH{N^^diWCu)YHLCGi(aB?6If]CFU2St(P$rS;S0u*7oAPA5$)t{)*=/pv89C*7heohbslqw_?DiwGDa:9EF2m{Y})A3fbE6+V-P*H4*J97eUJ%S$aG}VR%u3zm@LxS+K)Xv_sm.spF-DBdt-e6ifRD{gbv@C0F0az@*Cd%mm[3K]yu3QC8e+U^YcSuWz:KT34%3^([-?JI(SF36te^zQ?De3dVBUxuyjb=zKdrnB@$:5(k,r_8+4gHau/5A!/XMwfvwB=gXB3Tg90QhZf=NauHW!rL#CNr::0I8,Rfl)PAp(dTVBdA()uz9Noz./j0qYIgB9eGaz3.wO!)(OU!MgZXef^S.5^Q]gRz/kV^-Whm8?IGaZzWsEJT/*n)1HjsMLHu}C3Tf%yiYTMg@%XpwHt,Ud9RB/vX+$xY.44:[T},m[cK.6qWin}JU([t}FPD!Kc%Z%]KJa^}1VErHD;Dk.r3IO5u=-teSG?PPUdD{E]j;vZeHh)6/^7MC:i$l8Y;%N?vl;_O5-=(Y[^k6SXUmNr,*i#9:RETwzj/SNr]Hff4;lxpqBp%[G64)cdt[[email protected]]B:]cs?,p21wfN0YWOKod?dP[x%+CS=$}TlAGf)+ug;bTkjha13(^F$sNc?7^SnT?BdC[!=/zF0^^YKEiF5,MM(kZUk5fQxR/u3/_C_J1uR;Rfb-^mXjr]TIezn_v@(wM+jHDSAwJIR1;2L@Xqx=0A8#F[BLF4Zsz4lSs?DKOPWM.?Muef^W(xDy0BAIUphyx5bpSY=gw@4K*#d.{$v}1MIF5zO/%Y#/K}rNR;KhtRS5t$g]UaR/T41wU!2=jJlxQ*TQC)dFi@,nP77JvQ9M*DVQd3jG$mM8cSfIW;4[h^0mH.RRfWLnI25yKweYXZrv7gW[SQsyWf{$AT;affueBLU00S$_nK8hXNJ%pY$8.ZoFeW0jr^#9hs:=o(B(Nd};%=0gn[F/MU=TZmZJ;kfxd+YbdnpK[TNnsm2Sj*(^OR.X97rfLJ72CYwu3isWQ(WooOhF;),zEj4GD-eX%*@b!fPCJ);zFmW(GG{lvSm:Erv8Xg8J;oBg)9Z.iCNEdi5[-*FaVvs_A6j^T;b_ByxI#IxKZE%Yu[OUK-E3{yC/,=yH^!DW5/32lGJ+YDqfGk*2Cd10*OXw+gNA-MfoaeepXpnXa@8VSu7gg7AWt_6pbYHaJxAWAc.X/4@OX$!dTYij*[rMy!-x=qJxLG6dcdau6+tFQ,AteyR*Hwm%H4!hqv3N!6fix+KVM=(O@gpyFFoRW}K,(Bytl[R]!vP,%z[sXpLsRk8G8ff9Nk.TtGm(mzRHD=csCgR4AUFb4FR.aLmiMy=en01oZS=Yc#@1ocvV5?$9UE/JqTtK,tSz;w.PPu4nE]mwRL)HwWCdt$iBj(U+oXj$jyB2Xu:h,[b[cTyAOB00;HcWZDLqq30e=:$-?i(#M#Nv2lio8#g])FD[mi[QhvK=m+4F,pXJArznq3yRIQEt,SkYJ1/lQ0G8G!J}$_h!]pwpfDM}rRwz-Nm/VltA%b-wkSkR%RaT=6wgL^D3p[[dr3plwJ]sUIL8z@(fW;S9L)@bc797ihq9{mlK}e.=p/!q#D,fcn5E-UJL{)Z_5U8zh0LRdXiI0U,tw3vKC8A^%ZbnA-K{w1eo-oG=py$q=hxs.roRScp@#f88fRmTWd.wIUa7e*ufRzml=CTZyQ5jHQyPC(pwMp%$O1ssRsl_$c1KWgV#L%]7RIBq@T)9,Os^}U3h:xT:9]S/5tl3ad*ILXCTwA@?b1H)4WnB^#+ACyl$+xrwIj,68mN@xHr%xBRL]3xVd4I{OC/@jvr)W.1!fawvnh!m4t]x8#A@P[8U^nA!jq}PD[5!Y65A6C9YGe66M[T$6Z.C*t.dCb=KIE-V(zcR(Y-Z=h[5@x=ULh_C(N{K6gx!886==,rY:KsLd.Un2hO$_M00a=ErwSU4bbaE@6bfxSm}IcCAVR!gDDc1jx#!2+(.0y2mM!VnLr,VGcisR)zxeFU.3G#$EfXdrI]18(:P8PH=ASg{lp7[-9kwSVJcC6Gy!?3^Ra#y9[d$A%BR,nvk8EWf%].7XXo6n[9e8}ebl;i_/mlT@=-FG{3W^PlEGgvp3@7NUITgwgBXXjC_He0sPtO?*pEdh[j2H@6TL+gK.,X*pb@?T]g28Izi@(uucCTm.9^A4m]pN^;XdH,g,u:w^ABmA8x%lNvKdN}5^Re$=3jD!#;u#?8P5=Y/w[oMb))l2@Y#:uW(VhsCJ1IVToCcofg,r6U[o7HfPSgM70bJIGATU?5tu6#bg$1}AH3up2F/8FfX{t8=:P,zQUz_C40%uSEgr:ruSS*7HZZ_lV6{)ao499{y0Hd*Sg=V]xn$]:CPMe11OP65Df[Zr8fe9!tEktcy1JtTOL]6g*tVL*kjEh(oZ.RvAtGQ6A*OV5tWh8Avb@s2ZqI}-5c#4v=S/nDjUPkrzTG?.YgzVl]fR32V?s#$!^u+znDUMmQfrE!3]_OKyq?^ZpDJ]IIEagpJbCMlOnNz^3l/]/2cmbm[ph!%+8Mgh=)%bc.-En)HW,s$3Z{R=1D[1BQNViKP4Y]/+kRDQcgznx_A^=}fJ6Ki?K.e$pkMSzd)(f,.7Je#gY36,TZ6$3oJVgbGU=}d/y6mLs;0Urxwj9Anj,[,;S$Ejp!zV15d!/YK$.j{Au$*pA2[S%:B[SldP58ln1,CiysB^.a)2Gji=XA%2fOx(fGZ$YXSQ)9gPS+w:t+xQTl44cF:1s:9:bt-7xLisfxlya+eB}ywm_z(,YXa1/=PP1][Hsg6SQX=zrdHR4eEn53.dZI}/.EN0YIVMIm)tmrvPgrn[-2zjH.0dV?poBrxvWr38{UE=6j.Ax++LI[,}=lS(E*]s36{NIInrSd5WIgy[)vb!47haZTWs0tna7Hk.NZA;tNyg,eu9UuPN?T8yP#7906y=k[IAvg=Oh^Jk^o:uS@I#fj{?ObZ7QPApM3*Wx*TJVBfG/5ZbfO*4ctF_G!]#jir#)G(=BV;9*Ii!%zgR@6kgAT(1QpItp-VwZTV1wgi?*3(EbI6V#b3L$Kc5*XCbX$KhJ*5IWT/qa7-LK7H3W#Ls*1ylnOQYCZX8UuV1uZ0f^#n%b=fm=:/Db]?L;:4SaewwK@zEN.:sg!=(-?;Gh!A[/c+vJ8QR,HY,3bB0Pd,2Cq/P1m.l$FYykuv%xG}lIAVcY{tz7BZn=?0GM}u#zc4wLar{R,U/:5%lKNOv?_HnjZI*VAHn4]ns6yS6h/RQ?O*/.po_R*Y6INNOhm5#.H+0DT3tIJ@DjK*:7RZr:Kya3W9[;L({c4)fAryv4qA],JK%rU]ExQGPJ@L801X$Y)Rn;by(jaw*F_XXm3IK-1ZlHodjZ.L1RWa{,5N3Q90@QL^vT=}whPp?56?BC^(_,#]r(zRN,mP1%[{[email protected]#xo{@@kc6K*C-!AXvBR7W,T[mJNE.{3abIW@oAX]+BfX}c=:EC]#0MrEUixG.?(_;erX3d83=X=w)cit.iy!U:F4j%5901T?TI{TKZg?s.P/mSMgkkH3xo=0ykr@5,A(1wRpq;cySbg3jAGhFvSy;(!YSNFL$AG(Zpto^1UfWJ.HU*r__It2i1*ZhPBELSMD5ZA7@s;Y7n9l3tpUcWxpb];T7Jj_9x^x5%7OV^;Iiy.8S6cj-d7;J@R8yJ_?7Zb.i0{mi.-+=#Z+EO*Uwqoqq33w:T5:sh-5EQ8OlT.oug(Ym[4Tz78MrP)?D3vN*(%1!jS1!TsV8L:uOq:#F.-aH*;hwu4EDyQdV}mtCSvy6s+:$H[uY}^l5QN!J)K-SKQeIbA4^3!iUJqq*aXtKZiY#4?z;[Dh1fD*,g1::KJ-YCS7[SE-6]u7UcnStWl^?s%p(!CN^p1=jj=$t9)BbX=Ku8dz*,dplmIh@6SquC?FfARbn=.Qvh{-=PTvk]xo+pH_4dw=Y;%HKq+Mn3j;l8+K/LK2prh{bGzB^kP5K#b6P0wDJ/6ivT0ZEsHTT%h%?4$F:oj+Ia!x0{p%pDsS;W/f@N@[U8#*d{to)/WhC[q[OmhH[WdH{i*03zn}R{c1;micmzsZ)Bvd-3[Vc!eTP8fHojiz[K9K}i^f?@Tq^OS#$pX]bLc-A:aXcKl9Dhx(S6qfqYj0S!fYd0WI}HbGWjXG=r}+0,hXpZt/:xtu:Usi0#[czCE-SMskxfMsQ1C4A87K-%q20F.m6HkrT$1cVCoCjijRk3AmB6J)PjUcV13S9v[lHLJnsLZbf#of4y6I[Zg-Z;NqQlc8U-XuYDMyiSN--5tptDWl__NSU^yP6q_eBLH,Gfo4-PIM$7E/1!E$76yjrk,/htocP0@kbU$B6bc0vE=kW0NG,/Wt00rh!3*1nQY2[M4VIyiF:^yC/Ktm;02j^g#^c_%F/P3d.dVPgkOU?7n257KokCJlB7%5U:y(CyR4RQ0G(nd20_pHEMVLuCow-s0U.[g,exWV[o?:YbnN4u)@=[8YrBxbI3H5Cb0ISNsaU3gGdBTG,V}e8S]RhsR$a[NFAoSjxpESfV8e#80pc==0s/7auk7qV)wujLN5AKiHxL$1V[qMl*Ef-w^)2[5^9M{%H@m?qZ;RLgNjQ^*c;gq-zt/knjx7+:EkC;Ps%F@1N9sn/EY[xl=HJQQ7Wq_-Fr?[#{r.,_-Hd=07NCH5{8XI!G0Hf6byLLm/v*AR:mtQz2tXEvWO-RSk::v?bjxw8fbcsJAXzkdJ,7,*n;]F].fqmb5:S8**Iwg)OT@?12]_TB=ckc?5@{ycm.cjjoR/r8(/D@B2;fgV*ko$0Jv@UI++Oz)aA}y%[+tqV3.dBA8E6U5Sbs^$h1i5jjii)Q6B3pEHbT6OWbXpoT:g-vvaIsn*C2jj7=RL926:O7liHHai;lE[3x+D%^DjMv*d+Mh:PiDfxWdNLvR[oJ7NU+GL6c)=Ctf^HF9TCfoU=L.CiG^neZU20-VbX(=xDFp(Mmii7-mrVecDNLZvHzk?]FHM@gjcH^i28UZAV;-[N(y?[PJ$p7?Bow}0h]@9pg._1mkS@$$ao$mo/X9@g_gyek9AeZF:XIiG(ePP]apRe9LIv@0kheHsE9D6[v.6[TnW3q5ia^x#C5AcV-uiOX}FY62K4WXFkLWi,[.J]!qa_FhlGZ=TrQs,UQ$vrl9G}s5r7gjZSEi!M?aJ/RIBv_WM,DmsqVMGn]9j@a+z*I/mSLWcyKHLUVZJ[HQDr.+W?3p%M1MR#E+@7%uQ%mymYj.=I$fA@2n%qND4Ep[ubbMfGq0of4f2s9a]i4EG-;DIXOQ=Y{#-_V3@gJlFF8Uuzo[x:U,b6JY%MKz%(d7197WLw83B=c*6ne:}HRxQ03pKXZ@$1Q5n$g^}?23%Y62vtMc:(O6gI+=76Ylks{9oL:Vlmv)1nc9r(thP3=.;-$QFOsXj]([j_OC%18$wQ)wJ$(I=^TEvWSVCfzq+:LnvG9e{0rnP.O*KiTnE/vZ]E2:DW@TfYeE;bz@8$*=ZTBipbsC-CHt$2.ZE6k(}PR;NU3-NWtqI/oC3yfg$^xm?9wM(P;W1,))ny3eq5x#yh}FT+l.?WQG.uD-wNsizI4J3fEWed5GJ-U7_aRnQ)jc-fm=IGGK%UY}%rU0e3)cmA493;#kMBR5yB^2Z{q!)}x!G)Z1zjT_)%zJqJLvgJxjZok*FtAnh+-U]6)N:Z%f?,}c0bQ,]y3eF2SB,0hRHJeS}wry3]tXwt5Jn4ZbXYbzkdA.m-J$R*mfUc_SE$u(cB]2rUtbAjPPl3v41QQw;C8kc=aq%/on5RXK4berb;gslT).p_ZK?J=$:)Fz2m)O-Vr@KFcXUp]NWXb1WK5iW]k]?Zgb@(NP_0+Z_0t7]NuUk0#L1oREPe2Z?bJG{?)gT(oGJN@/[h?RiVd(7I7(LMue+FAPM9WAVI,cy^KmLegCr%=NB@3/AfC3N[5)b*KKu^Dcre/8ed:/(bJt3!5aMD*9;$@j)R-;{A7PYmN]1$NP1cih[6C4ba:*D96g#aMbYBlL[IEYcBhEo_Cqj]cLe#zkqJV=owY=B$BIzZ#!qM#?%^lSqr*zezDZXN8SGN$0d1$Y$;0QT*g*7p1tH9a_d7IJfd/x7FJ?1l9}/UYvF1z!AJTT{YVRS39rvCy2B7Ky#z13R_Ebnx(r)=btWQ/j$QSLNp*w9lIT4A!g$*}rVBt{jQHezKz+D2n0bGB;SM[QBr0fZ2rRSx;n[zufhXq^DzS7z}_mD/thUbGtlWydKJ)J6dXAeeE8,vcju0gxl:@V0ZTJ8.:h@Y_8/cmQ+?2rw$eAVcYfPI9$AVYkG^z?T]Bwc9:6WpTx]:=L,0X@kHQmeymUy-@?j3Cd5QPyZVp1,Eu?wMwv}]yi7+3x*2;#R2YT5-?!d9/At(/AKsU,VD34AU!9)tSx]^G%P.5jr_atW/K4Bu)(cD:.KB5c[!D$I;xymIh}BPI8L;E-4WEq$S^.a9z3tlHF0YZa%5hyxrSJgQ#Mw]5EZ,0oAm)KDc/lWim@lO1(0C,dYPG/)dwg1c*F6He^cPurhWQI0mI8:v+l=ZZ=3rRgk*4X[s?/,xv!9p9(4_*Zc0[{s7,yxvv]W/+d%pGnne;^Ex3_fbO4Zv3sM69QudA(C.HJCB5DZ1eOLx*nO--CMif_/,#*(:DynlGUbh*QWzh+V.OP3F@FIzSQufNvjon}afmYw}8xBpj6aUDDuV.PkZgEv/CRP}*JSB/J#@OrhTVp24J[Dl=nMj,k?x}{eFTC0OMS{,:,zIHXwHf#21$-0M=ezGI73p(NuzO+9HeDA#l+s(coudj,u$$an=vB2!lZ/$OcgF;!EWmRR@/-EKprV{TI-#d61Obm/S!a{Ij0XVS#[email protected]+.@T32%RkYxunc8,+OA[T0CZX^98M:#hCx,TIn-)mlmRMGas[to,Jm3YoJDGCA5;IQu-WZsGJOG-.85LA1.*uCwNF1;%^dRJy$3:$0+{-76y:LA#I9ez!2_#gKA1[*eEbPHNl/qDyN;tD%;griexhHaEaHE:JiB:J+Snad%V%Q!2f)C;KFS2M$/x;?+?Xk3twlyUR/1%oaPXP1bst/XZ]pdU:d[v{={O{IOP4;W]ps_lP[v#YVfXG$LT)N*X)HUCG7[bND)1y[xqP5dktY1_Hyw[_+-u[B,JERYH!9.E?9+gKP!.6Y@Q5FBVb+K{T*BJ)fSsoVPeQ8$GBXjfbn!+@%dd2_FI[(o%k*@e${^ivAG86jRtGFw:JoQh.w88.rw)w9$]{w)QnJs![MItMI3L*t9qh=$9UHILiQ$^q6FhhrGP7AJ/d6y6:8,tv-O)b3b^*3d2;glIviTg/YIQVh+(6GARwptup{KKBPjXKlew#dQ1E355w;mfHv)}lmjEBkOp@a2tv@rqrDyRkxIuXBQ)H.Ongv.gRwK@5dCSc$9Fim{Eu.%QUOX3[N*[/[G]mH{b!0p^?xSiaH^g:Wu3GJ;C4W8%BR3]wYb?Y8v-W.%22cmaxn]-Np@49is2rB;!!7@rPT1Qh]bIrDLRbQ-G=JEbuoQMF8onP@C0L()MyCIB5(t=HXj}HeXFli#Jvt}bvPd?hWCoSDGXMcH_H5+}=y[4fw[4]z2?7]^As8ej}+m2L]pWA;ntHGtEKVA0WM_%[IK69,2(K7F:@hZHavV?HrH}hg)pwErIY5kgmg5WrO0Hry32o4Iw(:DgLqfds-/pQM%f.{]G$%dZb,$^R]:;vwLy,!GL-,qlNmoA^8z5)64#Ud}$2n40?JV(Xf8fE2bkg7N@kU/v[fo^;!08ilOQ]soYzlyNly,Kt{Beb,QAU)Zb*xm:YuP[Yb3Jnco9)i.cLs29rmnk{w*OBL)%Pmr%riZ4+b2j?!+tgeH/als$edt$TW)oN/)M^*hm8#4;XU-ht:0bW59S$A#)66u%a5,5.n=Btmq]A4C[e6nw:Uu3K[Bz#l(7Xdd+VnroLxu+@qwnjE?@YZA(SRmMEko4C4gcWOYODLHr-z]v(huGef#/(ELNDd4r#w4:uI8:_K9+G[QC/!J-[,F9PLadI!wCR#;!:JcefmzpSG$4CsZgb*:Ieggo5Sj}7RSpg)xB4.@X4OZ^Ri9RwY6qCD$3?Z@XyQ{nhkYb-FKm1=z$qcsj0EN@2)Sl)[]6kK%d{QhuQ3+$0yqnq*[{UPe@R0AO1{:(YuI$odcqxKn*#MD-Y3=F;!GTFq=hXZ#H{A]^GNG[3phZVgB6RlC@UHxbX0BG(MD}V_b6#CtF,QFO1:1._Ac_xeoc$ZO!U@l,ET,U%OgOxm,de)^q%JCNL7](j{#:2EtCC%2pK:*Oj}#v;iO-=uhmh9+BiWGU(wdI#:I+HQbzM!=:*.ZeDqrH5;S!bx]ZH-_3ex^X*#eInoCN(;BrLqN9Pi@AYj,(JPup6=J0XPElR$v/)^{V.-G8]gU?I2?]S4YYYYtsOa@eCfsid]SzQ0TtI-uGJfKCL]MM:CPGb8]$KnqamDn@vlF570F}P9I.{mh_0e)?]]^recX04f961bRWFR0wlP60[HPh1]jz)Qw,x=a.2VQ($nyXiTq#u7G2{[qlHuJG,=((!{00A%EXUzsSZ{W5^i0Ap9%:XZ1/r@OTaXCHmA/EdFRwJ.rH9Pc,(,=e*Xx6!KQO]ToDbuuvl@jJqf%E5pN2fz,w^O!PK2,nUbKJ6J%RrQs7OLwS8Xo%Qn^S]!K4^2apVLL0QgR$dpE]lQZea4Xhj8k677{_H(_*?2sZ;HKqmXmy0vI.}nqfS{Bc2CEQn-Ba9BQhokd*FB^Ra+N!!U5UUEmlVG)#giIu:SLg[xM]2vDk@4Gl$eV+^*fGj?Nm1C1,QMV=H7CqMmYX@:+lYBE^:^;A6JY5{.cb]wt!1OimS9SUm}o)C?j5L}=HyAPO/kSAo#(6fjDpE=?#^/_jtGy]Z76oUnzsrvKVGn{c0Cz!CX^s16rXs8Z8mX$,CM?QI)5AVk+RZ7C.a.gdoa!9AsWbZ#/6fc)t0D!!vCO]Pt)VxP%ZOxHZ[v;DGX^dGNJ?,zUVR5Sb8@@.x^@*DX+*uf(xW.Fm=cX_j%w*QI[uk@}c;3QQb(AT0A49)SYIpGAgCzpk]xI4#Q.+u@K!vuCkdn]K^e$k-=Ga@3$z_:n=:OUWv!?V%*vec*@-GrB8=k9ama==eAqa:N@{aFTJVnvLSw_a$-%!+qT_Ufu?2K%}baby/)xV^%YRETxPFwFC*x$P*+hn?gC^$5VUJ]ux?WrqlpOyfiYF{D0+g7hsKN{pZQ^A_JO85PDM,0)l;gyLTnc)c+dk7O29[v%}uc/z+DkwPG^jEP7kQ4!_)jq]d2VM(}GfnYVd.Y_Pgw6(?1[OY,uJ)FRR?P4uTQ@@o05JoAE%_KMOZ4.4@%SeO?^c{gNP1%CCje;zlmaLh^%!]}xLq.JU?)XeM,@cG.z}*.+Z%IsXIv;M5Arg)MpamFLig:A$F(Fc8zl_.oNd[f?TS;MO/:XUsNf?qj*i@t$t6KXn{xMA05tW[JwM4dWXMc9D!QMK,{Q2*%97$U.U9l:)v[5=w?jFLpDSM9gI6k5KGziAJPV2nc3iqN8fj=:zi?t6+!E9/22kHRW}];:H.*V;Z8mG^t1C[b2zJNEYa13Ux:(tH)-@t[gP#SXVgbOEZr{NWJ2vhiRet]lm[MvKCabUKo1U7{+D[)kP/L!xGHJCoX*c]qIb!RUGxF+xr*B)vSXon)E#UGci:%g,sK(YTM%xDt8Uz3VmoDane6;5rtxwRICrwIs;l5=/K-z4L0aq=)Y0jRxY/g)g1iD,dG%i3Bp^S{V3OaiDZ1}3=T@Ef_%Oj8WFi)2mUU$4cg.yxlUC:290H$c}^?-$%fVr}f:1-F!^mo]Eia@])d]y0RK2J2%Rw{G@M}cmEm2+6QC9T%/F$m*60d5Dh?Bba4VbKVU)4t3:R76BZ!sT;:VHucAEvT:l1LLMakR)]@gC.N#Dzy=#@@J($i-pN#0!:eu8P5)Sg/Jt$NHDs]C4lEy6c-jDBs;)_y2rv.Qi6Sq8]ti,7qZIA;yBriUNC;bGrfBxr:EP{mDfrExNQzIPm%.wilAQtpyJ@N.!8YM(Lr[H7)w7e.Ca$$6o62*ojN0ia@fMtPDyo]hwlLdj9.TZhqg!RitRbHq?[nK,)Y5[eY=P9n.?]e3B%pD08phc==[:C5kez4EBvN-I0q#8Ju%/I2/s3V+k![Z#aCb[@l)dlgGAewM@aM3mR3CNl1eBgX;ca_uCqzNQ^/IR[%3q]01XhpD@ys2i12@0)cCHgzQee2@ApaZq8Z+pO=K??Sb2F=[[i$/08^{e5dc+5M%]TiP;{^_ffph093}wsHiipy5#;QNjAG7;60Tu^HH+Bbg+Ai/^0$R,kCgC[6Yi}*H2=DwxfOY:s)bOJ][xyi*COlAEd$U3pg{?kQ8okoTDVvN%x%KogfQ0-VO}n%dP*-hk]h?HH?k;yR7m+mzyF,.)8nRs8HHqCkjSA![+)_w#{eO4r*/LKgzz1aX0${MT;$9)^Cr,U$_yI?)0Q7]ATlg06mMNW@y!iM#-_hd@udkRCa5%l7)ZkpLPA1OUs)Z{Tn=E]4xKI).0ZJ{HNkGPfubnLDGFAL1vRy]sIIC,LSiBqmV-:2K]ECbEFv7+?NiHR0h8GZmSa$1G}*c3GjP*@VkS%gdHy[d^]jWh+:L@[v}_lzdq/BRWfSvEtri..a)Sl!,Qo^fD5T..#YAPdOZp6HNp4334[-oax!;/e!I76RT_8-C,/xhn2)(+yh?XkVC[OZTlPH7qA#]2I!HHX0t-_kdf;3Z0?T4Wb/9^zgB77nUXawMN-hv+_epOiqP4JB5S{EW^qVO[[veCC#e{@.;4gv0HN18$coT4GIR:od??lJKX3}y0m;2gma_F$g]1*f.[j80cusd$M{,a$ms?=HhsW9]JY8Af9G#U@@Y#NdeXN:ZO7NCG}+gwNuADZf0f2,(.Ad,#3d[G]AKD)n+Za7cbfYH(pdf_tmPDEo4W;].DfVAB3x)b(ladZ@I.({-Ju;EI-K;6XwyYM2:bI4kc@r{z#EhQ384g.EJhM!^HCN=Kc62W)!s@6l6@^TY;J3#!K7j^z-aoIZXW3WW,oM,{2PCWn*DLrzf$2?Qc/p,IYEE1XsvnwlC;P=!(OfCfCr.qsNsh;MLyoL-OUsA#CvYLFBKjYfm2%1S8YN_2-sCe%V69SO!+ig:_G1Lw{GJ$vfJ3mF,1XMX%KyGfk1%Vh(iQwRwO_D@!xlrT@)5Y8d-A^mLWio_xncMIRG2uyU}WjQ4vDU):cDd/Q(FmdZ5/!61R3Ute,dI@At0LlyVkQxM5vR-sjAQ3%BnZ)*$NOtAO^JzWj)L_}Qyr1xLl0ujiaOD!ufrRgaz3dWRvAFdC%Tn.N3-n_JdQc,o;z^i+-r2j=LwIPar)lse70M?]ycGW4,T#MC]Fs6z7u%RbK8VK1A)?wGxTOU#r@Le(4GJak.;81UToPH88f(XWw$Op%lO62BAtl#}@AbZ@mqb1(39li!FCzh2Lb%Q.p*m;H@KVH%PmuOorvkpGT?ik_:KmC1sbOFx#=mQ=f}219=R1LuqYo=56IRN18OL+oiHSjINF-lYc2oW8bHDxYy}t=RX*zDiJTL^!H?nePTnw9:fj%h[27;^N#o^=)9x{+,DJYdnSY$F7E6UNUS0D81),76D4HcCYU_ckMq@5#lJR!U=Pz^A#0gK6uz2ELZdjEkapD[c+(]]u!t+CBjI5F/Rg{n=-tQ_af[}h+D;@uP6Pp2;N4Ruy1RWiiJ.FkcXsEEA8I(l((Qc5I3a-E_CugL$mi4N^1GRa;M/q}0)hFe4?LL}hyrv([Nr@K8D#96dGNR96R:%hwLs(s?zF:P@?={#3J2fsmdU}t%5,;={mrwr1@L$=8lv$NKcPIxYYm8du)ATc$suj+kNKH[2Sja7ZT$Dgfz2f/%[aa@63S0(uHS$KK#WVnN8$xA;}$]?%w/DU_8OMai}Kn_peE.ULHKe[41xRYpqL;u8{0G+N$pY^8$KYcj}+o*Uly/SoxJ5(b[1_#[^CGkW%,QQt}wru}jfLlVtJJBhrArRL[b@zQw0LTb{AY3j7uhWII^re9-btAt)JNfI,tu65hbxnn2R6tA(TJ264SQbvJ3D;S(MNIeZPzPwhuq?O83Iyr2)CKuDjEn=N00F81D3uCCb(rN7AOH;+jqqq4nwy%=P+.l@SMy-E,R:ab2ryAm::sxW1o!Dzp4)7(CV1@%KR.qNRc[n%($nu88pN%VJV[FuX%24JFM946?0a7FCCbT4h^Q;)y.LweI;;_YZ+Ay6u;9MNNWb6WI]H@pegelyfR;i5p)_k_D+.?WpRh=A!ud{A@#?U;AGi@n)AxiB-Va3mX}[F2p*{/4KOm.7,ghbYlaoXnBmkmx]*3c)QBiaFm9LGK9u@(R;C)o}FFv}[,{_z}Z)0Pes;7mH7eJH}o;0mAMJJS;?-rQHSY#)rkF,n9mdGj9f#:qd7fN)u.21vxbvqjS8)Zm_rT;?8i$5qyWsJhV[P^@h(s+drX@@h!l,.,Tx1giv#_VOC;/$aza5(W#i?Dc;4@BR}i.y=]tWZAwBLS$:2Se6sf-5%%[WXQQmscPtI2fU!p$HDqLatOGBqRi)VX-h/TH$s(5f%^,,RcJxImk#7C$f(BxuFRGYBd{-JDgfAvLBoTwcCyO(p(fU7ZfRbM={.IJoe/_(_t.4@X5Ifb=MT?Y[DFuxEnWa?B}4CrfHDmFMjSA?8@;H:jOz4)EB*6$#tDQr-rzVV0GltxzYLI7?c[s^!F};vw.N92Ywz4aT}C[*ewcPtIzG;Z:r0rq94*0]r*@JPF(,^+3T91^#r+mokZg7C)R.#iw,$A9p]fX8MB]7+*JV/[3A(m_MAVA1,T;{gzim{B7@%+yw6TNQGdBYCn0xd###DIA+r0YI+{XyXrMFxbruzLrQen4fPd*3,2H-w;,en8iLP{fW70LdyQ**uyg):V.]zYR,C:d?SV}3[MTIw(7cN_s(7Zf;@ZcNF2R1^cdI_t!JP*n81/Lamp;J)Pl+/jSxdk=;9l.=%Pz9)F9Hd1:L@M/i1/WQh/O)G$mKIc08lh6F!Ku_}2-c!DA^-=H2f_GdKt:gAy#L.ZPY*eBuB?zlR8hfo=eotq,r4GW*/rjO7K.?z(So=7cAE/g4K3*@JM}_!!gnUrxI6xP2YIt3l%r],lW4Fu3p]JNAQExvWTN,RBO-X[/@3(Y/!h${?MMILy];]n^gprG^EkOw,hYIQ+4e=j_E2Hc:jVg4v@Ig}0kv9/?4x;Z^rdKY!O+j/grAh8!#nT253SC-w?qQULsego:-jJFsHg?;y8!}wYPC:,1K[aR5#B8tjTS3H!+sY(TZ!7)cr+,d44Nci2?qP/ii+x,*oWYO*KqWi*r(_/F^H+shQ_#ZI,!T0DF5T=KmFMZfIEC-AE#2O5EU7P$jC[Obdh%f@zP^LAS$XS?IReCjG5EhPQ^n+Zkjb4/eP651YEhYKW61=Ck5GO1,X+.xla+1_E2K#=*WbUP=buB0_yRZ.D8}BkJl5DJe:pTrFwlBW/Na!efmC%h:_eRj_8]vpsuY2;2N_pkx.Q57=uN+5QmzeAZS2/A%Iq8,u5$Ds:AIt2Y$e3JI_x7ugwg:GHlo_=(X)X47S-=D[NEyva+ib:gynMaU2JR?#LECpO_=UK/_z[Q4p%_$gvIlU+BHfznxHgM2YUZZw]liwYv(!N5,Yvdy5{/GIzoAE]W9lp#9Safu/Rxq?,lzt[rj?)FS1T$T-Yjv.:W,nO)kHWo0hTo(5/H(llqC+-ErM#7#U[O6.,70boA:^8Mt!ph0Sv%V{wDY33ac2MB[IOeVwFF[Z2B:-qKAVJT)Yv=bZCPgud#*jf-HBaoH]nVUWlbmI7t$PMeRqpc%CY}is8-lxCk$:#+uT;upU@#2S1q$Mp}W[X^?00000NkvXXu0mjfga7}l0cu0]=H$/B3X1/?GY(=f-TbdD(Gi!jrj35_z5iq9Xh}?nlG,H(l_JCOMG^+)^u+@3h=l?hj0_64QR(Q7n{z?%s[,uxpr7Gt#mQJnTRa+-y@{XCN4y+C4Tdh[B;O9BTJlxzv@UOa!lE9orAu9Im9t?h/72(@G?BVNF,SE5</PublicKey>
  </Signature>
</CheatTable>
 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Our picks

    • Darkstar: Idle RPG v1.1.79 +2 Cheats
      Mod APK Game Name: Darkstar: Idle RPG By Neptune Company
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.funstay.android.global.idlerpgv1

       

      🤩 Hack Features

      - Damage Multiplier
      - Never Die

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Agree
        • Thanks
        • Winner
        • Like
      • 5 replies
    • SoulGuardians 2 PLUS - GranAge v1.0.20 +2 Cheats
      Mod APK Game Name: SoulGuardians 2 PLUS - GranAge
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.proximadx.projectsoul

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Agree
        • Winner
        • Like
      • 5 replies
    • OUTERPLANE - Strategy Anime v1.3.38 +2 Cheats
      Mod APK Game Name: OUTERPLANE - Strategy Anime By Major Nine Co., Ltd.
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.smilegate.outerplane.stove.google

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - Theo1357

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Informative
        • Agree
        • Thanks
        • Like
      • 8 replies
    • Hero Wars: Alliance v1.267.002 +2 Cheats
      Mod APK Game Name: Hero Wars: Alliance Fantasy By Nexters Global LTD
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.nexters.herowars

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Agree
        • Winner
        • Like
      • 17 replies
    • Amikin Village: Magic Sim RPG v1.6.1 +5 Jailed Cheats [ Damage + More ]
      Modded/Hacked App: Amikin Village: Magic Sim RPG By HELIO LTD
      Bundle ID: com.heliogames.amikin.survival
      App Store Link: https://apps.apple.com/us/app/amikin-village-magic-sim-rpg/id6478102304?uo=4

       


      🤩 Hack Features

      - Damage Multiplier
      - God Mode
      - Speed Multiplier
      - Unlimited Weapon Durability
      - Split Hack
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 361 replies
    • Mini Soccer Star 2025 v1.76 +3 Jailed Cheats [ Unlimited Currencies ]
      Modded/Hacked App: Mini Soccer Star 2025 By VIVA GAMES S.L.
      Bundle ID: com.touch2goal.soccer
      iTunes Store Link: https://apps.apple.com/us/app/mini-soccer-star-2025/id1636072966?uo=4


      Hack Features:
      - Unlimited Coins -> Earn or spend some.
      - Unlimited Gems -> Earn or spend some.
      - Unlimited Energy -> Will not decrease.


      Jailbreak required hack(s): https://iosgods.com/topic/169059-mini-soccer-star-2023-all-versions-3-cheats-unlimited-currencies/
      Modded Android APK(s): https://iosgods.com/forum/68-android-section/
      For more fun, check out the Club(s): https://iosgods.com/clubs/
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 190 replies
    • Dungeon Random Defense v1.1.0 +2 Cheats
      Mod APK Game Name: Dungeon Random Defense By AlohaFactory
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.dungeonrandomdefense.google

       

      🤩 Hack Features

      - Damage Multiplier
      - No ADS

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Like
      • 2 replies
    • Ash & Snow : Cat Pop'n Match v1.6.13 [ +1 Jailed ] Unlimited Coins
      Modded/Hacked App: Ash & Snow : Cat Pop'n Match By IGNITION M CO., LTD.
      Bundle ID: com.ignm.catspuzzle
      App Store Link: https://apps.apple.com/ph/app/ash-snow-cat-popn-match/id6740790541?uo=
      🤩 Hack Features

      Unlimited Coins
      • 0 replies
    • Ash & Snow : Cat Pop'n Match v1.6.13 [ +1 Cheats ] Unlimited Coins
      Modded/Hacked App: Ash & Snow : Cat Pop'n Match By IGNITION M CO., LTD.
      Bundle ID: com.ignm.catspuzzle
      App Store Link: https://apps.apple.com/ph/app/ash-snow-cat-popn-match/id6740790541?uo=4

      🤩 Hack Features

      - Unlimited Coins
      • 0 replies
    • West Game II v1.5.4 +2 Cheats
      Mod APK Game Name: West Game II
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=leyi.cowboyclash3

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Informative
        • Agree
        • Haha
        • Thanks
        • Winner
        • Like
      • 15 replies
    • (Heaven Burns Red Japan) ヘブンバーンズレッド v6.0.5 +2 Cheats
      Mod APK Game Name: ヘブンバーンズレッド By WFS, Inc.
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.heavenburnsred

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
        • Like
      • 1 reply
    • The Eminence in Shadow RPG v4.3.0 +2 Cheats
      Mod APK Game Name: The Eminence in Shadow RPG By Crunchyroll Games, LLC
      Rooted Device: Not Required.
      Google Play Store Link: https://play.google.com/store/apps/details?id=com.crunchyroll.eminenceinshadowrpg

       

      🤩 Hack Features

      - Damage Multiplier
      - Defense Multiplier

       

      ⬇️ Android Mod APK Download Link


      Hidden Content

      Download Modded APK







       

      📖 Android Installation Instructions

      STEP 1: Download the modded APK file from the link above using your preferred Android browser or download manager.
      STEP 2: Once the download is complete, open your file manager and locate the downloaded .apk file (usually in the Downloads folder).
      STEP 3: Tap the APK file, then select Install. If prompted, enable Install from Unknown Sources in your device settings.
      STEP 3A: If the mod includes an OBB file, extract it if it’s inside an archive. Then move the folder to: /Android/obb/
      STEP 3B: If the mod includes a DATA file, extract it if it’s archived. Then move the folder to: /Android/data/
      STEP 4: Once installed, open the game and toggle your desired cheats & features through the APK mod menu. Enjoy!

       

      NOTE: If you have any questions or issues, read our Frequently Asked Questions topic. If you still need help, post your issue below and we’ll assist you as soon as possible. If the mod works for you, please share your feedback to help other members!

       

      🙌 Credits

      - AlyssaX64

       

      📷 Cheat Video/Screenshots

      N/A

       

       iOS & iPadOS App Hacks
      If you’re looking for Non-Jailbroken & No Jailbreak required iOS IPA hacks, visit the iOS Game Cheats & Hacks or the iOSGods App for a variety of modded games and apps for non-jailbroken iOS devices.
      • 2 replies
×
  • Create New...

Important Information

We would like to place cookies on your device to help make this website better. The website cannot give you the best user experience without cookies. You can accept or decline our cookies. You may also adjust your cookie settings. Privacy Policy - Guidelines