timderspieler / DeluxeCombat-Issues

Official repository for feature requests and bug reports related to DeluxeCombat
0 stars 0 forks source link

[latest BUG!] java.lang.OutOfMemoryError #89

Open GG-MD opened 2 weeks ago

GG-MD commented 2 weeks ago

Has this issue already been reported? Did you ask for help before making this report?

DeluxeCombat Version

Server Software / Version

Current Purpur Version: 1.21.1-2298-a61db94 (MC: 1.21.1)*
* You are 1 version(s) behind
Download the new version at: https://purpurmc.org/downloads
Previous: 1.21-2284-4e55e26 (MC: 1.21)

Your discord name

ggrich1

Current Behavior

Very rare, drop to TPS 6.0 and console error messages.

Expected Behavior

Unidentified

Steps To Reproduce

Unidentified.

Error console:

[21:02:44] [Server thread/WARN]: Can't keep up! Is the server overloaded? Running 2593ms or 51 ticks behind
[21:02:44] [Server thread/WARN]: SonTravomana moved too quickly! 0.06197736208355309,-8.155232004516598,-8.010591227321129
[21:02:44] [Server thread/WARN]: katrinka moved too quickly! 3.0989025323697206,0.7531999805212024,-10.629981883439541
[21:02:51] [Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PURPUR - THIS IS NOT A BUG OR A CRASH  - 1.21.1-2298-a61db94 (MC: 1.21.1) ---
[21:02:51] [Watchdog Thread/ERROR]: The server has not responded for 5 seconds! Creating thread dump
[21:02:51] [Watchdog Thread/ERROR]: ------------------------------
[21:02:51] [Watchdog Thread/ERROR]: Server thread dump (Look for plugins here before reporting to Purpur!):
[21:02:51] [Watchdog Thread/ERROR]: ------------------------------
[21:02:51] [Watchdog Thread/ERROR]: Current Thread: Server thread
[21:02:51] [Server thread/INFO]: [ChatControlRed] [admin] MDucke: на первую букву нажми)
[21:02:51] [Watchdog Thread/ERROR]:     PID: 46 | Suspended: false | Native: false | State: RUNNABLE
[21:02:51] [Watchdog Thread/ERROR]:     Stack:
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern.lambda$union$3(Pattern.java:5802)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$$Lambda/0x800000033.is(Unknown Source)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$BmpCharPropertyGreedy.match(Pattern.java:4502)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$GroupHead.match(Pattern.java:4969)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$Branch.match(Pattern.java:4912)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$GroupHead.match(Pattern.java:4969)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$Branch.match(Pattern.java:4914)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Pattern$StartS.match(Pattern.java:3820)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Matcher.search(Matcher.java:1767)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.util.regex.Matcher.find(Matcher.java:787)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.util.CraftChatMessage$StringMessage.<init>(CraftChatMessage.java:74)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.util.CraftChatMessage.fromString(CraftChatMessage.java:219)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.util.CraftChatMessage.fromString(CraftChatMessage.java:215)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.util.CraftChatMessage.fromStringOrNull(CraftChatMessage.java:199)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.util.CraftChatMessage.fromStringOrNull(CraftChatMessage.java:195)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.inventory.CraftMetaItem.setDisplayName(CraftMetaItem.java:1041)
[21:02:51] [Watchdog Thread/ERROR]:         AdvancedEnchantments-9.10.6.jar//net.advancedplugins.ae.impl.utils.items.ItemBuilder.<init>(ItemBuilder.java:79)
[21:02:51] [Watchdog Thread/ERROR]:         AdvancedEnchantments-9.10.6.jar//net.advancedplugins.ae.items.item.RandomizationScroll.build(RandomizationScroll.java:26)
[21:02:51] [Watchdog Thread/ERROR]:         AdvancedEnchantments-9.10.6.jar//net.advancedplugins.ae.items.AEItem.onInteractEvent(AEItem.java:51)
[21:02:51] [Watchdog Thread/ERROR]:         com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor717.execute(Unknown Source)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.plugin.EventExecutor$2.execute(EventExecutor.java:77)
[21:02:51] [Watchdog Thread/ERROR]:         co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70)
[21:02:51] [Watchdog Thread/ERROR]:         io.papermc.paper.plugin.manager.PaperEventManager.callEvent(PaperEventManager.java:54)
[21:02:51] [Watchdog Thread/ERROR]:         io.papermc.paper.plugin.manager.PaperPluginManagerImpl.callEvent(PaperPluginManagerImpl.java:131)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:630)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:604)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:560)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:555)
[21:02:51] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:551)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.network.ServerGamePacketListenerImpl.handleUseItem(ServerGamePacketListenerImpl.java:2088)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.network.protocol.game.ServerboundUseItemPacket.handle(ServerboundUseItemPacket.java:47)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.network.protocol.game.ServerboundUseItemPacket.handle(ServerboundUseItemPacket.java:10)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.network.protocol.PacketUtils.lambda$ensureRunningOnSameThread$0(PacketUtils.java:56)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.network.protocol.PacketUtils$$Lambda/0x00007fdaaec80618.run(Unknown Source)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.TickTask.run(TickTask.java:18)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:151)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1574)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:201)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:125)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1551)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1544)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:135)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.managedBlock(MinecraftServer.java:1503)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1625)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1335)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:334)
[21:02:51] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer$$Lambda/0x00007fdaaccb9620.run(Unknown Source)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.lang.Thread.runWith(Thread.java:1596)
[21:02:51] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.lang.Thread.run(Thread.java:1583)
[21:02:51] [Watchdog Thread/ERROR]: ------------------------------
[21:02:51] [Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PURPUR - THIS IS NOT A BUG OR A CRASH ---
[21:02:51] [Watchdog Thread/ERROR]: ------------------------------
[21:02:51] [Server thread/INFO]: [ChatControlRed] [global] dfjhd: 0-0 1 [g.
[21:02:51] [Server thread/INFO]: [ChatControlRed 10.27.8] Command /channel send global 0-0 1 [g took 33.4 ms
[21:02:51] [Server thread/WARN]: kot_persik228 moved too quickly! -14.526708498870676,-1.7967356006687112,4.185670818714698
[21:02:51] [Server thread/WARN]: katrinka moved too quickly! 10.510260337518048,0.8338907390617862,-21.684835581621883
[21:02:51] [Server thread/WARN]: SonTravomana moved too quickly! 0.5514172194718867,-8.578400001525878,-8.654288078563695
[21:02:51] [Server thread/WARN]: narluha808 moved too quickly! -112.9455240394418,55.2750084976995,29.958774691212056
[21:02:53] [Craft Scheduler Thread - 5391 - DeluxeCombat/WARN]: [DeluxeCombat] Plugin DeluxeCombat v1.60.7 generated an exception while executing task 188
java.lang.OutOfMemoryError: Requested array size exceeds VM limit
    at java.base/java.util.Arrays.copyOf(Arrays.java:3541) ~[?:?]
    at java.base/java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:242) ~[?:?]
    at java.base/java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:587) ~[?:?]
    at java.base/java.lang.StringBuilder.append(StringBuilder.java:179) ~[?:?]
    at DeluxeCombat v.1.60.7.jar/nl.marido.deluxecombat.Settings.getProgressBar(Settings.java:1258) ~[DeluxeCombat v.1.60.7.jar:?]
    at DeluxeCombat v.1.60.7.jar/nl.marido.deluxecombat.objects.Tagger.sendTime(Tagger.java:278) ~[DeluxeCombat v.1.60.7.jar:?]
    at DeluxeCombat v.1.60.7.jar/nl.marido.deluxecombat.tasks.TagTask.run(TagTask.java:36) ~[DeluxeCombat v.1.60.7.jar:?]
    at org.bukkit.craftbukkit.scheduler.CraftTask.run(CraftTask.java:86) ~[purpur-1.21.1.jar:1.21.1-2298-a61db94]
    at org.bukkit.craftbukkit.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[purpur-1.21.1.jar:1.21.1-2298-a61db94]
    at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[purpur-1.21.1.jar:?]
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
    at java.base/java.lang.Thread.runWith(Thread.java:1596) ~[?:?]
    at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]

Frequency

Every 1 hour or so.

Anything else?

No response

timderspieler commented 2 weeks ago

Hello @GG-MD ! This error is caused by JVM flags. Can you please tell me which ones you are using?

GG-MD commented 2 weeks ago

Hello @GG-MD !

This error is caused by JVM flags. Can you please tell me which ones you are using?


aikar_jvm_flags="-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+DisableExplicitGC -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+UseCodeCacheFlushing -XX:+SegmentedCodeCache -XX:+UseFastJNIAccessors -XX:+OptimizeStringConcat -XX:+UseCompressedOops -XX:+TrustFinalNonStaticFields -XX:+UseInlineCaches -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseNUMA -XX:+OptimizeFill -XX:+UseVectorCmov -XX:+ScavengeBeforeFullGC -XX:+UseNewLongLShift -XX:+UseFastUnorderedTimeStamps"
jvm_flags="-Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -Dfile.encoding=UTF-8 -Dlog4j2.formatMsgNoLookups=true -DPaper.IgnoreJavaVersion=true -Dnet.kyori.ansi.colorLevel=indexed256 -server"
GG-MD commented 2 weeks ago

This didn't happen before upgrading to the latest version of the plugin, the flags are the same, the problem must be yours.

timderspieler commented 1 week ago

Could you still please provide me your flags? I try to narrow down the issue.

GG-MD commented 1 week ago

Could you still please provide me your flags? I try to narrow down the issue.

Read above comments !

GG-MD commented 9 hours ago

@timderspieler This appeared again after moving to a new dedicated server.!!!! I'm guessing this is a one-time bug when I moved to other servers. Very strange.

[09:48:32] [Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PURPUR - THIS IS NOT A BUG OR A CRASH  - 1.21.1-2304-dee41bc (MC: 1.21.1) ---
[09:48:32] [Watchdog Thread/ERROR]: The server has not responded for 7 seconds! Creating thread dump
[09:48:32] [Watchdog Thread/ERROR]: ------------------------------
[09:48:32] [Watchdog Thread/ERROR]: Server thread dump (Look for plugins here before reporting to Purpur!):
[09:48:32] [Watchdog Thread/ERROR]: ------------------------------
[09:48:32] [Watchdog Thread/ERROR]: Current Thread: Server thread
[09:48:32] [Watchdog Thread/ERROR]:     PID: 115 | Suspended: false | Native: false | State: RUNNABLE
[09:48:32] [Watchdog Thread/ERROR]:     Stack:
[09:48:32] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.entity.CraftEntity.getUniqueId(CraftEntity.java:509)
[09:48:32] [Watchdog Thread/ERROR]:         org.bukkit.craftbukkit.entity.CraftPlayer.canSee(CraftPlayer.java:2258)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.level.ChunkMap$TrackedEntity.updatePlayer(ChunkMap.java:1265)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.level.ChunkMap$TrackedEntity.moonrise$tick(ChunkMap.java:1137)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.level.ChunkMap.newTrackerTick(ChunkMap.java:934)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.level.ChunkMap.tick(ChunkMap.java:956)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.level.ServerChunkCache.tick(ServerChunkCache.java:413)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.level.ServerLevel.tick(ServerLevel.java:710)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.tickChildren(MinecraftServer.java:1844)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.dedicated.DedicatedServer.tickChildren(DedicatedServer.java:513)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1635)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1335)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:334)
[09:48:32] [Watchdog Thread/ERROR]:         net.minecraft.server.MinecraftServer$$Lambda/0x00007ff8ecce33e8.run(Unknown Source)
[09:48:32] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.lang.Thread.runWith(Thread.java:1596)
[09:48:32] [Watchdog Thread/ERROR]:         java.base@21.0.4/java.lang.Thread.run(Thread.java:1583)
[09:48:32] [Watchdog Thread/ERROR]: ------------------------------
[09:48:32] [Watchdog Thread/ERROR]: --- DO NOT REPORT THIS TO PURPUR - THIS IS NOT A BUG OR A CRASH ---
[09:48:32] [Watchdog Thread/ERROR]: ------------------------------
[09:48:39] [Craft Scheduler Thread - 153 - DeluxeCombat/WARN]: [DeluxeCombat] Plugin DeluxeCombat v1.60.7 generated an exception while executing task 112
java.lang.OutOfMemoryError: Requested array size exceeds VM limit
    at java.base/java.util.Arrays.copyOf(Arrays.java:3541) ~[?:?]
    at java.base/java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:242) ~[?:?]
    at java.base/java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:587) ~[?:?]
    at java.base/java.lang.StringBuilder.append(StringBuilder.java:179) ~[?:?]
    at DeluxeCombat v.1.60.7.jar/nl.marido.deluxecombat.Settings.getProgressBar(Settings.java:1258) ~[DeluxeCombat v.1.60.7.jar:?]
    at DeluxeCombat v.1.60.7.jar/nl.marido.deluxecombat.objects.Tagger.sendTime(Tagger.java:278) ~[DeluxeCombat v.1.60.7.jar:?]
    at DeluxeCombat v.1.60.7.jar/nl.marido.deluxecombat.tasks.TagTask.run(TagTask.java:36) ~[DeluxeCombat v.1.60.7.jar:?]
    at org.bukkit.craftbukkit.scheduler.CraftTask.run(CraftTask.java:86) ~[purpur-1.21.1.jar:1.21.1-2304-dee41bc]
    at org.bukkit.craftbukkit.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[purpur-1.21.1.jar:1.21.1-2304-dee41bc]
    at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[purpur-1.21.1.jar:?]
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) ~[?:?]
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) ~[?:?]
    at java.base/java.lang.Thread.runWith(Thread.java:1596) ~[?:?]
    at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
GG-MD commented 8 hours ago

Hello @GG-MD ! This error is caused by JVM flags. Can you please tell me which ones you are using?


aikar_jvm_flags="-XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+DisableExplicitGC -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+UseCodeCacheFlushing -XX:+SegmentedCodeCache -XX:+UseFastJNIAccessors -XX:+OptimizeStringConcat -XX:+UseCompressedOops -XX:+TrustFinalNonStaticFields -XX:+UseInlineCaches -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseNUMA -XX:+OptimizeFill -XX:+UseVectorCmov -XX:+ScavengeBeforeFullGC -XX:+UseNewLongLShift -XX:+UseFastUnorderedTimeStamps"
jvm_flags="-Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true -Dfile.encoding=UTF-8 -Dlog4j2.formatMsgNoLookups=true -DPaper.IgnoreJavaVersion=true -Dnet.kyori.ansi.colorLevel=indexed256 -server"

and:

image
timderspieler commented 5 hours ago

I have located the potential issue here. Would you mind testing a dev build of the plugin to check if the issue is gone?

GG-MD commented 4 hours ago

I have located the potential issue here. Would you mind testing a dev build of the plugin to check if the issue is gone?

The main thing is that the server did not shut down, otherwise any tests, go)

timderspieler commented 2 hours ago

I've wrote you a DM on discord.