diff --git a/.metadata/.lock b/.metadata/.lock
new file mode 100644
index 0000000..e69de29
diff --git a/.metadata/.log b/.metadata/.log
new file mode 100644
index 0000000..7f6926e
--- /dev/null
+++ b/.metadata/.log
@@ -0,0 +1,42 @@
+!SESSION 2018-05-11 17:12:01.161 -----------------------------------------------
+eclipse.buildId=4.7.2.M20171130-0510
+java.version=1.8.0_161
+java.vendor=Oracle Corporation
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.egit.ui 2 0 2018-05-11 17:13:05.388
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Tay.J'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+!SESSION 2018-05-11 18:31:09.096 -----------------------------------------------
+eclipse.buildId=4.7.2.M20171130-0510
+java.version=1.8.0_161
+java.vendor=Oracle Corporation
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.egit.ui 2 0 2018-05-11 18:32:05.375
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Tay.J'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
+!SESSION 2018-05-18 12:49:32.625 -----------------------------------------------
+eclipse.buildId=4.7.2.M20171130-0510
+java.version=1.8.0_161
+java.vendor=Oracle Corporation
+BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
+Framework arguments: -product org.eclipse.epp.package.java.product
+Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
+
+!ENTRY org.eclipse.egit.ui 2 0 2018-05-18 12:50:07.421
+!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git
+user global configuration and to define the default location to store repositories: 'C:\Users\Tay.J'. If this is
+not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and
+EGit might behave differently since they see different configuration options.
+This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.
diff --git a/.metadata/.mylyn/.taskListIndex/segments_1 b/.metadata/.mylyn/.taskListIndex/segments_1
new file mode 100644
index 0000000..bd34db0
Binary files /dev/null and b/.metadata/.mylyn/.taskListIndex/segments_1 differ
diff --git a/.metadata/.mylyn/.taskListIndex/write.lock b/.metadata/.mylyn/.taskListIndex/write.lock
new file mode 100644
index 0000000..e69de29
diff --git a/.metadata/.mylyn/.tasks.xml.zip b/.metadata/.mylyn/.tasks.xml.zip
new file mode 100644
index 0000000..d1f6333
Binary files /dev/null and b/.metadata/.mylyn/.tasks.xml.zip differ
diff --git a/.metadata/.mylyn/repositories.xml.zip b/.metadata/.mylyn/repositories.xml.zip
new file mode 100644
index 0000000..bc4f220
Binary files /dev/null and b/.metadata/.mylyn/repositories.xml.zip differ
diff --git a/.metadata/.mylyn/tasks.xml.zip b/.metadata/.mylyn/tasks.xml.zip
new file mode 100644
index 0000000..585764a
Binary files /dev/null and b/.metadata/.mylyn/tasks.xml.zip differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/.indexes/properties.index
new file mode 100644
index 0000000..1e099f3
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/.indexes/properties.index differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/.markers b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/.markers
new file mode 100644
index 0000000..6af5f53
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/.markers differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/org.eclipse.egit.core/GitProjectData.properties b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/org.eclipse.egit.core/GitProjectData.properties
new file mode 100644
index 0000000..806f67e
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/org.eclipse.egit.core/GitProjectData.properties
@@ -0,0 +1,3 @@
+#GitProjectData
+#Fri May 11 18:32:32 BST 2018
+.gitdir=.git
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/org.eclipse.jdt.core/state.dat b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/org.eclipse.jdt.core/state.dat
new file mode 100644
index 0000000..58ff4fc
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/Base/org.eclipse.jdt.core/state.dat differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/.indexes/properties.index
new file mode 100644
index 0000000..1e099f3
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/.indexes/properties.index differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/.markers b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/.markers
new file mode 100644
index 0000000..fe82296
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/.markers differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/org.eclipse.egit.core/GitProjectData.properties b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/org.eclipse.egit.core/GitProjectData.properties
new file mode 100644
index 0000000..72d46d4
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/org.eclipse.egit.core/GitProjectData.properties
@@ -0,0 +1,3 @@
+#GitProjectData
+#Fri May 11 17:13:26 BST 2018
+.gitdir=.git
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/org.eclipse.jdt.core/state.dat b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/org.eclipse.jdt.core/state.dat
new file mode 100644
index 0000000..7c0ce67
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/HCF/org.eclipse.jdt.core/state.dat differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
new file mode 100644
index 0000000..25cb955
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index
new file mode 100644
index 0000000..9347169
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
new file mode 100644
index 0000000..6b2aaa7
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/3.tree b/.metadata/.plugins/org.eclipse.core.resources/.root/3.tree
new file mode 100644
index 0000000..5418d6b
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/3.tree differ
diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources
new file mode 100644
index 0000000..bac91ce
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..dffc6b5
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+version=1
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
new file mode 100644
index 0000000..9dd00d6
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.debug.ui.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=\r\n\r\n
+preferredTargets=default\:default|
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs
new file mode 100644
index 0000000..e3c3fa7
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs
@@ -0,0 +1,3 @@
+GitRepositoriesView.GitDirectories=C\:\\Users\\Tay.J\\Desktop\\Ortix Map 3\\Base\\.git;C\:\\Users\\Tay.J\\Desktop\\Ortix Map 3\\HCF\\.git;
+GitRepositoriesView.GitDirectories.relative=Base\\.git;HCF\\.git;
+eclipse.preferences.version=1
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.logging.aeri.ide.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.logging.aeri.ide.prefs
new file mode 100644
index 0000000..c186df8
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.epp.logging.aeri.ide.prefs
@@ -0,0 +1,4 @@
+eclipse.preferences.version=1
+resetSendMode=KEEP
+resetSendModeOn=0
+sendMode=NOTIFY
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..c24a64f
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.codeComplete.visibilityCheck=enabled
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
new file mode 100644
index 0000000..31df02c
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.junit.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.junit.content_assist_favorite_static_members_migrated=true
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
new file mode 100644
index 0000000..025a52c
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.launching.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.launching.PREF_VM_XML=\r\n\r\n\r\n\r\n\r\n\r\n
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..a8ab0e0
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,9 @@
+content_assist_number_of_computers=19
+content_assist_proposals_background=255,255,255
+content_assist_proposals_foreground=0,0,0
+eclipse.preferences.version=1
+org.eclipse.jdt.ui.formatterprofiles.version=13
+spelling_locale=en_GB
+spelling_locale_initialized=true
+useAnnotationsPrefPage=true
+useQuickDiffPrefPage=true
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
new file mode 100644
index 0000000..67b1d96
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.m2e.discovery.pref.projects=
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs
new file mode 100644
index 0000000..43e97e4
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.context.core.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+mylyn.attention.migrated=true
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs
new file mode 100644
index 0000000..8d462a6
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.monitor.ui.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.mylyn.monitor.activity.tracking.enabled.checked=true
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs
new file mode 100644
index 0000000..2b60c21
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.mylyn.tasks.ui.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+migrated.task.repositories.secure.store=true
+org.eclipse.mylyn.tasks.ui.filters.nonmatching=true
+org.eclipse.mylyn.tasks.ui.filters.nonmatching.encouraged=true
+org.eclipse.mylyn.tasks.ui.welcome.message=true
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs
new file mode 100644
index 0000000..56cd496
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.team.ui.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+org.eclipse.team.ui.first_time=false
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
new file mode 100644
index 0000000..61f3bb8
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.editors.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+overviewRuler_migration=migrated_3.1
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
new file mode 100644
index 0000000..b226a39
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs
@@ -0,0 +1,5 @@
+PROBLEMS_FILTERS_MIGRATE=true
+eclipse.preferences.version=1
+platformState=1520098784899
+quickStart=false
+tipsAndTricks=true
diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
new file mode 100644
index 0000000..aa3dc02
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
@@ -0,0 +1,3 @@
+//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
+PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery;
+eclipse.preferences.version=1
diff --git a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
new file mode 100644
index 0000000..9bc0dd0
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi
@@ -0,0 +1,2368 @@
+
+
+
+ activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration
+ ModelMigrationProcessor.001
+
+
+
+
+
+
+
+ topLevel
+ shellMaximized
+
+
+
+
+ persp.actionSet:org.eclipse.mylyn.doc.actionSet
+ persp.actionSet:org.eclipse.mylyn.tasks.ui.navigation
+ persp.actionSet:org.eclipse.ui.cheatsheets.actionSet
+ persp.actionSet:org.eclipse.search.searchActionSet
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation
+ persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo
+ persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet
+ persp.actionSet:org.eclipse.ui.actionSet.keyBindings
+ persp.actionSet:org.eclipse.ui.actionSet.openFiles
+ persp.actionSet:org.eclipse.debug.ui.launchActionSet
+ persp.actionSet:org.eclipse.jdt.ui.JavaActionSet
+ persp.actionSet:org.eclipse.jdt.ui.JavaElementCreationActionSet
+ persp.actionSet:org.eclipse.ui.NavigateActionSet
+ persp.viewSC:org.eclipse.jdt.ui.PackageExplorer
+ persp.viewSC:org.eclipse.jdt.ui.TypeHierarchy
+ persp.viewSC:org.eclipse.jdt.ui.SourceView
+ persp.viewSC:org.eclipse.jdt.ui.JavadocView
+ persp.viewSC:org.eclipse.search.ui.views.SearchView
+ persp.viewSC:org.eclipse.ui.console.ConsoleView
+ persp.viewSC:org.eclipse.ui.views.ContentOutline
+ persp.viewSC:org.eclipse.ui.views.ProblemView
+ persp.viewSC:org.eclipse.ui.views.ResourceNavigator
+ persp.viewSC:org.eclipse.ui.views.TaskList
+ persp.viewSC:org.eclipse.ui.views.ProgressView
+ persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer
+ persp.viewSC:org.eclipse.ui.texteditor.TemplatesView
+ persp.viewSC:org.eclipse.pde.runtime.LogView
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.JavaProjectWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewPackageCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewClassCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewEnumCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard
+ persp.newWizSC:org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard
+ persp.newWizSC:org.eclipse.ui.wizards.new.folder
+ persp.newWizSC:org.eclipse.ui.wizards.new.file
+ persp.newWizSC:org.eclipse.ui.editors.wizards.UntitledTextFileWizard
+ persp.perspSC:org.eclipse.jdt.ui.JavaBrowsingPerspective
+ persp.perspSC:org.eclipse.debug.ui.DebugPerspective
+ persp.viewSC:org.eclipse.mylyn.tasks.ui.views.tasks
+ persp.newWizSC:org.eclipse.mylyn.tasks.ui.wizards.new.repository.task
+ persp.showIn:org.eclipse.jdt.ui.PackageExplorer
+ persp.showIn:org.eclipse.team.ui.GenericHistoryView
+ persp.showIn:org.eclipse.ui.views.ResourceNavigator
+ persp.showIn:org.eclipse.ui.navigator.ProjectExplorer
+ persp.actionSet:org.eclipse.debug.ui.breakpointActionSet
+ persp.actionSet:org.eclipse.jdt.debug.ui.JDTDebugActionSet
+ persp.actionSet:org.eclipse.eclemma.ui.CoverageActionSet
+ persp.showIn:org.eclipse.eclemma.ui.CoverageView
+ persp.showIn:org.eclipse.egit.ui.RepositoriesView
+ persp.newWizSC:org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard
+ persp.actionSet:org.eclipse.jdt.junit.JUnitActionSet
+ persp.viewSC:org.eclipse.ant.ui.views.AntView
+
+
+
+ org.eclipse.e4.primaryNavigationStack
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ org.eclipse.e4.secondaryNavigationStack
+
+
+
+
+
+
+
+ org.eclipse.e4.secondaryDataStack
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+ org.eclipse.e4.primaryDataStack
+ EditorStack
+ active
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.ui.DefaultTextEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.ui.DefaultTextEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+
+
+
+ Editor
+ org.eclipse.jdt.ui.CompilationUnitEditor
+ removeOnHide
+ active
+ activeOnClose
+
+
+
+
+
+
+
+ View
+ categoryTag:Java
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:General
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+ ViewMenu
+ menuContribution:menu
+
+
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Ant
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ Draggable
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+
+ toolbarSeparator
+
+
+
+ toolbarSeparator
+
+
+
+ Draggable
+
+
+ stretch
+ SHOW_RESTORE_MENU
+
+
+ Draggable
+ HIDEABLE
+ SHOW_RESTORE_MENU
+
+
+
+
+ stretch
+
+
+ Draggable
+
+
+ Draggable
+
+
+
+
+ TrimStack
+ Draggable
+
+
+
+
+
+
+
+
+ platform:win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ platform:win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Editor
+
+
+
+
+ View
+ categoryTag:Ant
+
+
+
+
+ View
+ categoryTag:Gradle
+
+
+
+
+ View
+ categoryTag:Gradle
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:Git
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:Debug
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java Browsing
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Java
+
+
+
+
+ View
+ categoryTag:Maven
+
+
+
+
+ View
+ categoryTag:Maven
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Mylyn
+
+
+
+
+ View
+ categoryTag:Oomph
+
+
+
+
+ View
+ categoryTag:Code Recommenders
+
+
+
+
+ View
+ categoryTag:Code Recommenders
+
+
+
+
+ View
+ categoryTag:Code Recommenders
+
+
+
+
+ View
+ categoryTag:Code Recommenders
+
+
+
+
+ View
+ categoryTag:Code Recommenders
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Team
+
+
+
+
+ View
+ categoryTag:Team
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:Help
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:General
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+
+ View
+ categoryTag:XML
+
+
+
+
+
+
+
+
+
+ glue
+ move_after:PerspectiveSpacer
+ SHOW_RESTORE_MENU
+
+
+ move_after:Spacer Glue
+ HIDEABLE
+ SHOW_RESTORE_MENU
+
+
+ glue
+ move_after:SearchField
+ SHOW_RESTORE_MENU
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/http-cache.lucene60/segments_1 b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/http-cache.lucene60/segments_1
new file mode 100644
index 0000000..c937390
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/http-cache.lucene60/segments_1 differ
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/http-cache.lucene60/write.lock b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/http-cache.lucene60/write.lock
new file mode 100644
index 0000000..e69de29
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.cfe b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.cfe
new file mode 100644
index 0000000..91ab3b0
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.cfe differ
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.cfs b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.cfs
new file mode 100644
index 0000000..8efde64
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.cfs differ
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.si b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.si
new file mode 100644
index 0000000..6e86102
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/_0.si differ
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/segments_1 b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/segments_1
new file mode 100644
index 0000000..206793b
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/segments_1 differ
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/write.lock b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/local-history.lucene60/write.lock
new file mode 100644
index 0000000..e69de29
diff --git a/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/server-config.json b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/server-config.json
new file mode 100644
index 0000000..e77148a
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.epp.logging.aeri.ide/org.eclipse.epp.logging.aeri.ide.server/server-config.json
@@ -0,0 +1,72 @@
+{
+ "version": "v1",
+ "title": "Eclipse",
+ "timestamp": 1526055182590,
+ "ttl": 10080,
+ "helpUrl": "https://dev.eclipse.org/recommenders/community/aeri/v2/help/",
+ "feedbackUrl": "https://www.codetrails.com/error-analytics/",
+ "aboutUrl": "https://wiki.eclipse.org/EPP/Logging",
+ "submitUrl": "https://dev.eclipse.org/recommenders/community/confess/0.6/reports/",
+ "maxReportSize": 262144,
+ "problemsUrl": "https://www.eclipse.org/downloads/download.php?r\u003d1\u0026file\u003d/technology/epp/logging/problems.zip",
+ "problemsTtl": 20160,
+ "interestUrl": "https://dev.eclipse.org/recommenders/community/confess/v2/interest",
+ "connectTimeout": 10,
+ "socketTimeout": 10,
+ "acceptedProducts": [
+ "org.eclipse.*",
+ "org.fordiac.*"
+ ],
+ "acceptedPlugins": [
+ "org.apache.log4j.*",
+ "org.eclipse.*",
+ "org.fordiac.*"
+ ],
+ "acceptedPackages": [
+ "ch.qos.*",
+ "com.cforcoding.*",
+ "com.google.*",
+ "com.gradleware.tooling.*",
+ "com.mountainminds.eclemma.*",
+ "com.naef.*",
+ "com.sun.*",
+ "java.*",
+ "javafx.*",
+ "javax.*",
+ "org.apache.*",
+ "org.eclipse.*",
+ "org.fordiac.*",
+ "org.gradle.*",
+ "org.jacoco.*",
+ "org.osgi.*",
+ "org.slf4j.*",
+ "sun.*"
+ ],
+ "requiredPackages": [
+ "com.cforcoding.*",
+ "com.gradleware.tooling.*",
+ "com.mountainminds.eclemma.*",
+ "com.naef.*",
+ "org.eclipse.*",
+ "org.fordiac.*",
+ "org.gradle.*",
+ "org.jacoco.*"
+ ],
+ "acceptOtherPackages": false,
+ "acceptUiFreezes": true,
+ "ignoredStatuses": [
+ ":java.io.IOException:There is not enough space on the disk",
+ ":java.net.*:",
+ "org.eclipse.core.filesystem::Could not delete*",
+ "org.eclipse.core.filesystem::Could not move*",
+ "org.eclipse.core.resources:org.eclipse.core.internal.resources.ResourceException:Resource is out of sync with the file system*",
+ "org.eclipse.core.runtime::Invalid input url*",
+ "org.eclipse.epp.mpc.ui:java.io.IOException:",
+ "org.eclipse.equinox.p2.*::",
+ "org.eclipse.jface:java.io.IOException:Unable to resolve plug-in*",
+ "org.eclipse.oomph.setup.core:$org.apache.http.ConnectionClosedException:",
+ "org.eclipse.pde.core::The current target platform contains errors*",
+ "org.eclipse.ui::Conflicting handlers for*"
+ ],
+ "problemsZipLastDownloadTimestamp": 0
+}
\ No newline at end of file
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1055679481.index b/.metadata/.plugins/org.eclipse.jdt.core/1055679481.index
new file mode 100644
index 0000000..c9ac66a
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1055679481.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1230538165.index b/.metadata/.plugins/org.eclipse.jdt.core/1230538165.index
new file mode 100644
index 0000000..13fdca0
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1230538165.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1329257546.index b/.metadata/.plugins/org.eclipse.jdt.core/1329257546.index
new file mode 100644
index 0000000..98c0932
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1329257546.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1580166048.index b/.metadata/.plugins/org.eclipse.jdt.core/1580166048.index
new file mode 100644
index 0000000..9add4c7
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1580166048.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/1860642593.index b/.metadata/.plugins/org.eclipse.jdt.core/1860642593.index
new file mode 100644
index 0000000..ce9a98d
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/1860642593.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2047040404.index b/.metadata/.plugins/org.eclipse.jdt.core/2047040404.index
new file mode 100644
index 0000000..606ac8c
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2047040404.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2429332019.index b/.metadata/.plugins/org.eclipse.jdt.core/2429332019.index
new file mode 100644
index 0000000..8b73a0c
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2429332019.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2589955883.index b/.metadata/.plugins/org.eclipse.jdt.core/2589955883.index
new file mode 100644
index 0000000..e40f99c
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2589955883.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2600291101.index b/.metadata/.plugins/org.eclipse.jdt.core/2600291101.index
new file mode 100644
index 0000000..1b10c97
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2600291101.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2692035760.index b/.metadata/.plugins/org.eclipse.jdt.core/2692035760.index
new file mode 100644
index 0000000..23573ff
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2692035760.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2916426105.index b/.metadata/.plugins/org.eclipse.jdt.core/2916426105.index
new file mode 100644
index 0000000..911d26b
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2916426105.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/2956378016.index b/.metadata/.plugins/org.eclipse.jdt.core/2956378016.index
new file mode 100644
index 0000000..bdfb2f5
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/2956378016.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/315890579.index b/.metadata/.plugins/org.eclipse.jdt.core/315890579.index
new file mode 100644
index 0000000..53aed5a
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/315890579.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3637040476.index b/.metadata/.plugins/org.eclipse.jdt.core/3637040476.index
new file mode 100644
index 0000000..438a759
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/3637040476.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3693261185.index b/.metadata/.plugins/org.eclipse.jdt.core/3693261185.index
new file mode 100644
index 0000000..d4745ee
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/3693261185.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3808123788.index b/.metadata/.plugins/org.eclipse.jdt.core/3808123788.index
new file mode 100644
index 0000000..7e0dd4e
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/3808123788.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/3947521672.index b/.metadata/.plugins/org.eclipse.jdt.core/3947521672.index
new file mode 100644
index 0000000..ccfcf0e
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/3947521672.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/421022922.index b/.metadata/.plugins/org.eclipse.jdt.core/421022922.index
new file mode 100644
index 0000000..d8e60b8
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/421022922.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/4232500288.index b/.metadata/.plugins/org.eclipse.jdt.core/4232500288.index
new file mode 100644
index 0000000..3191fe3
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/4232500288.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/592600685.index b/.metadata/.plugins/org.eclipse.jdt.core/592600685.index
new file mode 100644
index 0000000..ffebf1f
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/592600685.index differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache
new file mode 100644
index 0000000..593f470
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache
new file mode 100644
index 0000000..0c7a207
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps
new file mode 100644
index 0000000..53cd2e9
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/externalLibsTimeStamps differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/index.db b/.metadata/.plugins/org.eclipse.jdt.core/index.db
new file mode 100644
index 0000000..e69de29
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt
new file mode 100644
index 0000000..8586397
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt
@@ -0,0 +1 @@
+java
\ No newline at end of file
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache
new file mode 100644
index 0000000..0c7a207
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt
new file mode 100644
index 0000000..2116b5c
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.core/savedIndexNames.txt
@@ -0,0 +1,21 @@
+INDEX VERSION 1.130+C:\Users\Tay.J\Desktop\Everthing Ortix\Ortix Map 3\.metadata\.plugins\org.eclipse.jdt.core
+2916426105.index
+3947521672.index
+315890579.index
+2589955883.index
+592600685.index
+4232500288.index
+2429332019.index
+1580166048.index
+1230538165.index
+3693261185.index
+3637040476.index
+2692035760.index
+1055679481.index
+3808123788.index
+2600291101.index
+2047040404.index
+421022922.index
+2956378016.index
+1860642593.index
+1329257546.index
diff --git a/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat
new file mode 100644
index 0000000..1aac43b
Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ
diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
new file mode 100644
index 0000000..a8e58f4
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.launching/.install.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
new file mode 100644
index 0000000..9e1ed1a
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.launching/libraryInfos.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml
new file mode 100644
index 0000000..a4ee3cb
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml
new file mode 100644
index 0000000..9e390f5
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml
@@ -0,0 +1,2 @@
+
+
diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml
new file mode 100644
index 0000000..6677979
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml
@@ -0,0 +1,19 @@
+
+
diff --git a/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log b/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log
new file mode 100644
index 0000000..73c309b
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.m2e.logback.configuration/0.log
@@ -0,0 +1,3 @@
+2018-05-11 17:12:59,556 [Worker-0] INFO c.g.t.t.d.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update.
+2018-05-11 18:32:00,847 [Worker-4] INFO c.g.t.t.d.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
+2018-05-18 12:50:06,952 [Worker-6] INFO c.g.t.t.d.PublishedGradleVersions - Gradle version information cache is up-to-date. Trying to read.
diff --git a/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.8.2.20171007-0217.xml b/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.8.2.20171007-0217.xml
new file mode 100644
index 0000000..e33758c
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.m2e.logback.configuration/logback.1.8.2.20171007-0217.xml
@@ -0,0 +1,43 @@
+
+
+
+ %date [%thread] %-5level %logger{35} - %msg%n
+
+
+ OFF
+
+
+
+
+ ${org.eclipse.m2e.log.dir}/0.log
+
+ ${org.eclipse.m2e.log.dir}/%i.log
+ 1
+ 10
+
+
+ 100MB
+
+
+ %date [%thread] %-5level %logger{35} - %msg%n
+
+
+
+
+
+ WARN
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup
new file mode 100644
index 0000000..1f73e14
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup
@@ -0,0 +1,6 @@
+
+
diff --git a/.metadata/.plugins/org.eclipse.recommenders.news.impl/downloads/http%3A%2F%2Fwww.eclipse.org%2Fhome%2Feclipsenews.rss b/.metadata/.plugins/org.eclipse.recommenders.news.impl/downloads/http%3A%2F%2Fwww.eclipse.org%2Fhome%2Feclipsenews.rss
new file mode 100644
index 0000000..85ded4f
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.recommenders.news.impl/downloads/http%3A%2F%2Fwww.eclipse.org%2Fhome%2Feclipsenews.rss
@@ -0,0 +1,525 @@
+
+
+
+ Eclipse News
+ http://www.eclipse.org
+ Eclipse News
+
+ http://eclipse.org/eclipse.org-common/themes/Nova/images/eclipse.png
+ eclipse.org
+ http://www.eclipse.org
+
+ -
+
+
+
+ Thu, 10 May 2018 09:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Fri, 04 May 2018 05:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 25 Apr 2018 08:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 24 Apr 2018 09:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 17 Apr 2018 09:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 12 Apr 2018 09:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 04 Apr 2018 09:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Tue, 03 Apr 2018 09:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 29 Mar 2018 17:45:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 27 Mar 2018 07:10:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 22 Mar 2018 04:13:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 16 Mar 2018 06:45:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 15 Mar 2018 07:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 12 Mar 2018 16:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 12 Mar 2018 09:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Wed, 07 Mar 2018 18:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Mon, 26 Feb 2018 14:50:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 22 Feb 2018 3:51:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 20 Feb 2018 4:27:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 12 Feb 2018 09:15:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 06 Feb 2018 08:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Fri, 02 Feb 2018 08:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 25 Jan 2018 10:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 24 Jan 2018 4:27:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Mon, 15 Jan 2018 9:15:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 14 Dec 2017 10:10:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 14 Dec 2017 08:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Wed, 13 Dec 2017 09:45:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 22 Nov 2017 06:23:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 15 Nov 2017 05:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Sun, 22 Oct 2017 08:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 19 Oct 2017 11:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Wed, 18 Oct 2017 09:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Wed, 18 Oct 2017 05:02:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 04 Oct 2017 08:48:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 03 Oct 2017 11:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Fri, 29 Sep 2017 11:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 28 Sep 2017 09:10:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Tue, 26 Sep 2017 14:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 25 Sep 2017 08:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 21 Sep 2017 08:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 20 Sep 2017 10:30:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 12 Sep 2017 17:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 07 Sep 2017 09:00:00 EST
+ news
+ 1
+
+ -
+
+
+
+ Tue, 29 Aug 2017 14:20:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 22 Aug 2017 09:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 21 Aug 2017 10:10:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Fri, 18 Aug 2017 05:40:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 17 Aug 2017 08:55:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 14 Aug 2017 10:40:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 25 Jul 2017 10:05:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 10 Jul 2017 09:05:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 28 Jun 2017 10:05:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 28 Jun 2017 10:26:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 26 Jun 2017 22:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 20 Jun 2017 04:00:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Mon, 12 Jun 2017 15:45:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 08 Jun 2017 10:45:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 24 May 2017 05:35:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Tue, 23 May 2017 04:35:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 18 May 2017 04:55:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Wed, 17 May 2017 09:29:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 27 Apr 2017 17:10:00 EST
+ news
+ 0
+
+ -
+
+
+
+ Thu, 27 Apr 2017 09:05:00 EST
+ news
+ 1
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.recommenders.news.impl/downloads/http%3A%2F%2Fwww.eclipse.org%2Frecommenders%2Ffeeds%2Fide.rss b/.metadata/.plugins/org.eclipse.recommenders.news.impl/downloads/http%3A%2F%2Fwww.eclipse.org%2Frecommenders%2Ffeeds%2Fide.rss
new file mode 100644
index 0000000..b6219a4
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.recommenders.news.impl/downloads/http%3A%2F%2Fwww.eclipse.org%2Frecommenders%2Ffeeds%2Fide.rss
@@ -0,0 +1,13 @@
+
+
+
+ Code Recommenders In-IDE News
+ https://www.eclipse.org/recommenders/
+ The latest news about Code Recommenders, delivered to your Eclipse IDE
+ -
+ Insert Knowledge Here - A Guide to Intelligent Code Completion Using Eclipse Code Recommenders
+ https://medium.com/codetrails/insert-knowledge-here-a2f71c2862d2?utm_source=rss-eclipse&utm_medium=eclipse&utm_campaign=cc
+ Tue, 10 Oct 2017 16:00:00 GMT
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml
new file mode 100644
index 0000000..50f1edb
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.ui.editors/dialog_settings.xml
@@ -0,0 +1,5 @@
+
+
diff --git a/.metadata/.plugins/org.eclipse.ui.intro/introstate b/.metadata/.plugins/org.eclipse.ui.intro/introstate
new file mode 100644
index 0000000..236d56c
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.ui.intro/introstate
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml
new file mode 100644
index 0000000..851c296
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml
@@ -0,0 +1,15 @@
+
+
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
new file mode 100644
index 0000000..b46f2b7
--- /dev/null
+++ b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/.metadata/version.ini b/.metadata/version.ini
new file mode 100644
index 0000000..f4e9e30
--- /dev/null
+++ b/.metadata/version.ini
@@ -0,0 +1,3 @@
+#Fri May 18 12:49:54 BST 2018
+org.eclipse.core.runtime=2
+org.eclipse.platform=4.7.2.v20171130-0510
diff --git a/.project b/.project
new file mode 100644
index 0000000..2196b14
--- /dev/null
+++ b/.project
@@ -0,0 +1,11 @@
+
+
+ Ortix Map 3 - src
+
+
+
+
+
+
+
+
diff --git a/Base/.classpath b/Base/.classpath
new file mode 100644
index 0000000..20ffa71
--- /dev/null
+++ b/Base/.classpath
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Base/.gitignore b/Base/.gitignore
new file mode 100644
index 0000000..c585e19
--- /dev/null
+++ b/Base/.gitignore
@@ -0,0 +1 @@
+out
\ No newline at end of file
diff --git a/Base/.idea/artifacts/LCore_jar.xml b/Base/.idea/artifacts/LCore_jar.xml
new file mode 100644
index 0000000..0f8d011
--- /dev/null
+++ b/Base/.idea/artifacts/LCore_jar.xml
@@ -0,0 +1,11 @@
+
+
+ $PROJECT_DIR$/../../Built Plugins/DuskHCF
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/compiler.xml b/Base/.idea/compiler.xml
new file mode 100644
index 0000000..96cc43e
--- /dev/null
+++ b/Base/.idea/compiler.xml
@@ -0,0 +1,22 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/copyright/profiles_settings.xml b/Base/.idea/copyright/profiles_settings.xml
new file mode 100644
index 0000000..e7bedf3
--- /dev/null
+++ b/Base/.idea/copyright/profiles_settings.xml
@@ -0,0 +1,3 @@
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/libraries/AurumHCF.xml b/Base/.idea/libraries/AurumHCF.xml
new file mode 100644
index 0000000..f454908
--- /dev/null
+++ b/Base/.idea/libraries/AurumHCF.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/libraries/PermissionsEx_1_23_3.xml b/Base/.idea/libraries/PermissionsEx_1_23_3.xml
new file mode 100644
index 0000000..0bbe0cb
--- /dev/null
+++ b/Base/.idea/libraries/PermissionsEx_1_23_3.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/libraries/tcpr_ca.xml b/Base/.idea/libraries/tcpr_ca.xml
new file mode 100644
index 0000000..a4422c9
--- /dev/null
+++ b/Base/.idea/libraries/tcpr_ca.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/misc.xml b/Base/.idea/misc.xml
new file mode 100644
index 0000000..27ef7ce
--- /dev/null
+++ b/Base/.idea/misc.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/modules.xml b/Base/.idea/modules.xml
new file mode 100644
index 0000000..6855a92
--- /dev/null
+++ b/Base/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/vcs.xml b/Base/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/Base/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.idea/workspace.xml b/Base/.idea/workspace.xml
new file mode 100644
index 0000000..f8b8610
--- /dev/null
+++ b/Base/.idea/workspace.xml
@@ -0,0 +1,1524 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ request
+ Config
+ p
+ slowchat
+ MobSta
+ list
+ listwho
+ setOp
+ S
+ staffchat
+ Sound
+ donor
+ move
+ all
+ getRemainingServer
+ who
+ command
+ setMess
+ message
+ sound
+ Message
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1470197242375
+
+
+ 1470197242375
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ file://$PROJECT_DIR$/src/com/customhcf/util/itemdb/ManagedFile.java
+ 70
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ LCore:jar
+
+
+
+
+
+
+
+
+
+
+
+
+ No facets are configured
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1.8
+
+
+
+
+
+
+
+
+
+
+
+ LCore
+
+
+
+
+
+
+
+
+
+
+
+
+ 1.8 (4)
+
+
+
+
+
+
+
+
+
+
+
+ PermissionsEx-1.23.3
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Base/.project b/Base/.project
new file mode 100644
index 0000000..0fec422
--- /dev/null
+++ b/Base/.project
@@ -0,0 +1,17 @@
+
+
+ Base
+
+
+
+
+
+ org.eclipse.jdt.core.javabuilder
+
+
+
+
+
+ org.eclipse.jdt.core.javanature
+
+
diff --git a/Base/config.yml b/Base/config.yml
new file mode 100644
index 0000000..f722ebb
--- /dev/null
+++ b/Base/config.yml
@@ -0,0 +1,11 @@
+announcements:
+ list: []
+ delay: 300
+broadcast:
+ format: '&e[Base] %1$s'
+chat:
+ enabled: false
+ slowed: false
+ slowed-delay: 15
+full-server-kick-message: '&cThe server is full. &e(%1$s/%2$s) \n\n&cDonate to get a premium slot. donate.customhcf.com'
+server-rules-format: '&cRules: '
\ No newline at end of file
diff --git a/Base/items.csv b/Base/items.csv
new file mode 100644
index 0000000..3ffd45c
--- /dev/null
+++ b/Base/items.csv
@@ -0,0 +1,7451 @@
+#This file belongs to DoctorDank.
+#version: 1.0
+#If you change this file, it will not be automatically updated after the next release.
+#item,id,metadata
+stone,1,0
+sstone,1,0
+smoothstone,1,0
+rock,1,0
+grass,2,0
+greendirt,2,0
+greenearth,2,0
+greenland,2,0
+dirt,3,0
+earth,3,0
+land,3,0
+grasslessdirt,3,1
+grasslessearth,3,1
+grasslessland,3,1
+podzol,3,2
+cobblestone,4,0
+cstone,4,0
+cobble,4,0
+wood,5,0
+plank,5,0
+woodenplank,5,0
+woodplank,5,0
+wplank,5,0
+plankwooden,5,0
+plankwood,5,0
+plankw,5,0
+oakplank,5,0
+oakwoodenplank,5,0
+oakwoodplank,5,0
+oakwplank,5,0
+oakplankwooden,5,0
+oakplankwood,5,0
+oakplankw,5,0
+oplank,5,0
+owoodenplank,5,0
+owoodplank,5,0
+owplank,5,0
+oplankwooden,5,0
+oplankwood,5,0
+oplankw,5,0
+pineplank,5,1
+pinewoodenplank,5,1
+pinewoodplank,5,1
+pinewplank,5,1
+pineplankwooden,5,1
+pineplankwood,5,1
+pineplankw,5,1
+pplank,5,1
+pwoodenplank,5,1
+pwoodplank,5,1
+pwplank,5,1
+pplankwooden,5,1
+pplankwood,5,1
+pplankw,5,1
+darkplank,5,1
+darkwoodenplank,5,1
+darkwoodplank,5,1
+darkwplank,5,1
+darkplankwooden,5,1
+darkplankwood,5,1
+darkplankw,5,1
+dplank,5,1
+dwoodenplank,5,1
+dwoodplank,5,1
+dwplank,5,1
+dplankwooden,5,1
+dplankwood,5,1
+dplankw,5,1
+spruceplank,5,1
+sprucewoodenplank,5,1
+sprucewoodplank,5,1
+sprucewplank,5,1
+spruceplankwooden,5,1
+spruceplankwood,5,1
+spruceplankw,5,1
+splank,5,1
+swoodenplank,5,1
+swoodplank,5,1
+swplank,5,1
+splankwooden,5,1
+splankwood,5,1
+splankw,5,1
+birchplank,5,2
+birchwoodenplank,5,2
+birchwoodplank,5,2
+birchwplank,5,2
+birchplankwooden,5,2
+birchplankwood,5,2
+birchplankw,5,2
+bplank,5,2
+bwoodenplank,5,2
+bwoodplank,5,2
+bwplank,5,2
+bplankwooden,5,2
+bplankwood,5,2
+bplankw,5,2
+lightplank,5,2
+lightwoodenplank,5,2
+lightwoodplank,5,2
+lightwplank,5,2
+lightplankwooden,5,2
+lightplankwood,5,2
+lightplankw,5,2
+lplank,5,2
+lwoodenplank,5,2
+lwoodplank,5,2
+lwplank,5,2
+lplankwooden,5,2
+lplankwood,5,2
+lplankw,5,2
+whiteplank,5,2
+whitewoodenplank,5,2
+whitewoodplank,5,2
+whitewplank,5,2
+whiteplankwooden,5,2
+whiteplankwood,5,2
+whiteplankw,5,2
+wwoodenplank,5,2
+wwoodplank,5,2
+wwplank,5,2
+wplankwooden,5,2
+wplankwood,5,2
+wplankw,5,2
+jungleplank,5,3
+junglewoodenplank,5,3
+junglewoodplank,5,3
+junglewplank,5,3
+jungleplankwooden,5,3
+jungleplankwood,5,3
+jungleplankw,5,3
+jplank,5,3
+jwoodenplank,5,3
+jwoodplank,5,3
+jwplank,5,3
+jplankwooden,5,3
+jplankwood,5,3
+jplankw,5,3
+forestplank,5,3
+forestwoodenplank,5,3
+forestwoodplank,5,3
+forestwplank,5,3
+forestplankwooden,5,3
+forestplankwood,5,3
+forestplankw,5,3
+fplank,5,3
+fwoodenplank,5,3
+fwoodplank,5,3
+fwplank,5,3
+fplankwooden,5,3
+fplankwood,5,3
+fplankw,5,3
+acaciaplank,5,4
+acaciawoodenplank,5,4
+acaciawoodplank,5,4
+acaciawplank,5,4
+acaciaplankwooden,5,4
+acaciaplankwood,5,4
+acaciaplankw,5,4
+aplank,5,4
+awoodenplank,5,4
+awoodplank,5,4
+awplank,5,4
+aplankwooden,5,4
+aplankwood,5,4
+aplankw,5,4
+darkoakplank,5,5
+darkoakwoodenplank,5,5
+darkoakwoodplank,5,5
+darkoakwplank,5,5
+darkoakplankwooden,5,5
+darkoakplankwood,5,5
+darkoakplankw,5,5
+doakplank,5,5
+doakwoodenplank,5,5
+doakwoodplank,5,5
+doakwplank,5,5
+doakplankwooden,5,5
+doakplankwood,5,5
+doakplankw,5,5
+doplank,5,5
+dowoodenplank,5,5
+dowoodplank,5,5
+dowplank,5,5
+doplankwooden,5,5
+doplankwood,5,5
+doplankw,5,5
+sapling,6,0
+treesapling,6,0
+logsapling,6,0
+trunksapling,6,0
+woodsapling,6,0
+oaktreesapling,6,0
+oaklogsapling,6,0
+oaktrunksapling,6,0
+oakwoodsapling,6,0
+osapling,6,0
+otreesapling,6,0
+ologsapling,6,0
+otrunksapling,6,0
+owoodsapling,6,0
+darksapling,6,1
+darktreesapling,6,1
+darklogsapling,6,1
+darktrunksapling,6,1
+darkwoodsapling,6,1
+sprucesapling,6,1
+sprucetreesapling,6,1
+sprucelogsapling,6,1
+sprucetrunksapling,6,1
+sprucewoodsapling,6,1
+pinesapling,6,1
+pinetreesapling,6,1
+pinelogsapling,6,1
+pinetrunksapling,6,1
+pinewoodsapling,6,1
+dsapling,6,1
+dtreesapling,6,1
+dlogsapling,6,1
+dtrunksapling,6,1
+dwoodsapling,6,1
+ssapling,6,1
+streesapling,6,1
+slogsapling,6,1
+strunksapling,6,1
+swoodsapling,6,1
+psapling,6,1
+ptreesapling,6,1
+plogsapling,6,1
+ptrunksapling,6,1
+pwoodsapling,6,1
+birchsapling,6,2
+birchtreesapling,6,2
+birchlogsapling,6,2
+birchtrunksapling,6,2
+birchwoodsapling,6,2
+lightsapling,6,2
+lighttreesapling,6,2
+lightlogsapling,6,2
+lighttrunksapling,6,2
+lightwoodsapling,6,2
+whitesapling,6,2
+whitetreesapling,6,2
+whitelogsapling,6,2
+whitetrunksapling,6,2
+whitewoodsapling,6,2
+bsapling,6,2
+btreesapling,6,2
+blogsapling,6,2
+btrunksapling,6,2
+bwoodsapling,6,2
+lsapling,6,2
+ltreesapling,6,2
+llogsapling,6,2
+ltrunksapling,6,2
+lwoodsapling,6,2
+wsapling,6,2
+wtreesapling,6,2
+wlogsapling,6,2
+wtrunksapling,6,2
+wwoodsapling,6,2
+junglesapling,6,3
+jungletreesapling,6,3
+junglelogsapling,6,3
+jungletrunksapling,6,3
+junglewoodsapling,6,3
+forestsapling,6,3
+foresttreesapling,6,3
+forestlogsapling,6,3
+foresttrunksapling,6,3
+forestwoodsapling,6,3
+jsapling,6,3
+jtreesapling,6,3
+jlogsapling,6,3
+jtrunksapling,6,3
+jwoodsapling,6,3
+fsapling,6,3
+ftreesapling,6,3
+flogsapling,6,3
+ftrunksapling,6,3
+fwoodsapling,6,3
+acaciasapling,6,4
+acaciatreesapling,6,4
+acacialogsapling,6,4
+acaciatrunksapling,6,4
+acaciawoodsapling,6,4
+asapling,6,4
+atreesapling,6,4
+alogsapling,6,4
+atrunksapling,6,4
+awoodsapling,6,4
+darkoaksapling,6,5
+darkoaktreesapling,6,5
+darkoaklogsapling,6,5
+darkoaktrunksapling,6,5
+darkoakwoodsapling,6,5
+doaksapling,6,5
+doaktreesapling,6,5
+doaklogsapling,6,5
+doaktrunksapling,6,5
+dosapling,6,5
+dowoodsapling,6,5
+dotreesapling,6,5
+dologsapling,6,5
+dotrunksapling,6,5
+bedrock,7,0
+oprock,7,0
+opblock,7,0
+adminblock,7,0
+adminrock,7,0
+adminium,7,0
+water,8,0
+stationarywater,9,0
+stillwater,9,0
+swater,9,0
+lava,10,0
+stationarylava,11,0
+stilllava,11,0
+slava,11,0
+sand,12,0
+redsand,12,1
+rsand,12,1
+gravel,13,0
+goldore,14,0
+oregold,14,0
+gore,14,0
+oreg,14,0
+ogold,14,0
+goldo,14,0
+ironore,15,0
+oreiron,15,0
+irono,15,0
+oiron,15,0
+steelore,15,0
+oresteel,15,0
+steelo,15,0
+osteel,15,0
+iore,15,0
+orei,15,0
+sore,15,0
+ores,15,0
+coalore,16,0
+orecoal,16,0
+coalo,16,0
+ocoal,16,0
+core,16,0
+tree,17,0
+log,17,0
+trunk,17,0
+oak,17,0
+oaktree,17,0
+oaklog,17,0
+oaktrunk,17,0
+oakwood,17,0
+otree,17,0
+olog,17,0
+otrunk,17,0
+owood,17,0
+pine,17,1
+pinetree,17,1
+pinelog,17,1
+pinetrunk,17,1
+pinewood,17,1
+darktree,17,1
+darklog,17,1
+darktrunk,17,1
+darkwood,17,1
+spruce,17,1
+sprucetree,17,1
+sprucelog,17,1
+sprucetrunk,17,1
+sprucewood,17,1
+dtree,17,1
+dlog,17,1
+dtrunk,17,1
+dwood,17,1
+stree,17,1
+slog,17,1
+strunk,17,1
+swood,17,1
+ptree,17,1
+plog,17,1
+ptrunk,17,1
+pwood,17,1
+birch,17,2
+birchtree,17,2
+birchlog,17,2
+birchtrunk,17,2
+birchwood,17,2
+whitetree,17,2
+whitelog,17,2
+whitetrunk,17,2
+whitewood,17,2
+lighttree,17,2
+lightlog,17,2
+lighttrunk,17,2
+lightwood,17,2
+btree,17,2
+blog,17,2
+btrunk,17,2
+bwood,17,2
+wtree,17,2
+wlog,17,2
+wtrunk,17,2
+wwood,17,2
+ltree,17,2
+llog,17,2
+ltrunk,17,2
+lwood,17,2
+jungletree,17,3
+junglelog,17,3
+jungletrunk,17,3
+junglewood,17,3
+jungle,17,3
+forest,17,3
+foresttree,17,3
+forestlog,17,3
+foresttrunk,17,3
+forestwood,17,3
+jtree,17,3
+jlog,17,3
+jtrunk,17,3
+jwood,17,3
+ftree,17,3
+flog,17,3
+ftrunk,17,3
+fwood,17,3
+leaves,18,0
+leaf,18,0
+treeleaves,18,0
+logleaves,18,0
+trunkleaves,18,0
+woodleaves,18,0
+oakleaves,18,0
+oakleaf,18,0
+oleaves,18,0
+oleaf,18,0
+oaktreeleaves,18,0
+oaklogleaves,18,0
+oaktrunkleaves,18,0
+oakwoodleaves,18,0
+otreeleaves,18,0
+ologleaves,18,0
+otrunkleaves,18,0
+owoodleaves,18,0
+treeleaf,18,0
+logleaf,18,0
+trunkleaf,18,0
+woodleaf,18,0
+oaktreeleaf,18,0
+oaklogleaf,18,0
+oaktrunkleaf,18,0
+oakwoodleaf,18,0
+otreeleaf,18,0
+ologleaf,18,0
+otrunkleaf,18,0
+owoodleaf,18,0
+pineleaves,18,1
+pineleaf,18,1
+pleaves,18,1
+pleaf,18,1
+pinetreeleaves,18,1
+pinelogleaves,18,1
+pinetrunkleaves,18,1
+pinewoodleaves,18,1
+ptreeleaves,18,1
+plogleaves,18,1
+ptrunkleaves,18,1
+pwoodleaves,18,1
+spruceleaves,18,1
+spruceleaf,18,1
+sleaves,18,1
+sleaf,18,1
+sprucetreeleaves,18,1
+sprucelogleaves,18,1
+sprucetrunkleaves,18,1
+sprucewoodleaves,18,1
+streeleaves,18,1
+slogleaves,18,1
+strunkleaves,18,1
+swoodleaves,18,1
+darkleaves,18,1
+darkleaf,18,1
+dleaves,18,1
+dleaf,18,1
+darktreeleaves,18,1
+darklogleaves,18,1
+darktrunkleaves,18,1
+darkwoodleaves,18,1
+dtreeleaves,18,1
+dlogleaves,18,1
+dtrunkleaves,18,1
+dwoodleaves,18,1
+sprucetreeleaf,18,1
+sprucelogleaf,18,1
+sprucetrunkleaf,18,1
+sprucewoodleaf,18,1
+streeleaf,18,1
+slogleaf,18,1
+strunkleaf,18,1
+swoodleaf,18,1
+pinetreeleaf,18,1
+pinelogleaf,18,1
+pinetrunkleaf,18,1
+pinewoodleaf,18,1
+ptreeleaf,18,1
+plogleaf,18,1
+ptrunkleaf,18,1
+pwoodleaf,18,1
+darktreeleaf,18,1
+darklogleaf,18,1
+darktrunkleaf,18,1
+darkwoodleaf,18,1
+dtreeleaf,18,1
+dlogleaf,18,1
+dtrunkleaf,18,1
+dwoodleaf,18,1
+birchleaves,18,2
+birchleaf,18,2
+bleaves,18,2
+bleaf,18,2
+birchtreeleaves,18,2
+birchlogleaves,18,2
+birchtrunkleaves,18,2
+birchwoodleaves,18,2
+btreeleaves,18,2
+blogleaves,18,2
+btrunkleaves,18,2
+bwoodleaves,18,2
+lightleaves,18,2
+lightleaf,18,2
+lleaves,18,2
+lleaf,18,2
+lighttreeleaves,18,2
+lightlogleaves,18,2
+lighttrunkleaves,18,2
+lightwoodleaves,18,2
+ltreeleaves,18,2
+llogleaves,18,2
+ltrunkleaves,18,2
+lwoodleaves,18,2
+whiteleaves,18,2
+whiteleaf,18,2
+wleaves,18,2
+wleaf,18,2
+whitetreeleaves,18,2
+whitelogleaves,18,2
+whitetrunkleaves,18,2
+whitewoodleaves,18,2
+wtreeleaves,18,2
+wlogleaves,18,2
+wtrunkleaves,18,2
+wwoodleaves,18,2
+birchtreeleaf,18,2
+birchlogleaf,18,2
+birchtrunkleaf,18,2
+birchwoodleaf,18,2
+btreeleaf,18,2
+blogleaf,18,2
+btrunkleaf,18,2
+bwoodleaf,18,2
+lighttreeleaf,18,2
+lightlogleaf,18,2
+lighttrunkleaf,18,2
+lightwoodleaf,18,2
+ltreeleaf,18,2
+llogleaf,18,2
+ltrunkleaf,18,2
+lwoodleaf,18,2
+whitetreeleaf,18,2
+whitelogleaf,18,2
+whitetrunkleaf,18,2
+whitewoodleaf,18,2
+wtreeleaf,18,2
+wlogleaf,18,2
+wtrunkleaf,18,2
+wwoodleaf,18,2
+jungleleaves,18,3
+jungleleaf,18,3
+jleaves,18,3
+jleaf,18,3
+jungletreeleaves,18,3
+junglelogleaves,18,3
+jungletrunkleaves,18,3
+junglewoodleaves,18,3
+jtreeleaves,18,3
+jlogleaves,18,3
+jtrunkleaves,18,3
+jwoodleaves,18,3
+forestleaves,18,3
+forestleaf,18,3
+fleaves,18,3
+fleaf,18,3
+foresttreeleaves,18,3
+forestlogleaves,18,3
+foresttrunkleaves,18,3
+forestwoodleaves,18,3
+ftreeleaves,18,3
+flogleaves,18,3
+ftrunkleaves,18,3
+fwoodleaves,18,3
+jungletreeleaf,18,3
+junglelogleaf,18,3
+jungletrunkleaf,18,3
+junglewoodleaf,18,3
+jtreeleaf,18,3
+jlogleaf,18,3
+jtrunkleaf,18,3
+jwoodleaf,18,3
+foresttreeleaf,18,3
+forestlogleaf,18,3
+foresttrunkleaf,18,3
+forestwoodleaf,18,3
+ftreeleaf,18,3
+flogleaf,18,3
+ftrunkleaf,18,3
+fwoodleaf,18,3
+sponge,19,0
+glass,20,0
+blockglass,20,0
+glassblock,20,0
+lapislazuliore,21,0
+lapislazulio,21,0
+orelapislazuli,21,0
+olapislazuli,21,0
+lapisore,21,0
+lapiso,21,0
+orelapis,21,0
+olapis,21,0
+lore,21,0
+orel,21,0
+lapislazuliblock,22,0
+blocklapislazuli,22,0
+lapisblock,22,0
+blocklapis,22,0
+lblock,22,0
+blockl,22,0
+dispenser,23,0
+dispense,23,0
+sandstone,24,0
+sastone,24,0
+creepersandstone,24,1
+creepersastone,24,1
+creepsandstone,24,1
+creepsastone,24,1
+csandstone,24,1
+csastone,24,1
+hieroglyphicsandstone,24,1
+hieroglyphicsastone,24,1
+hieroglyphsandstone,24,1
+hieroglyphsastone,24,1
+hsandstone,24,1
+hsastone,24,1
+pyramidsandstone,24,1
+pyramidsastone,24,1
+psandstone,24,1
+psastone,24,1
+chiseledsandstone,24,1
+chiseledsastone,24,1
+chiselsandstone,24,1
+chiselsastone,24,1
+smoothsandstone,24,2
+smoothsastone,24,2
+ssandstone,24,2
+smsastone,24,2
+ssastone,24,2
+noteblock,25,0
+musicblock,25,0
+nblock,25,0
+mblock,25,0
+poweredtrack,27,0
+poweredrails,27,0
+poweredrail,27,0
+boostertrack,27,0
+boosterrails,27,0
+boosterrail,27,0
+powertrack,27,0
+powerrails,27,0
+powerrail,27,0
+boosttrack,27,0
+boostrails,27,0
+boostrail,27,0
+ptrack,27,0
+prails,27,0
+prail,27,0
+btrack,27,0
+brails,27,0
+brail,27,0
+detectortrack,28,0
+detectorrails,28,0
+detectorrail,28,0
+detectingtrack,28,0
+detectingrails,28,0
+detectingrail,28,0
+detecttrack,28,0
+detectrails,28,0
+detectrail,28,0
+dtrack,28,0
+drails,28,0
+drail,28,0
+stickypistonbase,29,0
+stickypiston,29,0
+stickpistonbase,29,0
+stickpiston,29,0
+stickyp,29,0
+spistonbase,29,0
+spiston,29,0
+pistonstickybase,29,0
+pistonsticky,29,0
+pistonstickbase,29,0
+pistonstick,29,0
+pistonsbase,29,0
+pistons,29,0
+psticky,29,0
+pstick,29,0
+spiderweb,30,0
+cobweb,30,0
+sweb,30,0
+cweb,30,0
+web,30,0
+longgrass,31,1
+tallgrass,31,1
+wildgrass,31,1
+grasslong,31,1
+grasstall,31,1
+grasswild,31,1
+lgrass,31,1
+tgrass,31,1
+wgrass,31,1
+fern,31,2
+bush,31,2
+deadshrub,32,0
+dshrub,32,0
+deadbush,32,0
+dbush,32,0
+deadsapling,32,0
+piston,33,0
+pistonbase,33,0
+pistonblock,33,0
+whitewool,35,0
+whitecloth,35,0
+whitecotton,35,0
+wcloth,35,0
+wwool,35,0
+wcotton,35,0
+cloth,35,0
+wool,35,0
+cotton,35,0
+orangewool,35,1
+orangecloth,35,1
+orangecotton,35,1
+ocloth,35,1
+owool,35,1
+ocotton,35,1
+magentawool,35,2
+magentacloth,35,2
+magentacotton,35,2
+mcloth,35,2
+mwool,35,2
+mcotton,35,2
+lightbluewool,35,3
+lightbluecloth,35,3
+lightbluecotton,35,3
+lbluecloth,35,3
+lbluewool,35,3
+lbluecotton,35,3
+lightblucloth,35,3
+lightbluwool,35,3
+lightblucotton,35,3
+lblucloth,35,3
+lbluwool,35,3
+lblucotton,35,3
+lbcloth,35,3
+lbwool,35,3
+lbcotton,35,3
+yellowwool,35,4
+yellowcloth,35,4
+yellowcotton,35,4
+ycloth,35,4
+ywool,35,4
+ycotton,35,4
+lightgreenwool,35,5
+lightgreencloth,35,5
+lightgreencotton,35,5
+lgreencloth,35,5
+lgreenwool,35,5
+lgreencotton,35,5
+lightgrecloth,35,5
+lightgrewool,35,5
+lightgrecotton,35,5
+lgrecloth,35,5
+lgrewool,35,5
+lgrecotton,35,5
+limecloth,35,5
+limewool,35,5
+limecotton,35,5
+lcloth,35,5
+lwool,35,5
+lcotton,35,5
+pinkwool,35,6
+pinkcloth,35,6
+pinkcotton,35,6
+picloth,35,6
+piwool,35,6
+picotton,35,6
+darkgraywool,35,7
+darkgraycloth,35,7
+darkgraycotton,35,7
+darkgreywool,35,7
+darkgreycloth,35,7
+darkgreycotton,35,7
+dgraycloth,35,7
+dgraywool,35,7
+dgraycotton,35,7
+dgreycloth,35,7
+dgreywool,35,7
+dgreycotton,35,7
+darkgracloth,35,7
+darkgrawool,35,7
+darkgracotton,35,7
+dgracloth,35,7
+dgrawool,35,7
+dgracotton,35,7
+graycloth,35,7
+graywool,35,7
+graycotton,35,7
+greycloth,35,7
+greywool,35,7
+greycotton,35,7
+gracloth,35,7
+grawool,35,7
+gracotton,35,7
+lightgraywool,35,8
+lightgraycloth,35,8
+lightgraycotton,35,8
+lgraycloth,35,8
+lgraywool,35,8
+lgraycotton,35,8
+lightgreywool,35,8
+lightgreycloth,35,8
+lightgreycotton,35,8
+lgreycloth,35,8
+lgreywool,35,8
+lgreycotton,35,8
+lightgracloth,35,8
+lightgrawool,35,8
+lightgracotton,35,8
+lgracloth,35,8
+lgrawool,35,8
+lgracotton,35,8
+silvercloth,35,8
+silverwool,35,8
+silvercotton,35,8
+sicloth,35,8
+siawool,35,8
+siacotton,35,8
+cyanwool,35,9
+cyancloth,35,9
+cyancotton,35,9
+ccloth,35,9
+cwool,35,9
+ccotton,35,9
+purplewool,35,10
+purplecloth,35,10
+purplecotton,35,10
+pucloth,35,10
+puwool,35,10
+pucotton,35,10
+bluewool,35,11
+bluecloth,35,11
+bluecotton,35,11
+blucloth,35,11
+bluwool,35,11
+blucotton,35,11
+brownwool,35,12
+browncloth,35,12
+browncotton,35,12
+brocloth,35,12
+browool,35,12
+brocotton,35,12
+darkgreenwool,35,13
+darkgreencloth,35,13
+darkgreencotton,35,13
+dgreencloth,35,13
+dgreenwool,35,13
+dgreencotton,35,13
+greencloth,35,13
+greenwool,35,13
+greencotton,35,13
+darkgrecloth,35,13
+darkgrewool,35,13
+darkgrecotton,35,13
+dgrecloth,35,13
+dgrewool,35,13
+dgrecotton,35,13
+grecloth,35,13
+grewool,35,13
+grecotton,35,13
+redwool,35,14
+redcloth,35,14
+redcotton,35,14
+rcloth,35,14
+rwool,35,14
+rcotton,35,14
+blackwool,35,15
+blackcloth,35,15
+blackcotton,35,15
+blacloth,35,15
+blawool,35,15
+blacotton,35,15
+dandelion,37,0
+yellowdandelion,37,0
+ydandelion,37,0
+yellowflower,37,0
+yflower,37,0
+flower,37,0
+rose,38,0
+redrose,38,0
+rrose,38,0
+redflower,38,0
+rflower,38,0
+poppy,38,0
+redpoppy,38,0
+blueorchid,38,1
+cyanorchid,38,1
+lightblueorchid,38,1
+lblueorchid,38,1
+orchid,38,1
+allium,38,2
+magentaallium,38,2
+azurebluet,38,3
+whiteazurebluet,38,3
+abluet,38,3
+azureb,38,3
+houstonia,38,3
+redtulip,38,4
+tulipred,38,4
+rtulip,38,4
+tulipr,38,4
+orangetulip,38,5
+tuliporange,38,5
+otulip,38,5
+tulipo,38,5
+whitetulip,38,6
+tulipwhite,38,6
+wtulip,38,6
+tulipw,38,6
+pinktulip,38,7
+tulippink,38,7
+ptulip,38,7
+tulipp,38,7
+oxeye,38,8
+daisy,38,8
+oxeyedaisy,38,8
+daisyoxeye,38,8
+moondaisy,38,8
+daisymoon,38,8
+lightgrayoxeye,38,8
+lgrayoxeye,38,8
+lightgreyoxeye,38,8
+lgreyoxeye,38,8
+brownmushroom,39,0
+brownshroom,39,0
+brownmush,39,0
+bmushroom,39,0
+bshroom,39,0
+bmush,39,0
+redmushroom,40,0
+redshroom,40,0
+redmush,40,0
+rmushroom,40,0
+rshroom,40,0
+rmush,40,0
+goldblock,41,0
+blockgold,41,0
+gblock,41,0
+blockg,41,0
+ironblock,42,0
+steelblock,42,0
+blockiron,42,0
+blocksteel,42,0
+iblock,42,0
+stblock,42,0
+blocki,42,0
+blockst,42,0
+stonedoublestep,43,0
+stonedstep,43,0
+sdoublestep,43,0
+sdstep,43,0
+doublestonestep,43,0
+dstonestep,43,0
+doublesstep,43,0
+doublestep,43,0
+dstep,43,0
+stonedoubleslab,43,0
+stonedslab,43,0
+sdoubleslab,43,0
+sdslab,43,0
+doublestoneslab,43,0
+dstoneslab,43,0
+doublesslab,43,0
+doubleslab,43,0
+dslab,43,0
+stonedoublehalfblock,43,0
+stonedhalfblock,43,0
+sdoublehalfblock,43,0
+sdhalfblock,43,0
+doublestonehalfblock,43,0
+dstonehalfblock,43,0
+doubleshalfblock,43,0
+doublehalfblock,43,0
+dhalfblock,43,0
+sandstonedoublestep,43,1
+sandstonedstep,43,1
+sstonedoublestep,43,1
+sstonedstep,43,1
+ssdoublestep,43,1
+ssdstep,43,1
+doublesandstonestep,43,1
+dsandstonestep,43,1
+doublesstonestep,43,1
+dsstonestep,43,1
+doublessstep,43,1
+dsstep,43,1
+sandstonedoubleslab,43,1
+sandstonedslab,43,1
+sstonedoubleslab,43,1
+sstonedslab,43,1
+ssdoubleslab,43,1
+ssdslab,43,1
+doublesandstoneslab,43,1
+dsandstoneslab,43,1
+doublesstoneslab,43,1
+dsstoneslab,43,1
+doublessslab,43,1
+dsslab,43,1
+sandstonedoublehalfblock,43,1
+sandstonedhalfblock,43,1
+sstonedoublehalfblock,43,1
+sstonedhalfblock,43,1
+ssdoublehalfblock,43,1
+ssdhalfblock,43,1
+doublesandstonehalfblock,43,1
+dsandstonehalfblock,43,1
+doublesstonehalfblock,43,1
+dsstonehalfblock,43,1
+doublesshalfblock,43,1
+dsshalfblock,43,1
+plankstonedoublestep,43,2
+woodenstonedoublestep,43,2
+woodenstonedstep,43,2
+woodstonedoublestep,43,2
+woodstonedstep,43,2
+wstonedoublestep,43,2
+wstonedstep,43,2
+doublewoodenstonestep,43,2
+dwoodenstonestep,43,2
+doublewoodstonestep,43,2
+dwoodstonestep,43,2
+doublewstonestep,43,2
+dwstonestep,43,2
+woodenstonedoubleslab,43,2
+woodenstonedslab,43,2
+woodstonedoubleslab,43,2
+woodstonedslab,43,2
+wstonedoubleslab,43,2
+wstonedslab,43,2
+doublewoodenstoneslab,43,2
+dwoodenstoneslab,43,2
+doublewoodstoneslab,43,2
+dwoodstoneslab,43,2
+doublewstoneslab,43,2
+dwstoneslab,43,2
+woodenstonedoublehalfblock,43,2
+woodenstonedhalfblock,43,2
+woodstonedoublehalfblock,43,2
+woodstonedhalfblock,43,2
+wstonedoublehalfblock,43,2
+wstonedhalfblock,43,2
+doublewoodenstonehalfblock,43,2
+dwoodenstonehalfblock,43,2
+doublewoodstonehalfblock,43,2
+dwoodstonehalfblock,43,2
+doublewstonehalfblock,43,2
+dwstonehalfblock,43,2
+cobblestonedoublestep,43,3
+cobblestonedstep,43,3
+cobbledoublestep,43,3
+cobbledstep,43,3
+cstonedoublestep,43,3
+cstonedstep,43,3
+csdoublestep,43,3
+csdstep,43,3
+doublecobblestonestep,43,3
+dcobblestonestep,43,3
+doublecobblestep,43,3
+dcobblestep,43,3
+doublecstonestep,43,3
+dcstonestep,43,3
+doublecsstep,43,3
+dcsstep,43,3
+cobblestonedoubleslab,43,3
+cobblestonedslab,43,3
+cobbledoubleslab,43,3
+cobbledslab,43,3
+cstonedoubleslab,43,3
+cstonedslab,43,3
+csdoubleslab,43,3
+csdslab,43,3
+doublecobblestoneslab,43,3
+dcobblestoneslab,43,3
+doublecobbleslab,43,3
+dcobbleslab,43,3
+doublecstoneslab,43,3
+dcstoneslab,43,3
+doublecsslab,43,3
+dcsslab,43,3
+cobblestonedoublehalfblock,43,3
+cobblestonedhalfblock,43,3
+cobbledoublehalfblock,43,3
+cobbledhalfblock,43,3
+cstonedoublehalfblock,43,3
+cstonedhalfblock,43,3
+csdoublehalfblock,43,3
+csdhalfblock,43,3
+doublecobblestonehalfblock,43,3
+dcobblestonehalfblock,43,3
+doublecobblehalfblock,43,3
+dcobblehalfblock,43,3
+doublecstonehalfblock,43,3
+dcstonehalfblock,43,3
+doublecshalfblock,43,3
+dcshalfblock,43,3
+brickdoublestep,43,4
+brickdstep,43,4
+bdoublestep,43,4
+bdstep,43,4
+brickdoubleslab,43,4
+brickdslab,43,4
+bdoubleslab,43,4
+bdslab,43,4
+doublebrickstep,43,4
+dbrickstep,43,4
+doublebstep,43,4
+dbstep,43,4
+doublebrickslab,43,4
+dbrickslab,43,4
+doublebslab,43,4
+dbslab,43,4
+brickdoublehalfblock,43,4
+brickdhalfblock,43,4
+bdoublehalfblock,43,4
+bdhalfblock,43,4
+doublebrickhalfblock,43,4
+dbrickhalfblock,43,4
+doublebhalfblock,43,4
+dbhalfblock,43,4
+stonebrickdoublestep,43,5
+stonebrickdstep,43,5
+stonebdoublestep,43,5
+stonebdstep,43,5
+sbrickdoublestep,43,5
+sbrickdstep,43,5
+sbdoublestep,43,5
+sbdstep,43,5
+stonebrickdoubleslab,43,5
+stonebrickdslab,43,5
+stonebdoubleslab,43,5
+stonebdslab,43,5
+sbrickdoubleslab,43,5
+sbrickdslab,43,5
+sbdoubleslab,43,5
+sbdslab,43,5
+doublestonebrickstep,43,5
+dstonebrickstep,43,5
+doublestonebstep,43,5
+dstonebstep,43,5
+doublesbrickstep,43,5
+dsbrickstep,43,5
+doublesbstep,43,5
+dsbstep,43,5
+doublestonebrickslab,43,5
+dstonebrickslab,43,5
+doublestonebslab,43,5
+dstonebslab,43,5
+doublesbrickslab,43,5
+dsbrickdslab,43,5
+doublesbslab,43,5
+dsbslab,43,5
+stonebrickdoublehalfblock,43,5
+stonebrickdhalfblock,43,5
+stonebdoublehalfblock,43,5
+stonebdhalfblock,43,5
+sbrickdoublehalfblock,43,5
+sbrickdhalfblock,43,5
+sbdoublehalfblock,43,5
+sbdhalfblock,43,5
+doublestonebrickhalfblock,43,5
+dstonebrickhalfblock,43,5
+doublestonebhalfblock,43,5
+dstonebhalfblock,43,5
+doublesbrickhalfblock,43,5
+dsbrickhalfblock,43,5
+doublesbhalfblock,43,5
+dsbhalfblock,43,5
+netherbrickdoubleslab,43,6
+hellbrickdoubleslab,43,6
+nbrickdoubleslab,43,6
+hbrickdoubleslab,43,6
+netherdoubleslab,43,6
+helldoubleslab,43,6
+nbdoubleslab,43,6
+hbdoubleslab,43,6
+hdoubleslab,43,6
+ndoubleslab,43,6
+netherbrickdoublestep,43,6
+hellbrickdoublestep,43,6
+nbrickdoublestep,43,6
+hbrickdoublestep,43,6
+netherdoublestep,43,6
+helldoublestep,43,6
+nbdoublestep,43,6
+hbdoublestep,43,6
+ndoublestep,43,6
+hdoublestep,43,6
+netherbrickdoublehalfblock,43,6
+hellbrickdoublehalfblock,43,6
+nbrickdoublehalfblock,43,6
+hbrickdoublehalfblock,43,6
+netherdoublehalfblock,43,6
+helldoublehalfblock,43,6
+nbdoublehalfblock,43,6
+hbdoublehalfblock,43,6
+ndoublehalfblock,43,6
+hdoublehalfblock,43,6
+netherbrickdslab,43,6
+hellbrickdslab,43,6
+nbrickdslab,43,6
+hbrickdslab,43,6
+netherdslab,43,6
+helldslab,43,6
+nbdslab,43,6
+hbdslab,43,6
+hdslab,43,6
+ndslab,43,6
+netherbrickdstep,43,6
+hellbrickdstep,43,6
+nbrickdstep,43,6
+hbrickdstep,43,6
+netherdstep,43,6
+helldstep,43,6
+nbdstep,43,6
+hbdstep,43,6
+ndstep,43,6
+hdstep,43,6
+netherbrickdhalfblock,43,6
+hellbrickdhalfblock,43,6
+nbrickdhalfblock,43,6
+hbrickdhalfblock,43,6
+netherdhalfblock,43,6
+helldhalfblock,43,6
+nbdhalfblock,43,6
+hbdhalfblock,43,6
+ndhalfblock,43,6
+hdhalfblock,43,6
+doublenetherbrickslab,43,6
+doublehellbrickslab,43,6
+doublenbrickslab,43,6
+doublehbrickslab,43,6
+doublenetherslab,43,6
+doublehellslab,43,6
+doublenbslab,43,6
+doublehbslab,43,6
+doublehslab,43,6
+doublenslab,43,6
+doublenetherbrickstep,43,6
+doublehellbrickstep,43,6
+doublenbrickstep,43,6
+doublehbrickstep,43,6
+doublenetherstep,43,6
+doublehellstep,43,6
+doublenbstep,43,6
+doublehbstep,43,6
+doublenstep,43,6
+doublehstep,43,6
+doublenetherbrickhalfblock,43,6
+doublehellbrickhalfblock,43,6
+doublenbrickhalfblock,43,6
+doublehbrickhalfblock,43,6
+doublenetherhalfblock,43,6
+doublehellhalfblock,43,6
+doublenbhalfblock,43,6
+doublehbhalfblock,43,6
+doublenhalfblock,43,6
+doublehhalfblock,43,6
+dnetherbrickslab,43,6
+dhellbrickslab,43,6
+dnbrickslab,43,6
+dhbrickslab,43,6
+dnetherslab,43,6
+dhellslab,43,6
+dnbslab,43,6
+dhbslab,43,6
+dhslab,43,6
+dnslab,43,6
+dnetherbrickstep,43,6
+dhellbrickstep,43,6
+dnbrickstep,43,6
+dhbrickstep,43,6
+dnetherstep,43,6
+dhellstep,43,6
+dnbstep,43,6
+dhbstep,43,6
+dnstep,43,6
+dhstep,43,6
+dnetherbrickhalfblock,43,6
+dhellbrickhalfblock,43,6
+dnbrickhalfblock,43,6
+dhbrickhalfblock,43,6
+dnetherhalfblock,43,6
+dhellhalfblock,43,6
+dnbhalfblock,43,6
+dhbhalfblock,43,6
+dnhalfblock,43,6
+dhhalfblock,43,6
+netherquartzdoublestep,43,7
+hellquartzdoublestep,43,7
+deathquartzdoublestep,43,7
+nquartzdoublestep,43,7
+hquartzdoublestep,43,7
+dquartzdoublestep,43,7
+quartzdoublestep,43,7
+nqdoublestep,43,7
+hqdoublestep,43,7
+dqdoublestep,43,7
+qdoublestep,43,7
+netherquartzdoubleslab,43,7
+hellquartzdoubleslab,43,7
+deathquartzdoubleslab,43,7
+nquartzdoubleslab,43,7
+hquartzdoubleslab,43,7
+dquartzdoubleslab,43,7
+quartzdoubleslab,43,7
+nqdoubleslab,43,7
+hqdoubleslab,43,7
+dqdoubleslab,43,7
+qdoubleslab,43,7
+netherquartzdoublehalfblock,43,7
+hellquartzdoublehalfblock,43,7
+deathquartzdoublehalfblock,43,7
+nquartzdoublehalfblock,43,7
+hquartzdoublehalfblock,43,7
+dquartzdoublehalfblock,43,7
+quartzdoublehalfblock,43,7
+nqdoublehalfblock,43,7
+hqdoublehalfblock,43,7
+dqdoublehalfblock,43,7
+qdoublehalfblock,43,7
+netherquartzdslab,43,7
+hellquartzdslab,43,7
+deathquartzdslab,43,7
+nquartzdslab,43,7
+hquartzdslab,43,7
+dquartzdslab,43,7
+quartzdslab,43,7
+nqdslab,43,7
+hqdslab,43,7
+dqdslab,43,7
+qdslab,43,7
+netherquartzdstep,43,7
+hellquartzdstep,43,7
+deathquartzdstep,43,7
+nquartzdstep,43,7
+hquartzdstep,43,7
+dquartzdstep,43,7
+quartzdstep,43,7
+nqdstep,43,7
+hqdstep,43,7
+dqdstep,43,7
+qdstep,43,7
+netherquartzdhalfblock,43,7
+hellquartzdhalfblock,43,7
+deathquartzdhalfblock,43,7
+nquartzdhalfblock,43,7
+hquartzdhalfblock,43,7
+dquartzdhalfblock,43,7
+quartzdhalfblock,43,7
+nqdhalfblock,43,7
+hqdhalfblock,43,7
+dqdhalfblock,43,7
+qdhalfblock,43,7
+doublenetherquartzslab,43,7
+doublehellquartzslab,43,7
+doubledeathquartzslab,43,7
+doublenquartzslab,43,7
+doublehquartzslab,43,7
+doubledquartzslab,43,7
+doublequartzslab,43,7
+doublenqslab,43,7
+doublehqslab,43,7
+doubledqslab,43,7
+doubleqslab,43,7
+doublenetherquartzstep,43,7
+doublehellquartzstep,43,7
+doubledeathquartzstep,43,7
+doublenquartzstep,43,7
+doublehquartzstep,43,7
+doubledquartzstep,43,7
+doublequartzstep,43,7
+doublenqstep,43,7
+doublehqstep,43,7
+doubledqstep,43,7
+doubleqstep,43,7
+doublenetherquartzhalfblock,43,7
+doublehellquartzhalfblock,43,7
+doubledeathquartzhalfblock,43,7
+doublenquartzhalfblock,43,7
+doublehquartzhalfblock,43,7
+doubledquartzhalfblock,43,7
+doublequartzhalfblock,43,7
+doublenqhalfblock,43,7
+doublehqhalfblock,43,7
+doubledqhalfblock,43,7
+doubleqhalfblock,43,7
+dnetherquartzslab,43,7
+dhellquartzslab,43,7
+ddeathquartzslab,43,7
+dnquartzslab,43,7
+dhquartzslab,43,7
+ddquartzslab,43,7
+dnqslab,43,7
+dhqslab,43,7
+ddqslab,43,7
+dnetherquartzstep,43,7
+dhellquartzstep,43,7
+ddeathquartzstep,43,7
+dnquartzstep,43,7
+dhquartzstep,43,7
+ddquartzstep,43,7
+dnqstep,43,7
+dhqstep,43,7
+ddqstep,43,7
+dnetherquartzhalfblock,43,7
+dhellquartzhalfblock,43,7
+ddeathquartzhalfblock,43,7
+dnquartzhalfblock,43,7
+dhquartzhalfblock,43,7
+ddquartzhalfblock,43,7
+dnqhalfblock,43,7
+dhqhalfblock,43,7
+ddqhalfblock,43,7
+smoothstonedoubleslab,43,8
+smoothstonedoublestep,43,8
+smoothstonedoublehalfblock,43,8
+smoothstonedslab,43,8
+smoothstonedstep,43,8
+smoothstonedhalfblock,43,8
+doublesmoothstoneslab,43,8
+doublesmoothstonestep,43,8
+doublesmoothstonehalfblock,43,8
+dsmoothstoneslab,43,8
+dsmoothstonestep,43,8
+dsmoothstonehalfblock,43,8
+smoothsandstonedoubleslab,43,9
+ssandstonedoubleslab,43,9
+ssstonedoubleslab,43,9
+sssdoubleslab,43,9
+smoothsandstonedoublestep,43,9
+ssandstonedoublestep,43,9
+ssstonedoublestep,43,9
+sssdoublestep,43,9
+smoothsandstonedoublehalfblock,43,9
+ssandstonedoublehalfblock,43,9
+ssstonedoublehalfblock,43,9
+sssdoublehalfblock,43,9
+smoothsandstonedslab,43,9
+ssandstonedslab,43,9
+ssstonedslab,43,9
+sssdslab,43,9
+smoothsandstonedstep,43,9
+ssandstonedstep,43,9
+ssstonedstep,43,9
+sssdstep,43,9
+smoothsandstonedhalfblock,43,9
+ssandstonedhalfblock,43,9
+ssstonedhalfblock,43,9
+sssdhalfblock,43,9
+doublesmoothsandstoneslab,43,9
+doublessandstoneslab,43,9
+doublessstoneslab,43,9
+doublesssslab,43,9
+doublesmoothsandstonestep,43,9
+doublessandstonestep,43,9
+doublessstonestep,43,9
+doublesssstep,43,9
+doublesmoothsandstonehalfblock,43,9
+doublessandstonehalfblock,43,9
+doublessstonehalfblock,43,9
+doublessshalfblock,43,9
+dsmoothsandstoneslab,43,9
+dssandstoneslab,43,9
+dssstoneslab,43,9
+dsssslab,43,9
+dsmoothsandstonestep,43,9
+dssandstonestep,43,9
+dssstonestep,43,9
+dsssstep,43,9
+dsmoothsandstonehalfblock,43,9
+dssandstonehalfblock,43,9
+dssstonehalfblock,43,9
+dssshalfblock,43,9
+smoothstonestep,44,0
+stonestep,44,0
+sstep,44,0
+step,44,0
+smoothstoneslab,44,0
+stoneslab,44,0
+sslab,44,0
+slab,44,0
+smoothstonehalfblock,44,0
+stonehalfblock,44,0
+shalfblock,44,0
+halfblock,44,0
+sandstonestep,44,1
+sstonestep,44,1
+ssstep,44,1
+sandstoneslab,44,1
+sstoneslab,44,1
+ssslab,44,1
+sandstonehalfblock,44,1
+sstonehalfblock,44,1
+sshalfblock,44,1
+woodenstonestep,44,2
+woodstonestep,44,2
+wstonestep,44,2
+woodenstoneslab,44,2
+woodstoneslab,44,2
+wstoneslab,44,2
+woodenstonehalfblock,44,2
+woodstonehalfblock,44,2
+wstonehalfblock,44,2
+cobblestonestep,44,3
+cobblestep,44,3
+cstonestep,44,3
+csstep,44,3
+cobblestoneslab,44,3
+cobbleslab,44,3
+cstoneslab,44,3
+csslab,44,3
+cobblestonehalfblock,44,3
+cobblehalfblock,44,3
+cstonehalfblock,44,3
+cshalfblock,44,3
+brickstep,44,4
+bstep,44,4
+brickslab,44,4
+bslab,44,4
+brickhalfblock,44,4
+bhalfblock,44,4
+stonebrickstep,44,5
+stonebstep,44,5
+sbrickstep,44,5
+sbstep,44,5
+stonebrickslab,44,5
+stonebslab,44,5
+sbrickslab,44,5
+sbslab,44,5
+stonebrickhalfblock,44,5
+stonebhalfblock,44,5
+sbrickhalfblock,44,5
+sbhalfblock,44,5
+netherbrickslab,44,6
+hellbrickslab,44,6
+nbrickslab,44,6
+hbrickslab,44,6
+netherslab,44,6
+hellslab,44,6
+nbslab,44,6
+hbslab,44,6
+hslab,44,6
+nslab,44,6
+netherbrickstep,44,6
+hellbrickstep,44,6
+nbrickstep,44,6
+hbrickstep,44,6
+netherstep,44,6
+hellstep,44,6
+nbstep,44,6
+hbstep,44,6
+nstep,44,6
+hstep,44,6
+netherbrickhalfblock,44,6
+hellbrickhalfblock,44,6
+nbrickhalfblock,44,6
+hbrickhalfblock,44,6
+netherhalfblock,44,6
+hellhalfblock,44,6
+nbhalfblock,44,6
+hbhalfblock,44,6
+nhalfblock,44,6
+hhalfblock,44,6
+netherquartzstep,44,7
+hellquartzstep,44,7
+deathquartzstep,44,7
+nquartzstep,44,7
+hquartzstep,44,7
+dquartzstep,44,7
+quartzstep,44,7
+nqstep,44,7
+hqstep,44,7
+dqstep,44,7
+qstep,44,7
+netherquartzslab,44,7
+hellquartzslab,44,7
+deathquartzslab,44,7
+nquartzslab,44,7
+hquartzslab,44,7
+dquartzslab,44,7
+quartzslab,44,7
+nqslab,44,7
+hqslab,44,7
+dqslab,44,7
+qslab,44,7
+netherquartzhalfblock,44,7
+hellquartzhalfblock,44,7
+deathquartzhalfblock,44,7
+nquartzhalfblock,44,7
+hquartzhalfblock,44,7
+dquartzhalfblock,44,7
+quartzhalfblock,44,7
+nqhalfblock,44,7
+hqhalfblock,44,7
+dqhalfblock,44,7
+qhalfblock,44,7
+brickblock,45,0
+blockbrick,45,0
+bblock,45,0
+blockb,45,0
+tnt,46,0
+tntblock,46,0
+blocktnt,46,0
+bombblock,46,0
+blockbomb,46,0
+dynamiteblock,46,0
+blockdynamite,46,0
+bomb,46,0
+dynamite,46,0
+bookcase,47,0
+casebook,47,0
+bookshelf,47,0
+shelfbook,47,0
+bookblock,47,0
+blockbook,47,0
+mossycobblestone,48,0
+mosscobblestone,48,0
+mcobblestone,48,0
+mossycobble,48,0
+mosscobble,48,0
+mcobble,48,0
+mossstone,48,0
+mossystone,48,0
+mstone,48,0
+obsidian,49,0
+obsi,49,0
+obby,49,0
+torch,50,0
+burningstick,50,0
+burnstick,50,0
+fire,51,0
+flame,51,0
+flames,51,0
+mobspawner,52,0
+mobcage,52,0
+monsterspawner,52,0
+monstercage,52,0
+mspawner,52,0
+mcage,52,0
+spawner,52,0
+cage,52,0
+woodenstairs,53,0
+woodstairs,53,0
+wstairs,53,0
+woodenstair,53,0
+woodstair,53,0
+wstair,53,0
+chest,54,0
+container,54,0
+diamondore,56,0
+crystalore,56,0
+orediamond,56,0
+orecrystal,56,0
+dore,56,0
+ored,56,0
+diamondblock,57,0
+blockdiamond,57,0
+crystalblock,57,0
+blockcrystal,57,0
+dblock,57,0
+blockd,57,0
+workbench,58,0
+craftingbench,58,0
+crafterbench,58,0
+craftbench,58,0
+worktable,58,0
+craftingtable,58,0
+craftertable,58,0
+crafttable,58,0
+wbench,58,0
+cbench,58,0
+soil,60,0
+furnace,61,0
+litfurnace,62,0
+lfurnace,62,0
+burningfurnace,62,0
+burnfurnace,62,0
+bfurnace,62,0
+ladder,65,0
+minecarttrack,66,0
+minecartrails,66,0
+minecartrail,66,0
+mcarttrack,66,0
+mcartrails,66,0
+mcartrail,66,0
+mctrack,66,0
+mcrails,66,0
+mcrail,66,0
+track,66,0
+rails,66,0
+rail,66,0
+cobblestonestairs,67,0
+cstonestairs,67,0
+stonestairs,67,0
+cobblestairs,67,0
+csstairs,67,0
+sstairs,67,0
+cstairs,67,0
+cobblestonestair,67,0
+cstonestair,67,0
+stonestair,67,0
+cobblestair,67,0
+csstair,67,0
+sstair,67,0
+cstair,67,0
+lever,69,0
+stonepressureplate,70,0
+stonepressplate,70,0
+stonepplate,70,0
+stoneplate,70,0
+spressureplate,70,0
+spressplate,70,0
+spplate,70,0
+splate,70,0
+smoothstonepressureplate,70,0
+smoothstonepressplate,70,0
+smoothstonepplate,70,0
+smoothstoneplate,70,0
+sstonepressureplate,70,0
+sstonepressplate,70,0
+sstonepplate,70,0
+sstoneplate,70,0
+woodenpressureplate,72,0
+woodenpressplate,72,0
+woodenpplate,72,0
+woodenplate,72,0
+woodpressureplate,72,0
+woodpressplate,72,0
+woodpplate,72,0
+woodplate,72,0
+wpressureplate,72,0
+wpressplate,72,0
+wpplate,72,0
+wplate,72,0
+redstoneore,73,0
+redsore,73,0
+redore,73,0
+rstoneore,73,0
+rsore,73,0
+rore,73,0
+oreredstone,73,0
+orereds,73,0
+orered,73,0
+orerstone,73,0
+orers,73,0
+orer,73,0
+redstonetorch,76,0
+rstonetorch,76,0
+redstorch,76,0
+redtorch,76,0
+rstorch,76,0
+stonebutton,77,0
+smoothstonebutton,77,0
+sstonebutton,77,0
+sbutton,77,0
+button,77,0
+snowcover,78,0
+snowcovering,78,0
+scover,78,0
+ice,79,0
+frozenwater,79,0
+waterfrozen,79,0
+freezewater,79,0
+waterfreeze,79,0
+snowblock,80,0
+blocksnow,80,0
+sblock,80,0
+blocks,80,0
+cactus,81,0
+cactuses,81,0
+cacti,81,0
+clayblock,82,0
+blockclay,82,0
+cblock,82,0
+blockc,82,0
+jukebox,84,0
+jbox,84,0
+woodenfence,85,0
+fence,85,0
+woodfence,85,0
+wfence,85,0
+fencewooden,85,0
+fencewood,85,0
+fencew,85,0
+pumpkin,86,0
+netherrack,87,0
+netherrock,87,0
+netherstone,87,0
+hellrack,87,0
+hellrock,87,0
+hellstone,87,0
+deathrack,87,0
+deathrock,87,0
+deathstone,87,0
+nrack,87,0
+nrock,87,0
+nstone,87,0
+hrack,87,0
+hrock,87,0
+hstone,87,0
+drack,87,0
+drock,87,0
+dstone,87,0
+soulsand,88,0
+slowsand,88,0
+slowmud,88,0
+ssand,88,0
+smud,88,0
+mud,88,0
+glowstone,89,0
+glowingstoneblock,89,0
+lightstoneblock,89,0
+glowstoneblock,89,0
+blockglowingstone,89,0
+blocklightstone,89,0
+blockglowstone,89,0
+glowingstone,89,0
+lightstone,89,0
+glowingblock,89,0
+lightblock,89,0
+glowblock,89,0
+lstone,89,0
+gstone,89,0
+portal,90,0
+jackolantern,91,0
+pumpkinlantern,91,0
+glowingpumpkin,91,0
+lightpumpkin,91,0
+jpumpkin,91,0
+plantren,91,0
+glowpumpkin,91,0
+gpumpkin,91,0
+lpumpkin,91,0
+lockedchest,95,0
+lockchest,95,0
+jokechest,95,0
+whiteglass,95,0
+whitesglass,95,0
+whitestainedglass,95,0
+wglass,95,0
+wsglass,95,0
+wstainedglass,95,0
+sglass,95,0
+stainedglass,95,0
+orangeglass,95,1
+orangesglass,95,1
+orangestainedglass,95,1
+oglass,95,1
+osglass,95,1
+ostainedglass,95,1
+magentaglass,95,2
+magentasglass,95,2
+magentastainedglass,95,2
+mglass,95,2
+msglass,95,2
+mstainedglass,95,2
+lightblueglass,95,3
+lightbluesglass,95,3
+lightbluestainedglass,95,3
+lblueglass,95,3
+lbluesglass,95,3
+lbluestainedglass,95,3
+lightbluglass,95,3
+lightblusglass,95,3
+lightblustainedglass,95,3
+lbluglass,95,3
+lblusglass,95,3
+lblustainedglass,95,3
+lbglass,95,3
+lbsglass,95,3
+lbstainedglass,95,3
+yellowglass,95,4
+yellowsglass,95,4
+yellowstainedglass,95,4
+yglass,95,4
+ysglass,95,4
+ystainedglass,95,4
+lightgreenglass,95,5
+lightgreensglass,95,5
+lightgreenstainedglass,95,5
+lgreenglass,95,5
+lgreensglass,95,5
+lgreenstainedglass,95,5
+lightgreglass,95,5
+lightgresglass,95,5
+lightgrestainedglass,95,5
+lgreglass,95,5
+lgresglass,95,5
+lgrestainedglass,95,5
+limeglass,95,5
+limesglass,95,5
+limestainedglass,95,5
+lglass,95,5
+lsglass,95,5
+lstainedglass,95,5
+pinkglass,95,6
+pinksglass,95,6
+pinkstainedglass,95,6
+piglass,95,6
+pisglass,95,6
+pistainedglass,95,6
+darkgrayglass,95,7
+darkgraysglass,95,7
+darkgraystainedglass,95,7
+dgrayglass,95,7
+dgraysglass,95,7
+dgraystainedglass,95,7
+darkgreyglass,95,7
+darkgreysglass,95,7
+darkgreystainedglass,95,7
+dgreyglass,95,7
+dgreysglass,95,7
+dgreystainedglass,95,7
+darkgraglass,95,7
+darkgrasglass,95,7
+darkgrastainedglass,95,7
+dgraglass,95,7
+dgrasglass,95,7
+dgrastainedglass,95,7
+grayglass,95,7
+graysglass,95,7
+graystainedglass,95,7
+greyglass,95,7
+greysglass,95,7
+greystainedglass,95,7
+graglass,95,7
+grasglass,95,7
+grastainedglass,95,7
+lightgrayglass,95,8
+lightgraysglass,95,8
+lightgraystainedglass,95,8
+lgrayglass,95,8
+lgraysglass,95,8
+lgraystainedglass,95,8
+lightgreyglass,95,8
+lightgreysglass,95,8
+lightgreystainedglass,95,8
+lgreyglass,95,8
+lgreysglass,95,8
+lgreystainedglass,95,8
+lightgraglass,95,8
+lightgrasglass,95,8
+lightgrastainedglass,95,8
+lgraglass,95,8
+lgrasglass,95,8
+lgrastainedglass,95,8
+silverglass,95,8
+silversglass,95,8
+silverstainedglass,95,8
+siglass,95,8
+siasglass,95,8
+siastainedglass,95,8
+cyanglass,95,9
+cyansglass,95,9
+cyanstainedglass,95,9
+cglass,95,9
+csglass,95,9
+cstainedglass,95,9
+purpleglass,95,10
+purplesglass,95,10
+purplestainedglass,95,10
+puglass,95,10
+pusglass,95,10
+pustainedglass,95,10
+blueglass,95,11
+bluesglass,95,11
+bluestainedglass,95,11
+bluglass,95,11
+blusglass,95,11
+blustainedglass,95,11
+brownglass,95,12
+brownsglass,95,12
+brownstainedglass,95,12
+broglass,95,12
+brosglass,95,12
+brostainedglass,95,12
+darkgreenglass,95,13
+darkgreensglass,95,13
+darkgreenstainedglass,95,13
+dgreenglass,95,13
+dgreensglass,95,13
+dgreenstainedglass,95,13
+greenglass,95,13
+greensglass,95,13
+greenstainedglass,95,13
+darkgreglass,95,13
+darkgresglass,95,13
+darkgrestainedglass,95,13
+dgreglass,95,13
+dgresglass,95,13
+dgrestainedglass,95,13
+greglass,95,13
+gresglass,95,13
+grestainedglass,95,13
+redglass,95,14
+redsglass,95,14
+redstainedglass,95,14
+rglass,95,14
+rsglass,95,14
+rstainedglass,95,14
+blackglass,95,15
+blacksglass,95,15
+blackstainedglass,95,15
+blaglass,95,15
+blasglass,95,15
+blastainedglass,95,15
+trapdoor,96,0
+doortrap,96,0
+hatch,96,0
+tdoor,96,0
+doort,96,0
+trapd,96,0
+dtrap,96,0
+silverfish,97,0
+silverfishsmoothstone,97,0
+silverfishsstone,97,0
+sfishsmoothstone,97,0
+sfishsstone,97,0
+fishsmoothstone,97,0
+fishsstone,97,0
+sfsmoothstone,97,0
+sfsstone,97,0
+trapsmoothstone,97,0
+trapsstone,97,0
+monsteregg,97,0
+monstereggsmoothstone,97,0
+monstereggsstone,97,0
+meggsmoothstone,97,0
+meggsstone,97,0
+mesmoothstone,97,0
+messtone,97,0
+silverfishcobblestone,97,1
+silverfishcstone,97,1
+sfishcobblestone,97,1
+sfishcstone,97,1
+fishcobblestone,97,1
+fishcstone,97,1
+sfcobblestone,97,1
+sfcstone,97,1
+trapcobblestone,97,1
+trapcstone,97,1
+monstereggcobblestone,97,1
+monstereggcstone,97,1
+meggcobblestone,97,1
+meggcstone,97,1
+mecobblestone,97,1
+mecstone,97,1
+silverfishstonebrick,97,2
+silverfishsbrick,97,2
+sfishstonebrick,97,2
+sfishsbrick,97,2
+fishstonebrick,97,2
+fishsbrick,97,2
+sfstonebrick,97,2
+sfsbrick,97,2
+trapstonebrick,97,2
+trapsbrick,97,2
+monstereggstonebrick,97,2
+monstereggsbrick,97,2
+meggstonebrick,97,2
+meggsbrick,97,2
+mestonebrick,97,2
+mesbrick,97,2
+silverfishmossystonebrick,97,3
+silverfishmossstonebrick,97,3
+silverfishmstonebrick,97,3
+silverfishmsbrick,97,3
+sfishmossystonebrick,97,3
+sfishmossstonebrick,97,3
+sfishmstonebrick,97,3
+sfishmsbrick,97,3
+fishmossystonebrick,97,3
+fishmossstonebrick,97,3
+fishmstonebrick,97,3
+fishmsbrick,97,3
+sfmossystonebrick,97,3
+sfmossstonebrick,97,3
+sfmstonebrick,97,3
+sfmsbrick,97,3
+trapmossystonebrick,97,3
+trapmossstonebrick,97,3
+trapmstonebrick,97,3
+trapmsbrick,97,3
+monstereggmossystonebrick,97,3
+monstereggmossstonebrick,97,3
+monstereggmstonebrick,97,3
+monstereggmsbrick,97,3
+meggmossystonebrick,97,3
+meggmossstonebrick,97,3
+meggmstonebrick,97,3
+meggmsbrick,97,3
+memossystonebrick,97,3
+memossstonebrick,97,3
+memstonebrick,97,3
+memsbrick,97,3
+silverfishcrackedstonebrick,97,4
+silverfishcrackstonebrick,97,4
+silverfishcrstonebrick,97,4
+silverfishcrsbrick,97,4
+sfishcrackedstonebrick,97,4
+sfishcrackstonebrick,97,4
+sfishcrstonebrick,97,4
+sfishcrsbrick,97,4
+fishcrackedstonebrick,97,4
+fishcrackstonebrick,97,4
+fishcrstonebrick,97,4
+fishcrsbrick,97,4
+sfcrackedstonebrick,97,4
+sfcrackstonebrick,97,4
+sfcrstonebrick,97,4
+sfcrsbrick,97,4
+trapcrackedstonebrick,97,4
+trapcrackstonebrick,97,4
+trapcrstonebrick,97,4
+trapcrsbrick,97,4
+monstereggcrackedstonebrick,97,4
+monstereggcrackstonebrick,97,4
+monstereggcrstonebrick,97,4
+monstereggcrsbrick,97,4
+meggcrackedstonebrick,97,4
+meggcrackstonebrick,97,4
+meggcrstonebrick,97,4
+meggcrsbrick,97,4
+mecrackedstonebrick,97,4
+mecrackstonebrick,97,4
+mecrstonebrick,97,4
+mecrsbrick,97,4
+silverfishcirclestonebrick,97,5
+silverfishcistonebrick,97,5
+silverfishcisbrick,97,5
+sfishcirclestonebrick,97,5
+sfishcistonebrick,97,5
+sfishcisbrick,97,5
+fishcirclestonebrick,97,5
+fishcistonebrick,97,5
+fishcisbrick,97,5
+sfcirclestonebrick,97,5
+sfcistonebrick,97,5
+sfcisbrick,97,5
+trapcirclestonebrick,97,5
+trapcistonebrick,97,5
+trapcisbrick,97,5
+monstereggcirclestonebrick,97,5
+monstereggcistonebrick,97,5
+monstereggcisbrick,97,5
+meggcirclestonebrick,97,5
+meggcistonebrick,97,5
+meggcisbrick,97,5
+mecirclestonebrick,97,5
+mecistonebrick,97,5
+mecisbrick,97,5
+stonebrick,98,0
+stonebricks,98,0
+stonebrickblock,98,0
+stonebb,98,0
+sbrick,98,0
+mossystonebrick,98,1
+mossystonebricks,98,1
+mossystonebrickblock,98,1
+mossystonebb,98,1
+mossstonebrick,98,1
+mossstonebricks,98,1
+mossstonebrickblock,98,1
+mossstonebb,98,1
+mstonebrick,98,1
+mstonebricks,98,1
+mstonebrickblock,98,1
+mstonebb,98,1
+mosssbrick,98,1
+mosssbricks,98,1
+mosssbrickblock,98,1
+mosssbb,98,1
+msbrick,98,1
+msbricks,98,1
+msbrickblock,98,1
+crackedstone,98,2
+crackedstonebrick,98,2
+crackedstonebricks,98,2
+crackedstonebrickblock,98,2
+crackedstonebb,98,2
+crackstonebrick,98,2
+crackstonebricks,98,2
+crackstonebrickblock,98,2
+crackstonebb,98,2
+crstonebrick,98,2
+crstonebricks,98,2
+crstonebrickblock,98,2
+crstonebb,98,2
+cracksbrick,98,2
+cracksbricks,98,2
+cracksbrickblock,98,2
+cracksbb,98,2
+crsbrick,98,2
+crsbricks,98,2
+crsbrickblock,98,2
+circlestone,98,3
+circlestonebrick,98,3
+circlestonebricks,98,3
+circlestonebrickblock,98,3
+circlestonebb,98,3
+cistonebrick,98,3
+cistonebricks,98,3
+cistonebrickblock,98,3
+cistonebb,98,3
+circlesbrick,98,3
+circlesbricks,98,3
+circlesbrickblock,98,3
+circlesbb,98,3
+cisbrick,98,3
+cisbricks,98,3
+cisbrickblock,98,3
+giantredmushroom,99,0
+hugeredmushroom,99,0
+bigredmushroom,99,0
+gredmushroom,99,0
+hredmushroom,99,0
+bredmushroom,99,0
+giantrmushroom,99,0
+hugermushroom,99,0
+bigrmushroom,99,0
+grmushroom,99,0
+hrmushroom,99,0
+brmushroom,99,0
+giantredmush,99,0
+hugeredmush,99,0
+bigredmush,99,0
+gredmush,99,0
+hredmush,99,0
+bredmush,99,0
+giantrmush,99,0
+hugermush,99,0
+bigrmush,99,0
+grmush,99,0
+hrmush,99,0
+brmush,99,0
+giantbrownmushroom,100,0
+hugebrownmushroom,100,0
+bigbrownmushroom,100,0
+gbrownmushroom,100,0
+hbrownmushroom,100,0
+bbrownmushroom,100,0
+giantbmushroom,100,0
+hugebmushroom,100,0
+bigbmushroom,100,0
+gbmushroom,100,0
+hbmushroom,100,0
+bbmushroom,100,0
+giantbrownmush,100,0
+hugebrownmush,100,0
+bigbrownmush,100,0
+gbrownmush,100,0
+hbrownmush,100,0
+bbrownmush,100,0
+giantbmush,100,0
+hugebmush,100,0
+bigbmush,100,0
+gbmush,100,0
+hbmush,100,0
+bbmush,100,0
+ironbars,101,0
+ironbarsb,101,0
+ironbarsblock,101,0
+ironfence,101,0
+metalbars,101,0
+metalbarsb,101,0
+metalbarsblock,101,0
+metalfence,101,0
+jailbars,101,0
+jailbarsb,101,0
+jailbarsblock,101,0
+jailfence,101,0
+mbars,101,0
+mbarsb,101,0
+mbarsblock,101,0
+mfence,101,0
+jbars,101,0
+jbarsb,101,0
+jbarsblock,101,0
+jfence,101,0
+ibars,101,0
+ibarsb,101,0
+ibarsblock,101,0
+ifence,101,0
+glasspane,102,0
+glassp,102,0
+paneglass,102,0
+pglass,102,0
+flatglass,102,0
+fglass,102,0
+skinnyglass,102,0
+glassflat,102,0
+glassf,102,0
+glassskinny,102,0
+glasss,102,0
+melon,103,0
+watermelon,103,0
+greenmelon,103,0
+melongreen,103,0
+melonblock,103,0
+watermelonblock,103,0
+greenmelonblock,103,0
+vines,106,0
+vine,106,0
+greenvines,106,0
+greenvine,106,0
+gardenvines,106,0
+gardenvine,106,0
+vinesgreen,106,0
+vinegreen,106,0
+vinesgarden,106,0
+vinegarden,106,0
+vinesg,106,0
+vineg,106,0
+gvines,106,0
+gvine,106,0
+woodgate,107,0
+woodenfencegate,107,0
+wfencegate,107,0
+woodfencegate,107,0
+woodengate,107,0
+wgate,107,0
+gate,107,0
+gardengate,107,0
+ggate,107,0
+fencegate,107,0
+fgate,107,0
+brickstairs,108,0
+redbrickstairs,108,0
+redbstairs,108,0
+rbrickstairs,108,0
+bstairs,108,0
+redstairs,108,0
+brickstair,108,0
+redbrickstair,108,0
+redbstair,108,0
+rbrickstair,108,0
+bstair,108,0
+redstair,108,0
+stonebrickstairs,109,0
+stonebstairs,109,0
+sbstairs,109,0
+cementbrickstairs,109,0
+cementstairs,109,0
+cementbstairs,109,0
+cbstairs,109,0
+greybrickstairs,109,0
+greybstairs,109,0
+greystairs,109,0
+mycelium,110,0
+purplegrass,110,0
+pinkgrass,110,0
+mycel,110,0
+swampgrass,110,0
+sgrass,110,0
+mushroomgrass,110,0
+mushgrass,110,0
+lilypad,111,0
+waterlily,111,0
+lily,111,0
+swamppad,111,0
+lpad,111,0
+wlily,111,0
+netherbrickblock,112,0
+hellbrickblock,112,0
+deathbrickblock,112,0
+nbrickblock,112,0
+hbrickblock,112,0
+dbrickblock,112,0
+netherbblock,112,0
+hellbblock,112,0
+deathbblock,112,0
+nbblock,112,0
+hbblock,112,0
+dbblock,112,0
+netherbrickfence,113,0
+hellbrickfence,113,0
+nbrickfence,113,0
+hbrickfence,113,0
+netherbfence,113,0
+hellbfence,113,0
+netherfence,113,0
+hellfence,113,0
+nbfence,113,0
+hbfence,113,0
+nfence,113,0
+hfence,113,0
+netherbrickstairs,114,0
+hellbrickstairs,114,0
+nbrickstairs,114,0
+hbrickstairs,114,0
+netherbstairs,114,0
+hellbstairs,114,0
+netherstairs,114,0
+hellstairs,114,0
+nbstairs,114,0
+hbstairs,114,0
+nstairs,114,0
+hstairs,114,0
+netherbrickstair,114,0
+hellbrickstair,114,0
+nbrickstair,114,0
+hbrickstair,114,0
+netherbstair,114,0
+hellbstair,114,0
+netherstair,114,0
+hellstair,114,0
+nbstair,114,0
+hbstair,114,0
+nstair,114,0
+hstair,114,0
+enchantmenttable,116,0
+enchantingtable,116,0
+enchanttable,116,0
+etable,116,0
+magicaltable,116,0
+magictable,116,0
+mtable,116,0
+enchantmentdesk,116,0
+enchantingdesk,116,0
+enchantdesk,116,0
+edesk,116,0
+magicaldesk,116,0
+magicdesk,116,0
+mdesk,116,0
+booktable,116,0
+bookdesk,116,0
+btable,116,0
+bdesk,116,0
+enderportal,119,0
+endergoo,119,0
+endgoo,119,0
+endportal,119,0
+egoo,119,0
+eportal,119,0
+enderportalframe,120,0
+endportalframe,120,0
+endgooframe,120,0
+endergooframe,120,0
+egooframe,120,0
+eportalframe,120,0
+enderframe,120,0
+endframe,120,0
+enderstone,121,0
+endstone,121,0
+endrock,121,0
+enderrock,121,0
+erock,121,0
+estone,121,0
+enderdragonegg,122,0
+endegg,122,0
+dragonegg,122,0
+degg,122,0
+bossegg,122,0
+begg,122,0
+redstonelamp,123,0
+redlamp,123,0
+rslamp,123,0
+woodendoublestep,125,0
+woodendstep,125,0
+wooddoublestep,125,0
+wooddstep,125,0
+wdoublestep,125,0
+wdstep,125,0
+doublewoodenstep,125,0
+dwoodenstep,125,0
+doublewoodstep,125,0
+dwoodstep,125,0
+doublewstep,125,0
+dwstep,125,0
+woodendoubleslab,125,0
+woodendslab,125,0
+wooddoubleslab,125,0
+wooddslab,125,0
+wdoubleslab,125,0
+wdslab,125,0
+doublewoodenslab,125,0
+dwoodenslab,125,0
+doublewoodslab,125,0
+dwoodslab,125,0
+doublewslab,125,0
+dwslab,125,0
+woodendoublehalfblock,125,0
+woodendhalfblock,125,0
+wooddoublehalfblock,125,0
+wooddhalfblock,125,0
+wdoublehalfblock,125,0
+wdhalfblock,125,0
+doublewoodenhalfblock,125,0
+dwoodenhalfblock,125,0
+doublewoodhalfblock,125,0
+dwoodhalfblock,125,0
+doublewhalfblock,125,0
+dwhalfblock,125,0
+oakwoodendoublehalfblock,125,0
+oakwoodendhalfblock,125,0
+oakwooddoublehalfblock,125,0
+oakwooddhalfblock,125,0
+oakwdoublehalfblock,125,0
+oakwdhalfblock,125,0
+oakdoublewoodenhalfblock,125,0
+oakdwoodenhalfblock,125,0
+oakdoublewoodhalfblock,125,0
+oakdwoodhalfblock,125,0
+oakdoublewhalfblock,125,0
+oakdwhalfblock,125,0
+oakdoublehalfblock,125,0
+oakdhalfblock,125,0
+odhalfblock,125,0
+oakwoodendoublestep,125,0
+oakwoodendstep,125,0
+oakwooddoublestep,125,0
+oakwooddstep,125,0
+oakwdoublestep,125,0
+oakwdstep,125,0
+oakdoublewoodenstep,125,0
+oakdwoodenstep,125,0
+oakdoublewoodstep,125,0
+oakdwoodstep,125,0
+oakdoublewstep,125,0
+oakdwstep,125,0
+oakdoublestep,125,0
+oakdstep,125,0
+odstep,125,0
+oakwoodendoubleslab,125,0
+oakwoodendslab,125,0
+oakwooddoubleslab,125,0
+oakwooddslab,125,0
+oakwdoubleslab,125,0
+oakwdslab,125,0
+oakdoublewoodenslab,125,0
+oakdwoodenslab,125,0
+oakdoublewoodslab,125,0
+oakdwoodslab,125,0
+oakdoublewslab,125,0
+oakdwslab,125,0
+oakdoubleslab,125,0
+oakdslab,125,0
+odslab,125,0
+sprucewoodendoublestep,125,1
+sprucewoodendstep,125,1
+sprucewooddoublestep,125,1
+sprucewooddstep,125,1
+sprucewdoublestep,125,1
+sprucewdstep,125,1
+sprucedoublewoodenstep,125,1
+sprucedwoodenstep,125,1
+sprucedoublewoodstep,125,1
+sprucedwoodstep,125,1
+sprucedoublewstep,125,1
+sprucedwstep,125,1
+sprucedoublestep,125,1
+sprucedstep,125,1
+sprucewoodendoubleslab,125,1
+sprucewoodendslab,125,1
+sprucewooddoubleslab,125,1
+sprucewooddslab,125,1
+sprucewdoubleslab,125,1
+sprucewdslab,125,1
+sprucedoublewoodenslab,125,1
+sprucedwoodenslab,125,1
+sprucedoublewoodslab,125,1
+sprucedwoodslab,125,1
+sprucedoublewslab,125,1
+sprucedwslab,125,1
+sprucedoubleslab,125,1
+sprucedslab,125,1
+sprucewoodendoublehalfblock,125,1
+sprucewoodendhalfblock,125,1
+sprucewooddoublehalfblock,125,1
+sprucewooddhalfblock,125,1
+sprucewdoublehalfblock,125,1
+sprucewdhalfblock,125,1
+sprucedoublewoodenhalfblock,125,1
+sprucedwoodenhalfblock,125,1
+sprucedoublewoodhalfblock,125,1
+sprucedwoodhalfblock,125,1
+sprucedoublewhalfblock,125,1
+sprucedwhalfblock,125,1
+sprucedoublehalfblock,125,1
+sprucedhalfblock,125,1
+darkwoodendoublestep,125,1
+darkwoodendstep,125,1
+darkwooddoublestep,125,1
+darkwooddstep,125,1
+darkwdoublestep,125,1
+darkwdstep,125,1
+darkdoublewoodenstep,125,1
+darkdwoodenstep,125,1
+darkdoublewoodstep,125,1
+darkdwoodstep,125,1
+darkdoublewstep,125,1
+darkdwstep,125,1
+darkdoublestep,125,1
+darkdstep,125,1
+ddstep,125,1
+darkwoodendoubleslab,125,1
+darkwoodendslab,125,1
+darkwooddoubleslab,125,1
+darkwooddslab,125,1
+darkwdoubleslab,125,1
+darkwdslab,125,1
+darkdoublewoodenslab,125,1
+darkdwoodenslab,125,1
+darkdoublewoodslab,125,1
+darkdwoodslab,125,1
+darkdoublewslab,125,1
+darkdwslab,125,1
+darkdoubleslab,125,1
+darkdslab,125,1
+ddslab,125,1
+darkwoodendoublehalfblock,125,1
+darkwoodendhalfblock,125,1
+darkwooddoublehalfblock,125,1
+darkwooddhalfblock,125,1
+darkwdoublehalfblock,125,1
+darkwdhalfblock,125,1
+darkdoublewoodenhalfblock,125,1
+darkdwoodenhalfblock,125,1
+darkdoublewoodhalfblock,125,1
+darkdwoodhalfblock,125,1
+darkdoublewhalfblock,125,1
+darkdwhalfblock,125,1
+darkdoublehalfblock,125,1
+darkdhalfblock,125,1
+ddhalfblock,125,1
+birchwoodendoublestep,125,2
+birchwoodendstep,125,2
+birchwooddoublestep,125,2
+birchwooddstep,125,2
+birchwdoublestep,125,2
+birchwdstep,125,2
+birchdoublewoodenstep,125,2
+birchdwoodenstep,125,2
+birchdoublewoodstep,125,2
+birchdwoodstep,125,2
+birchdoublewstep,125,2
+birchdwstep,125,2
+birchdoublestep,125,2
+birchdstep,125,2
+birchwoodendoubleslab,125,2
+birchwoodendslab,125,2
+birchwooddoubleslab,125,2
+birchwooddslab,125,2
+birchwdoubleslab,125,2
+birchwdslab,125,2
+birchdoublewoodenslab,125,2
+birchdwoodenslab,125,2
+birchdoublewoodslab,125,2
+birchdwoodslab,125,2
+birchdoublewslab,125,2
+birchdwslab,125,2
+birchdoubleslab,125,2
+birchdslab,125,2
+birchwoodendoublehalfblock,125,2
+birchwoodendhalfblock,125,2
+birchwooddoublehalfblock,125,2
+birchwooddhalfblock,125,2
+birchwdoublehalfblock,125,2
+birchwdhalfblock,125,2
+birchdoublewoodenhalfblock,125,2
+birchdwoodenhalfblock,125,2
+birchdoublewoodhalfblock,125,2
+birchdwoodhalfblock,125,2
+birchdoublewhalfblock,125,2
+birchdwhalfblock,125,2
+birchdoublehalfblock,125,2
+birchdhalfblock,125,2
+lightwoodendoublehalfblock,125,2
+lightwoodendhalfblock,125,2
+lightwooddoublehalfblock,125,2
+lightwooddhalfblock,125,2
+lightwdoublehalfblock,125,2
+lightwdhalfblock,125,2
+lightdoublewoodenhalfblock,125,2
+lightdwoodenhalfblock,125,2
+lightdoublewoodhalfblock,125,2
+lightdwoodhalfblock,125,2
+lightdoublewhalfblock,125,2
+lightdwhalfblock,125,2
+lightdoublehalfblock,125,2
+lightdhalfblock,125,2
+ldhalfblock,125,2
+lightwoodendoublestep,125,2
+lightwoodendstep,125,2
+lightwooddoublestep,125,2
+lightwooddstep,125,2
+lightwdoublestep,125,2
+lightwdstep,125,2
+lightdoublewoodenstep,125,2
+lightdwoodenstep,125,2
+lightdoublewoodstep,125,2
+lightdwoodstep,125,2
+lightdoublewstep,125,2
+lightdwstep,125,2
+lightdoublestep,125,2
+lightdstep,125,2
+ldstep,125,2
+lightwoodendoubleslab,125,2
+lightwoodendslab,125,2
+lightwooddoubleslab,125,2
+lightwooddslab,125,2
+lightwdoubleslab,125,2
+lightwdslab,125,2
+lightdoublewoodenslab,125,2
+lightdwoodenslab,125,2
+lightdoublewoodslab,125,2
+lightdwoodslab,125,2
+lightdoublewslab,125,2
+lightdwslab,125,2
+lightdoubleslab,125,2
+lightdslab,125,2
+ldslab,125,2
+junglewoodendoublestep,125,3
+junglewoodendstep,125,3
+junglewooddoublestep,125,3
+junglewooddstep,125,3
+junglewdoublestep,125,3
+junglewdstep,125,3
+jungledoublewoodenstep,125,3
+jungledwoodenstep,125,3
+jungledoublewoodstep,125,3
+jungledwoodstep,125,3
+jungledoublewstep,125,3
+jungledwstep,125,3
+jungledoublestep,125,3
+jungledstep,125,3
+jdstep,125,3
+junglewoodendoubleslab,125,3
+junglewoodendslab,125,3
+junglewooddoubleslab,125,3
+junglewooddslab,125,3
+junglewdoubleslab,125,3
+junglewdslab,125,3
+jungledoublewoodenslab,125,3
+jungledwoodenslab,125,3
+jungledoublewoodslab,125,3
+jungledwoodslab,125,3
+jungledoublewslab,125,3
+jungledwslab,125,3
+jungledoubleslab,125,3
+jungledslab,125,3
+jdslab,125,3
+junglewoodendoublehalfblock,125,3
+junglewoodendhalfblock,125,3
+junglewooddoublehalfblock,125,3
+junglewooddhalfblock,125,3
+junglewdoublehalfblock,125,3
+junglewdhalfblock,125,3
+jungledoublewoodenhalfblock,125,3
+jungledwoodenhalfblock,125,3
+jungledoublewoodhalfblock,125,3
+jungledwoodhalfblock,125,3
+jungledoublewhalfblock,125,3
+jungledwhalfblock,125,3
+jungledoublehalfblock,125,3
+jungledhalfblock,125,3
+jdhalfblock,125,3
+forestwoodendoublehalfblock,125,3
+forestwoodendhalfblock,125,3
+forestwooddoublehalfblock,125,3
+forestwooddhalfblock,125,3
+forestwdoublehalfblock,125,3
+forestwdhalfblock,125,3
+forestdoublewoodenhalfblock,125,3
+forestdwoodenhalfblock,125,3
+forestdoublewoodhalfblock,125,3
+forestdwoodhalfblock,125,3
+forestdoublewhalfblock,125,3
+forestdwhalfblock,125,3
+forestdoublehalfblock,125,3
+forestdhalfblock,125,3
+fdhalfblock,125,3
+forestwoodendoublestep,125,3
+forestwoodendstep,125,3
+forestwooddoublestep,125,3
+forestwooddstep,125,3
+forestwdoublestep,125,3
+forestwdstep,125,3
+forestdoublewoodenstep,125,3
+forestdwoodenstep,125,3
+forestdoublewoodstep,125,3
+forestdwoodstep,125,3
+forestdoublewstep,125,3
+forestdwstep,125,3
+forestdoublestep,125,3
+forestdstep,125,3
+fdstep,125,3
+forestwoodendoubleslab,125,3
+forestwoodendslab,125,3
+forestwooddoubleslab,125,3
+forestwooddslab,125,3
+forestwdoubleslab,125,3
+forestwdslab,125,3
+forestdoublewoodenslab,125,3
+forestdwoodenslab,125,3
+forestdoublewoodslab,125,3
+forestdwoodslab,125,3
+forestdoublewslab,125,3
+forestdwslab,125,3
+forestdoubleslab,125,3
+forestdslab,125,3
+fdslab,125,3
+acaciawoodendoublestep,125,4
+acaciawoodendstep,125,4
+acaciawooddoublestep,125,4
+acaciawooddstep,125,4
+acaciawdoublestep,125,4
+acaciawdstep,125,4
+acaciadoublewoodenstep,125,4
+acaciadwoodenstep,125,4
+acaciadoublewoodstep,125,4
+acaciadwoodstep,125,4
+acaciadoublewstep,125,4
+acaciadwstep,125,4
+acaciadoublestep,125,4
+acaciadstep,125,4
+adstep,125,4
+acaciawoodendoubleslab,125,4
+acaciawoodendslab,125,4
+acaciawooddoubleslab,125,4
+acaciawooddslab,125,4
+acaciawdoubleslab,125,4
+acaciawdslab,125,4
+acaciadoublewoodenslab,125,4
+acaciadwoodenslab,125,4
+acaciadoublewoodslab,125,4
+acaciadwoodslab,125,4
+acaciadoublewslab,125,4
+acaciadwslab,125,4
+acaciadoubleslab,125,4
+acaciadslab,125,4
+adslab,125,4
+acaciawoodendoublehalfblock,125,4
+acaciawoodendhalfblock,125,4
+acaciawooddoublehalfblock,125,4
+acaciawooddhalfblock,125,4
+acaciawdoublehalfblock,125,4
+acaciawdhalfblock,125,4
+acaciadoublewoodenhalfblock,125,4
+acaciadwoodenhalfblock,125,4
+acaciadoublewoodhalfblock,125,4
+acaciadwoodhalfblock,125,4
+acaciadoublewhalfblock,125,4
+acaciadwhalfblock,125,4
+acaciadoublehalfblock,125,4
+acaciadhalfblock,125,4
+adhalfblock,125,4
+darkoakwoodendoublehalfblock,125,5
+darkoakwoodendhalfblock,125,5
+darkoakwooddoublehalfblock,125,5
+darkoakwooddhalfblock,125,5
+darkoakwdoublehalfblock,125,5
+darkoakwdhalfblock,125,5
+darkoakdoublewoodenhalfblock,125,5
+darkoakdwoodenhalfblock,125,5
+darkoakdoublewoodhalfblock,125,5
+darkoakdwoodhalfblock,125,5
+darkoakdoublewhalfblock,125,5
+darkoakdwhalfblock,125,5
+darkoakdoublehalfblock,125,5
+darkoakdhalfblock,125,5
+dodhalfblock,125,5
+darkoakwoodendoublestep,125,5
+darkoakwoodendstep,125,5
+darkoakwooddoublestep,125,5
+darkoakwooddstep,125,5
+darkoakwdoublestep,125,5
+darkoakwdstep,125,5
+darkoakdoublewoodenstep,125,5
+darkoakdwoodenstep,125,5
+darkoakdoublewoodstep,125,5
+darkoakdwoodstep,125,5
+darkoakdoublewstep,125,5
+darkoakdwstep,125,5
+darkoakdoublestep,125,5
+darkoakdstep,125,5
+dodstep,125,5
+darkoakwoodendoubleslab,125,5
+darkoakwoodendslab,125,5
+darkoakwooddoubleslab,125,5
+darkoakwooddslab,125,5
+darkoakwdoubleslab,125,5
+darkoakwdslab,125,5
+darkoakdoublewoodenslab,125,5
+darkoakdwoodenslab,125,5
+darkoakdoublewoodslab,125,5
+darkoakdwoodslab,125,5
+darkoakdoublewslab,125,5
+darkoakdwslab,125,5
+darkoakdoubleslab,125,5
+darkoakdslab,125,5
+dodslab,125,5
+woodenstep,126,0
+woodstep,126,0
+wstep,126,0
+woodenslab,126,0
+woodslab,126,0
+wslab,126,0
+woodenhalfblock,126,0
+woodhalfblock,126,0
+whalfblock,126,0
+oakwoodenstep,126,0
+oakwoodstep,126,0
+oakwstep,126,0
+oakstep,126,0
+ostep,126,0
+oakwoodenslab,126,0
+oakwoodslab,126,0
+oakwslab,126,0
+oakslab,126,0
+oslab,126,0
+oakwoodenhalfblock,126,0
+oakwoodhalfblock,126,0
+oakwhalfblock,126,0
+oakhalfblock,126,0
+ohalfblock,126,0
+sprucewoodenstep,126,1
+sprucewoodstep,126,1
+sprucewstep,126,1
+sprucestep,126,1
+sprucewoodenslab,126,1
+sprucewoodslab,126,1
+sprucewslab,126,1
+spruceslab,126,1
+sprucewoodenhalfblock,126,1
+sprucewoodhalfblock,126,1
+sprucewhalfblock,126,1
+sprucehalfblock,126,1
+darkwoodenstep,126,1
+darkwoodstep,126,1
+darkwstep,126,1
+darkstep,126,1
+darkwoodenslab,126,1
+darkwoodslab,126,1
+darkwslab,126,1
+darkslab,126,1
+darkwoodenhalfblock,126,1
+darkwoodhalfblock,126,1
+darkwhalfblock,126,1
+darkhalfblock,126,1
+birchwoodenstep,126,2
+birchwoodstep,126,2
+birchwstep,126,2
+birchstep,126,2
+birchwoodenslab,126,2
+birchwoodslab,126,2
+birchwslab,126,2
+birchslab,126,2
+birchwoodenhalfblock,126,2
+birchwoodhalfblock,126,2
+birchwhalfblock,126,2
+birchhalfblock,126,2
+lightwoodenstep,126,2
+lightwoodstep,126,2
+lightwstep,126,2
+lightstep,126,2
+lstep,126,2
+lightwoodenslab,126,2
+lightwoodslab,126,2
+lightwslab,126,2
+lightslab,126,2
+lslab,126,2
+lightwoodenhalfblock,126,2
+lightwoodhalfblock,126,2
+lightwhalfblock,126,2
+lighthalfblock,126,2
+lhalfblock,126,2
+junglewoodenstep,126,3
+junglewoodstep,126,3
+junglewstep,126,3
+junglestep,126,3
+jstep,126,3
+junglewoodenslab,126,3
+junglewoodslab,126,3
+junglewslab,126,3
+jungleslab,126,3
+jslab,126,3
+junglewoodenhalfblock,126,3
+junglewoodhalfblock,126,3
+junglewhalfblock,126,3
+junglehalfblock,126,3
+jhalfblock,126,3
+forestwoodenstep,126,3
+forestwoodstep,126,3
+forestwstep,126,3
+foreststep,126,3
+fstep,126,3
+forestwoodenslab,126,3
+forestwoodslab,126,3
+forestwslab,126,3
+forestslab,126,3
+fslab,126,3
+forestwoodenhalfblock,126,3
+forestwoodhalfblock,126,3
+forestwhalfblock,126,3
+foresthalfblock,126,3
+fhalfblock,126,3
+acaciawoodenstep,126,4
+acaciawoodstep,126,4
+acaciawstep,126,4
+acaciastep,126,4
+astep,126,4
+acaciawoodenslab,126,4
+acaciawoodslab,126,4
+acaciawslab,126,4
+acaciaslab,126,4
+aslab,126,4
+acaciawoodenhalfblock,126,4
+acaciawoodhalfblock,126,4
+acaciawhalfblock,126,4
+acaciahalfblock,126,4
+ahalfblock,126,4
+darkoakwoodenstep,126,5
+darkoakwoodstep,126,5
+darkoakwstep,126,5
+darkoakstep,126,5
+dostep,126,5
+darkoakwoodenslab,126,5
+darkoakwoodslab,126,5
+darkoakwslab,126,5
+darkoakslab,126,5
+doslab,126,5
+darkoakwoodenhalfblock,126,5
+darkoakwoodhalfblock,126,5
+darkoakwhalfblock,126,5
+darkoakhalfblock,126,5
+dohalfblock,126,5
+cocoaplant,127,0
+cocoplant,127,0
+cplant,127,0
+cocoafruit,127,0
+cocofruit,127,0
+cfruit,127,0
+cocoapod,127,0
+cocopod,127,0
+cpod,127,0
+sandstonestairs,128,0
+sandstairs,128,0
+sandsstairs,128,0
+sstonestairs,128,0
+ssstairs,128,0
+sandstair,128,0
+sandstonestair,128,0
+sandsstair,128,0
+sstonestair,128,0
+ssstair,128,0
+emeraldore,129,0
+eore,129,0
+oreemerald,129,0
+oree,129,0
+enderchest,130,0
+endchest,130,0
+echest,130,0
+chestender,130,0
+chestend,130,0
+cheste,130,0
+endercontainer,130,0
+endcontainer,130,0
+econtainer,130,0
+tripwirehook,131,0
+tripwire,131,0
+trip,131,0
+tripwirelever,131,0
+triphook,131,0
+emeraldblock,133,0
+blockemerald,133,0
+eblock,133,0
+blocke,133,0
+sprucewoodenstairs,134,0
+sprucewoodstairs,134,0
+sprucewstairs,134,0
+sprucestairs,134,0
+darkwoodenstairs,134,0
+darkwoodstairs,134,0
+darkwstairs,134,0
+darkstairs,134,0
+dstairs,134,0
+sprucewoodenstair,134,0
+sprucewoodstair,134,0
+sprucewstair,134,0
+sprucestair,134,0
+darkwoodenstair,134,0
+darkwoodstair,134,0
+darkwstair,134,0
+darkstair,134,0
+dstair,134,0
+birchwoodenstairs,135,0
+birchwoodstairs,135,0
+birchwstairs,135,0
+birchstairs,135,0
+lightwoodenstairs,135,0
+lightwoodstairs,135,0
+lightwstairs,135,0
+lightstairs,135,0
+lstairs,135,0
+birchwoodenstair,135,0
+birchwoodstair,135,0
+birchwstair,135,0
+birchstair,135,0
+lightwoodenstair,135,0
+lightwoodstair,135,0
+lightwstair,135,0
+lightstair,135,0
+lstair,135,0
+junglewoodenstairs,136,0
+junglewoodstairs,136,0
+junglewstairs,136,0
+junglestairs,136,0
+jstairs,136,0
+forestwoodenstairs,136,0
+forestwoodstairs,136,0
+forestwstairs,136,0
+foreststairs,136,0
+fstairs,136,0
+junglewoodenstair,136,0
+junglewoodstair,136,0
+junglewstair,136,0
+junglestair,136,0
+jstair,136,0
+forestwoodenstair,136,0
+forestwoodstair,136,0
+forestwstair,136,0
+foreststair,136,0
+fstair,136,0
+commandblock,137,0
+blockcommand,137,0
+cmdblock,137,0
+blockcmd,137,0
+macroblock,137,0
+blockmacro,137,0
+beacon,138,0
+beaconblock,138,0
+cobblestonewall,139,0
+cstonewall,139,0
+cobblewall,139,0
+cobblestonefence,139,0
+cstonefence,139,0
+cobblefence,139,0
+cswall,139,0
+csfence,139,0
+cwall,139,0
+cfence,139,0
+mosscobblestonewall,139,1
+mosscstonewall,139,1
+mosscobblewall,139,1
+mcobblestonewall,139,1
+mcstonewall,139,1
+mcobblewall,139,1
+mosscobblestonefence,139,1
+mosscstonefence,139,1
+mosscobblefence,139,1
+mcobblestonefence,139,1
+mcstonefence,139,1
+mcobblefence,139,1
+mcswall,139,0
+mcsfence,139,0
+mcwall,139,0
+mcfence,139,0
+plantedcarrot,141,0
+plantcarrot,141,0
+carrots,141,0
+growingcarrot,141,0
+potatoplant,142,0
+potatoes,142,0
+plantedpotato,142,0
+plantpotato,142,0
+growingpotato,142,0
+woodenbutton,143,0
+woodenplankbutton,143,0
+woodplankbutton,143,0
+wplankbutton,143,0
+plankbutton,143,0
+woodbutton,143,0
+wbutton,143,0
+anvil,145,0
+slightlydamagedanvil,145,1
+slightdamageanvil,145,1
+damagedanvil,145,1
+verydamagedanvil,145,2
+trapchest,146,0
+trappedchest,146,0
+chesttrapped,146,0
+chesttrap,146,0
+goldpressureplate,147,0
+weightedgoldpressureplate,147,0
+weightgoldpressureplate,147,0
+wgoldpressureplate,147,0
+weightedgoldpressplate,147,0
+weightgoldpressplate,147,0
+wgoldpressplate,147,0
+goldpressplate,147,0
+weightedgoldpplate,147,0
+weightgoldpplate,147,0
+wgoldpplate,147,0
+goldpplate,147,0
+weightedgoldplate,147,0
+weightgoldplate,147,0
+wgoldplate,147,0
+goldplate,147,0
+weightedgpressureplate,147,0
+weightgpressureplate,147,0
+wgpressureplate,147,0
+gpressureplate,147,0
+weightedgpressplate,147,0
+weightgpressplate,147,0
+wgpressplate,147,0
+gpressplate,147,0
+weightedgpplate,147,0
+weightgpplate,147,0
+wgpplate,147,0
+gpplate,147,0
+weightedgplate,147,0
+weightgplate,147,0
+wgplate,147,0
+gplate,147,0
+ironpressureplate,148,0
+weightedironpressureplate,148,0
+weightironpressureplate,148,0
+wironpressureplate,148,0
+weightedironpressplate,148,0
+weightironpressplate,148,0
+wironpressplate,148,0
+ironpressplate,148,0
+weightedironpplate,148,0
+weightironpplate,148,0
+wironpplate,148,0
+ironpplate,148,0
+weightedironplate,148,0
+weightironplate,148,0
+wironplate,148,0
+ironplate,148,0
+weightedipressureplate,148,0
+weightipressureplate,148,0
+wipressureplate,148,0
+ipressureplate,148,0
+weightedipressplate,148,0
+weightipressplate,148,0
+wipressplate,148,0
+ipressplate,148,0
+weightedipplate,148,0
+weightipplate,148,0
+wipplate,148,0
+ipplate,148,0
+weightediplate,148,0
+weightiplate,148,0
+wiplate,148,0
+iplate,148,0
+daylightsensor,151,0
+daylightsense,151,0
+lightsensor,151,0
+lightsense,151,0
+daysensor,151,0
+daysense,151,0
+timesensor,151,0
+timesense,151,0
+redstoneblock,152,0
+rstoneblock,152,0
+redsblock,152,0
+rsblock,152,0
+blockredstone,152,0
+blockrstone,152,0
+blockreds,152,0
+blockrs,152,0
+netherquartzore,153,0
+hellquartzore,153,0
+deathquartzore,153,0
+nquartzore,153,0
+hquartzore,153,0
+dquartzore,153,0
+quartzore,153,0
+netherqore,153,0
+hellqore,153,0
+deathqore,153,0
+nqore,153,0
+hqore,153,0
+dqore,153,0
+qore,153,0
+hopper,154,0
+chestpuller,154,0
+chestpull,154,0
+cheststorer,154,0
+cheststore,154,0
+itempuller,154,0
+itempull,154,0
+itemstorer,154,0
+itemstore,154,0
+quartzblock,155,0
+netherquartzblock,155,0
+nqblock,155,0
+qblock,155,0
+chiseledquartzblock,155,1
+chiselquartzblock,155,1
+cquartzblock,155,1
+cqblock,155,1
+pillarquartzblock,155,2
+pquartzblock,155,2
+pqblock,155,2
+quartzstairs,156,0
+qstairs,156,0
+quartzstair,156,0
+qstair,156,0
+activatorrails,157,0
+activaterails,157,0
+triggerrails,157,0
+arails,157,0
+trails,157,0
+activatorrail,157,0
+activaterail,157,0
+triggerrail,157,0
+arail,157,0
+trail,157,0
+activatortrack,157,0
+activatetrack,157,0
+triggertrack,157,0
+atrack,157,0
+ttrack,157,0
+dropper,158,0
+drop,158,0
+chestdispenser,158,0
+chestdispense,158,0
+chestdropper,158,0
+chestdrop,158,0
+whiteclay,159,0
+whitesclay,159,0
+whitestainedclay,159,0
+wclay,159,0
+wsclay,159,0
+wstainedclay,159,0
+sclay,159,0
+stainedclay,159,0
+orangeclay,159,1
+orangesclay,159,1
+orangestainedclay,159,1
+oclay,159,1
+osclay,159,1
+ostainedclay,159,1
+magentaclay,159,2
+magentasclay,159,2
+magentastainedclay,159,2
+mclay,159,2
+msclay,159,2
+mstainedclay,159,2
+lightblueclay,159,3
+lightbluesclay,159,3
+lightbluestainedclay,159,3
+lblueclay,159,3
+lbluesclay,159,3
+lbluestainedclay,159,3
+lightbluclay,159,3
+lightblusclay,159,3
+lightblustainedclay,159,3
+lbluclay,159,3
+lblusclay,159,3
+lblustainedclay,159,3
+lbclay,159,3
+lbsclay,159,3
+lbstainedclay,159,3
+yellowclay,159,4
+yellowsclay,159,4
+yellowstainedclay,159,4
+yclay,159,4
+ysclay,159,4
+ystainedclay,159,4
+lightgreenclay,159,5
+lightgreensclay,159,5
+lightgreenstainedclay,159,5
+lgreenclay,159,5
+lgreensclay,159,5
+lgreenstainedclay,159,5
+lightgreclay,159,5
+lightgresclay,159,5
+lightgrestainedclay,159,5
+lgreclay,159,5
+lgresclay,159,5
+lgrestainedclay,159,5
+limeclay,159,5
+limesclay,159,5
+limestainedclay,159,5
+lclay,159,5
+lsclay,159,5
+lstainedclay,159,5
+pinkclay,159,6
+pinksclay,159,6
+pinkstainedclay,159,6
+piclay,159,6
+pisclay,159,6
+pistainedclay,159,6
+darkgrayclay,159,7
+darkgraysclay,159,7
+darkgraystainedclay,159,7
+dgrayclay,159,7
+dgraysclay,159,7
+dgraystainedclay,159,7
+darkgreyclay,159,7
+darkgreeysclay,159,7
+darkgreystainedclay,159,7
+dgreyclay,159,7
+dgreysclay,159,7
+dgreystainedclay,159,7
+darkgraclay,159,7
+darkgrasclay,159,7
+darkgrastainedclay,159,7
+dgraclay,159,7
+dgrasclay,159,7
+dgrastainedclay,159,7
+grayclay,159,7
+graysclay,159,7
+graystainedclay,159,7
+greyclay,159,7
+greysclay,159,7
+greystainedclay,159,7
+graclay,159,7
+grasclay,159,7
+grastainedclay,159,7
+lightgrayclay,159,8
+lightgraysclay,159,8
+lightgraystainedclay,159,8
+lgrayclay,159,8
+lgraysclay,159,8
+lgraystainedclay,159,8
+lightgreyclay,159,8
+lightgreysclay,159,8
+lightgreystainedclay,159,8
+lgreyclay,159,8
+lgreysclay,159,8
+lgreystainedclay,159,8
+lightgraclay,159,8
+lightgrasclay,159,8
+lightgrastainedclay,159,8
+lgraclay,159,8
+lgrasclay,159,8
+lgrastainedclay,159,8
+silverclay,159,8
+silversclay,159,8
+silverstainedclay,159,8
+siclay,159,8
+siasclay,159,8
+siastainedclay,159,8
+cyanclay,159,9
+cyansclay,159,9
+cyanstainedclay,159,9
+cclay,159,9
+csclay,159,9
+cstainedclay,159,9
+purpleclay,159,10
+purplesclay,159,10
+purplestainedclay,159,10
+puclay,159,10
+pusclay,159,10
+pustainedclay,159,10
+blueclay,159,11
+bluesclay,159,11
+bluestainedclay,159,11
+bluclay,159,11
+blusclay,159,11
+blustainedclay,159,11
+brownclay,159,12
+brownsclay,159,12
+brownstainedclay,159,12
+broclay,159,12
+brosclay,159,12
+brostainedclay,159,12
+darkgreenclay,159,13
+darkgreensclay,159,13
+darkgreenstainedclay,159,13
+dgreenclay,159,13
+dgreensclay,159,13
+dgreenstainedclay,159,13
+greenclay,159,13
+greensclay,159,13
+greenstainedclay,159,13
+darkgreclay,159,13
+darkgresclay,159,13
+darkgrestainedclay,159,13
+dgreclay,159,13
+dgresclay,159,13
+dgrestainedclay,159,13
+greclay,159,13
+gresclay,159,13
+grestainedclay,159,13
+redclay,159,14
+redsclay,159,14
+redstainedclay,159,14
+rclay,159,14
+rsclay,159,14
+rstainedclay,159,14
+blackclay,159,15
+blacksclay,159,15
+blackstainedclay,159,15
+blaclay,159,15
+blasclay,159,15
+blastainedclay,159,15
+whiteglasspane,160,0
+whitesglasspane,160,0
+whitestainedglasspane,160,0
+wglasspane,160,0
+wsglasspane,160,0
+wstainedglasspane,160,0
+sglasspane,160,0
+stainedglasspane,160,0
+orangeglasspane,160,1
+orangesglasspane,160,1
+orangestainedglasspane,160,1
+oglasspane,160,1
+osglasspane,160,1
+ostainedglasspane,160,1
+magentaglasspane,160,2
+magentasglasspane,160,2
+magentastainedglasspane,160,2
+mglasspane,160,2
+msglasspane,160,2
+mstainedglasspane,160,2
+lightblueglasspane,160,3
+lightbluesglasspane,160,3
+lightbluestainedglasspane,160,3
+lblueglasspane,160,3
+lbluesglasspane,160,3
+lbluestainedglasspane,160,3
+lightbluglasspane,160,3
+lightblusglasspane,160,3
+lightblustainedglasspane,160,3
+lbluglasspane,160,3
+lblusglasspane,160,3
+lblustainedglasspane,160,3
+lbglasspane,160,3
+lbsglasspane,160,3
+lbstainedglasspane,160,3
+yellowglasspane,160,4
+yellowsglasspane,160,4
+yellowstainedglasspane,160,4
+yglasspane,160,4
+ysglasspane,160,4
+ystainedglasspane,160,4
+lightgreenglasspane,160,5
+lightgreensglasspane,160,5
+lightgreenstainedglasspane,160,5
+lgreenglasspane,160,5
+lgreensglasspane,160,5
+lgreenstainedglasspane,160,5
+lightgreglasspane,160,5
+lightgresglasspane,160,5
+lightgrestainedglasspane,160,5
+lgreglasspane,160,5
+lgresglasspane,160,5
+lgrestainedglasspane,160,5
+limeglasspane,160,5
+limesglasspane,160,5
+limestainedglasspane,160,5
+lglasspane,160,5
+lsglasspane,160,5
+lstainedglasspane,160,5
+pinkglasspane,160,6
+pinksglasspane,160,6
+pinkstainedglasspane,160,6
+piglasspane,160,6
+pisglasspane,160,6
+pistainedglasspane,160,6
+darkgrayglasspane,160,7
+darkgraysglasspane,160,7
+darkgraystainedglasspane,160,7
+dgrayglasspane,160,7
+dgraysglasspane,160,7
+dgraystainedglasspane,160,7
+darkgreyglasspane,160,7
+darkgreysglasspane,160,7
+darkgreystainedglasspane,160,7
+dgreyglasspane,160,7
+dgreysglasspane,160,7
+dgreystainedglasspane,160,7
+darkgraglasspane,160,7
+darkgrasglasspane,160,7
+darkgrastainedglasspane,160,7
+dgraglasspane,160,7
+dgrasglasspane,160,7
+dgrastainedglasspane,160,7
+grayglasspane,160,7
+graysglasspane,160,7
+graystainedglasspane,160,7
+greyglasspane,160,7
+greysglasspane,160,7
+greystainedglasspane,160,7
+graglasspane,160,7
+grasglasspane,160,7
+grastainedglasspane,160,7
+lightgrayglasspane,160,8
+lightgraysglasspane,160,8
+lightgraystainedglasspane,160,8
+lgrayglasspane,160,8
+lgraysglasspane,160,8
+lgraystainedglasspane,160,8
+lightgreyglasspane,160,8
+lightgreysglasspane,160,8
+lightgreystainedglasspane,160,8
+lgreyglasspane,160,8
+lgreysglasspane,160,8
+lgreystainedglasspane,160,8
+lightgraglasspane,160,8
+lightgrasglasspane,160,8
+lightgrastainedglasspane,160,8
+lgraglasspane,160,8
+lgrasglasspane,160,8
+lgrastainedglasspane,160,8
+silverglasspane,160,8
+silversglasspane,160,8
+silverstainedglasspane,160,8
+siglasspane,160,8
+siasglasspane,160,8
+siastainedglasspane,160,8
+cyanglasspane,160,9
+cyansglasspane,160,9
+cyanstainedglasspane,160,9
+cglasspane,160,9
+csglasspane,160,9
+cstainedglasspane,160,9
+purpleglasspane,160,10
+purplesglasspane,160,10
+purplestainedglasspane,160,10
+puglasspane,160,10
+pusglasspane,160,10
+pustainedglasspane,160,10
+blueglasspane,160,11
+bluesglasspane,160,11
+bluestainedglasspane,160,11
+bluglasspane,160,11
+blusglasspane,160,11
+blustainedglasspane,160,11
+brownglasspane,160,12
+brownsglasspane,160,12
+brownstainedglasspane,160,12
+broglasspane,160,12
+brosglasspane,160,12
+brostainedglasspane,160,12
+darkgreenglasspane,160,13
+darkgreensglasspane,160,13
+darkgreenstainedglasspane,160,13
+dgreenglasspane,160,13
+dgreensglasspane,160,13
+dgreenstainedglasspane,160,13
+greenglasspane,160,13
+greensglasspane,160,13
+greenstainedglasspane,160,13
+darkgreglasspane,160,13
+darkgresglasspane,160,13
+darkgrestainedglasspane,160,13
+dgreglasspane,160,13
+dgresglasspane,160,13
+dgrestainedglasspane,160,13
+greglasspane,160,13
+gresglasspane,160,13
+grestainedglasspane,160,13
+redglasspane,160,14
+redsglasspane,160,14
+redstainedglasspane,160,14
+rglasspane,160,14
+rsglasspane,160,14
+rstainedglasspane,160,14
+blackglasspane,160,15
+blacksglasspane,160,15
+blackstainedglasspane,160,15
+blaglasspane,160,15
+blasglasspane,160,15
+blastainedglasspane,160,15
+acacialeaves,161,0
+acaciatreeleaves,161,0
+acacialogleaves,161,0
+acaciatrunkleaves,161,0
+acaciawoodleaves,161,0
+aleaves,161,0
+atreeleaves,161,0
+alogleaves,161,0
+atrunkleaves,161,0
+awoodleaves,161,0
+acacialeave,161,0
+acaciatreeleave,161,0
+acacialogleave,161,0
+acaciatrunkleave,161,0
+acaciawoodleave,161,0
+aleave,161,0
+atreeleave,161,0
+alogleave,161,0
+atrunkleave,161,0
+awoodleave,161,0
+acaciatreeleaf,161,0
+acacialogleaf,161,0
+acaciatrunkleaf,161,0
+acaciawoodleaf,161,0
+aleaf,161,0
+atreeleaf,161,0
+alogleaf,161,0
+atrunkleaf,161,0
+awoodleaf,161,0
+darkoakleaves,161,1
+darkoaktreeleaves,161,1
+darkoaklogleaves,161,1
+darkoaktrunkleaves,161,1
+darkoakwoodleaves,161,1
+doakleaves,161,1
+doaktreeleaves,161,1
+doaklogleaves,161,1
+doaktrunkleaves,161,1
+doakwoodleaves,161,1
+doleaves,161,1
+dotreeleaves,161,1
+dologleaves,161,1
+dotrunkleaves,161,1
+dowoodleaves,161,1
+darkoakleave,161,1
+darkoaktreeleave,161,1
+darkoaklogleave,161,1
+darkoaktrunkleave,161,1
+darkoakwoodleave,161,1
+doakleave,161,1
+doaktreeleave,161,1
+doaklogleave,161,1
+doaktrunkleave,161,1
+doakwoodleave,161,1
+doleave,161,1
+dotreeleave,161,1
+dologleave,161,1
+dotrunkleave,161,1
+dowoodleave,161,1
+darkoaktreeleaf,161,1
+darkoaklogleaf,161,1
+darkoaktrunkleaf,161,1
+darkoakwoodleaf,161,1
+doakleaf,161,1
+doaktreeleaf,161,1
+doaklogleaf,161,1
+doaktrunkleaf,161,1
+doakwoodleaf,161,1
+doleaf,161,1
+dotreeleaf,161,1
+dologleaf,161,1
+dotrunkleaf,161,1
+dowoodleaf,161,1
+acacia,162,0
+acaciatree,162,0
+acacialog,162,0
+acaciatrunk,162,0
+acaciawood,162,0
+atree,162,0
+alog,162,0
+atrunk,162,0
+awood,162,0
+darkoak,162,1
+darkoaktree,162,1
+darkoaklog,162,1
+darkoaktrunk,162,1
+darkoakwood,162,1
+doak,162,1
+doaktree,162,1
+doaklog,162,1
+doaktrunk,162,1
+doakwood,162,1
+dotree,162,1
+dolog,162,1
+dotrunk,162,1
+dowood,162,1
+acaciawoodenstairs,163,0
+acaciawoodstairs,163,0
+acaciawstairs,163,0
+acaciastairs,163,0
+awoodenstairs,163,0
+awoodstairs,163,0
+awstairs,163,0
+astairs,163,0
+acaciawoodenstair,163,0
+acaciawoodstair,163,0
+acaciawstair,163,0
+acaciastair,163,0
+awoodenstair,163,0
+awoodstair,163,0
+awstair,163,0
+astair,163,0
+darkoakwoodenstairs,164,0
+darkoakwoodstairs,164,0
+darkoakwstairs,164,0
+darkoakstairs,164,0
+doakwoodenstairs,164,0
+doakwoodstairs,164,0
+doakwstairs,164,0
+doakstairs,164,0
+dowoodenstairs,164,0
+dowoodstairs,164,0
+dowstairs,164,0
+dostairs,164,0
+darkoakwoodenstair,164,0
+darkoakwoodstair,164,0
+darkoakwstair,164,0
+darkoakstair,164,0
+doakwoodenstair,164,0
+doakwoodstair,164,0
+doakwstair,164,0
+doakstair,164,0
+dowoodenstair,164,0
+dowoodstair,164,0
+dowstair,164,0
+dostair,164,0
+hay,170,0
+hayblock,170,0
+haybale,170,0
+baleofhay,170,0
+hayofbale,170,0
+whitecarpet,171,0
+whitefloor,171,0
+wcarpet,171,0
+wfloor,171,0
+carpet,171,0
+floor,171,0
+orangecarpet,171,1
+orangefloor,171,1
+ocarpet,171,1
+ofloor,171,1
+magentacarpet,171,2
+magentafloor,171,2
+mcarpet,171,2
+mfloor,171,2
+lightbluecarpet,171,3
+lightbluefloor,171,3
+lbluecarpet,171,3
+lbluefloor,171,3
+lbcarpet,171,3
+lbfloor,171,3
+lightblucarpet,171,3
+lightblufloor,171,3
+lblucarpet,171,3
+lblufloor,171,3
+yellowcarpet,171,4
+yellowfloor,171,4
+ycarpet,171,4
+yfloor,171,4
+lightgreencarpet,171,5
+lightgreenfloor,171,5
+lgreencarpet,171,5
+lgreenfloor,171,5
+lightgrecarpet,171,5
+lightgrefloor,171,5
+lgrecarpet,171,5
+lgrefloor,171,5
+limecarpet,171,5
+limefloor,171,5
+lcarpet,171,5
+lfloor,171,5
+pinkcarpet,171,6
+pinkfloor,171,6
+picarpet,171,6
+pifloor,171,6
+darkgraycarpet,171,7
+darkgrayfloor,171,7
+dgraycarpet,171,7
+dgrayfloor,171,7
+darkgreycarpet,171,7
+darkgreyfloor,171,7
+dgreycarpet,171,7
+dgreyfloor,171,7
+darkgracarpet,171,7
+darkgrafloor,171,7
+dgracarpet,171,7
+dgrafloor,171,7
+graycarpet,171,7
+grayfloor,171,7
+greycarpet,171,7
+greyfloor,171,7
+gracarpet,171,7
+grafloor,171,7
+lightgraycarpet,171,8
+lightgrayfloor,171,8
+lgraycarpet,171,8
+lgrayfloor,171,8
+lightgreycarpet,171,8
+lightgreyfloor,171,8
+lgreycarpet,171,8
+lgreyfloor,171,8
+lightgracarpet,171,8
+lightgrafloor,171,8
+lgracarpet,171,8
+lgrafloor,171,8
+silvercarpet,171,8
+silverfloor,171,8
+sicarpet,171,8
+siafloor,171,8
+cyancarpet,171,9
+cyanfloor,171,9
+ccarpet,171,9
+cfloor,171,9
+purplecarpet,171,10
+purplefloor,171,10
+pucarpet,171,10
+pufloor,171,10
+bluecarpet,171,11
+bluefloor,171,11
+blucarpet,171,11
+blufloor,171,11
+browncarpet,171,12
+brownfloor,171,12
+brocarpet,171,12
+brofloor,171,12
+darkgreencarpet,171,13
+darkgreenfloor,171,13
+dgreencarpet,171,13
+dgreenfloor,171,13
+greencarpet,171,13
+greenfloor,171,13
+darkgrecarpet,171,13
+darkgrefloor,171,13
+dgrecarpet,171,13
+dgrefloor,171,13
+grecarpet,171,13
+grefloor,171,13
+redcarpet,171,14
+redfloor,171,14
+rcarpet,171,14
+rfloor,171,14
+blackcarpet,171,15
+blackfloor,171,15
+blacarpet,171,15
+blafloor,171,15
+hardenedclay,172,0
+hardclay,172,0
+hclay,172,0
+coalblock,173,0
+blockcoal,173,0
+coblock,173,0
+blockco,173,0
+coalb,173,0
+bcoal,173,0
+packedice,174,0
+packice,174,0
+solidice,174,0
+sunflower,175,0
+yellowsunflower,175,0
+lilac,175,1
+magentalilac,175,1
+syringa,175,1
+longtallgrass,175,2
+extratallgrass,175,2
+doubletallgrass,175,2
+largetallgrass,175,2
+longtgrass,175,2
+extratgrass,175,2
+doubletgrass,175,2
+largetgrass,175,2
+ltgrass,175,2
+etgrass,175,2
+dtgrass,175,2
+bigfern,175,3
+largefern,175,3
+doublefern,175,3
+bfern,175,3
+lfern,175,3
+dfern,175,3
+rosebush,175,4
+redrosebush,175,4
+peony,175,5
+pinkpeony,175,5
+paeonia,175,5
+ironshovel,256,0
+ironspade,256,0
+ishovel,256,0
+ispade,256,0
+steelshovel,256,0
+steelspade,256,0
+ironpickaxe,257,0
+ironpick,257,0
+steelpickaxe,257,0
+steelpick,257,0
+ipickaxe,257,0
+ipick,257,0
+ironaxe,258,0
+iaxe,258,0
+steelaxe,258,0
+flintandsteel,259,0
+flintandiron,259,0
+flintandtinder,259,0
+flintnsteel,259,0
+flintniron,259,0
+flintntinder,259,0
+flintsteel,259,0
+flintiron,259,0
+flinttinder,259,0
+lighter,259,0
+apple,260,0
+normalapple,260,0
+redapple,260,0
+bow,261,0
+arrow,262,0
+coal,263,0
+charcoal,263,1
+ccoal,263,1
+diamond,264,0
+crystal,264,0
+ironingot,265,0
+ironbar,265,0
+ironi,265,0
+steelingot,265,0
+steelbar,265,0
+steeli,265,0
+iingot,265,0
+ibar,265,0
+ingotiron,265,0
+bariron,265,0
+iiron,265,0
+ingotsteel,265,0
+barsteel,265,0
+isteel,265,0
+ingoti,265,0
+bari,265,0
+goldingot,266,0
+goldbar,266,0
+goldi,266,0
+gingot,266,0
+gbar,266,0
+ingotgold,266,0
+bargold,266,0
+igold,266,0
+ingotg,266,0
+barg,266,0
+ironsword,267,0
+steelsword,267,0
+isword,267,0
+woodensword,268,0
+woodsword,268,0
+wsword,268,0
+woodenshovel,269,0
+woodenspade,269,0
+woodshovel,269,0
+woodspade,269,0
+wshovel,269,0
+wspade,269,0
+woodenpickaxe,270,0
+woodenpick,270,0
+woodpickaxe,270,0
+woodpick,270,0
+wpickaxe,270,0
+wpick,270,0
+woodenaxe,271,0
+woodaxe,271,0
+waxe,271,0
+stonesword,272,0
+cobblestonesword,272,0
+cstonesword,272,0
+cssword,272,0
+ssword,272,0
+stoneshovel,273,0
+cobblestoneshovel,273,0
+cobblestonespade,273,0
+cstoneshovel,273,0
+cstonespade,273,0
+stonespade,273,0
+csshovel,273,0
+csspade,273,0
+sshovel,273,0
+sspade,273,0
+stonepickaxe,274,0
+cobblestonepickaxe,274,0
+cobblestonepick,274,0
+cstonepickaxe,274,0
+cstonepick,274,0
+stonepick,274,0
+cspickaxe,274,0
+cspick,274,0
+spickaxe,274,0
+spick,274,0
+stoneaxe,275,0
+cobblestoneaxe,275,0
+cstoneaxe,275,0
+csaxe,275,0
+saxe,275,0
+diamondsword,276,0
+crystalsword,276,0
+dsword,276,0
+diamondshovel,277,0
+diamondspade,277,0
+crystalshovel,277,0
+crystalspade,277,0
+dshovel,277,0
+dspade,277,0
+diamondpickaxe,278,0
+diamondpick,278,0
+crystalpickaxe,278,0
+crystalpick,278,0
+dpickaxe,278,0
+dpick,278,0
+diamondaxe,279,0
+crystalaxe,279,0
+daxe,279,0
+stick,280,0
+twig,280,0
+branch,280,0
+bowl,281,0
+woodenbowl,281,0
+woodbowl,281,0
+mushroomsoup,282,0
+mrsoup,282,0
+soup,282,0
+goldsword,283,0
+gsword,283,0
+goldshovel,284,0
+goldspade,284,0
+gshovel,284,0
+gspade,284,0
+goldpickaxe,285,0
+goldpick,285,0
+gpickaxe,285,0
+gpick,285,0
+goldaxe,286,0
+gaxe,286,0
+string,287,0
+thread,287,0
+feather,288,0
+gunpowder,289,0
+sulfur,289,0
+woodenhoe,290,0
+woodhoe,290,0
+whoe,290,0
+stonehoe,291,0
+cobblestonehoe,291,0
+cstonehoe,291,0
+cshoe,291,0
+shoe,291,0
+ironhoe,292,0
+steelhoe,292,0
+ihoe,292,0
+diamondhoe,293,0
+crystalhoe,293,0
+dhoe,293,0
+goldhoe,294,0
+ghoe,294,0
+seeds,295,0
+seed,295,0
+wheat,296,0
+crops,296,0
+crop,296,0
+bread,297,0
+leatherhelmet,298,0
+leatherhelm,298,0
+leatherhat,298,0
+leathercoif,298,0
+lhelmet,298,0
+lhelm,298,0
+lhat,298,0
+lcoif,298,0
+leatherchestplate,299,0
+leatherplatebody,299,0
+leatherplate,299,0
+leathershirt,299,0
+leathertunic,299,0
+lchestplate,299,0
+lplatebody,299,0
+lplate,299,0
+lshirt,299,0
+ltunic,299,0
+leatherleggings,300,0
+leatherlegs,300,0
+leatherpants,300,0
+lleggings,300,0
+llegs,300,0
+lpants,300,0
+leatherboots,301,0
+leathershoes,301,0
+lboots,301,0
+lshoes,301,0
+chainmailhelmet,302,0
+chainmailhelm,302,0
+chainmailhat,302,0
+chainmailcoif,302,0
+chainmhelmet,302,0
+chainmhelm,302,0
+chainmhat,302,0
+chainmcoif,302,0
+cmailhelmet,302,0
+cmailhelm,302,0
+cmailhat,302,0
+cmailcoif,302,0
+chainhelmet,302,0
+chainhelm,302,0
+chainhat,302,0
+chaincoif,302,0
+cmhelmet,302,0
+cmhelm,302,0
+cmhat,302,0
+cmcoif,302,0
+chainmailchestplate,303,0
+chainmailplatebody,303,0
+chainmailplate,303,0
+chainmailshirt,303,0
+chainmailtunic,303,0
+chainmchestplate,303,0
+chainmplatebody,303,0
+chainmplate,303,0
+chainmshirt,303,0
+chainmtunic,303,0
+cmailchestplate,303,0
+cmailplatebody,303,0
+cmailplate,303,0
+cmailshirt,303,0
+cmailtunic,303,0
+chainchestplate,303,0
+chainplatebody,303,0
+chainplate,303,0
+chainshirt,303,0
+chaintunic,303,0
+cmchestplate,303,0
+cmplatebody,303,0
+cmplate,303,0
+cmshirt,303,0
+cmtunic,303,0
+chainmailleggings,304,0
+chainmaillegs,304,0
+chainmailpants,304,0
+chainmleggings,304,0
+chainmlegs,304,0
+chainmpants,304,0
+cmailleggings,304,0
+cmaillegs,304,0
+cmailpants,304,0
+chainleggings,304,0
+chainlegs,304,0
+chainpants,304,0
+cmleggings,304,0
+cmlegs,304,0
+cmpants,304,0
+chainmailboots,305,0
+chainmailshoes,305,0
+chainmboots,305,0
+chainmshoes,305,0
+cmailboots,305,0
+cmailshoes,305,0
+chainboots,305,0
+chainshoes,305,0
+cmboots,305,0
+cmshoes,305,0
+ironhelmet,306,0
+ironhelm,306,0
+ironhat,306,0
+ironcoif,306,0
+ihelmet,306,0
+ihelm,306,0
+ihat,306,0
+icoif,306,0
+steelhelmet,306,0
+steelhelm,306,0
+steelhat,306,0
+steelcoif,306,0
+shelmet,306,0
+shelm,306,0
+shat,306,0
+scoif,306,0
+ironchestplate,307,0
+ironplatebody,307,0
+ironshirt,307,0
+irontunic,307,0
+ichestplate,307,0
+iplatebody,307,0
+ishirt,307,0
+itunic,307,0
+steelchestplate,307,0
+steelplatebody,307,0
+steelplate,307,0
+steelshirt,307,0
+steeltunic,307,0
+schestplate,307,0
+splatebody,307,0
+sshirt,307,0
+stunic,307,0
+ironleggings,308,0
+ironlegs,308,0
+ironpants,308,0
+ileggings,308,0
+ilegs,308,0
+ipants,308,0
+steelleggings,308,0
+steellegs,308,0
+steelpants,308,0
+sleggings,308,0
+slegs,308,0
+spants,308,0
+ironboots,309,0
+ironshoes,309,0
+iboots,309,0
+ishoes,309,0
+steelboots,309,0
+steelshoes,309,0
+sboots,309,0
+sshoes,309,0
+diamondhelmet,310,0
+diamondhelm,310,0
+diamondhat,310,0
+diamondcoif,310,0
+dhelmet,310,0
+dhelm,310,0
+dhat,310,0
+dcoif,310,0
+crystalhelmet,310,0
+crystalhelm,310,0
+crystalhat,310,0
+crystalcoif,310,0
+chelmet,310,0
+chelm,310,0
+chat,310,0
+ccoif,310,0
+diamondchestplate,311,0
+diamondplatebody,311,0
+diamondplate,311,0
+diamondshirt,311,0
+diamondtunic,311,0
+dchestplate,311,0
+dplatebody,311,0
+dplate,311,0
+dshirt,311,0
+dtunic,311,0
+crystalchestplate,311,0
+crystalplatebody,311,0
+crystalplate,311,0
+crystalshirt,311,0
+crystaltunic,311,0
+cchestplate,311,0
+cplatebody,311,0
+cplate,311,0
+cshirt,311,0
+ctunic,311,0
+diamondleggings,312,0
+diamondlegs,312,0
+diamondpants,312,0
+dleggings,312,0
+dlegs,312,0
+dpants,312,0
+crystalleggings,312,0
+crystallegs,312,0
+crystalpants,312,0
+cleggings,312,0
+clegs,312,0
+cpants,312,0
+diamondboots,313,0
+diamondshoes,313,0
+dboots,313,0
+dshoes,313,0
+crystalboots,313,0
+crystalshoes,313,0
+cboots,313,0
+cshoes,313,0
+goldhelmet,314,0
+goldhelm,314,0
+goldhat,314,0
+goldcoif,314,0
+ghelmet,314,0
+ghelm,314,0
+ghat,314,0
+gcoif,314,0
+goldchestplate,315,0
+goldplatebody,315,0
+goldshirt,315,0
+goldtunic,315,0
+gchestplate,315,0
+gplatebody,315,0
+gplateplate,315,0
+gshirt,315,0
+gtunic,315,0
+goldleggings,316,0
+goldlegs,316,0
+goldpants,316,0
+gleggings,316,0
+glegs,316,0
+gpants,316,0
+goldboots,317,0
+goldshoes,317,0
+gboots,317,0
+gshoes,317,0
+flint,318,0
+pork,319,0
+porkchop,319,0
+rawpork,319,0
+rpork,319,0
+rawporkchop,319,0
+rporkchop,319,0
+cookedpork,320,0
+grilledpork,320,0
+grillpork,320,0
+gpork,320,0
+cookpork,320,0
+cpork,320,0
+grilledporkchop,320,0
+grillporkchop,320,0
+gporkchop,320,0
+cookedporkchop,320,0
+cookporkchop,320,0
+cporkchop,320,0
+bacon,320,0
+painting,321,0
+picture,321,0
+goldenapple,322,0
+goldapple,322,0
+gapple,322,0
+enchantedgoldenapple,322,1
+enchantedgoldapple,322,1
+enchantedgapple,322,1
+supergoldenapple,322,1
+supergoldapple,322,1
+supergapple,322,1
+magicalgoldenapple,322,1
+magicalgoldapple,322,1
+magicalgapple,322,1
+magicgoldenapple,322,1
+magicgoldapple,322,1
+magicgapple,322,1
+egoldenapple,322,1
+egoldapple,322,1
+egapple,322,1
+sgoldenapple,322,1
+sgoldapple,322,1
+sgapple,322,1
+mgoldenapple,322,1
+mgoldapple,322,1
+mgapple,322,1
+sign,323,0
+woodendoor,324,0
+wooddoor,324,0
+wdoor,324,0
+door,324,0
+bucket,325,0
+bukkit,325,0
+waterbucket,326,0
+waterbukkit,326,0
+wbucket,326,0
+wbukkit,326,0
+magmabucket,327,0
+magmabukkit,327,0
+lavabucket,327,0
+lavabukkit,327,0
+lbucket,327,0
+lbukkit,327,0
+minecart,328,0
+mcart,328,0
+cart,328,0
+saddle,329,0
+irondoor,330,0
+idoor,330,0
+steeldoor,330,0
+sdoor,330,0
+dooriron,330,0
+doori,330,0
+doorsteel,330,0
+doors,330,0
+redstonedust,331,0
+redstone,331,0
+rstonedust,331,0
+rstone,331,0
+redsdust,331,0
+reddust,331,0
+rsdust,331,0
+rdust,331,0
+snow,332,0
+snowball,332,0
+snball,332,0
+sball,332,0
+boat,333,0
+leather,334,0
+cowhide,334,0
+hide,334,0
+milkbucket,335,0
+milkbukkit,335,0
+mbucket,335,0
+mbukkit,335,0
+claybrick,336,0
+brick,336,0
+redbrick,336,0
+rbrick,336,0
+clayball,337,0
+cball,337,0
+clay,337,0
+reeds,338,0
+reed,338,0
+sugarcane,338,0
+scane,338,0
+bamboo,338,0
+paper,339,0
+papyrus,339,0
+book,340,0
+slimeball,341,0
+slball,341,0
+chestminecart,342,0
+storageminecart,342,0
+storagemcart,342,0
+chestmcart,342,0
+storagecart,342,0
+chestcart,342,0
+sminecart,342,0
+cminecart,342,0
+smcart,342,0
+cmcart,342,0
+scart,342,0
+ccart,342,0
+furnaceminecart,343,0
+engineminecart,343,0
+poweredminecart,343,0
+powerminecart,343,0
+enginemcart,343,0
+poweredmcart,343,0
+powermcart,343,0
+furnacemcart,343,0
+enginecart,343,0
+poweredcart,343,0
+powercart,343,0
+furnacecart,343,0
+eminecart,343,0
+pminecart,343,0
+fminecart,343,0
+emcart,343,0
+pmcart,343,0
+fmcart,343,0
+ecart,343,0
+pcart,343,0
+fcart,343,0
+egg,344,0
+compass,345,0
+fishingrod,346,0
+fishrod,346,0
+frod,346,0
+rod,346,0
+watch,347,0
+goldwatch,347,0
+goldclock,347,0
+gwatch,347,0
+gclock,347,0
+clock,347,0
+glowstonedust,348,0
+glowingstonedust,348,0
+lightstonedust,348,0
+lbdust,348,0
+gbdust,348,0
+lsdust,348,0
+gsdust,348,0
+rawfish,349,0
+rafish,349,0
+fish,349,0
+rawsalmonfish,349,1
+rasalmonfish,349,1
+salmonfish,349,1
+rawsalmon,349,1
+rasalmon,349,1
+salmon,349,1
+sfish,349,1
+fishs,349,1
+rawclownfish,349,2
+raclownfish,349,2
+clownfish,349,2
+rawnemo,349,2
+ranemo,349,2
+nemo,349,2
+nemofish,349,2
+fishnemo,349,2
+clfish,349,2
+fishcl,349,2
+nfish,349,2
+fishn,349,2
+rawpufferfish,349,3
+rapufferfish,349,3
+pufferfish,349,3
+pufffish,349,3
+fishpuff,349,3
+pfish,349,3
+fishp,349,3
+cookedfish,350,0
+cookfish,350,0
+cfish,350,0
+grilledfish,350,0
+grillfish,350,0
+gfish,350,0
+roastedfish,350,0
+roastfish,350,0
+rofish,350,0
+cookedsalmonfish,350,1
+cooksalmonfish,350,1
+csalmonfish,350,1
+grilledsalmonfish,350,1
+grillsalmonfish,350,1
+gsalmonfish,350,1
+roastedsalmonfish,350,1
+roastsalmonfish,350,1
+rosalmonfish,350,1
+cookedsalmon,350,1
+cooksalmon,350,1
+csalmon,350,1
+grilledsalmon,350,1
+grillsalmon,350,1
+gsalmon,350,1
+roastedsalmon,350,1
+roastsalmon,350,1
+rosalmon,350,1
+dye,351,0
+inksack,351,0
+inksac,351,0
+isack,351,0
+isac,351,0
+sack,351,0
+sac,351,0
+blackinksack,351,0
+blackinksac,351,0
+blackisack,351,0
+blackisac,351,0
+blacksack,351,0
+blacksac,351,0
+inksackblack,351,0
+inksacblack,351,0
+isackblack,351,0
+isacblack,351,0
+sackblack,351,0
+sacblack,351,0
+blackinksackcolour,351,0
+blackinksaccolour,351,0
+blackisackcolour,351,0
+blackisaccolour,351,0
+blacksackcolour,351,0
+blacksaccolour,351,0
+inksackblackcolour,351,0
+inksacblackcolour,351,0
+isackblackcolour,351,0
+isacclackcolour,351,0
+sackblackcolour,351,0
+sacblackcolour,351,0
+blackinksackcolor,351,0
+blackinksaccolor,351,0
+blackisackcolor,351,0
+blackisaccolor,351,0
+blacksackcolor,351,0
+blacksaccolor,351,0
+inksackblackcolor,351,0
+inksacblackcolor,351,0
+isackblackcolor,351,0
+isacblackcolor,351,0
+sackblackcolor,351,0
+sacblackcolor,351,0
+blackinksackdye,351,0
+blackinksacdye,351,0
+blackisackdye,351,0
+blackisacdye,351,0
+blacksackdye,351,0
+blacksacdye,351,0
+inksackblackdye,351,0
+inksacblackdye,351,0
+isackblackdye,351,0
+isacclackdye,351,0
+sackblackdye,351,0
+sacblackdye,351,0
+blackcolor,351,0
+blackdye,351,0
+rosered,351,1
+roseredcolor,351,1
+roseredcolour,351,1
+rosereddye,351,1
+redrosecolor,351,1
+redrosecolour,351,1
+redrosedye,351,1
+redr,351,1
+redrcolor,351,1
+redrcolour,351,1
+redrdye,351,1
+redcolor,351,1
+redcolour,351,1
+reddye,351,1
+cactusgreen,351,2
+greencactus,351,2
+cactusgreencolour,351,2
+greencactuscolour,351,2
+cactusgreencolor,351,2
+greencactuscolor,351,2
+cactusgreendye,351,2
+greencactusdye,351,2
+greencolour,351,2
+greencolor,351,2
+greendye,351,2
+cocoabeans,351,3
+cocoabean,351,3
+cocobeans,351,3
+cocobean,351,3
+cbeans,351,3
+cbean,351,3
+beans,351,3
+bean,351,3
+browncocoabeans,351,3
+browncocoabean,351,3
+browncocobeans,351,3
+browncocobean,351,3
+browncbeans,351,3
+browncbean,351,3
+brownbeans,351,3
+brownbean,351,3
+brownb,351,3
+cocoabeanscolour,351,3
+cocoabeancolour,351,3
+cocobeanscolour,351,3
+cocobeancolour,351,3
+cbeanscolour,351,3
+cbeancolour,351,3
+beanscolour,351,3
+beancolour,351,3
+browncocoabeanscolour,351,3
+browncocoabeancolour,351,3
+browncocobeanscolour,351,3
+browncocobeancolour,351,3
+browncbeanscolour,351,3
+browncbeancolour,351,3
+brownbeanscolour,351,3
+brownbeancolour,351,3
+brownbcolour,351,3
+cocoabeanscolor,351,3
+cocoabeancolor,351,3
+cocobeanscolor,351,3
+cocobeancolor,351,3
+cbeanscolor,351,3
+cbeancolor,351,3
+beanscolor,351,3
+beancolor,351,3
+browncocoabeanscolor,351,3
+browncocoabeancolor,351,3
+browncocobeanscolor,351,3
+browncocobeancolor,351,3
+browncbeanscolor,351,3
+browncbeancolor,351,3
+brownbeanscolor,351,3
+brownbeancolor,351,3
+brownbcolor,351,3
+cocoabeansdye,351,3
+cocoabeandye,351,3
+cocobeansdye,351,3
+cocobeandye,351,3
+cbeansdye,351,3
+cbeandye,351,3
+beansdye,351,3
+beandye,351,3
+browncocoabeansdye,351,3
+browncocoabeandye,351,3
+browncocobeansdye,351,3
+browncocobeandye,351,3
+browncbeansdye,351,3
+browncbeandye,351,3
+brownbeansdye,351,3
+brownbeandye,351,3
+brownbdye,351,3
+browncolour,351,3
+browncolor,351,3
+browndye,351,3
+lapislazuli,351,4
+bluelapislazuli,351,4
+bluelapisl,351,4
+bluelapis,351,4
+bluel,351,4
+lapislazuliblue,351,4
+lapislblue,351,4
+lapisblue,351,4
+lapisl,351,4
+lapis,351,4
+bluelapislazulicolour,351,4
+bluelapislcolour,351,4
+bluelapiscolour,351,4
+lapislazulibluecolour,351,4
+lapislbluecolour,351,4
+lapisbluecolour,351,4
+lapislazulicolour,351,4
+lapislcolour,351,4
+lapiscolour,351,4
+bluelapislazulicolor,351,4
+bluelapislcolor,351,4
+bluelapiscolor,351,4
+lapislazulibluecolor,351,4
+lapislbluecolor,351,4
+lapisbluecolor,351,4
+lapislazulicolor,351,4
+lapislcolor,351,4
+lapiscolor,351,4
+bluelapislazulidye,351,4
+bluelapisldye,351,4
+bluelapisdye,351,4
+lapislazulibluedye,351,4
+lapislbluedye,351,4
+lapisbluedye,351,4
+lapislazulidye,351,4
+lapisldye,351,4
+lapisdye,351,4
+bluecolour,351,4
+bluecolor,351,4
+bluedye,351,4
+purpledye,351,5
+purplecolour,351,5
+purplecolor,351,5
+cyandye,351,6
+cyancolour,351,6
+cyancolor,351,6
+lightgraydye,351,7
+lightgraycolour,351,7
+lightgraycolor,351,7
+lgraycolour,351,7
+lgraycolor,351,7
+lgraydye,351,7
+lightgreydye,351,7
+lightgreycolour,351,7
+lightgreycolor,351,7
+lgreycolour,351,7
+lgreycolor,351,7
+lgreydye,351,7
+silvercolour,351,7
+silvercolor,351,7
+silverdye,351,7
+darkgraydye,351,8
+darkgraycolour,351,8
+darkgraycolor,351,8
+dgraycolour,351,8
+dgraycolor,351,8
+dgraydye,351,8
+graycolour,351,8
+graycolor,351,8
+graydye,351,8
+darkgreydye,351,8
+darkgreycolour,351,8
+darkgreycolor,351,8
+dgreycolour,351,8
+dgreycolor,351,8
+dgreydye,351,8
+greycolour,351,8
+greycolor,351,8
+greydye,351,8
+pinkdye,351,9
+pinkcolour,351,9
+pinkcolor,351,9
+limedye,351,10
+limecolour,351,10
+limecolor,351,10
+dandelionyellow,351,11
+dandelionyellowcolour,351,11
+dandelionyellowcolor,351,11
+dandelionyellowdye,351,11
+yellowdandelioncolour,351,11
+yellowdandelioncolor,351,11
+yellowdandeliondye,351,11
+yellowd,351,11
+yellowdcolour,351,11
+yellowdcolor,351,11
+yellowddye,351,11
+dyellow,351,11
+dyellowcolour,351,11
+dyellowcolor,351,11
+dyellowdye,351,11
+yellowcolour,351,11
+yellowcolor,351,11
+yellowdye,351,11
+lightbluecolour,351,12
+lightbluecolor,351,12
+lightbluedye,351,12
+lbluecolour,351,12
+lbluecolor,351,12
+lbluedye,351,12
+magentacolour,351,13
+magentacolor,351,13
+magentadye,351,13
+orangecolour,351,14
+orangecolor,351,14
+orangedye,351,14
+bonemeal,351,15
+whitebonemeal,351,15
+whitebonemealcolour,351,15
+whitebonemealcolor,351,15
+whitebonemealdye,351,15
+bonemealwhite,351,15
+bonemealwhitecolour,351,15
+bonemealwhitecolor,351,15
+bonemealwhitedye,351,15
+whitebonem,351,15
+whitebonemcolour,351,15
+whitebonemcolor,351,15
+whitebonemdye,351,15
+bonemwhite,351,15
+bonemwhitecolour,351,15
+bonemwhitecolor,351,15
+bonemwhitedye,351,15
+bonemealcolour,351,15
+bonemealcolor,351,15
+bonemealdye,351,15
+bonem,351,15
+bonemcolour,351,15
+bonemcolor,351,15
+bonemdye,351,15
+whitecolour,351,15
+whitecolor,351,15
+whitedye,351,15
+bone,352,0
+sugar,353,0
+whitedust,353,0
+cake,354,0
+bed,355,0
+redstonerepeater,356,0
+redstonerepeat,356,0
+redstonedelayer,356,0
+redstonedelay,356,0
+redstonedioder,356,0
+redstonediode,356,0
+rstonerepeater,356,0
+rstonerepeat,356,0
+rstonedelayer,356,0
+rstonedelay,356,0
+rstonedioder,356,0
+rstonediode,356,0
+redsrepeater,356,0
+redsrepeat,356,0
+redsdelayer,356,0
+redsdelay,356,0
+redsdioder,356,0
+redsdiode,356,0
+rsrepeater,356,0
+rsrepeat,356,0
+rsdelayer,356,0
+rsdelay,356,0
+rsdioder,356,0
+rsdiode,356,0
+repeater,356,0
+repeat,356,0
+delayer,356,0
+delay,356,0
+dioder,356,0
+diode,356,0
+cookie,357,0
+chart,358,0
+map0,358,0
+map1,358,1
+map2,358,2
+map3,358,3
+map4,358,4
+map5,358,5
+map6,358,6
+map7,358,7
+map8,358,8
+map9,358,9
+map10,358,10
+map11,358,11
+map12,358,12
+map13,358,13
+map14,358,14
+map15,358,15
+shears,359,0
+shear,359,0
+sheers,359,0
+sheer,359,0
+woolcutters,359,0
+woolcutter,359,0
+cutterswool,359,0
+cutterwool,359,0
+melonslice,360,0
+mslice,360,0
+slicemelon,360,0
+watermelonslice,360,0
+greenmelonslice,360,0
+melongreenslice,360,0
+pumpkinseeds,361,0
+pseeds,361,0
+seedsp,361,0
+seedspumpkin,361,0
+pumpseeds,361,0
+seedspump,361,0
+melonseeds,362,0
+mseeds,362,0
+watermelonseeds,362,0
+greenmelonseeds,362,0
+gmelonseeds,362,0
+seedsmelon,362,0
+seedswatermelon,362,0
+rawbeef,363,0
+rawsteak,363,0
+uncookedbeef,363,0
+uncookedsteak,363,0
+cowmeat,363,0
+plainbeef,363,0
+beef,364,0
+steak,364,0
+cookedbeef,364,0
+grilledbeef,364,0
+cookedsteak,364,0
+grilledsteak,364,0
+cookedcowmeat,364,0
+rawchicken,365,0
+uncookedchicken,365,0
+plainchicken,365,0
+chickenplain,365,0
+chickenuncooked,365,0
+chickenraw,365,0
+cookedchicken,366,0
+grilledchicken,366,0
+toastedchicken,366,0
+gchicken,366,0
+bbqchicken,366,0
+friedchicken,366,0
+cchicken,366,0
+rottenflesh,367,0
+zombieflesh,367,0
+rottenmeat,367,0
+zombiemeat,367,0
+badflesh,367,0
+poisonflesh,367,0
+zombieremains,367,0
+enderpearl,368,0
+endpearl,368,0
+pearl,368,0
+epearl,368,0
+bluepearl,368,0
+endergem,368,0
+blazerod,369,0
+goldenrod,369,0
+goldrod,369,0
+blazestick,369,0
+goldstick,369,0
+brod,369,0
+grod,369,0
+bstick,369,0
+gstick,369,0
+ghasttear,370,0
+ghastdrop,370,0
+ghosttear,370,0
+ghostdrop,370,0
+gtear,370,0
+gdrop,370,0
+tear,370,0
+goldnugget,371,0
+gnugget,371,0
+goldpebble,371,0
+gpebble,371,0
+goldball,371,0
+gball,371,0
+netherstalk,372,0
+deathstalk,372,0
+hellstalk,372,0
+nstalk,372,0
+dstalk,372,0
+hstalk,372,0
+netherwarts,372,0
+netherwart,372,0
+netherplant,372,0
+nethercrop,372,0
+hellwarts,372,0
+hellwart,372,0
+hellplant,372,0
+hellcrop,372,0
+deathwarts,372,0
+deathwart,372,0
+deathplant,372,0
+deathcrop,372,0
+nwarts,372,0
+nwart,372,0
+ncrop,372,0
+nplant,372,0
+hwarts,372,0
+hwart,372,0
+hplant,372,0
+hcrop,372,0
+dwarts,372,0
+dwart,372,0
+dplant,372,0
+dcrop,372,0
+potion,373,0
+mixture,373,0
+potions,373,0
+waterbottle,373,0
+fullbottle,373,0
+watervase,373,0
+fullvase,373,0
+clearpotion,373,6
+clearpot,373,6
+clearextendedpotion,373,7
+clearexpotion,373,7
+clear2potion,373,7
+clearextendedpot,373,7
+clearexpot,373,7
+clear2pot,373,7
+diffusepotion,373,11
+diffusepot,373,11
+artlesspotion,373,13
+artlesspot,373,13
+thinpotion,373,14
+thinpot,373,14
+thinextendedpotion,373,15
+thinexpotion,373,15
+thin2potion,373,15
+thinextendedpot,373,15
+thinexpot,373,15
+thin2pot,373,15
+awkwardpotion,373,16
+awkwardpot,373,16
+bunglingpotion,373,22
+bunglingpot,373,22
+bunglingextendedpotion,373,23
+bunglingexpotion,373,23
+bungling2potion,373,23
+bunglingextendedpot,373,23
+bunglingexpot,373,23
+bungling2pot,373,23
+smoothpotion,373,27
+smoothpot,373,27
+suavepotion,373,29
+suavepot,373,29
+debonairpotion,373,30
+debonairpot,373,30
+debonairextendedpotion,373,31
+debonairexpotion,373,31
+debonair2potion,373,31
+debonairextendedpot,373,31
+debonairexpot,373,31
+debonair2pot,373,31
+thickpotion,373,32
+thickpot,373,32
+charmingpotion,373,38
+charmingpot,373,38
+charmingextendedpotion,373,39
+charmingexpotion,373,39
+charming2potion,373,39
+charmingextendedpot,373,39
+charmingexpot,373,39
+charming2pot,373,39
+refinedpotion,373,43
+refinedpot,373,43
+cordialpotion,373,45
+cordialpot,373,45
+sparklingpotion,373,46
+sparklingpot,373,46
+sparklingextendedpotion,373,47
+sparklingexpotion,373,47
+sparkling2potion,373,47
+sparklingextendedpot,373,47
+sparklingexpot,373,47
+sparkling2pot,373,47
+potentpotion,373,48
+potentpot,373,48
+rankpotion,373,54
+rankpot,373,54
+rankextendedpotion,373,55
+rankexpotion,373,55
+rank2potion,373,55
+rankextendedpot,373,55
+rankexpot,373,55
+rank2pot,373,55
+acridpotion,373,59
+acridpot,373,59
+grosspotion,373,61
+grosspot,373,61
+stinkypotion,373,62
+stinkypot,373,62
+stinkyextendedpotion,373,63
+stinkyexpotion,373,63
+stinky2potion,373,63
+stinkyextendedpot,373,63
+stinkyexpot,373,63
+stinky2pot,373,63
+mundaneextendedpotion,373,64
+mundaneexpotion,373,64
+mundane2potion,373,64
+mundaneextendedpot,373,64
+mundaneexpot,373,64
+mundane2pot,373,64
+mundanepotion,373,8192
+mundanepot,373,8192
+regenerationpotion,373,8193
+regeneratepotion,373,8193
+regenpotion,373,8193
+regenerationpot,373,8193
+regeneratepot,373,8193
+regenpot,373,8193
+rpot,373,8193
+swiftnesspotion,373,8194
+swiftpotion,373,8194
+speedpotion,373,8194
+swiftnesspot,373,8194
+swiftpot,373,8194
+speedpot,373,8194
+swpot,373,8194
+fireresistancepotion,373,8195
+fireresistpotion,373,8195
+firerespotion,373,8195
+fireresistancepot,373,8195
+fireresistpot,373,8195
+firerespot,373,8195
+fpot,373,8195
+poisonpotion,373,8196
+acidpotion,373,8196
+poisonpot,373,8196
+acidpot,373,8196
+ppot,373,8196
+healingpotion,373,8197
+healpotion,373,8197
+lifepotion,373,8197
+healingpot,373,8197
+healpot,373,8197
+lifepot,373,8197
+hpot,373,8197
+nightvisionpotion,373,8198
+nvisionpotion,373,8198
+nightvpotion,373,8198
+darkvisionpotion,373,8198
+dvisionpotion,373,8198
+darkvpotion,373,8198
+nightvisionpot,373,8198
+nvisionpot,373,8198
+nightvpot,373,8198
+darkvisionpot,373,8198
+dvisionpot,373,8198
+darkvpot,373,8198
+npot,373,8198
+weaknesspotion,373,8200
+weakpotion,373,8200
+weaknesspot,373,8200
+weakpot,373,8200
+wpot,373,8200
+strengthpotion,373,8201
+strongpotion,373,8201
+strpotion,373,8201
+strengthpot,373,8201
+strongpot,373,8201
+strpot,373,8201
+stpot,373,8201
+slownesspotion,373,8202
+slowpotion,373,8202
+slownesspot,373,8202
+slowpot,373,8202
+slpot,373,8202
+harmingpotion,373,8204
+damagepotion,373,8204
+dmgpotion,373,8204
+harmingpot,373,8204
+damagepot,373,8204
+dmgpot,373,8204
+dpot,373,8204
+waterbreathingpotion,373,8205
+waterbreathpotion,373,8205
+breathingpotion,373,8205
+breathpotion,373,8205
+waterbreathingpot,373,8205
+waterbreathpot,373,8205
+breathingpot,373,8205
+breathpot,373,8205
+wbpot,373,8205
+invisibilitypotion,373,8206
+invisiblepotion,373,8206
+invpotion,373,8206
+invisibilitypot,373,8206
+invisiblepot,373,8206
+invpot,373,8206
+ipot,373,8206
+regenerationleveliipotion,373,8225
+regenerateleveliipotion,373,8225
+regenleveliipotion,373,8225
+regenerationlevel2potion,373,8225
+regeneratelevel2potion,373,8225
+regenlevel2potion,373,8225
+regenerationiipotion,373,8225
+regenerateiipotion,373,8225
+regeniipotion,373,8225
+regenerationleveliipot,373,8225
+regenerateleveliipot,373,8225
+regenleveliipot,373,8225
+regenerationlevel2pot,373,8225
+regeneratelevel2pot,373,8225
+regenlevel2pot,373,8225
+regenerationiipot,373,8225
+regenerateiipot,373,8225
+regeniipot,373,8225
+r2pot,373,8225
+swiftnessleveliipotion,373,8226
+swiftleveliipotion,373,8226
+speedleveliipotion,373,8226
+swiftnesslevel2potion,373,8226
+swiftlevel2potion,373,8226
+speedlevel2potion,373,8226
+swiftnessiipotion,373,8226
+swiftiipotion,373,8226
+speediipotion,373,8226
+swiftnessleveliipot,373,8226
+swiftleveliipot,373,8226
+speedleveliipot,373,8226
+swiftnesslevel2pot,373,8226
+swiftlevel2pot,373,8226
+speedlevel2pot,373,8226
+swiftnessiipot,373,8226
+swiftiipot,373,8226
+speediipot,373,8226
+sw2pot,373,8226
+poisonleveliipotion,373,8228
+acidleveliipotion,373,8228
+poisonlevel2potion,373,8228
+acidlevel2potion,373,8228
+poisoniipotion,373,8228
+acidiipotion,373,8228
+poisonleveliipot,373,8228
+acidleveliipot,373,8228
+poisonlevel2pot,373,8228
+acidlevel2pot,373,8228
+poisoniipot,373,8228
+acidiipot,373,8228
+p2pot,373,8228
+healingleveliipotion,373,8229
+healleveliipotion,373,8229
+healinglevel2potion,373,8229
+heallevel2potion,373,8229
+healingiipotion,373,8229
+healiipotion,373,8229
+healingleveliipot,373,8229
+healleveliipot,373,8229
+healinglevel2pot,373,8229
+heallevel2pot,373,8229
+healingiipot,373,8229
+healiipot,373,8229
+h2pot,373,8229
+strengthleveliipotion,373,8233
+strongleveliipotion,373,8233
+strleveliipotion,373,8233
+strengthlevel2potion,373,8233
+stronglevel2potion,373,8233
+strlevel2potion,373,8233
+strengthiipotion,373,8233
+strongiipotion,373,8233
+striipotion,373,8233
+strengthleveliipot,373,8233
+strongleveliipot,373,8233
+strleveliipot,373,8233
+strengthlevel2pot,373,8233
+stronglevel2pot,373,8233
+strlevel2pot,373,8233
+strengthiipot,373,8233
+strongiipot,373,8233
+striipot,373,8233
+st2pot,373,8233
+harmingleveliipotion,373,8236
+damageleveliipotion,373,8236
+dmgleveliipotion,373,8236
+harminglevel2potion,373,8236
+damagelevel2potion,373,8236
+dmglevel2potion,373,8236
+harmingiipotion,373,8236
+damageiipotion,373,8236
+dmgiipotion,373,8236
+harmingleveliipot,373,8236
+damageleveliipot,373,8236
+dmgleveliipot,373,8236
+harminglevel2pot,373,8236
+damagelevel2pot,373,8236
+dmglevel2pot,373,8236
+harmingiipot,373,8236
+damageiipot,373,8236
+dmgiipot,373,8236
+d2pot,373,8236
+regenerationextendedpotion,373,8257
+regenerateextendedpotion,373,8257
+regenextendepotion,373,8257
+regenerationexpotion,373,8257
+regenerateexpotion,373,8257
+regenexpotion,373,8257
+regenerationextendedpot,373,8257
+regenerateextendedpot,373,8257
+regenextendepot,373,8257
+regenerationexpot,373,8257
+regenerateexpot,373,8257
+regenexpot,373,8257
+repot,373,8257
+swiftnessextendedpotion,373,8258
+swiftextendedpotion,373,8258
+speedextendedpotion,373,8258
+swiftnessexpotion,373,8258
+swiftexpotion,373,8258
+speedexpotion,373,8258
+swiftnessextendedpot,373,8258
+swiftextendedpot,373,8258
+speedextendedpot,373,8258
+swiftnessexpot,373,8258
+swiftexpot,373,8258
+speedexpot,373,8258
+swepot,373,8258
+fireresistanceextendedpotion,373,8259
+fireresistextendedpotion,373,8259
+fireresextendedpotion,373,8259
+fireresistanceexpotion,373,8259
+fireresistexpotion,373,8259
+fireresexpotion,373,8259
+fireresistanceextendedpot,373,8259
+fireresistextendedpot,373,8259
+fireresextendedpot,373,8259
+fireresistanceexpot,373,8259
+fireresistexpot,373,8259
+fireresexpot,373,8259
+fepot,373,8259
+poisonextendedpotion,373,8260
+acidextendedpotion,373,8260
+poisonexpotion,373,8260
+acidexpotion,373,8260
+poisonextendedpot,373,8260
+acidextendedpot,373,8260
+poisonexpot,373,8260
+acidexpot,373,8260
+pepot,373,8260
+nightvisionextendedpotion,373,8262
+nvisionextendedpotion,373,8262
+nightvextendedpotion,373,8262
+darkvisionextendedpotion,373,8262
+dvisionextendedpotion,373,8262
+darkvextendedpotion,373,8262
+nightvisionexpotion,373,8262
+nvisionexpotion,373,8262
+nightvexpotion,373,8262
+darkvisionexpotion,373,8262
+dvisionexpotion,373,8262
+darkvexpotion,373,8262
+nightvisionextendedpot,373,8262
+nvisionextendedpot,373,8262
+nightvextendedpot,373,8262
+darkvisionextendedpot,373,8262
+dvisionextendedpot,373,8262
+darkvextendedpot,373,8262
+nightvisionexpot,373,8262
+nvisionexpot,373,8262
+nightvexpot,373,8262
+darkvisionexpot,373,8262
+dvisionexpot,373,8262
+darkvexpot,373,8262
+nepot,373,8262
+weaknessextendedpotion,373,8264
+weakextendedpotion,373,8264
+weaknessexpotion,373,8264
+weakexpotion,373,8264
+weaknessextendedpot,373,8264
+weakextendedpot,373,8264
+weaknessexpot,373,8264
+weakexpot,373,8264
+wepot,373,8264
+strengthextendedpotion,373,8265
+strongextendedpotion,373,8265
+strextendedpotion,373,8265
+strengthexpotion,373,8265
+strongexpotion,373,8265
+strexpotion,373,8265
+strengthextendedpot,373,8265
+strongextendedpot,373,8265
+strextendedpot,373,8265
+strengthexpot,373,8265
+strongexpot,373,8265
+strexpot,373,8265
+stepot,373,8265
+slownessextendedpotion,373,8266
+slowextenedpotion,373,8266
+slownessexpotion,373,8266
+slowexpotion,373,8266
+slownessextendedpot,373,8266
+slowextenedpot,373,8266
+slownessexpot,373,8266
+slowexpot,373,8266
+slepot,373,8266
+waterbreathingextendedpotion,373,8269
+waterbreathextendedpotion,373,8269
+breathingextendedpotion,373,8269
+breathextendedpotion,373,8269
+waterbreathingextendedpot,373,8269
+waterbreathextendedpot,373,8269
+breathingextendedpot,373,8269
+breathextendedpot,373,8269
+waterbreathingexpotion,373,8269
+waterbreathexpotion,373,8269
+breathingexpotion,373,8269
+breathexpotion,373,8269
+waterbreathingexpot,373,8269
+waterbreathexpot,373,8269
+breathingexpot,373,8269
+breathexpot,373,8269
+wbepot,373,8269
+invisibilityextendedpotion,373,8270
+invisibleextendedpotion,373,8270
+invextendedpotion,373,8270
+invisibilityexpotion,373,8270
+invisibleexpotion,373,8270
+invexpotion,373,8270
+invisibilityextendedpot,373,8270
+invisibleextendedpot,373,8270
+invextendedpot,373,8270
+invisibilityexpot,373,8270
+invisibleexpot,373,8270
+invexpot,373,8270
+iepot,373,8270
+regenerationdualbitpotion,373,8289
+regeneratedualbitpotion,373,8289
+regendualbitpotion,373,8289
+regenerationdbpotion,373,8289
+regeneratedbpotion,373,8289
+regendbpotion,373,8289
+regenerationdualbitpot,373,8289
+regeneratedualbitpot,373,8289
+regendualbitpot,373,8289
+regenerationdbpot,373,8289
+regeneratedbpot,373,8289
+regendbpot,373,8289
+rdbpot,373,8289
+swiftnessdualbitpotion,373,8290
+swiftdualbitpotion,373,8290
+speeddualbitpotion,373,8290
+swiftnessdualbitpot,373,8290
+swiftdualbitpot,373,8290
+speeddualbitpot,373,8290
+swiftnessdbpotion,373,8290
+swiftdbpotion,373,8290
+speeddbpotion,373,8290
+swiftnessdbpot,373,8290
+swiftdbpot,373,8290
+speeddbpot,373,8290
+swdbpot,373,8290
+poisondualbitpotion,373,8292
+aciddualbitpotion,373,8292
+poisondualbitpot,373,8292
+aciddualbitpot,373,8292
+poisondbpotion,373,8292
+aciddbpotion,373,8292
+poisondbpot,373,8292
+aciddbpot,373,8292
+pdbpot,373,8292
+strengthdualbitpotion,373,8297
+strongdualbitpotion,373,8297
+strdualbitpotion,373,8297
+strengthdualbitpot,373,8297
+strongdualbitpot,373,8297
+strdualbitpot,373,8297
+strengthdbpotion,373,8297
+strongdbpotion,373,8297
+strdbpotion,373,8297
+strengthdbpot,373,8297
+strongdbpot,373,8297
+strdbpot,373,8297
+stdbpot,373,8297
+splashmundanepotion,373,16384
+splmundanepotion,373,16384
+splashregenerationpotion,373,16385
+splashregeneratepotion,373,16385
+splashregenpotion,373,16385
+splashregenerationpot,373,16385
+splashregeneratepot,373,16385
+splashregenpot,373,16385
+regenerationsplashpotion,373,16385
+regeneratesplashpotion,373,16385
+regensplashpotion,373,16385
+splregenerationpotion,373,16385
+splregeneratepotion,373,16385
+splregenpotion,373,16385
+splregenerationpot,373,16385
+splregeneratepot,373,16385
+splregenpot,373,16385
+sprpot,373,16385
+splashswiftnesspotion,373,16386
+splashswiftpotion,373,16386
+splashspeedpotion,373,16386
+splashswiftnesspot,373,16386
+splashswiftpot,373,16386
+splashspeedpot,373,16386
+splswiftnesspotion,373,16386
+splswiftpotion,373,16386
+splspeedpotion,373,16386
+splswiftnesspot,373,16386
+splswiftpot,373,16386
+splspeedpot,373,16386
+spswpot,373,16386
+splashfireresistancepotion,373,16387
+splashfireresistpotion,373,16387
+splashfirerespotion,373,16387
+splashfireresistancepot,373,16387
+splashfireresistpot,373,16387
+splashfirerespot,373,16387
+splfireresistancepotion,373,16387
+splfireresistpotion,373,16387
+splfirerespotion,373,16387
+splfireresistancepot,373,16387
+splfireresistpot,373,16387
+splfirerespot,373,16387
+spfpot,373,16387
+splashpoisonpotion,373,16388
+splashacidpotion,373,16388
+splashpoisonpot,373,16388
+splashacidpot,373,16388
+splpoisonpotion,373,16388
+splacidpotion,373,16388
+splpoisonpot,373,16388
+splacidpot,373,16388
+spppot,373,16388
+splashhealingpotion,373,16389
+splashhealpotion,373,16389
+splashlifepotion,373,16389
+splashhealingpot,373,16389
+splashhealpot,373,16389
+splashlifepot,373,16389
+splhealingpotion,373,16389
+splhealpotion,373,16389
+spllifepotion,373,16389
+splhealingpot,373,16389
+splhealpot,373,16389
+spllifepot,373,16389
+sphpot,373,16389
+splashclearpotion,373,16390
+splashclearpot,373,16390
+splclearpotion,373,16390
+splclearpot,373,16390
+splashnightvisionpotion,373,16390
+splashnvisionpotion,373,16390
+splashnightvpotion,373,16390
+splashdarkvisionpotion,373,16390
+splashdvisionpotion,373,16390
+splashdarkvpotion,373,16390
+splashnightvisionpot,373,16390
+splashnvisionpot,373,16390
+splashnightvpot,373,16390
+splashdarkvisionpot,373,16390
+splashdvisionpot,373,16390
+splashdarkvpot,373,16390
+splnightvisionpotion,373,16390
+splnvisionpotion,373,16390
+splnightvpotion,373,16390
+spldarkvisionpotion,373,16390
+spldvisionpotion,373,16390
+spldarkvpotion,373,16390
+splnightvisionpot,373,16390
+splnvisionpot,373,16390
+splnightvpot,373,16390
+spldarkvisionpot,373,16390
+spldvisionpot,373,16390
+spldarkvpot,373,16390
+spnpot,373,16390
+splashclearextendedpotion,373,16391
+splashclearexpotion,373,16391
+splashclear2potion,373,16391
+splashclearextendedpot,373,16391
+splashclearexpot,373,16391
+splashclear2pot,373,16391
+splclearextendedpotion,373,16391
+splclearexpotion,373,16391
+splclear2potion,373,16391
+splclearextendedpot,373,16391
+splclearexpot,373,16391
+splclear2pot,373,16391
+splashweaknesspotion,373,16392
+splashweakpotion,373,16392
+splashweaknesspot,373,16392
+splashweakpot,373,16392
+splweaknesspotion,373,16392
+splweakpotion,373,16392
+splweaknesspot,373,16392
+splweakpot,373,16392
+spwpot,373,16392
+splashstrengthpotion,373,16393
+splashstrongpotion,373,16393
+splashstrpotion,373,16393
+splashstrengthpot,373,16393
+splashstrongpot,373,16393
+splashstrpot,373,16393
+splstrengthpotion,373,16393
+splstrongpotion,373,16393
+splstrpotion,373,16393
+splstrengthpot,373,16393
+splstrongpot,373,16393
+splstrpot,373,16393
+spstpot,373,16393
+splashslownesspotion,373,16394
+splashslowpotion,373,16394
+splashslownesspot,373,16394
+splashslowpot,373,16394
+splslownesspotion,373,16394
+splslowpotion,373,16394
+splslownesspot,373,16394
+splslowpot,373,16394
+spslpot,373,16394
+splashdiffusepotion,373,16395
+splashdiffusepot,373,16395
+spldiffusepotion,373,16395
+spldiffusepot,373,16395
+splashharmingpotion,373,16396
+splashdamagepotion,373,16396
+splashdmgpotion,373,16396
+splashharmingpot,373,16396
+splashdamagepot,373,16396
+splashdmgpot,373,16396
+splharmingpotion,373,16396
+spldamagepotion,373,16396
+spldmgpotion,373,16396
+splharmingpot,373,16396
+spldamagepot,373,16396
+spldmgpot,373,16396
+spdpot,373,16396
+splashartlesspotion,373,16397
+splashartlesspot,373,16397
+splartlesspotion,373,16397
+splartlesspot,373,16397
+splashwaterbreathingpotion,373,16397
+splashwaterbreathpotion,373,16397
+splashbreathingpotion,373,16397
+splashbreathpotion,373,16397
+splashwaterbreathingpot,373,16397
+splashwaterbreathpot,373,16397
+splashbreathingpot,373,16397
+splashbreathpot,373,16397
+splwaterbreathingpotion,373,16397
+splwaterbreathpotion,373,16397
+splbreathingpotion,373,16397
+splbreathpotion,373,16397
+splwaterbreathingpot,373,16397
+splwaterbreathpot,373,16397
+splbreathingpot,373,16397
+splbreathpot,373,16397
+spwbpot,373,16397
+splashthinpotion,373,16398
+splashthinpot,373,16398
+splthinpotion,373,16398
+splthinpot,373,16398
+splashinvisibilitypotion,373,16398
+splashinvisiblepotion,373,16398
+splashinvpotion,373,16398
+splashinvisibilitypot,373,16398
+splashinvisiblepot,373,16398
+splashinvpot,373,16398
+splinvisibilitypotion,373,16398
+splinvisiblepotion,373,16398
+splinvpotion,373,16398
+splinvisibilitypot,373,16398
+splinvisiblepot,373,16398
+splinvpot,373,16398
+spipot,373,16398
+splashthinextendedpotion,373,16399
+splashthinexpotion,373,16399
+splashthin2potion,373,16399
+splashthinextendedpot,373,16399
+splashthinexpot,373,16399
+splashthin2pot,373,16399
+splthinextendedpotion,373,16399
+splthinexpotion,373,16399
+splthin2potion,373,16399
+splthinextendedpot,373,16399
+splthinexpot,373,16399
+splthin2pot,373,16399
+splashawkwardpotion,373,16400
+splashawkwardpot,373,16400
+splawkwardpotion,373,16400
+splawkwardpot,373,16400
+splashbunglingpotion,373,16406
+splashbunglingpot,373,16406
+splbunglingpotion,373,16406
+splbunglingpot,373,16406
+splashbunglingextendedpotion,373,16407
+splashbunglingexpotion,373,16407
+splashbungling2potion,373,16407
+splashbunglingextendedpot,373,16407
+splashbunglingexpot,373,16407
+splashbungling2pot,373,16407
+splbunglingextendedpotion,373,16407
+splbunglingexpotion,373,16407
+splbungling2potion,373,16407
+splbunglingextendedpot,373,16407
+splbunglingexpot,373,16407
+splbungling2pot,373,16407
+splashsmoothpotion,373,16411
+splashsmoothpot,373,16411
+splsmoothpotion,373,16411
+splsmoothpot,373,16411
+splashsuavepotion,373,16413
+splashsuavepot,373,16413
+splsuavepotion,373,16413
+splsuavepot,373,16413
+splashdebonairpotion,373,16414
+splashdebonairpot,373,16414
+spldebonairpotion,373,16414
+spldebonairpot,373,16414
+splashdebonairextendedpotion,373,16415
+splashdebonairexpotion,373,16415
+splashdebonair2potion,373,16415
+splashdebonairextendedpot,373,16415
+splashdebonairexpot,373,16415
+splashdebonair2pot,373,16415
+spldebonairextendedpotion,373,16415
+spldebonairexpotion,373,16415
+spldebonair2potion,373,16415
+spldebonairextendedpot,373,16415
+spldebonairexpot,373,16415
+spldebonair2pot,373,16415
+splashthickpotion,373,16416
+splashthickpot,373,16416
+splthickpotion,373,16416
+splthickpot,373,16416
+splashregenerationleveliipotion,373,16417
+splashregenerateleveliipotion,373,16417
+splashregenleveliipotion,373,16417
+splashregenerationlevel2potion,373,16417
+splashregeneratelevel2potion,373,16417
+splashregenlevel2potion,373,16417
+splashregenerationiipotion,373,16417
+splashregenerateiipotion,373,16417
+splashregeniipotion,373,16417
+splashregenerationleveliipot,373,16417
+splashregenerateleveliipot,373,16417
+splashregenleveliipot,373,16417
+splashregenerationlevel2pot,373,16417
+splashregeneratelevel2pot,373,16417
+splashregenlevel2pot,373,16417
+splashregenerationiipot,373,16417
+splashregenerateiipot,373,16417
+splashregeniipot,373,16417
+splregenerationleveliipotion,373,16417
+splregenerateleveliipotion,373,16417
+splregenleveliipotion,373,16417
+splregenerationlevel2potion,373,16417
+splregeneratelevel2potion,373,16417
+splregenlevel2potion,373,16417
+splregenerationiipotion,373,16417
+splregenerateiipotion,373,16417
+splregeniipotion,373,16417
+splregenerationleveliipot,373,16417
+splregenerateleveliipot,373,16417
+splregenleveliipot,373,16417
+splregenerationlevel2pot,373,16417
+splregeneratelevel2pot,373,16417
+splregenlevel2pot,373,16417
+splregenerationiipot,373,16417
+splregenerateiipot,373,16417
+splregeniipot,373,16417
+spr2pot,373,16417
+splashswiftnessleveliipotion,373,16418
+splashswiftleveliipotion,373,16418
+splashspeedleveliipotion,373,16418
+splashswiftnesslevel2potion,373,16418
+splashswiftlevel2potion,373,16418
+splashspeedlevel2potion,373,16418
+splashswiftnessiipotion,373,16418
+splashswiftiipotion,373,16418
+splashspeediipotion,373,16418
+splashswiftnessleveliipot,373,16418
+splashswiftleveliipot,373,16418
+splashspeedleveliipot,373,16418
+splashswiftnesslevel2pot,373,16418
+splashswiftlevel2pot,373,16418
+splashspeedlevel2pot,373,16418
+splashswiftnessiipot,373,16418
+splashswiftiipot,373,16418
+splashspeediipot,373,16418
+splswiftnessleveliipotion,373,16418
+splswiftleveliipotion,373,16418
+splspeedleveliipotion,373,16418
+splswiftnesslevel2potion,373,16418
+splswiftlevel2potion,373,16418
+splspeedlevel2potion,373,16418
+splswiftnessiipotion,373,16418
+splswiftiipotion,373,16418
+splspeediipotion,373,16418
+splswiftnessleveliipot,373,16418
+splswiftleveliipot,373,16418
+splspeedleveliipot,373,16418
+splswiftnesslevel2pot,373,16418
+splswiftlevel2pot,373,16418
+splspeedlevel2pot,373,16418
+splswiftnessiipot,373,16418
+splswiftiipot,373,16418
+splspeediipot,373,16418
+spsw2pot,373,16418
+splashpoisonleveliipotion,373,16420
+splashacidleveliipotion,373,16420
+splashpoisonlevel2potion,373,16420
+splashacidlevel2potion,373,16420
+splashpoisoniipotion,373,16420
+splashacidiipotion,373,16420
+splashpoisonleveliipot,373,16420
+splashacidleveliipot,373,16420
+splashpoisonlevel2pot,373,16420
+splashacidlevel2pot,373,16420
+splashpoisoniipot,373,16420
+splashacidiipot,373,16420
+splpoisonleveliipotion,373,16420
+splacidleveliipotion,373,16420
+splpoisonlevel2potion,373,16420
+splcidlevel2potion,373,16420
+splpoisoniipotion,373,16420
+splacidiipotion,373,16420
+splpoisonleveliipot,373,16420
+splacidleveliipot,373,16420
+splpoisonlevel2pot,373,16420
+splacidlevel2pot,373,16420
+splpoisoniipot,373,16420
+splacidiipot,373,16420
+spp2pot,373,16420
+splashhealingleveliipotion,373,16421
+splashhealleveliipotion,373,16421
+splashhealinglevel2potion,373,16421
+splashheallevel2potion,373,16421
+splashhealingiipotion,373,16421
+splashhealiipotion,373,16421
+splashhealingleveliipot,373,16421
+splashhealleveliipot,373,16421
+splashhealinglevel2pot,373,16421
+splashheallevel2pot,373,16421
+splashhealingiipot,373,16421
+splashhealiipot,373,16421
+splhealingleveliipotion,373,16421
+splhealleveliipotion,373,16421
+splhealinglevel2potion,373,16421
+splheallevel2potion,373,16421
+splhealingiipotion,373,16421
+splhealiipotion,373,16421
+splhealingleveliipot,373,16421
+splhealleveliipot,373,16421
+splhealinglevel2pot,373,16421
+splheallevel2pot,373,16421
+splhealingiipot,373,16421
+splhealiipot,373,16421
+sph2pot,373,16421
+splashcharmingpotion,373,16422
+splashcharmingpot,373,16422
+splcharmingpotion,373,16422
+splcharmingpot,373,16422
+splashcharmingextendedpotion,373,16423
+splashcharmingexpotion,373,16423
+splashcharming2potion,373,16423
+splashcharmingextendedpot,373,16423
+splashcharmingexpot,373,16423
+splashcharming2pot,373,16423
+splcharmingextendedpotion,373,16423
+splcharmingexpotion,373,16423
+splcharming2potion,373,16423
+splcharmingextendedpot,373,16423
+splcharmingexpot,373,16423
+splcharming2pot,373,16423
+splashstrengthleveliipotion,373,16425
+splashstrongleveliipotion,373,16425
+splashstrleveliipotion,373,16425
+splashstrengthlevel2potion,373,16425
+splashstronglevel2potion,373,16425
+splashstrlevel2potion,373,16425
+splashstrengthiipotion,373,16425
+splashstrongiipotion,373,16425
+splashstriipotion,373,16425
+splashstrengthleveliipot,373,16425
+splashstrongleveliipot,373,16425
+splashstrleveliipot,373,16425
+splashstrengthlevel2pot,373,16425
+splashstronglevel2pot,373,16425
+splashstrlevel2pot,373,16425
+splashstrengthiipot,373,16425
+splashstrongiipot,373,16425
+splashstriipot,373,16425
+splstrengthleveliipotion,373,16425
+splstrongleveliipotion,373,16425
+splstrleveliipotion,373,16425
+splstrengthlevel2potion,373,16425
+splstronglevel2potion,373,16425
+splstrlevel2potion,373,16425
+splstrengthiipotion,373,16425
+splstrongiipotion,373,16425
+splstriipotion,373,16425
+splstrengthleveliipot,373,16425
+splstrongleveliipot,373,16425
+splstrleveliipot,373,16425
+splstrengthlevel2pot,373,16425
+splstronglevel2pot,373,16425
+splstrlevel2pot,373,16425
+splstrengthiipot,373,16425
+splstrongiipot,373,16425
+splstriipot,373,16425
+spst2pot,373,16425
+splashrefinedpotion,373,16427
+splashrefinedpot,373,16427
+splrefinedpotion,373,16427
+splrefinedpot,373,16427
+splashharmingleveliipotion,373,16428
+splashdamageleveliipotion,373,16428
+splashdmgleveliipotion,373,16428
+splashharminglevel2potion,373,16428
+splashdamagelevel2potion,373,16428
+splashdmglevel2potion,373,16428
+splashharmingiipotion,373,16428
+splashdamageiipotion,373,16428
+splashdmgiipotion,373,16428
+splashharmingleveliipot,373,16428
+splashdamageleveliipot,373,16428
+splashdmgleveliipot,373,16428
+splashharminglevel2pot,373,16428
+splashdamagelevel2pot,373,16428
+splashdmglevel2pot,373,16428
+splashharmingiipot,373,16428
+splashdamageiipot,373,16428
+splashdmgiipot,373,16428
+splharmingleveliipotion,373,16428
+spldamageleveliipotion,373,16428
+spldmgleveliipotion,373,16428
+splharminglevel2potion,373,16428
+spldamagelevel2potion,373,16428
+spldmglevel2potion,373,16428
+splharmingiipotion,373,16428
+spldamageiipotion,373,16428
+spldmgiipotion,373,16428
+splharmingleveliipot,373,16428
+spldamageleveliipot,373,16428
+spldmgleveliipot,373,16428
+splharminglevel2pot,373,16428
+spldamagelevel2pot,373,16428
+spldmglevel2pot,373,16428
+splharmingiipot,373,16428
+spldamageiipot,373,16428
+spldmgiipot,373,16428
+spd2pot,373,16428
+splashcordialpotion,373,16429
+splashcordialpot,373,16429
+splcordialpotion,373,16429
+splcordialpot,373,16429
+splashsparklingpotion,373,16430
+splashsparklingpot,373,16430
+splsparklingpotion,373,16430
+splsparklingpot,373,16430
+splashsparklingextendedpotion,373,16431
+splashsparklingexpotion,373,16431
+splashsparkling2potion,373,16431
+splashsparklingextendedpot,373,16431
+splashsparklingexpot,373,16431
+splashsparkling2pot,373,16431
+splsparklingextendedpotion,373,16431
+splsparklingexpotion,373,16431
+splsparkling2potion,373,16431
+splsparklingextendedpot,373,16431
+splsparklingexpot,373,16431
+splsparkling2pot,373,16431
+splashpotentpotion,373,16432
+splashpotentpot,373,16432
+splpotentpotion,373,16432
+splpotentpot,373,16432
+splashrankpotion,373,16438
+splashrankpot,373,16438
+splrankpotion,373,16438
+splrankpot,373,16438
+splashrankextendedpotion,373,16439
+splashrankexpotion,373,16439
+splashrank2potion,373,16439
+splashrankextendedpot,373,16439
+splashrankexpot,373,16439
+splashrank2pot,373,16439
+splrankextendedpotion,373,16439
+splrankexpotion,373,16439
+splrank2potion,373,16439
+splrankextendedpot,373,16439
+splrankexpot,373,16439
+splrank2pot,373,16439
+splashacridpotion,373,16443
+splashacridpot,373,16443
+splacridpotion,373,16443
+splacridpot,373,16443
+splashgrosspotion,373,16445
+splashgrosspot,373,16445
+splgrosspotion,373,16445
+splgrosspot,373,16445
+splashstinkypotion,373,16446
+splashstinkypot,373,16446
+splstinkypotion,373,16446
+splstinkypot,373,16446
+splashstinkyextendedpotion,373,16447
+splashstinkyexpotion,373,16447
+splashstinky2potion,373,16447
+splashstinkyextendedpot,373,16447
+splashstinkyexpot,373,16447
+splashstinky2pot,373,16447
+splstinkyextendedpotion,373,16447
+splstinkyexpotion,373,16447
+splstinky2potion,373,16447
+splstinkyextendedpot,373,16447
+splstinkyexpot,373,16447
+splstinky2pot,373,16447
+splashmundaneextendedpotion,373,16448
+splashmundaneexpotion,373,16448
+splashmundane2potion,373,16448
+splashmundaneextendedpot,373,16448
+splashmundaneexpot,373,16448
+splashmundane2pot,373,16448
+splmundaneextendedpotion,373,16448
+splmundaneexpotion,373,16448
+splmundane2potion,373,16448
+splmundaneextendedpot,373,16448
+splmundaneexpot,373,16448
+splmundane2pot,373,16448
+splashregenerationextendedpotion,373,16449
+splashregenerateextendedpotion,373,16449
+splashregenextendepotion,373,16449
+splashregenerationexpotion,373,16449
+splashregenerateexpotion,373,16449
+splashregenexpotion,373,16449
+splashregenerationextendedpot,373,16449
+splashregenerateextendedpot,373,16449
+splashregenextendepot,373,16449
+splashregenerationexpot,373,16449
+splashregenerateexpot,373,16449
+splashregenexpot,373,16449
+splregenerationextendedpotion,373,16449
+splregenerateextendedpotion,373,16449
+splregenextendepotion,373,16449
+splregenerationexpotion,373,16449
+splregenerateexpotion,373,16449
+splregenexpotion,373,16449
+splregenerationextendedpot,373,16449
+splregenerateextendedpot,373,16449
+splregenextendepot,373,16449
+splregenerationexpot,373,16449
+splregenerateexpot,373,16449
+splregenexpot,373,16449
+sprepot,373,16449
+splashswiftnessextendedpotion,373,16450
+splashswiftextendedpotion,373,16450
+splashspeedextendedpotion,373,16450
+splashswiftnessexpotion,373,16450
+splashswiftexpotion,373,16450
+splashspeedexpotion,373,16450
+splashswiftnessextendedpot,373,16450
+splashswiftextendedpot,373,16450
+splashspeedextendedpot,373,16450
+splashswiftnessexpot,373,16450
+splashswiftexpot,373,16450
+splashspeedexpot,373,16450
+splswiftnessextendedpotion,373,16450
+splswiftextendedpotion,373,16450
+splspeedextendedpotion,373,16450
+splswiftnessexpotion,373,16450
+splswiftexpotion,373,16450
+splspeedexpotion,373,16450
+splswiftnessextendedpot,373,16450
+splswiftextendedpot,373,16450
+splspeedextendedpot,373,16450
+splswiftnessexpot,373,16450
+splswiftexpot,373,16450
+splspeedexpot,373,16450
+spswepot,373,16450
+splashfireresistanceextendedpotion,373,16451
+splashfireresistextendedpotion,373,16451
+splashfireresextendedpotion,373,16451
+splashfireresistanceexpotion,373,16451
+splashfireresistexpotion,373,16451
+splashfireresexpotion,373,16451
+splashfireresistanceextendedpot,373,16451
+splashfireresistextendedpot,373,16451
+splashfireresextendedpot,373,16451
+splashfireresistanceexpot,373,16451
+splashfireresistexpot,373,16451
+splashfireresexpot,373,16451
+splfireresistanceextendedpotion,373,16451
+splfireresistextendedpotion,373,16451
+splfireresextendedpotion,373,16451
+splfireresistanceexpotion,373,16451
+splfireresistexpotion,373,16451
+splfireresexpotion,373,16451
+splfireresistanceextendedpot,373,16451
+splfireresistextendedpot,373,16451
+splfireresextendedpot,373,16451
+splfireresistanceexpot,373,16451
+splfireresistexpot,373,16451
+splfireresexpot,373,16451
+spfepot,373,16451
+splashpoisonextendedpotion,373,16452
+splashacidextendedpotion,373,16452
+splashpoisonexpotion,373,16452
+splashacidexpotion,373,16452
+splashpoisonextendedpot,373,16452
+splashacidextendedpot,373,16452
+splashpoisonexpot,373,16452
+splashacidexpot,373,16452
+splpoisonextendedpotion,373,16452
+splacidextendedpotion,373,16452
+splpoisonexpotion,373,16452
+splacidexpotion,373,16452
+splpoisonextendedpot,373,16452
+splacidextendedpot,373,16452
+splpoisonexpot,373,16452
+splacidexpot,373,16452
+sppepot,373,16452
+splashnightvisionextendedpotion,373,16454
+splashnvisionextendedpotion,373,16454
+splashnightvextendedpotion,373,16454
+splashdarkvisionextendedpotion,373,16454
+splashdvisionextendedpotion,373,16454
+splashdarkvextendedpotion,373,16454
+splashnightvisionextendedpot,373,16454
+splashnvisionextendedpot,373,16454
+splashnightvextendedpot,373,16454
+splashdarkvisionextendedpot,373,16454
+splashdvisionextendedpot,373,16454
+splashdarkvextendedpot,373,16454
+splashnightvisionexpotion,373,16454
+splashnvisionexpotion,373,16454
+splashnightvexpotion,373,16454
+splashdarkvisionexpotion,373,16454
+splashdvisionexpotion,373,16454
+splashdarkvexpotion,373,16454
+splashnightvisionexpot,373,16454
+splashnvisionexpot,373,16454
+splashnightvexpot,373,16454
+splashdarkvisionexpot,373,16454
+splashdvisionexpot,373,16454
+splashdarkvexpot,373,16454
+splnightvisionextendedpotion,373,16454
+splnvisionextendedpotion,373,16454
+splnightvextendedpotion,373,16454
+spldarkvisionextendedpotion,373,16454
+spldvisionextendedpotion,373,16454
+spldarkvextendedpotion,373,16454
+splnightvisionextendedpot,373,16454
+splnvisionextendedpot,373,16454
+splnightvextendedpot,373,16454
+spldarkvisionextendedpot,373,16454
+spldvisionextendedpot,373,16454
+spldarkvextendedpot,373,16454
+splnightvisionexpotion,373,16454
+splnvisionexpotion,373,16454
+splnightvexpotion,373,16454
+spldarkvisionexpotion,373,16454
+spldvisionexpotion,373,16454
+spldarkvexpotion,373,16454
+splnightvisionexpot,373,16454
+splnvisionexpot,373,16454
+splnightvexpot,373,16454
+spldarkvisionexpot,373,16454
+spldvisionexpot,373,16454
+spldarkvexpot,373,16454
+spnepot,373,16454
+splashweaknessextendedpotion,373,16456
+splashweakextendedpotion,373,16456
+splashweaknessexpotion,373,16456
+splashweakexpotion,373,16456
+splashweaknessextendedpot,373,16456
+splashweakextendedpot,373,16456
+splashweaknessexpot,373,16456
+splashweakexpot,373,16456
+splweaknessextendedpotion,373,16456
+sphweakextendedpotion,373,16456
+splweaknessexpotion,373,16456
+splweakexpotion,373,16456
+splweaknessextendedpot,373,16456
+splweakextendedpot,373,16456
+splweaknessexpot,373,16456
+splweakexpot,373,16456
+spwepot,373,16456
+splashstrengthextendedpotion,373,16457
+splashstrongextendedpotion,373,16457
+splashstrextendedpotion,373,16457
+splashstrengthexpotion,373,16457
+splashstrongexpotion,373,16457
+splashstrexpotion,373,16457
+splashstrengthextendedpot,373,16457
+splashstrongextendedpot,373,16457
+splashstrextendedpot,373,16457
+splashstrengthexpot,373,16457
+splashstrongexpot,373,16457
+splashstrexpot,373,16457
+splstrengthextendedpotion,373,16457
+splstrongextendedpotion,373,16457
+splstrextendedpotion,373,16457
+splstrengthexpotion,373,16457
+splstrongexpotion,373,16457
+splstrexpotion,373,16457
+splstrengthextendedpot,373,16457
+splstrongextendedpot,373,16457
+splstrextendedpot,373,16457
+splstrengthexpot,373,16457
+splstrongexpot,373,16457
+splstrexpot,373,16457
+spstepot,373,16457
+splashslownessextendedpotion,373,16458
+splashslowextenedpotion,373,16458
+splashslownessexpotion,373,16458
+splashslowexpotion,373,16458
+splashslownessextendedpot,373,16458
+splashslowextenedpot,373,16458
+splashslownessexpot,373,16458
+splashslowexpot,373,16458
+splslownessextendedpotion,373,16458
+splslowextenedpotion,373,16458
+splslownessexpotion,373,16458
+splslowexpotion,373,16458
+splslownessextendedpot,373,16458
+splslowextenedpot,373,16458
+splslownessexpot,373,16458
+splslowexpot,373,16458
+spslepot,373,16458
+splashwaterbreathingextendedpotion,373,16461
+splashwaterbreathextendedpotion,373,16461
+splashbreathingextendedpotion,373,16461
+splashbreathextendedpotion,373,16461
+splashwaterbreathingextendedpot,373,16461
+splashwaterbreathextendedpot,373,16461
+splashbreathingextendedpot,373,16461
+splashbreathextendedpot,373,16461
+splwaterbreathingextendedpotion,373,16461
+splwaterbreathextendedpotion,373,16461
+splbreathingextendedpotion,373,16461
+splbreathextendedpotion,373,16461
+splwaterbreathingextendedpot,373,16461
+splwaterbreathextendedpot,373,16461
+splbreathingextendedpot,373,16461
+splbreathextendedpot,373,16461
+splashwaterbreathingexpotion,373,16461
+splashwaterbreathexpotion,373,16461
+splashbreathingexpotion,373,16461
+splashbreathexpotion,373,16461
+splashwaterbreathingexpot,373,16461
+splashwaterbreathexpot,373,16461
+splashbreathingexpot,373,16461
+splashbreathexpot,373,16461
+splwaterbreathingexpotion,373,16461
+splwaterbreathexpotion,373,16461
+splbreathingexpotion,373,16461
+splbreathexpotion,373,16461
+splwaterbreathingexpot,373,16461
+splwaterbreathexpot,373,16461
+splbreathingexpot,373,16461
+splbreathexpot,373,16461
+spwbepot,373,16461
+splashinvisibilityextendedpotion,373,16462
+splashinvisibleextendedpotion,373,16462
+splashinvextendedpotion,373,16462
+splashinvisibilityextendedpot,373,16462
+splashinvisibleextendedpot,373,16462
+splashinvextendedpot,373,16462
+splashinvisibilityexpotion,373,16462
+splashinvisibleexpotion,373,16462
+splashinvexpotion,373,16462
+splashinvisibilityexpot,373,16462
+splashinvisibleexpot,373,16462
+splashinvexpot,373,16462
+splinvisibilityextendedpotion,373,16462
+splinvisibleextendedpotion,373,16462
+splinvextendedpotion,373,16462
+splinvisibilityextendedpot,373,16462
+splinvisibleextendedpot,373,16462
+splinvextendedpot,373,16462
+splinvisibilityexpotion,373,16462
+splinvisibleexpotion,373,16462
+splinvexpotion,373,16462
+splinvisibilityexpot,373,16462
+splinvisibleexpot,373,16462
+splinvexpot,373,16462
+spiepot,373,16462
+splashregenerationdualbitpotion,373,16481
+splashregeneratedualbitpotion,373,16481
+splashregendualbitpotion,373,16481
+splashregenerationdualbitpot,373,16481
+splashregeneratedualbitpot,373,16481
+splashregendualbitpot,373,16481
+splregenerationdualbitpotion,373,16481
+splregeneratedualbitpotion,373,16481
+splregendualbitpotion,373,16481
+splregenerationdualbitpot,373,16481
+splregeneratedualbitpot,373,16481
+splregendualbitpot,373,16481
+splashregenerationdbpotion,373,16481
+splashregeneratedbpotion,373,16481
+splashregendbpotion,373,16481
+splashregenerationdbpot,373,16481
+splashregeneratedbpot,373,16481
+splashregendbpot,373,16481
+splregenerationdbpotion,373,16481
+splregeneratedbpotion,373,16481
+splregendbpotion,373,16481
+splregenerationdbpot,373,16481
+splregeneratedbpot,373,16481
+splregendbpot,373,16481
+sprdbpot,373,16481
+splashswiftnessdualbitpotion,373,16482
+splashswiftdualbitpotion,373,16482
+splashspeeddualbitpotion,373,16482
+splashswiftnessdualbitpot,373,16482
+splashswiftdualbitpot,373,16482
+splashspeeddualbitpot,373,16482
+splswiftnessdualbitpotion,373,16482
+splswiftdualbitpotion,373,16482
+splspeeddualbitpotion,373,16482
+splswiftnessdualbitpot,373,16482
+splswiftdualbitpot,373,16482
+splspeeddualbitpot,373,16482
+splashswiftnessdbpotion,373,16482
+splashswiftdbpotion,373,16482
+splashspeeddbpotion,373,16482
+splashswiftnessdbpot,373,16482
+splashswiftdbpot,373,16482
+splashspeeddbpot,373,16482
+splswiftnessdbpotion,373,16482
+splswiftdbpotion,373,16482
+splspeeddbpotion,373,16482
+splswiftnessdbpot,373,16482
+splswiftdbpot,373,16482
+splspeeddbpot,373,16482
+spswdbpot,373,16482
+splashpoisondualbitpotion,373,16484
+splashaciddualbitpotion,373,16484
+splashpoisondualbitpot,373,16484
+splashaciddualbitpot,373,16484
+splpoisondualbitpotion,373,16484
+splaciddualbitpotion,373,16484
+splpoisondualbitpot,373,16484
+splaciddualbitpot,373,16484
+splashpoisondbpotion,373,16484
+splashaciddbpotion,373,16484
+splashpoisondbpot,373,16484
+splashaciddbpot,373,16484
+splpoisondbpotion,373,16484
+splaciddbpotion,373,16484
+splpoisondbpot,373,16484
+splaciddbpot,373,16484
+sppdbpot,373,16484
+splashstrengthdualbitpotion,373,16489
+splashstrongdualbitpotion,373,16489
+splashstrdualbitpotion,373,16489
+splashstrengthdualbitpot,373,16489
+splashstrongdualbitpot,373,16489
+splashstrdualbitpot,373,16489
+splstrengthdualbitpotion,373,16489
+splstrongdualbitpotion,373,16489
+splstrdualbitpotion,373,16489
+splstrengthdualbitpot,373,16489
+splstrongdualbitpot,373,16489
+splstrdualbitpot,373,16489
+splashstrengthdbpotion,373,16489
+splashstrongdbpotion,373,16489
+splashstrdbpotion,373,16489
+splashstrengthdbpot,373,16489
+splashstrongdbpot,373,16489
+splashstrdbpot,373,16489
+splstrengthdbpotion,373,16489
+splstrongdbpotion,373,16489
+splstrdbpotion,373,16489
+splstrengthdbpot,373,16489
+splstrongdbpot,373,16489
+splstrdbpot,373,16489
+spstdbpot,373,16489
+glassbottle,374,0
+bottle,374,0
+gbottle,374,0
+gvase,374,0
+vase,374,0
+glassvase,374,0
+emptyglassbottle,374,0
+emptybottle,374,0
+emptygbottle,374,0
+emptygvase,374,0
+emptyvase,374,0
+emptyglassvase,374,0
+eglassbottle,374,0
+ebottle,374,0
+egbottle,374,0
+egvase,374,0
+evase,374,0
+eglassvase,374,0
+spidereye,375,0
+eyeofspider,375,0
+seye,375,0
+fermentedspidereye,376,0
+craftedspidereye,376,0
+fspidereye,376,0
+cspidereye,376,0
+fermentedeyeofspider,376,0
+craftedeyeofspider,376,0
+feyeofspider,376,0
+ceyeofspider,376,0
+fermentedseye,376,0
+craftedseye,376,0
+fseye,376,0
+cseye,376,0
+blazepowder,377,0
+blazedust,377,0
+goldpowder,377,0
+golddust,377,0
+gdust,377,0
+gpowder,377,0
+bpowder,377,0
+bdust,377,0
+magmacream,378,0
+goldcream,378,0
+blazecream,378,0
+mcream,378,0
+gcream,378,0
+bcream,378,0
+combinedcream,378,0
+ccream,378,0
+bstand,379,0
+pstand,379,0
+brewingstand,379,0
+potionstand,379,0
+cauldron,380,0
+steelcauldron,380,0
+ironcauldron,380,0
+icauldron,380,0
+scauldron,380,0
+potioncauldron,380,0
+pcauldron,380,0
+eyeofender,381,0
+endereye,381,0
+endeye,381,0
+evilendereye,381,0
+evileyeofender,381,0
+evilenderpearl,381,0
+eeye,381,0
+eofender,381,0
+glisteringmelon,382,0
+speckledmelon,382,0
+goldmelon,382,0
+sparklymelon,382,0
+shiningmelon,382,0
+gmelon,382,0
+smelon,382,0
+creeperegg,383,50
+eggcreeper,383,50
+skeletonegg,383,51
+eggskeleton,383,51
+spideregg,383,52
+eggspider,383,52
+giantegg,383,53
+egggiant,383,53
+zombieegg,383,54
+eggzombie,383,54
+slimeegg,383,55
+eggslime,383,55
+ghastegg,383,56
+eggghast,383,56
+zombiepigmanegg,383,57
+zpigmanegg,383,57
+pigmanegg,383,57
+zombiepmanegg,383,57
+zpmanegg,383,57
+zombiepigmegg,383,57
+zpigmegg,383,57
+zombiepigegg,383,57
+zpigegg,383,57
+zombiepmegg,383,57
+zombiepegg,383,57
+eggzombiepigman,383,57
+eggzpigman,383,57
+eggpigman,383,57
+eggzombiepman,383,57
+eggzpman,383,57
+eggzombiepigm,383,57
+eggzpigm,383,57
+eggzombiepig,383,57
+eggzpig,383,57
+eggzombiepm,383,57
+eggzombiep,383,57
+endermanegg,383,58
+eggenderman,383,58
+eggcavespider,383,59
+cavespideregg,383,59
+silverfishegg,383,60
+eggsilverfish,383,60
+blazeegg,383,61
+eggblaze,383,61
+lavaslimeegg,383,62
+lavacubeegg,383,62
+magmacubeegg,383,62
+magmaslimeegg,383,62
+egglavaslime,383,62
+egglavacube,383,62
+eggmagmacube,383,62
+eggmagmaslime,383,62
+bategg,383,65
+eggbat,383,65
+witchegg,383,66
+eggwitch,383,66
+pigegg,383,90
+eggpig,383,90
+sheepegg,383,91
+eggsheep,383,91
+cowegg,383,92
+eggcow,383,92
+chickenegg,383,93
+eggchicken,383,93
+squidegg,383,94
+eggsquid,383,94
+wolfegg,383,95
+eggwolf,383,95
+mooshroomegg,383,96
+mushroomcowegg,383,96
+eggmooshroom,383,96
+eggmushroomcow,383,96
+snowgolemegg,383,97
+sgolemegg,383,97
+eggsnowgolem,383,97
+eggsgolem,383,97
+ocelotegg,383,98
+eggocelot,383,98
+irongolemegg,383,99
+igolemegg,383,99
+eggirongolem,383,99
+eggigolem,383,99
+egghorse,383,100
+horseegg,383,100
+villageregg,383,120
+eggvillager,383,120
+bottleofenchanting,384,0
+enchantingbottle,384,0
+expbottle,384,0
+xpbottle,384,0
+bottleexp,384,0
+bottlexp,384,0
+enchantbottle,384,0
+bottleenchanting,384,0
+bottleenchant,384,0
+bottleoenchanting,384,0
+firecharge,385,0
+fireball,385,0
+grenade,385,0
+bookandquill,386,0
+booknquill,386,0
+bookandfeather,386,0
+booknfeather,386,0
+writeablebook,386,0
+writtenbook,387,0
+readablebook,387,0
+sealedbook,387,0
+diary,387,0
+ownedbook,387,0
+emerald,388,0
+itemframe,389,0
+pictureframe,389,0
+iframe,389,0
+pframe,389,0
+flowerpot,390,0
+pot,390,0
+carrot,391,0
+potato,392,0
+rawpotato,392,0
+bakedpotato,393,0
+roastedpotato,393,0
+cookedpotato,393,0
+bakepotato,393,0
+roastpotato,393,0
+cookpotato,393,0
+bpotato,393,0
+rpotato,393,0
+cpotato,393,0
+poisonouspotato,394,0
+poisonpotato,394,0
+ppotato,394,0
+emptymap,395,0
+map,395,0
+goldencarrot,396,0
+goldcarrot,396,0
+gcarrot,396,0
+head,397,0
+skull,397,0
+skeletonhead,397,0
+headskeleton,397,0
+skeletonskull,397,0
+skullskeleton,397,0
+witherhead,397,1
+witherskeletonhead,397,1
+wskeletionhead,397,1
+headwither,397,1
+headwitherskeleton,397,1
+headwskeletion,397,1
+witherskull,397,1
+witherskeletonskull,397,1
+wskeletionskull,397,1
+skullwither,397,1
+skullwitherskeleton,397,1
+skullwskeletion,397,1
+zombiehead,397,2
+headzombie,397,2
+zombieskull,397,2
+skullzombie,397,2
+playerhead,397,3
+humanhead,397,3
+stevehead,397,3
+headplayer,397,3
+headhuman,397,3
+headsteve,397,3
+playerskull,397,3
+humanskull,397,3
+steveskull,397,3
+skullplayer,397,3
+skullhuman,397,3
+skullsteve,397,3
+creeperhead,397,4
+headcreeper,397,4
+creeperskull,397,4
+skullcreeper,397,4
+carrotonastick,398,0
+carrotonstick,398,0
+netherstar,399,0
+hellstar,399,0
+nstar,399,0
+hstar,399,0
+star,399,0
+pumpkinpie,400,0
+pumpkincake,400,0
+ppie,400,0
+pcake,400,0
+pie,400,0
+fireworkrocket,401,0
+fireworkmissle,401,0
+firework,401,0
+fworkrocket,401,0
+fworkmissle,401,0
+fwork,401,0
+fwrocket,401,0
+fwmissle,401,0
+fireworkstar,402,0
+fworkstar,402,0
+fwstar,402,0
+fireworkball,402,0
+fworkball,402,0
+fwball,402,0
+fireworkpowder,402,0
+fworkpowder,402,0
+fwpowder,402,0
+fireworkcharge,402,0
+fworkcharge,402,0
+fwcharge,402,0
+enchantedbook,403,0
+enchantmentbook,403,0
+enchantingbook,403,0
+enchantbook,403,0
+magicalbook,403,0
+magicbook,403,0
+ebook,403,0
+mbook,403,0
+redstonecomparator,404,0
+redstonecomparer,404,0
+redstonecompare,404,0
+rstonecomparator,404,0
+rstonecomparer,404,0
+rstonecompare,404,0
+redscomparator,404,0
+redscomparer,404,0
+redscompare,404,0
+rscomparator,404,0
+rscomparer,404,0
+rscompare,404,0
+comparator,404,0
+comparer,404,0
+compare,404,0
+netherbrick,405,0
+nbrick,405,0
+hellbrick,405,0
+deathbrick,405,0
+dbrick,405,0
+hbrick,405,0
+netherquartz,406,0
+deathquartz,406,0
+hellquartz,406,0
+nquartz,406,0
+dquartz,406,0
+hquartz,406,0
+quartz,406,0
+tntminecart,407,0
+dynamiteminecart,407,0
+dynamitemcart,407,0
+dynamitecart,407,0
+bombminecart,407,0
+bombmcart,407,0
+bombcart,407,0
+tntmcart,407,0
+tntcart,407,0
+dminecart,407,0
+dmcart,407,0
+dcart,407,0
+bminecart,407,0
+bmcart,407,0
+bcart,407,0
+tminecart,407,0
+tmcart,407,0
+tcart,407,0
+hopperminecart,408,0
+hoppermcart,408,0
+hoppercart,408,0
+hopminecart,408,0
+hopmcart,408,0
+hopcart,408,0
+hminecart,408,0
+hmcart,408,0
+hcart,408,0
+ironhorsearmor,417,0
+ironharmor,417,0
+ironarmor,417,0
+ihorsearmor,417,0
+iharmor,417,0
+iarmor,417,0
+steelhorsearmor,417,0
+steelharmor,417,0
+steelarmor,417,0
+shorsearmor,417,0
+sharmor,417,0
+sarmor,417,0
+goldenhorsearmor,418,0
+goldenharmor,418,0
+goldenarmor,418,0
+goldhorsearmor,418,0
+goldharmor,418,0
+goldarmor,418,0
+ghorsearmor,418,0
+gharmor,418,0
+garmor,418,0
+diamondhorsearmor,419,0
+diamondharmor,419,0
+diamondarmor,419,0
+dhorsearmor,419,0
+dharmor,419,0
+darmor,419,0
+crystalhorsearmor,419,0
+crystalharmor,419,0
+crystalarmor,419,0
+chorsearmor,419,0
+charmor,419,0
+carmor,419,0
+lead,420,0
+leash,420,0
+rope,420,0
+nametag,421,0
+tag,421,0
+commandblockminecart,422,0
+cmdblockminecart,422,0
+cblockminecart,422,0
+commandminecart,422,0
+cmdminecart,422,0
+cbminecart,422,0
+commandblockcart,422,0
+cmdblockcart,422,0
+cblockcart,422,0
+commandcart,422,0
+cmdcart,422,0
+cbcart,422,0
+13disc,2256,0
+goldmusicrecord,2256,0
+goldmusicdisk,2256,0
+goldmusicdisc,2256,0
+goldmusiccd,2256,0
+13musicrecord,2256,0
+13musicdisk,2256,0
+13musicdisc,2256,0
+13musiccd,2256,0
+gomusicrecord,2256,0
+gomusicdisk,2256,0
+gomusicdisc,2256,0
+gomusiccd,2256,0
+goldmrecord,2256,0
+goldmdisk,2256,0
+goldmdisc,2256,0
+goldmcd,2256,0
+13mrecord,2256,0
+13mdisk,2256,0
+13mdisc,2256,0
+13mcd,2256,0
+gomrecord,2256,0
+gomdisk,2256,0
+gomdisc,2256,0
+gomcd,2256,0
+goldrecord,2256,0
+golddisk,2256,0
+golddisc,2256,0
+goldcd,2256,0
+13record,2256,0
+13disk,2256,0
+13cd,2256,0
+gorecord,2256,0
+godisk,2256,0
+godisc,2256,0
+gocd,2256,0
+record1,2256,0
+disk1,2256,0
+disc1,2256,0
+cd1,2256,0
+1record,2256,0
+1disk,2256,0
+1disc,2256,0
+1cd,2256,0
+catdisc,2257,0
+greenmusicrecord,2257,0
+greenmusicdisk,2257,0
+greenmusicdisc,2257,0
+greenmusiccd,2257,0
+catmusicrecord,2257,0
+catmusicdisk,2257,0
+catmusicdisc,2257,0
+catmusiccd,2257,0
+grmusicrecord,2257,0
+grmusicdisk,2257,0
+grmusicdisc,2257,0
+grmusiccd,2257,0
+greenmrecord,2257,0
+greenmdisk,2257,0
+greenmdisc,2257,0
+greenmcd,2257,0
+catmrecord,2257,0
+catmdisk,2257,0
+catmdisc,2257,0
+catmcd,2257,0
+grmrecord,2257,0
+grmdisk,2257,0
+grmdisc,2257,0
+grmcd,2257,0
+greenrecord,2257,0
+greendisk,2257,0
+greendisc,2257,0
+greencd,2257,0
+catrecord,2257,0
+catdisk,2257,0
+catcd,2257,0
+grrecord,2257,0
+grdisk,2257,0
+grdisc,2257,0
+grcd,2257,0
+record2,2257,0
+disk2,2257,0
+disc2,2257,0
+cd2,2257,0
+2record,2257,0
+2disk,2257,0
+2disc,2257,0
+2cd,2257,0
+blocksdisc,2258,0
+orangemusicrecord,2258,0
+orangemusicdisk,2258,0
+orangemusicdisc,2258,0
+orangemusiccd,2258,0
+blocksmusicrecord,2258,0
+blocksmusicdisk,2258,0
+blocksmusicdisc,2258,0
+blocksmusiccd,2258,0
+ormusicrecord,2258,0
+ormusicdisk,2258,0
+ormusicdisc,2258,0
+ormusiccd,2258,0
+orangemrecord,2258,0
+orangemdisk,2258,0
+orangemdisc,2258,0
+orangemcd,2258,0
+blocksmrecord,2258,0
+blocksmdisk,2258,0
+blocksmdisc,2258,0
+blocksmcd,2258,0
+ormrecord,2258,0
+ormdisk,2258,0
+ormdisc,2258,0
+ormcd,2258,0
+orangerecord,2258,0
+orangedisk,2258,0
+orangedisc,2258,0
+orangecd,2258,0
+blocksrecord,2258,0
+blocksdisk,2258,0
+blockscd,2258,0
+orrecord,2258,0
+ordisk,2258,0
+ordisc,2258,0
+orcd,2258,0
+record3,2258,0
+disk3,2258,0
+disc3,2258,0
+cd3,2258,0
+3record,2258,0
+3disk,2258,0
+3disc,2258,0
+3cd,2258,0
+chirpdisc,2259,0
+redmusicrecord,2259,0
+redmusicdisk,2259,0
+redmusicdisc,2259,0
+redmusiccd,2259,0
+chirpmusicrecord,2259,0
+chirpmusicdisk,2259,0
+chirpmusicdisc,2259,0
+chirpmusiccd,2259,0
+remusicrecord,2259,0
+remusicdisk,2259,0
+remusicdisc,2259,0
+remusiccd,2259,0
+redmrecord,2259,0
+redmdisk,2259,0
+redmdisc,2259,0
+redmcd,2259,0
+chirpmrecord,2259,0
+chirpmdisk,2259,0
+chirpmdisc,2259,0
+chirpmcd,2259,0
+remrecord,2259,0
+remdisk,2259,0
+remdisc,2259,0
+remcd,2259,0
+redrecord,2259,0
+reddisk,2259,0
+reddisc,2259,0
+redcd,2259,0
+chirprecord,2259,0
+chirpdisk,2259,0
+chirpcd,2259,0
+rerecord,2259,0
+redisk,2259,0
+redisc,2259,0
+recd,2259,0
+record4,2259,0
+disk4,2259,0
+disc4,2259,0
+cd4,2259,0
+4record,2259,0
+4disk,2259,0
+4disc,2259,0
+4cd,2259,0
+fardisc,2260,0
+lightgreenmusicrecord,2260,0
+lightgreenmusicdisk,2260,0
+lightgreenmusicdisc,2260,0
+lightgreenmusiccd,2260,0
+lgreenmusicrecord,2260,0
+lgreenmusicdisk,2260,0
+lgreenmusicdisc,2260,0
+lgreenmusiccd,2260,0
+lightgrmusicrecord,2260,0
+lightgrmusicdisk,2260,0
+lightgrmusicdisc,2260,0
+lightgrmusiccd,2260,0
+farmusicrecord,2260,0
+farmusicdisk,2260,0
+farmusicdisc,2260,0
+farmusiccd,2260,0
+lgrmusicrecord,2260,0
+lgrmusicdisk,2260,0
+lgrmusicdisc,2260,0
+lgrmusiccd,2260,0
+lightgreenmrecord,2260,0
+lightgreenmdisk,2260,0
+lightgreenmdisc,2260,0
+lightgreenmcd,2260,0
+lgreenmrecord,2260,0
+lgreenmdisk,2260,0
+lgreenmdisc,2260,0
+lgreenmcd,2260,0
+lightgrmrecord,2260,0
+lightgrmdisk,2260,0
+lightgrmdisc,2260,0
+lightgrmcd,2260,0
+farmrecord,2260,0
+farmdisk,2260,0
+farmdisc,2260,0
+farmcd,2260,0
+lgrmrecord,2260,0
+lgrmdisk,2260,0
+lgrmdisc,2260,0
+lgrmcd,2260,0
+lightgreenrecord,2260,0
+lightgreendisk,2260,0
+lightgreendisc,2260,0
+lightgreencd,2260,0
+lgreenrecord,2260,0
+lgreendisk,2260,0
+lgreendisc,2260,0
+lgreencd,2260,0
+lightgrrecord,2260,0
+lightgrdisk,2260,0
+lightgrdisc,2260,0
+lightgrcd,2260,0
+farrecord,2260,0
+fardisk,2260,0
+farcd,2260,0
+lgrrecord,2260,0
+lgrdisk,2260,0
+lgrdisc,2260,0
+lgrcd,2260,0
+record5,2260,0
+disk5,2260,0
+disc5,2260,0
+cd5,2260,0
+5record,2260,0
+5disk,2260,0
+5disc,2260,0
+5cd,2260,0
+malldisc,2261,0
+purplemusicrecord,2261,0
+purplemusicdisk,2261,0
+purplemusicdisc,2261,0
+purplemusiccd,2261,0
+mallmusicrecord,2261,0
+mallmusicdisk,2261,0
+mallmusicdisc,2261,0
+mallmusiccd,2261,0
+pumusicrecord,2261,0
+pumusicdisk,2261,0
+pumusicdisc,2261,0
+pumusiccd,2261,0
+purplemrecord,2261,0
+purplemdisk,2261,0
+purplemdisc,2261,0
+purplemcd,2261,0
+mallmrecord,2261,0
+mallmdisk,2261,0
+mallmdisc,2261,0
+mallmcd,2261,0
+pumrecord,2261,0
+pumdisk,2261,0
+pumdisc,2261,0
+pumcd,2261,0
+purplerecord,2261,0
+purpledisk,2261,0
+purpledisc,2261,0
+purplecd,2261,0
+mallrecord,2261,0
+malldisk,2261,0
+mallcd,2261,0
+purecord,2261,0
+pudisk,2261,0
+pudisc,2261,0
+pucd,2261,0
+record6,2261,0
+disk6,2261,0
+disc6,2261,0
+cd6,2261,0
+6record,2261,0
+6disk,2261,0
+6disc,2261,0
+6cd,2261,0
+mellohidisc,2262,0
+pinkmusicrecord,2262,0
+pinkmusicdisk,2262,0
+pinkmusicdisc,2262,0
+pinkmusiccd,2262,0
+mellohimusicrecord,2262,0
+mellohimusicdisk,2262,0
+mellohimusicdisc,2262,0
+mellohimusiccd,2262,0
+pimusicrecord,2262,0
+pimusicdisk,2262,0
+pimusicdisc,2262,0
+pimusiccd,2262,0
+pinkmrecord,2262,0
+pinkmdisk,2262,0
+pinkmdisc,2262,0
+pinkmcd,2262,0
+mellohimrecord,2262,0
+mellohimdisk,2262,0
+mellohimdisc,2262,0
+mellohimcd,2262,0
+pimrecord,2262,0
+pimdisk,2262,0
+pimdisc,2262,0
+pimcd,2262,0
+pinkrecord,2262,0
+pinkdisk,2262,0
+pinkdisc,2262,0
+pinkcd,2262,0
+mellohirecord,2262,0
+mellohidisk,2262,0
+mellohicd,2262,0
+pirecord,2262,0
+pidisk,2262,0
+pidisc,2262,0
+picd,2262,0
+record7,2262,0
+disk7,2262,0
+disc7,2262,0
+cd7,2262,0
+7record,2262,0
+7disk,2262,0
+7disc,2262,0
+7cd,2262,0
+staldisc,2263,0
+blackmusicrecord,2263,0
+blackmusicdisk,2263,0
+blackmusicdisc,2263,0
+blackmusiccd,2263,0
+stalmusicrecord,2263,0
+stalmusicdisk,2263,0
+stalmusicdisc,2263,0
+stalmusiccd,2263,0
+blmusicrecord,2263,0
+blmusicdisk,2263,0
+blmusicdisc,2263,0
+blmusiccd,2263,0
+blackmrecord,2263,0
+blackmdisk,2263,0
+blackmdisc,2263,0
+blackmcd,2263,0
+stalmrecord,2263,0
+stalmdisk,2263,0
+stalmdisc,2263,0
+stalmcd,2263,0
+blmrecord,2263,0
+blmdisk,2263,0
+blmdisc,2263,0
+blmcd,2263,0
+blackrecord,2263,0
+blackdisk,2263,0
+blackdisc,2263,0
+blackcd,2263,0
+stalrecord,2263,0
+staldisk,2263,0
+stalcd,2263,0
+blrecord,2263,0
+bldisk,2263,0
+bldisc,2263,0
+blcd,2263,0
+record8,2263,0
+disk8,2263,0
+disc8,2263,0
+cd8,2263,0
+8record,2263,0
+8disk,2263,0
+8disc,2263,0
+8cd,2263,0
+straddisc,2264,0
+whitemusicrecord,2264,0
+whitemusicdisk,2264,0
+whitemusicdisc,2264,0
+whitemusiccd,2264,0
+stradmusicrecord,2264,0
+stradmusicdisk,2264,0
+stradmusicdisc,2264,0
+stradmusiccd,2264,0
+whmusicrecord,2264,0
+whmusicdisk,2264,0
+whmusicdisc,2264,0
+whmusiccd,2264,0
+whitemrecord,2264,0
+whitemdisk,2264,0
+whitemdisc,2264,0
+whitemcd,2264,0
+stradmrecord,2264,0
+stradmdisk,2264,0
+stradmdisc,2264,0
+stradmcd,2264,0
+whmrecord,2264,0
+whmdisk,2264,0
+whmdisc,2264,0
+whmcd,2264,0
+whiterecord,2264,0
+whitedisk,2264,0
+whitedisc,2264,0
+whitecd,2264,0
+stradrecord,2264,0
+straddisk,2264,0
+stradcd,2264,0
+whrecord,2264,0
+whdisk,2264,0
+whdisc,2264,0
+whcd,2264,0
+record9,2264,0
+disk9,2264,0
+disc9,2264,0
+cd9,2264,0
+9record,2264,0
+9disk,2264,0
+9disc,2264,0
+9cd,2264,0
+warddisc,2265,0
+darkgreenmusicrecord,2265,0
+darkgreenmusicdisk,2265,0
+darkgreenmusicdisc,2265,0
+darkgreenmusiccd,2265,0
+dgreenmusicrecord,2265,0
+dgreenmusicdisk,2265,0
+dgreenmusicdisc,2265,0
+dgreenmusiccd,2265,0
+darkgrmusicrecord,2265,0
+darkgrmusicdisk,2265,0
+darkgrmusicdisc,2265,0
+darkgrmusiccd,2265,0
+wardmusicrecord,2265,0
+wardmusicdisk,2265,0
+wardmusicdisc,2265,0
+wardmusiccd,2265,0
+dgrmusicrecord,2265,0
+dgrmusicdisk,2265,0
+dgrmusicdisc,2265,0
+dgrmusiccd,2265,0
+darkgreenmrecord,2265,0
+darkgreenmdisk,2265,0
+darkgreenmdisc,2265,0
+darkgreenmcd,2265,0
+dgreenmrecord,2265,0
+dgreenmdisk,2265,0
+dgreenmdisc,2265,0
+dgreenmcd,2265,0
+darkgrmrecord,2265,0
+darkgrmdisk,2265,0
+darkgrmdisc,2265,0
+darkgrmcd,2265,0
+wardmrecord,2265,0
+wardmdisk,2265,0
+wardmdisc,2265,0
+wardmcd,2265,0
+dgrmrecord,2265,0
+dgrmdisk,2265,0
+dgrmdisc,2265,0
+dgrmcd,2265,0
+darkgreenrecord,2265,0
+darkgreendisk,2265,0
+darkgreendisc,2265,0
+darkgreencd,2265,0
+dgreenrecord,2265,0
+dgreendisk,2265,0
+dgreendisc,2265,0
+dgreencd,2265,0
+darkgrrecord,2265,0
+darkgrdisk,2265,0
+darkgrdisc,2265,0
+darkgrcd,2265,0
+wardrecord,2265,0
+warddisk,2265,0
+wardcd,2265,0
+dgrrecord,2265,0
+dgrdisk,2265,0
+dgrdisc,2265,0
+dgrcd,2265,0
+record10,2265,0
+disk10,2265,0
+disc10,2265,0
+cd10,2265,0
+10record,2265,0
+10disk,2265,0
+10disc,2265,0
+10cd,2265,0
+11disc,2266,0
+crackedmusicrecord,2266,0
+crackedmusicdisk,2266,0
+crackedmusicdisc,2266,0
+crackedmusiccd,2266,0
+crackmusicrecord,2266,0
+crackmusicdisk,2266,0
+crackmusicdisc,2266,0
+crackmusiccd,2266,0
+11musicrecord,2266,0
+11musicdisk,2266,0
+11musicdisc,2266,0
+11musiccd,2266,0
+cmusicrecord,2266,0
+cmusicdisk,2266,0
+cmusicdisc,2266,0
+cmusiccd,2266,0
+crackedmrecord,2266,0
+crackedmdisk,2266,0
+crackedmdisc,2266,0
+crackedmcd,2266,0
+crackmrecord,2266,0
+crackmdisk,2266,0
+crackmdisc,2266,0
+crackmcd,2266,0
+11mrecord,2266,0
+11mdisk,2266,0
+11mdisc,2266,0
+11mcd,2266,0
+cmrecord,2266,0
+cmdisk,2266,0
+cmdisc,2266,0
+cmcd,2266,0
+crackedrecord,2266,0
+crackeddisk,2266,0
+crackeddisc,2266,0
+crackedcd,2266,0
+crackrecord,2266,0
+crackdisk,2266,0
+crackdisc,2266,0
+crackcd,2266,0
+crecord,2266,0
+cdisk,2266,0
+cdisc,2266,0
+ccd,2266,0
+record11,2266,0
+disk11,2266,0
+disc11,2266,0
+cd11,2266,0
+11record,2266,0
+11disk,2266,0
+11cd,2266,0
+waitdisc,2267,0
+waitmusicrecord,2267,0
+waitmusicdisk,2267,0
+waitmusicdisc,2267,0
+waitmusiccd,2267,0
+bluemusicrecord,2267,0
+bluemusicdisk,2267,0
+bluemusicdisc,2267,0
+bluemusiccd,2267,0
+12musicrecord,2267,0
+12musicdisk,2267,0
+12musicdisc,2267,0
+12musiccd,2267,0
+cyanmusicrecord,2267,0
+cyanmusicdisk,2267,0
+cyanmusicdisc,2267,0
+cyanmusiccd,2267,0
+waitmrecord,2267,0
+waitmdisk,2267,0
+waitmdisc,2267,0
+waitmcd,2267,0
+bluemrecord,2267,0
+bluemdisk,2267,0
+bluemdisc,2267,0
+bluemcd,2267,0
+12mrecord,2267,0
+12mdisk,2267,0
+12mdisc,2267,0
+12mcd,2267,0
+cyanmrecord,2267,0
+cyanmdisk,2267,0
+cyanmdisc,2267,0
+cyanmcd,2267,0
+waitrecord,2267,0
+waitdisk,2267,0
+waitcd,2267,0
+bluerecord,2267,0
+bluedisk,2267,0
+bluedisc,2267,0
+bluecd,2267,0
+cyanrecord,2267,0
+cyandisk,2267,0
+cyandisc,2267,0
+cyancd,2267,0
+record12,2267,0
+disk12,2267,0
+disc12,2267,0
+cd12,2267,0
+12record,2267,0
+12disk,2267,0
+12disc,2267,0
+12cd,2267,0
+#9024e88d64262f1c5ea92df8399fa658
\ No newline at end of file
diff --git a/Base/plugin.yml b/Base/plugin.yml
new file mode 100644
index 0000000..cf4be59
--- /dev/null
+++ b/Base/plugin.yml
@@ -0,0 +1,166 @@
+name: Core
+version: 5.0
+author: Prestige_Pvp
+main: com.customhcf.base.BasePlugin
+commands:
+ core:
+ warp:
+ description: Turns the server to Donor only mode.
+ aliases: [gw, globalwarp]
+ toggledonoronly:
+ description: Turns the server to Donor only mode.
+ aliases: [donoronly, donormode]
+ history:
+ request:
+ clearlagg:
+ aliases: ["cl", "laggclear", "clearlag", "clag"]
+ announcement:
+ aliases: ["announce", "ann"]
+ note:
+ copyinv:
+ amivis:
+ aliases: ["amivanish", "amivanished", "?invis", "?v", "?vis", "invis?", "vis?", "v?"]
+ description: Command used to check if visible.
+ autorestart:
+ description: Handle server restarts safely.
+ back:
+ description: Teleport to last known location.
+ biome:
+ description: Check the biome a player is in.
+ broadcast:
+ aliases: [bc]
+ description: Broadcast a server message.
+ clearchat:
+ aliases: [cc]
+ description: Clear the chat history.
+ clearinv:
+ aliases: [ci, clear, cpinv]
+ description: Clears a player inventory.
+ enchant:
+ description: Enchant an item.
+ entities:
+ description: Check the entities in a world.
+ fly:
+ description: Toggle flight for a player.
+ feed:
+ description: Feed a player.
+ freeze:
+ description: Command used to freeze players.
+ aliases: [ss]
+ gamemode:
+ aliases: [gm]
+ description: Update a players gamemode.
+ give:
+ description: Give an item to a player.
+ hat:
+ description: Wear something as a hat.
+ heal:
+ description: Heal a player.
+ id:
+ description: Check the id of an item.
+ ignore:
+ description: Ignore a player from messaging you
+ invsee:
+ aliases: [inventory, inventorysee, inv]
+ description: View a players inventory.
+ item:
+ aliases: [i]
+ description: Spawn an item.
+ iphistory:
+ description: Check the history an IP address or player.
+ kill:
+ aliases: [suicide, slay]
+ description: Kill a player.
+ kit:
+ description: Command to apply or use kits.
+ message:
+ aliases: [m, msg, tell, whisper, w]
+ description: Messsage an online player.
+ socialspy:
+ aliases: [ms, msgspy, pmspy, whisperspy, privatemessagespy, tellspy]
+ description: Command used to spy on pm's of players.
+ more:
+ description: Give yourself more of an item.
+ mutechat:
+ aliases: [mc, rc, restrictchat, disablechat]
+ description: Restricts the use of global chat.
+ namehistory:
+ description: Check the name histories of a player.
+ near:
+ description: Check nearby entities to a player.
+ ping:
+ aliases: [p]
+ description: Checks the ping of a player.
+ playtime:
+ aliases: [pt]
+ description: Track a players total playtime of the map.
+ playertime:
+ aliases: [ptime]
+ description: Shows your player time.
+ position:
+ description: Checks the position of a player.
+ removeentity:
+ aliases: [reme, rem]
+ description: Remove entities from the server.
+ rename:
+ description: Command used to rename items.
+ repair:
+ aliases: [fix]
+ description: Allows the repairing of tools.
+ report:
+ description: Report
+ donate:
+ aliases: [buy]
+ description: Gets the donation link.
+ reply:
+ aliases: [r]
+ description: Reply to a player message.
+ rules:
+ description: Shows the server rules.
+ screenshare:
+ seen:
+ description: Checks when a player was last seen.
+ setmaxplayers:
+ description: Set the maximum player count.
+ skull:
+ description: Spawn the skull of a player.
+ slowchat:
+ aliases: [slow]
+ description: Sets a delay between chat messages.
+ sounds:
+ aliases: [pmsounds, togglepmsounds, messagingsounds]
+ description: Toggles messaging sounds
+ speed:
+ description: Set your walk or fly speed.
+ stoplag:
+ createworld:
+ sudo:
+ description: Force another player to run a command.
+ teleport:
+ aliases: [tp]
+ description: Teleport to a player or location.
+ teleportall:
+ aliases: [tpall]
+ description: Teleport all online players somewhere.
+ teleporthere:
+ aliases: [tphere]
+ description: Teleport a player to self.
+ togglechat:
+ aliases: [tgc, toggleglobalchat]
+ description: Toggles global chat visibility on or off.
+ togglestaffchat:
+ aliases: [tsc, togglesc]
+ description: Toggles staff chat visibility on or off.
+ togglemessages:
+ aliases: [togglepm, toggleprivatemessages]
+ description: Disable private messages.
+ top:
+ description: Teleport to highest spot of world
+ unfreeze:
+ description: Un-freezes' a player.
+ uptime:
+ description: Check how long a server has been up for.
+ whois:
+ description: Check information about a player.
+ world:
+ description: Change your current world.
\ No newline at end of file
diff --git a/Base/src/com/customhcf/base/BaseConstants.java b/Base/src/com/customhcf/base/BaseConstants.java
new file mode 100644
index 0000000..90587ae
--- /dev/null
+++ b/Base/src/com/customhcf/base/BaseConstants.java
@@ -0,0 +1,14 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.ChatColor
+ */
+package com.customhcf.base;
+
+import org.bukkit.ChatColor;
+
+public final class BaseConstants {
+ public static final String PLAYER_WITH_NAME_OR_UUID_NOT_FOUND = (Object)ChatColor.RED + "Player '" + (Object)ChatColor.GRAY + "%1$s" + (Object)ChatColor.RED + "' not found.";
+}
+
diff --git a/Base/src/com/customhcf/base/BasePlugin.java b/Base/src/com/customhcf/base/BasePlugin.java
new file mode 100644
index 0000000..ab317a0
--- /dev/null
+++ b/Base/src/com/customhcf/base/BasePlugin.java
@@ -0,0 +1,239 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.Server
+ * org.bukkit.block.Sign
+ * org.bukkit.command.CommandExecutor
+ * org.bukkit.command.PluginCommand
+ * org.bukkit.configuration.serialization.ConfigurationSerialization
+ * org.bukkit.event.Listener
+ * org.bukkit.plugin.Plugin
+ * org.bukkit.plugin.PluginManager
+ * org.bukkit.plugin.java.JavaPlugin
+ * org.bukkit.scheduler.BukkitRunnable
+ * org.bukkit.scheduler.BukkitTask
+ */
+package com.customhcf.base;
+
+import com.customhcf.base.command.CommandManager;
+import com.customhcf.base.command.SimpleCommandManager;
+import com.customhcf.base.command.module.ChatModule;
+import com.customhcf.base.command.module.EssentialModule;
+import com.customhcf.base.command.module.InventoryModule;
+import com.customhcf.base.command.module.TeleportModule;
+import com.customhcf.base.kit.FlatFileKitManager;
+import com.customhcf.base.kit.Kit;
+import com.customhcf.base.kit.KitExecutor;
+import com.customhcf.base.kit.KitListener;
+import com.customhcf.base.kit.KitManager;
+import com.customhcf.base.listener.ChatListener;
+import com.customhcf.base.listener.ColouredSignListener;
+import com.customhcf.base.listener.DecreasedLagListener;
+import com.customhcf.base.listener.JoinListener;
+import com.customhcf.base.listener.MoveByBlockEvent;
+import com.customhcf.base.listener.NameVerifyListener;
+import com.customhcf.base.listener.PlayerLimitListener;
+import com.customhcf.base.listener.VanishListener;
+import com.customhcf.base.task.AnnouncementHandler;
+import com.customhcf.base.task.AutoRestartHandler;
+import com.customhcf.base.task.ClearEntityHandler;
+import com.customhcf.base.user.BaseUser;
+import com.customhcf.base.user.ConsoleUser;
+import com.customhcf.base.user.NameHistory;
+import com.customhcf.base.user.ServerParticipator;
+import com.customhcf.base.user.UserManager;
+import com.customhcf.base.warp.FlatFileWarpManager;
+import com.customhcf.base.warp.Warp;
+import com.customhcf.base.warp.WarpManager;
+import com.customhcf.util.PersistableLocation;
+import com.customhcf.util.RandomUtils;
+import com.customhcf.util.SignHandler;
+import com.customhcf.util.bossbar.BossBarManager;
+import com.customhcf.util.chat.Lang;
+import com.customhcf.util.cuboid.Cuboid;
+import com.customhcf.util.cuboid.NamedCuboid;
+import com.customhcf.util.itemdb.ItemDb;
+import com.customhcf.util.itemdb.SimpleItemDb;
+import java.io.IOException;
+import java.util.Random;
+
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.configuration.serialization.ConfigurationSerialization;
+import org.bukkit.event.Listener;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.PluginManager;
+import org.bukkit.plugin.java.JavaPlugin;
+import org.bukkit.scheduler.BukkitRunnable;
+
+public class BasePlugin
+extends JavaPlugin {
+ private static BasePlugin plugin;
+ private ItemDb itemDb;
+ private Random random = new Random();
+ private WarpManager warpManager;
+ private RandomUtils randomUtils;
+ private AutoRestartHandler autoRestartHandler;
+ public BukkitRunnable clearEntityHandler;
+ public BukkitRunnable announcementTask;
+ private CommandManager commandManager;
+ private KitManager kitManager;
+ private PlayTimeManager playTimeManager;
+ private ServerHandler serverHandler;
+ private SignHandler signHandler;
+ private UserManager userManager;
+ private KitExecutor kitExecutor;
+
+ public static BasePlugin getPlugin() {
+ return plugin;
+ }
+
+ public void onEnable() {
+ plugin = this;
+ ConfigurationSerialization.registerClass((Class)Warp.class);
+ ConfigurationSerialization.registerClass((Class)ServerParticipator.class);
+ ConfigurationSerialization.registerClass((Class)BaseUser.class);
+ ConfigurationSerialization.registerClass((Class)ConsoleUser.class);
+ ConfigurationSerialization.registerClass((Class)NameHistory.class);
+ ConfigurationSerialization.registerClass((Class)PersistableLocation.class);
+ ConfigurationSerialization.registerClass((Class)Cuboid.class);
+ ConfigurationSerialization.registerClass((Class)NamedCuboid.class);
+ ConfigurationSerialization.registerClass((Class)Kit.class);
+ this.registerManagers();
+ this.registerCommands();
+ this.registerListeners();
+ this.reloadSchedulers();
+ Plugin plugin = this.getServer().getPluginManager().getPlugin("ProtocolLib");
+ if (plugin != null && plugin.isEnabled()) {
+ try {
+ ProtocolHook.hook(this);
+ }
+ catch (Exception ex) {
+ this.getLogger().severe("Error hooking into ProtocolLib from Base.");
+ ex.printStackTrace();
+ }
+ }
+ }
+
+ public void onDisable() {
+ super.onDisable();
+ BossBarManager.unhook();
+ this.kitManager.saveKitData();
+ this.playTimeManager.savePlaytimeData();
+ this.serverHandler.saveServerData();
+ this.signHandler.cancelTasks(null);
+ this.userManager.saveParticipatorData();
+ this.warpManager.saveWarpData();
+ plugin = null;
+ }
+
+ private void registerManagers() {
+ BossBarManager.hook();
+ this.randomUtils = new RandomUtils();
+ this.autoRestartHandler = new AutoRestartHandler(this);
+ this.kitManager = new FlatFileKitManager(this);
+ this.serverHandler = new ServerHandler(this);
+ this.signHandler = new SignHandler(this);
+ this.userManager = new UserManager(this);
+ this.itemDb = new SimpleItemDb(this);
+ this.warpManager = new FlatFileWarpManager(this);
+ try {
+ Lang.initialize("en_US");
+ }
+ catch (IOException ex) {
+ ex.printStackTrace();
+ }
+ }
+
+ private void registerCommands() {
+ this.commandManager = new SimpleCommandManager(this);
+ this.commandManager.registerAll(new ChatModule(this));
+ this.commandManager.registerAll(new EssentialModule(this));
+ this.commandManager.registerAll(new InventoryModule(this));
+ this.commandManager.registerAll(new TeleportModule(this));
+ this.kitExecutor = new KitExecutor(this);
+ this.getCommand("kit").setExecutor((CommandExecutor)this.kitExecutor);
+ }
+
+ public KitExecutor getKitExecutor() {
+ return this.kitExecutor;
+ }
+
+ private void registerListeners() {
+ PluginManager manager = this.getServer().getPluginManager();
+ manager.registerEvents((Listener)new ChatListener(this), (Plugin)this);
+ manager.registerEvents((Listener)new ColouredSignListener(), (Plugin)this);
+ manager.registerEvents((Listener)new DecreasedLagListener(this), (Plugin)this);
+ manager.registerEvents((Listener)new JoinListener(this), (Plugin)this);
+ manager.registerEvents((Listener)new KitListener(this), (Plugin)this);
+ manager.registerEvents((Listener)new MoveByBlockEvent(), (Plugin)this);
+ // manager.registerEvents((Listener)new MobstackListener(this), (Plugin)this);
+ manager.registerEvents((Listener)new NameVerifyListener(this), (Plugin)this);
+ this.playTimeManager = new PlayTimeManager(this);
+ manager.registerEvents((Listener)this.playTimeManager, (Plugin)this);
+ manager.registerEvents((Listener)new PlayerLimitListener(), (Plugin)this);
+ manager.registerEvents((Listener)new VanishListener(this), (Plugin)this);
+ }
+
+ public void reloadSchedulers() {
+ ClearEntityHandler clearEntityHandler;
+ AnnouncementHandler announcementTask;
+ if (this.clearEntityHandler != null) {
+ this.clearEntityHandler.cancel();
+ }
+ if (this.announcementTask != null) {
+ this.announcementTask.cancel();
+ }
+ long announcementDelay = (long)this.serverHandler.getAnnouncementDelay() * 20;
+ long claggdelay = (long)this.serverHandler.getClaggDelay() * 20;
+ this.announcementTask = announcementTask = new AnnouncementHandler(this);
+ this.clearEntityHandler = clearEntityHandler = new ClearEntityHandler();
+ clearEntityHandler.runTaskTimer((Plugin)this, claggdelay, claggdelay);
+ announcementTask.runTaskTimer((Plugin)this, announcementDelay, announcementDelay);
+ }
+
+ public WarpManager getWarpManager() {
+ return this.warpManager;
+ }
+
+ public RandomUtils getRandomUtils() {
+ return this.randomUtils;
+ }
+
+ public Random getRandom() {
+ return this.random;
+ }
+
+ public AutoRestartHandler getAutoRestartHandler() {
+ return this.autoRestartHandler;
+ }
+
+ public CommandManager getCommandManager() {
+ return this.commandManager;
+ }
+
+ public ItemDb getItemDb() {
+ return this.itemDb;
+ }
+
+ public KitManager getKitManager() {
+ return this.kitManager;
+ }
+
+ public PlayTimeManager getPlayTimeManager() {
+ return this.playTimeManager;
+ }
+
+ public ServerHandler getServerHandler() {
+ return this.serverHandler;
+ }
+
+ public SignHandler getSignHandler() {
+ return this.signHandler;
+ }
+
+ public UserManager getUserManager() {
+ return this.userManager;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/PlayTimeManager.java b/Base/src/com/customhcf/base/PlayTimeManager.java
new file mode 100644
index 0000000..689956c
--- /dev/null
+++ b/Base/src/com/customhcf/base/PlayTimeManager.java
@@ -0,0 +1,99 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * net.minecraft.util.gnu.trove.map.TObjectLongMap
+ * net.minecraft.util.gnu.trove.map.hash.TObjectLongHashMap
+ * net.minecraft.util.gnu.trove.procedure.TObjectLongProcedure
+ * org.bukkit.Bukkit
+ * org.bukkit.configuration.MemorySection
+ * org.bukkit.entity.Player
+ * org.bukkit.event.EventHandler
+ * org.bukkit.event.EventPriority
+ * org.bukkit.event.Listener
+ * org.bukkit.event.player.PlayerJoinEvent
+ * org.bukkit.event.player.PlayerQuitEvent
+ * org.bukkit.plugin.java.JavaPlugin
+ */
+package com.customhcf.base;
+
+import com.customhcf.util.Config;
+import java.util.Set;
+import java.util.UUID;
+import net.minecraft.util.gnu.trove.map.TObjectLongMap;
+import net.minecraft.util.gnu.trove.map.hash.TObjectLongHashMap;
+import net.minecraft.util.gnu.trove.procedure.TObjectLongProcedure;
+import org.bukkit.Bukkit;
+import org.bukkit.configuration.MemorySection;
+import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.EventPriority;
+import org.bukkit.event.Listener;
+import org.bukkit.event.player.PlayerJoinEvent;
+import org.bukkit.event.player.PlayerQuitEvent;
+import org.bukkit.plugin.java.JavaPlugin;
+
+public class PlayTimeManager
+implements Listener {
+ private final TObjectLongMap totalPlaytimeMap = new TObjectLongHashMap();
+ private final TObjectLongMap sessionTimestamps = new TObjectLongHashMap();
+ private final Config config;
+
+ public PlayTimeManager(JavaPlugin plugin) {
+ this.config = new Config(plugin, "play-times");
+ this.reloadPlaytimeData();
+ }
+
+ @EventHandler(ignoreCancelled=true, priority=EventPriority.MONITOR)
+ public void onPlayerJoin(PlayerJoinEvent event) {
+ this.sessionTimestamps.put(event.getPlayer().getUniqueId(), System.currentTimeMillis());
+ }
+
+ @EventHandler(ignoreCancelled=true, priority=EventPriority.MONITOR)
+ public void onPlayerQuit(PlayerQuitEvent event) {
+ UUID uuid = event.getPlayer().getUniqueId();
+ this.totalPlaytimeMap.put(uuid, this.getTotalPlayTime(uuid));
+ this.sessionTimestamps.remove((Object)uuid);
+ }
+
+ public void reloadPlaytimeData() {
+ Object object = this.config.get("playing-times");
+ if (object instanceof MemorySection) {
+ MemorySection section = (MemorySection)object;
+ for (Object id : section.getKeys(false)) {
+ this.totalPlaytimeMap.put(UUID.fromString((String)id), this.config.getLong("playing-times." + (String)id, 0));
+ }
+ }
+ long millis = System.currentTimeMillis();
+ for (Player target : Bukkit.getServer().getOnlinePlayers()) {
+ this.sessionTimestamps.put(target.getUniqueId(), millis);
+ }
+ }
+
+ public void savePlaytimeData() {
+ for (Player player : Bukkit.getServer().getOnlinePlayers()) {
+ this.totalPlaytimeMap.put(player.getUniqueId(), this.getTotalPlayTime(player.getUniqueId()));
+ }
+ this.totalPlaytimeMap.forEachEntry((uuid, l) -> {
+ this.config.set("playing-times." + uuid.toString(), (Object)l);
+ return true;
+ }
+ );
+ this.config.save();
+ }
+
+ public long getSessionPlayTime(UUID uuid) {
+ long session = this.sessionTimestamps.get((Object)uuid);
+ return session != this.sessionTimestamps.getNoEntryValue() ? System.currentTimeMillis() - session : 0;
+ }
+
+ public long getPreviousPlayTime(UUID uuid) {
+ long stamp = this.totalPlaytimeMap.get((Object)uuid);
+ return stamp == this.totalPlaytimeMap.getNoEntryValue() ? 0 : stamp;
+ }
+
+ public long getTotalPlayTime(UUID uuid) {
+ return this.getSessionPlayTime(uuid) + this.getPreviousPlayTime(uuid);
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/ProtocolHook.java b/Base/src/com/customhcf/base/ProtocolHook.java
new file mode 100644
index 0000000..1ac3b40
--- /dev/null
+++ b/Base/src/com/customhcf/base/ProtocolHook.java
@@ -0,0 +1,128 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.comphenix.protocol.PacketType
+ * com.comphenix.protocol.PacketType$Play
+ * com.comphenix.protocol.PacketType$Play$Server
+ * com.comphenix.protocol.ProtocolLibrary
+ * com.comphenix.protocol.ProtocolManager
+ * com.comphenix.protocol.events.PacketAdapter
+ * com.comphenix.protocol.events.PacketContainer
+ * com.comphenix.protocol.events.PacketEvent
+ * com.comphenix.protocol.events.PacketListener
+ * com.comphenix.protocol.reflect.StructureModifier
+ * com.comphenix.protocol.wrappers.WrappedDataWatcher
+ * org.bukkit.Material
+ * org.bukkit.entity.Item
+ * org.bukkit.entity.Player
+ * org.bukkit.inventory.ItemStack
+ * org.bukkit.plugin.Plugin
+ */
+package com.customhcf.base;
+
+import com.comphenix.protocol.PacketType;
+import com.comphenix.protocol.ProtocolLibrary;
+import com.comphenix.protocol.ProtocolManager;
+import com.comphenix.protocol.events.PacketAdapter;
+import com.comphenix.protocol.events.PacketContainer;
+import com.comphenix.protocol.events.PacketEvent;
+import com.comphenix.protocol.events.PacketListener;
+import com.comphenix.protocol.reflect.StructureModifier;
+import com.comphenix.protocol.wrappers.WrappedDataWatcher;
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.ServerHandler;
+import com.customhcf.base.user.BaseUser;
+import com.customhcf.base.user.UserManager;
+import java.lang.invoke.LambdaMetafactory;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.UUID;
+import java.util.function.Consumer;
+import org.bukkit.Material;
+import org.bukkit.entity.Entity;
+import org.bukkit.entity.Item;
+import org.bukkit.entity.Player;
+import org.bukkit.inventory.ItemStack;
+import org.bukkit.plugin.Plugin;
+
+public class ProtocolHook
+{
+ private static final ItemStack AIR;
+
+ public static void hook(final BasePlugin basePlugin) {
+ final ProtocolManager protocolManager = ProtocolLibrary.getProtocolManager();
+ final UserManager userManager = basePlugin.getUserManager();
+ protocolManager.addPacketListener((PacketListener)new PacketAdapter(basePlugin, new PacketType[] { PacketType.Play.Server.ENTITY_EQUIPMENT }) {
+ public void onPacketSending(final PacketEvent event) {
+ if (!basePlugin.getServerHandler().useProtocolLib) {
+ return;
+ }
+ final Player player = event.getPlayer();
+ final BaseUser baseUser = userManager.getUser(player.getUniqueId());
+ if (!baseUser.isGlintEnabled()) {
+ final PacketContainer packet = event.getPacket();
+ final StructureModifier modifier = (StructureModifier)packet.getItemModifier();
+ if (modifier.size() > 0) {
+ final ItemStack stack = (ItemStack)modifier.read(0);
+ if (stack != null && stack.getType() != Material.AIR) {
+ convert(stack);
+ }
+ }
+ }
+ }
+ });
+ protocolManager.addPacketListener((PacketListener)new PacketAdapter(basePlugin, new PacketType[] { PacketType.Play.Server.ENTITY_METADATA }) {
+ public void onPacketSending(final PacketEvent event) {
+ if (!basePlugin.getServerHandler().useProtocolLib) {
+ return;
+ }
+ final Player player = event.getPlayer();
+ final BaseUser baseUser = userManager.getUser(player.getUniqueId());
+ if (!baseUser.isGlintEnabled()) {
+ final PacketContainer packet = event.getPacket();
+ final StructureModifier modifier = (StructureModifier)packet.getEntityModifier(event);
+ if (modifier.size() > 0 && modifier.read(0) instanceof Item) {
+ final WrappedDataWatcher watcher = new WrappedDataWatcher((List)packet.getWatchableCollectionModifier().read(0));
+ if (watcher.size() >= 10) {
+ final ItemStack stack = watcher.getItemStack(10).clone();
+ if (stack != null && stack.getType() != Material.AIR) {
+ convert(stack);
+ }
+ }
+ }
+ }
+ }
+ });
+ }
+
+ private static ItemStack convert(final ItemStack origin) {
+ if (origin == null || origin.getType() == Material.AIR) {
+ return origin;
+ }
+ switch (origin.getType()) {
+ case POTION:
+ case GOLDEN_APPLE: {
+ if (origin.getDurability() > 0) {
+ origin.setDurability((short)0);
+ break;
+ }
+ break;
+ }
+ case ENCHANTED_BOOK: {
+ origin.setType(Material.BOOK);
+ break;
+ }
+ default: {
+ origin.getEnchantments().keySet().forEach(origin::removeEnchantment);
+ break;
+ }
+ }
+ return origin;
+ }
+
+ static {
+ AIR = new ItemStack(Material.AIR, 1);
+ }
+}
\ No newline at end of file
diff --git a/Base/src/com/customhcf/base/ServerHandler.java b/Base/src/com/customhcf/base/ServerHandler.java
new file mode 100644
index 0000000..ee56329
--- /dev/null
+++ b/Base/src/com/customhcf/base/ServerHandler.java
@@ -0,0 +1,222 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.Location
+ * org.bukkit.World
+ * org.bukkit.World$Environment
+ * org.bukkit.configuration.file.FileConfiguration
+ */
+package com.customhcf.base;
+
+import com.customhcf.base.BasePlugin;
+import java.util.ArrayList;
+import java.util.List;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.Location;
+import org.bukkit.World;
+import org.bukkit.configuration.file.FileConfiguration;
+
+public class ServerHandler {
+ private final List announcements = new ArrayList();
+ private final List serverRules = new ArrayList();
+ private final BasePlugin plugin;
+ private int clearlagdelay;
+ public boolean useProtocolLib;
+ private int announcementDelay;
+ private long chatSlowedMillis;
+ private long chatDisabledMillis;
+ private int chatSlowedDelay;
+ private String broadcastFormat;
+ private FileConfiguration config;
+ private boolean decreasedLagMode;
+ private int worldBorder;
+ private boolean end;
+ private Location endExit;
+ private boolean donorOnly;
+ private int netherBorder;
+ private int endBorder;
+
+ public ServerHandler(BasePlugin plugin) {
+ this.plugin = plugin;
+ this.config = plugin.getConfig();
+ this.reloadServerData();
+ }
+
+ public void setServerBorder(World.Environment environment, Integer integer) {
+ if (environment.equals((Object)World.Environment.NORMAL)) {
+ this.worldBorder = integer;
+ } else if (environment.equals((Object)World.Environment.NETHER)) {
+ this.netherBorder = integer;
+ } else if (environment.equals((Object)World.Environment.THE_END)) {
+ this.endBorder = integer;
+ }
+ }
+
+ public void setDonorOnly(boolean value) {
+ this.donorOnly = value;
+ }
+
+ public boolean isDonorOnly() {
+ return this.donorOnly;
+ }
+
+ public void setEndExit(Location location) {
+ this.endExit = location;
+ }
+
+ public Location getEndExit() {
+ return this.endExit;
+ }
+
+ public void setEnd(boolean end) {
+ this.end = end;
+ }
+
+ public boolean isEnd() {
+ return this.end;
+ }
+
+ public Integer getWorldBorder() {
+ return this.worldBorder;
+ }
+
+ public Integer getNetherBorder() {
+ return this.netherBorder;
+ }
+
+ public Integer getEndBorder() {
+ return this.endBorder;
+ }
+
+ public int getAnnouncementDelay() {
+ return this.announcementDelay;
+ }
+
+ public void setClearlagdelay(Integer integer) {
+ this.clearlagdelay = integer;
+ }
+
+ public int getClaggDelay() {
+ return this.clearlagdelay;
+ }
+
+ public void setAnnouncementDelay(int delay) {
+ this.announcementDelay = delay;
+ }
+
+ public List getAnnouncements() {
+ return this.announcements;
+ }
+
+ public boolean isChatSlowed() {
+ return this.getRemainingChatSlowedMillis() > 0;
+ }
+
+ public long getChatSlowedMillis() {
+ return this.chatSlowedMillis;
+ }
+
+ public void setChatSlowedMillis(long ticks) {
+ this.chatSlowedMillis = System.currentTimeMillis() + ticks;
+ }
+
+ public long getRemainingChatSlowedMillis() {
+ return this.chatSlowedMillis - System.currentTimeMillis();
+ }
+
+ public boolean isChatDisabled() {
+ return this.getRemainingChatDisabledMillis() > 0;
+ }
+
+ public long getChatDisabledMillis() {
+ return this.chatDisabledMillis;
+ }
+
+ public void setChatDisabledMillis(long ticks) {
+ long millis = System.currentTimeMillis();
+ this.chatDisabledMillis = millis + ticks;
+ }
+
+ public long getRemainingChatDisabledMillis() {
+ return this.chatDisabledMillis - System.currentTimeMillis();
+ }
+
+ public int getChatSlowedDelay() {
+ return this.chatSlowedDelay;
+ }
+
+ public void setChatSlowedDelay(int delay) {
+ this.chatSlowedDelay = delay;
+ }
+
+ public String getBroadcastFormat() {
+ return this.broadcastFormat;
+ }
+
+ public void setBroadcastFormat(String broadcastFormat) {
+ this.broadcastFormat = broadcastFormat;
+ }
+
+ public boolean isDecreasedLagMode() {
+ return this.decreasedLagMode;
+ }
+
+ public void setDecreasedLagMode(boolean decreasedLagMode) {
+ this.decreasedLagMode = decreasedLagMode;
+ }
+
+ public void reloadServerData() {
+ this.plugin.reloadConfig();
+ this.config = this.plugin.getConfig();
+ String exitWorld = this.config.getString("end.exitLocation.world", "world");
+ double x = this.config.getDouble("end.exitLocation.x", 0.0);
+ double y = this.config.getDouble("end.exitLocation.y", 66.0);
+ double z = this.config.getDouble("end.exitLocation.z", -200.0);
+ this.endExit = new Location(Bukkit.getWorld(exitWorld), x, y, z);
+ this.donorOnly = this.config.getBoolean("donor-only-enter");
+ this.end = this.config.getBoolean("end-open");
+ this.worldBorder = this.config.getInt("border.worldBorder", 3000);
+ this.netherBorder = this.config.getInt("border.netherBorder", 1000);
+ this.endBorder = this.config.getInt("border.endBorder", 1500);
+ this.serverRules.clear();
+ this.clearlagdelay = this.config.getInt("clearlag.delay", 200);
+ this.announcementDelay = this.config.getInt("announcements.delay", 15);
+ this.announcements.clear();
+ for (String each : this.config.getStringList("announcements.list")) {
+ this.announcements.add(ChatColor.translateAlternateColorCodes((char)'&', (String)each));
+ }
+ this.chatDisabledMillis = this.config.getLong("chat.disabled.millis", 0);
+ this.chatSlowedMillis = this.config.getLong("chat.slowed.millis", 0);
+ this.chatSlowedDelay = this.config.getInt("chat.slowed.delay", 15);
+ this.useProtocolLib = this.config.getBoolean("use-protocol-lib", true);
+ this.decreasedLagMode = this.config.getBoolean("decreased-lag-mode");
+ this.broadcastFormat = ChatColor.translateAlternateColorCodes((char)'&', (String)this.config.getString("broadcast.format", ChatColor.AQUA + "&8[&4Alert&8] &f%1$s"));
+ }
+
+ public void saveServerData() {
+ this.config.set("clearlag.delay", (Object)this.clearlagdelay);
+ this.config.set("server-rules", this.serverRules);
+ this.config.set("use-protocol-lib", (Object)this.useProtocolLib);
+ this.config.set("chat.disabled.millis", (Object)this.chatDisabledMillis);
+ this.config.set("chat.slowed.millis", (Object)this.chatSlowedMillis);
+ this.config.set("chat.slowed-delay", (Object)this.chatSlowedDelay);
+ this.config.set("announcements.delay", (Object)this.announcementDelay);
+ this.config.set("announcements.list", this.announcements);
+ this.config.set("decreased-lag-mode", (Object)this.decreasedLagMode);
+ this.config.set("end.exitLocation.world", this.endExit.getWorld().getName());
+ this.config.set("end.exitLocation.x", (Object)this.endExit.getX());
+ this.config.set("end.exitLocation.y", (Object)this.endExit.getY());
+ this.config.set("end.exitLocation.z", (Object)this.endExit.getX());
+ this.config.set("donor-only-enter", (Object)this.donorOnly);
+ this.config.set("end-open", (Object)this.end);
+ this.config.set("border.worldBorder", (Object)this.worldBorder);
+ this.config.set("border.netherBorder", (Object)this.netherBorder);
+ this.config.set("border.endBorder", (Object)this.endBorder);
+ this.plugin.saveConfig();
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/StaffPriority.java b/Base/src/com/customhcf/base/StaffPriority.java
new file mode 100644
index 0000000..96dfd7d
--- /dev/null
+++ b/Base/src/com/customhcf/base/StaffPriority.java
@@ -0,0 +1,58 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.collect.ImmutableMap
+ * com.google.common.collect.ImmutableMap$Builder
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base;
+
+import com.google.common.collect.ImmutableMap;
+import org.bukkit.entity.Player;
+
+public enum StaffPriority {
+ OWNER(6),
+ HEADADMIN(5),
+ STAFFMANAGER(4),
+ ADMIN(3),
+ MODERATOR(2),
+ TRIAL(1),
+ NONE(0);
+
+ private static final ImmutableMap BY_ID;
+ private final int priorityLevel;
+
+ private StaffPriority(int priorityLevel) {
+ this.priorityLevel = priorityLevel;
+ }
+
+ public static StaffPriority of(int level) {
+ return (StaffPriority)((Object)BY_ID.get((Object)level));
+ }
+
+ public static StaffPriority of(Player player) {
+ for (StaffPriority staffPriority : StaffPriority.values()) {
+ if (!player.hasPermission("staffpriority." + staffPriority.priorityLevel)) continue;
+ return staffPriority;
+ }
+ return NONE;
+ }
+
+ public int getPriorityLevel() {
+ return this.priorityLevel;
+ }
+
+ public boolean isMoreThan(StaffPriority other) {
+ return this.priorityLevel > other.priorityLevel;
+ }
+
+ static {
+ ImmutableMap.Builder builder = new ImmutableMap.Builder();
+ for (StaffPriority staffPriority : StaffPriority.values()) {
+ builder.put((Object)staffPriority.priorityLevel, (Object)staffPriority);
+ }
+ BY_ID = builder.build();
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/BaseCommand.java b/Base/src/com/customhcf/base/command/BaseCommand.java
new file mode 100644
index 0000000..113c712
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/BaseCommand.java
@@ -0,0 +1,92 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.apache.commons.lang.ArrayUtils
+ * org.bukkit.ChatColor
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base.command;
+
+import com.customhcf.base.BaseConstants;
+import com.customhcf.util.BukkitUtils;
+import com.customhcf.util.command.ArgumentExecutor;
+import java.util.Arrays;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+import org.apache.commons.lang.ArrayUtils;
+import org.bukkit.ChatColor;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+public abstract class BaseCommand
+extends ArgumentExecutor {
+ private static final Pattern USAGE_REPLACER_PATTERN = Pattern.compile("(command)", 16);
+ private final String name;
+ private final String description;
+ private String[] aliases;
+ private String usage;
+
+ public BaseCommand(String name, String description) {
+ super(name);
+ this.name = name;
+ this.description = description;
+ }
+
+ public static boolean checkNull(CommandSender sender, String player) {
+ Player target = BukkitUtils.playerWithNameOrUUID(player);
+ if (target == null || !BaseCommand.canSee(sender, target)) {
+ sender.sendMessage(String.format(BaseConstants.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, player));
+ return true;
+ }
+ return false;
+ }
+
+ public static boolean canSee(CommandSender sender, Player target) {
+ return target != null && (!(sender instanceof Player) || ((Player)sender).canSee(target));
+ }
+
+ public final String getPermission() {
+ return "command." + this.name;
+ }
+
+ public boolean isPlayerOnlyCommand() {
+ return false;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public String getDescription() {
+ return this.description;
+ }
+
+ public String getUsage() {
+ if (this.usage == null) {
+ this.usage = "";
+ }
+ return (Object)ChatColor.RED + "Usage: " + USAGE_REPLACER_PATTERN.matcher(this.usage).replaceAll(this.name) + (Object)ChatColor.GRAY + " - " + this.description;
+ }
+
+ public void setUsage(String usage) {
+ this.usage = usage;
+ }
+
+ public String getUsage(String label) {
+ return (Object)ChatColor.RED + "Usage: " + USAGE_REPLACER_PATTERN.matcher(this.usage).replaceAll(label) + (Object)ChatColor.GRAY + " - " + this.description;
+ }
+
+ public String[] getAliases() {
+ if (this.aliases == null) {
+ this.aliases = ArrayUtils.EMPTY_STRING_ARRAY;
+ }
+ return Arrays.copyOf(this.aliases, this.aliases.length);
+ }
+
+ protected void setAliases(String[] aliases) {
+ this.aliases = aliases;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/BaseCommandModule.java b/Base/src/com/customhcf/base/command/BaseCommandModule.java
new file mode 100644
index 0000000..37b97bf
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/BaseCommandModule.java
@@ -0,0 +1,37 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.collect.Sets
+ */
+package com.customhcf.base.command;
+
+import com.customhcf.base.command.BaseCommand;
+import com.google.common.collect.Sets;
+import java.util.Set;
+
+public abstract class BaseCommandModule {
+ protected final Set commands = Sets.newHashSet();
+ protected boolean enabled = true;
+
+ Set getCommands() {
+ return this.commands;
+ }
+
+ void unregisterCommand(BaseCommand command) {
+ this.commands.remove(command);
+ }
+
+ void unregisterCommands() {
+ this.commands.clear();
+ }
+
+ boolean isEnabled() {
+ return this.enabled;
+ }
+
+ void setEnabled(boolean enabled) {
+ this.enabled = enabled;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/CommandManager.java b/Base/src/com/customhcf/base/command/CommandManager.java
new file mode 100644
index 0000000..0065893
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/CommandManager.java
@@ -0,0 +1,22 @@
+/*
+ * Decompiled with CFR 0_115.
+ */
+package com.customhcf.base.command;
+
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.command.BaseCommandModule;
+
+public interface CommandManager {
+ public boolean containsCommand(BaseCommand var1);
+
+ public void registerAll(BaseCommandModule var1);
+
+ public void registerCommand(BaseCommand var1);
+
+ public void registerCommands(BaseCommand[] var1);
+
+ public void unregisterCommand(BaseCommand var1);
+
+ public BaseCommand getCommand(String var1);
+}
+
diff --git a/Base/src/com/customhcf/base/command/ReflectionCommandManager.java b/Base/src/com/customhcf/base/command/ReflectionCommandManager.java
new file mode 100644
index 0000000..8a03328
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/ReflectionCommandManager.java
@@ -0,0 +1,161 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.Server
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandExecutor
+ * org.bukkit.command.CommandMap
+ * org.bukkit.command.ConsoleCommandSender
+ * org.bukkit.command.PluginCommand
+ * org.bukkit.command.TabCompleter
+ * org.bukkit.plugin.Plugin
+ * org.bukkit.plugin.PluginDescriptionFile
+ * org.bukkit.plugin.PluginManager
+ * org.bukkit.plugin.SimplePluginManager
+ * org.bukkit.scheduler.BukkitScheduler
+ * org.bukkit.scheduler.BukkitTask
+ */
+package com.customhcf.base.command;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.command.BaseCommandModule;
+import com.customhcf.base.command.CommandManager;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
+import java.util.Set;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.Server;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.command.CommandMap;
+import org.bukkit.command.ConsoleCommandSender;
+import org.bukkit.command.PluginCommand;
+import org.bukkit.command.TabCompleter;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.PluginDescriptionFile;
+import org.bukkit.plugin.PluginManager;
+import org.bukkit.plugin.SimplePluginManager;
+import org.bukkit.scheduler.BukkitScheduler;
+import org.bukkit.scheduler.BukkitTask;
+
+public class ReflectionCommandManager
+implements CommandManager {
+ private static final String PERMISSION_MESSAGE = (Object)ChatColor.RED + "You do not have permission for this command.";
+ private final Map commandMap = new HashMap();
+
+ public ReflectionCommandManager(final BasePlugin plugin) {
+ final ConsoleCommandSender console = Bukkit.getConsoleSender();
+ final Server server = Bukkit.getServer();
+ server.getScheduler().runTaskLater((Plugin)plugin, new Runnable(){
+
+ @Override
+ public void run() {
+ Optional optionalCommandMap = ReflectionCommandManager.this.getCommandMap(server);
+ if (!optionalCommandMap.isPresent()) {
+ Bukkit.broadcastMessage((String)("" + '[' + plugin.getDescription().getFullName() + "] Command map not found"));
+ console.sendMessage("" + '[' + plugin.getDescription().getFullName() + "] Command map not found");
+ return;
+ }
+ CommandMap bukkitCommandMap = (CommandMap)optionalCommandMap.get();
+ for (BaseCommand command : ReflectionCommandManager.this.commandMap.values()) {
+ String commandName = command.getName();
+ Optional optional = ReflectionCommandManager.this.getPluginCommand(commandName, (Plugin)plugin);
+ if (optional.isPresent()) {
+ PluginCommand pluginCommand = (PluginCommand)optional.get();
+ pluginCommand.setAliases(Arrays.asList(command.getAliases()));
+ pluginCommand.setDescription(command.getDescription());
+ pluginCommand.setExecutor((CommandExecutor)command);
+ pluginCommand.setTabCompleter((TabCompleter)command);
+ pluginCommand.setUsage(command.getUsage());
+ pluginCommand.setPermission(command.getPermission());
+ pluginCommand.setPermissionMessage(PERMISSION_MESSAGE);
+ bukkitCommandMap.register(plugin.getDescription().getName(), (Command)pluginCommand);
+ continue;
+ }
+ Bukkit.broadcastMessage((String)("" + '[' + plugin.getName() + "] " + (Object)ChatColor.YELLOW + "Failed to register command '" + commandName + "'."));
+ console.sendMessage("" + '[' + plugin.getName() + "] " + (Object)ChatColor.YELLOW + "Failed to register command '" + commandName + "'.");
+ }
+ }
+ }, 1);
+ }
+
+ @Override
+ public boolean containsCommand(BaseCommand command) {
+ return this.commandMap.containsValue(command);
+ }
+
+ @Override
+ public void registerAll(BaseCommandModule module) {
+ if (module.isEnabled()) {
+ Set commands = module.getCommands();
+ for (BaseCommand command : commands) {
+ this.commandMap.put(command.getName(), command);
+ }
+ }
+ }
+
+ @Override
+ public void registerCommand(BaseCommand command) {
+ this.commandMap.put(command.getName(), command);
+ }
+
+ @Override
+ public void registerCommands(BaseCommand[] commands) {
+ for (BaseCommand command : commands) {
+ this.commandMap.put(command.getName(), command);
+ }
+ }
+
+ @Override
+ public void unregisterCommand(BaseCommand command) {
+ this.commandMap.values().remove(command);
+ }
+
+ @Override
+ public BaseCommand getCommand(final String id) {
+ return this.commandMap.get(id);
+ }
+
+ private Optional getPluginCommand(final String name, final Plugin plugin) {
+ try {
+ final Constructor constructor = PluginCommand.class.getDeclaredConstructor(String.class, Plugin.class);
+ constructor.setAccessible(true);
+ return Optional.of(constructor.newInstance(name, plugin));
+ }
+ catch (IllegalArgumentException | IllegalAccessException | InstantiationException | InvocationTargetException | NoSuchMethodException | SecurityException ex) {
+ ex.printStackTrace();
+ return Optional.empty();
+ }
+ }
+
+
+ private Optional getCommandMap(Server server) {
+ PluginManager pluginManager = server.getPluginManager();
+ if (pluginManager instanceof SimplePluginManager) {
+ try {
+ Field field = SimplePluginManager.class.getDeclaredField("commandMap");
+ field.setAccessible(true);
+ return Optional.of((CommandMap)field.get((Object)pluginManager));
+ }
+ catch (IllegalAccessException | IllegalArgumentException | NoSuchFieldException | SecurityException ex) {
+ ex.printStackTrace();
+ return Optional.empty();
+ }
+ }
+ return Optional.empty();
+ }
+
+}
+
diff --git a/Base/src/com/customhcf/base/command/SimpleCommandManager.java b/Base/src/com/customhcf/base/command/SimpleCommandManager.java
new file mode 100644
index 0000000..e35d49e
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/SimpleCommandManager.java
@@ -0,0 +1,114 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.Server
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandExecutor
+ * org.bukkit.command.ConsoleCommandSender
+ * org.bukkit.command.PluginCommand
+ * org.bukkit.command.TabCompleter
+ * org.bukkit.plugin.Plugin
+ * org.bukkit.scheduler.BukkitRunnable
+ * org.bukkit.scheduler.BukkitTask
+ */
+package com.customhcf.base.command;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.command.BaseCommandModule;
+import com.customhcf.base.command.CommandManager;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.Server;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandExecutor;
+import org.bukkit.command.ConsoleCommandSender;
+import org.bukkit.command.PluginCommand;
+import org.bukkit.command.TabCompleter;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.scheduler.BukkitRunnable;
+import org.bukkit.scheduler.BukkitTask;
+
+public class SimpleCommandManager implements CommandManager
+{
+ private static final String PERMISSION_MESSAGE;
+ private final Map commandMap;
+
+ public SimpleCommandManager(final BasePlugin plugin) {
+ this.commandMap = new HashMap();
+ final ConsoleCommandSender console = plugin.getServer().getConsoleSender();
+ new BukkitRunnable() {
+ public void run() {
+ final Collection commands = SimpleCommandManager.this.commandMap.values();
+ for (final BaseCommand command : commands) {
+ final String commandName = command.getName();
+ final PluginCommand pluginCommand = plugin.getCommand(commandName);
+ if (pluginCommand == null) {
+ Bukkit.broadcastMessage(commandName);
+ console.sendMessage('[' + plugin.getName() + "] " + ChatColor.YELLOW + "Failed to register command '" + commandName + "'.");
+ console.sendMessage('[' + plugin.getName() + "] " + ChatColor.YELLOW + "Reason: Undefined in plugin.yml.");
+ }
+ else {
+ pluginCommand.setAliases((List)Arrays.asList(command.getAliases()));
+ pluginCommand.setDescription(command.getDescription());
+ pluginCommand.setExecutor((CommandExecutor)command);
+ pluginCommand.setTabCompleter((TabCompleter)command);
+ pluginCommand.setUsage(command.getUsage());
+ pluginCommand.setPermission("command." + command.getName());
+ pluginCommand.setPermissionMessage(SimpleCommandManager.PERMISSION_MESSAGE);
+ }
+ }
+ }
+ }.runTask((Plugin)plugin);
+ }
+
+ @Override
+ public boolean containsCommand(final BaseCommand command) {
+ return this.commandMap.containsValue(command);
+ }
+
+ @Override
+ public void registerAll(final BaseCommandModule module) {
+ if (module.isEnabled()) {
+ final Set commands = module.getCommands();
+ for (final BaseCommand command : commands) {
+ this.commandMap.put(command.getName(), command);
+ }
+ }
+ }
+
+ @Override
+ public void registerCommand(final BaseCommand command) {
+ this.commandMap.put(command.getName(), command);
+ }
+
+ @Override
+ public void registerCommands(final BaseCommand[] commands) {
+ for (final BaseCommand command : commands) {
+ this.commandMap.put(command.getName(), command);
+ }
+ }
+
+ @Override
+ public void unregisterCommand(final BaseCommand command) {
+ this.commandMap.values().remove(command);
+ }
+
+ @Override
+ public BaseCommand getCommand(final String id) {
+ return this.commandMap.get(id);
+ }
+
+ static {
+ PERMISSION_MESSAGE = ChatColor.RED + "You do not have permission to execute this command.";
+ }
+}
\ No newline at end of file
diff --git a/Base/src/com/customhcf/base/command/module/ChatModule.java b/Base/src/com/customhcf/base/command/module/ChatModule.java
new file mode 100644
index 0000000..56ddeda
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/ChatModule.java
@@ -0,0 +1,28 @@
+/*
+ * Decompiled with CFR 0_115.
+ */
+package com.customhcf.base.command.module;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommandModule;
+import com.customhcf.base.command.module.chat.*;
+
+import java.util.Set;
+
+public class ChatModule
+extends BaseCommandModule {
+ public ChatModule(BasePlugin plugin) {
+ this.commands.add(new AnnouncementCommand(plugin));
+ this.commands.add(new BroadcastCommand(plugin));
+ this.commands.add(new ClearChatCommand());
+ this.commands.add(new DisableChatCommand(plugin));
+ this.commands.add(new SlowChatCommand(plugin));
+ this.commands.add(new IgnoreCommand(plugin));
+ this.commands.add(new MessageCommand(plugin));
+ this.commands.add(new MessageSpyCommand(plugin));
+ this.commands.add(new ReplyCommand(plugin));
+ this.commands.add(new ToggleMessagesCommand(plugin));
+ this.commands.add(new SoundsCommand(plugin));
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/EssentialModule.java b/Base/src/com/customhcf/base/command/module/EssentialModule.java
new file mode 100644
index 0000000..38e2e1d
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/EssentialModule.java
@@ -0,0 +1,56 @@
+package com.customhcf.base.command.module;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommandModule;
+import com.customhcf.base.command.module.essential.AmivisCommand;
+import com.customhcf.base.command.module.essential.AutoRestartCommand;
+import com.customhcf.base.command.module.essential.DonateCommand;
+import com.customhcf.base.command.module.essential.EnchantCommand;
+import com.customhcf.base.command.module.essential.FeedCommand;
+import com.customhcf.base.command.module.essential.FlyCommand;
+import com.customhcf.base.command.module.essential.FreezeCommand;
+import com.customhcf.base.command.module.essential.GamemodeCommand;
+import com.customhcf.base.command.module.essential.HatCommand;
+import com.customhcf.base.command.module.essential.KillCommand;
+import com.customhcf.base.command.module.essential.NoteCommand;
+import com.customhcf.base.command.module.essential.PlayTimeCommand;
+import com.customhcf.base.command.module.essential.RemoveEntityCommand;
+import com.customhcf.base.command.module.essential.RenameCommand;
+import com.customhcf.base.command.module.essential.RepairCommand;
+import com.customhcf.base.command.module.essential.RulesCommand;
+import com.customhcf.base.command.module.essential.SetMaxPlayersCommand;
+import com.customhcf.base.command.module.essential.SpeedCommand;
+import com.customhcf.base.command.module.essential.StopLagCommand;
+import com.customhcf.base.command.module.essential.SudoCommand;
+import com.customhcf.base.command.module.essential.ToggleDonorOnly;
+import com.customhcf.base.command.module.essential.WhoisCommand;
+
+public class EssentialModule
+extends BaseCommandModule {
+ public EssentialModule(BasePlugin plugin) {
+ this.commands.add(new ToggleDonorOnly(plugin));
+ // this.commands.add(new RequestCommand());
+ this.commands.add(new AmivisCommand(plugin));
+ this.commands.add(new DonateCommand());
+ this.commands.add(new AutoRestartCommand(plugin));
+ this.commands.add(new EnchantCommand());
+ this.commands.add(new NoteCommand());
+ this.commands.add(new FeedCommand());
+ this.commands.add(new FlyCommand());
+ this.commands.add(new FreezeCommand(plugin));
+ this.commands.add(new GamemodeCommand());
+ this.commands.add(new HatCommand());
+ this.commands.add(new KillCommand());
+ this.commands.add(new PlayTimeCommand(plugin));
+ this.commands.add(new RemoveEntityCommand());
+ this.commands.add(new RenameCommand());
+ this.commands.add(new RepairCommand());
+ this.commands.add(new RulesCommand(plugin));
+ this.commands.add(new SetMaxPlayersCommand());
+ this.commands.add(new SpeedCommand());
+ this.commands.add(new StopLagCommand(plugin));
+ this.commands.add(new SudoCommand());
+ this.commands.add(new WhoisCommand(plugin));
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/InventoryModule.java b/Base/src/com/customhcf/base/command/module/InventoryModule.java
new file mode 100644
index 0000000..ffc639e
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/InventoryModule.java
@@ -0,0 +1,31 @@
+/*
+ * Decompiled with CFR 0_115.
+ */
+package com.customhcf.base.command.module;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommandModule;
+import com.customhcf.base.command.module.inventory.ClearInvCommand;
+import com.customhcf.base.command.module.inventory.CopyInvCommand;
+import com.customhcf.base.command.module.inventory.GiveCommand;
+import com.customhcf.base.command.module.inventory.IdCommand;
+import com.customhcf.base.command.module.inventory.InvSeeCommand;
+import com.customhcf.base.command.module.inventory.ItemCommand;
+import com.customhcf.base.command.module.inventory.MoreCommand;
+import com.customhcf.base.command.module.inventory.SkullCommand;
+import java.util.Set;
+
+public class InventoryModule
+extends BaseCommandModule {
+ public InventoryModule(BasePlugin plugin) {
+ this.commands.add(new ClearInvCommand());
+ this.commands.add(new GiveCommand());
+ this.commands.add(new IdCommand());
+ this.commands.add(new InvSeeCommand(plugin));
+ this.commands.add(new ItemCommand());
+ this.commands.add(new MoreCommand());
+ this.commands.add(new SkullCommand());
+ this.commands.add(new CopyInvCommand());
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/TeleportModule.java b/Base/src/com/customhcf/base/command/module/TeleportModule.java
new file mode 100644
index 0000000..811a687
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/TeleportModule.java
@@ -0,0 +1,29 @@
+/*
+ * Decompiled with CFR 0_115.
+ */
+package com.customhcf.base.command.module;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommandModule;
+import com.customhcf.base.command.module.teleport.BackCommand;
+import com.customhcf.base.command.module.teleport.TeleportAllCommand;
+import com.customhcf.base.command.module.teleport.TeleportCommand;
+import com.customhcf.base.command.module.teleport.TeleportHereCommand;
+import com.customhcf.base.command.module.teleport.TopCommand;
+import com.customhcf.base.command.module.teleport.WorldCommand;
+import com.customhcf.base.command.module.warp.WarpExecutor;
+import java.util.Set;
+
+public class TeleportModule
+extends BaseCommandModule {
+ public TeleportModule(BasePlugin plugin) {
+ this.commands.add(new BackCommand(plugin));
+ this.commands.add(new TeleportCommand());
+ this.commands.add(new TeleportAllCommand());
+ this.commands.add(new TeleportHereCommand());
+ this.commands.add(new TopCommand());
+ this.commands.add(new WorldCommand());
+ this.commands.add(new WarpExecutor(plugin));
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/AnnouncementCommand.java b/Base/src/com/customhcf/base/command/module/chat/AnnouncementCommand.java
new file mode 100644
index 0000000..84cb39b
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/AnnouncementCommand.java
@@ -0,0 +1,116 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.collect.ImmutableList
+ * org.apache.commons.lang.StringUtils
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.plugin.Plugin
+ * org.bukkit.scheduler.BukkitRunnable
+ * org.bukkit.scheduler.BukkitTask
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.ServerHandler;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.task.AnnouncementHandler;
+import com.customhcf.util.BukkitUtils;
+import com.google.common.collect.ImmutableList;
+import java.util.Collections;
+import java.util.List;
+import org.apache.commons.lang.StringUtils;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.scheduler.BukkitRunnable;
+import org.bukkit.scheduler.BukkitTask;
+
+public class AnnouncementCommand
+extends BaseCommand {
+ private final BasePlugin plugin;
+ private List COMPLETIONS;
+ private int MAX_ANNOUNCEMENT_PER_PAGE = 10;
+
+ public AnnouncementCommand(BasePlugin plugin) {
+ super("announcement", "Broadcasts a message to the server.");
+ this.setAliases(new String[]{"announce", "ann"});
+ this.COMPLETIONS = ImmutableList.of("add", "remove", "list", "delay");
+ this.setUsage("/(command) ");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (args.length == 0) {
+ sender.sendMessage(this.getUsage(label));
+ return true;
+ }
+ if (args.length >= 1) {
+ if (args[0].equalsIgnoreCase("list")) {
+ Integer number = 0;
+ sender.sendMessage((Object)ChatColor.AQUA + "Announcement Lists: ");
+ if (number <= this.MAX_ANNOUNCEMENT_PER_PAGE) {
+ for (String announce : this.plugin.getServerHandler().getAnnouncements()) {
+ sender.sendMessage(ChatColor.GRAY.toString() + " [" + (Object)ChatColor.YELLOW + number + (Object)ChatColor.GRAY + ']' + (Object)ChatColor.YELLOW + announce);
+ Integer n = number;
+ Integer n2 = number = Integer.valueOf(number + 1);
+ }
+ } else {
+ sender.sendMessage((Object)ChatColor.YELLOW + "Too many to display!");
+ return true;
+ }
+ return true;
+ }
+ if (args[0].equalsIgnoreCase("add")) {
+ String messagge = StringUtils.join((Object[])args, (char)' ', (int)1, (int)args.length);
+ this.plugin.getServerHandler().getAnnouncements().add(ChatColor.translateAlternateColorCodes((char)'&', (String)messagge));
+ Command.broadcastCommandMessage((CommandSender)sender, (String)((Object)ChatColor.YELLOW + "Added " + messagge + " to the announcements."), (boolean)true);
+ return true;
+ }
+ if (args[0].equalsIgnoreCase("remove")) {
+ int integer;
+ try {
+ integer = Integer.parseInt(args[1]);
+ }
+ catch (NumberFormatException ex) {
+ sender.sendMessage((Object)ChatColor.RED + "Use /" + label + " list to get the number.");
+ return true;
+ }
+ Command.broadcastCommandMessage((CommandSender)sender, (String)((Object)ChatColor.YELLOW + "Announcement number " + integer + " has been removed." + '\n' + (Object)ChatColor.GRAY + "(" + this.plugin.getServerHandler().getAnnouncements().get(integer) + ")"));
+ this.plugin.getServerHandler().getAnnouncements().remove(integer);
+ return true;
+ }
+ if (args[0].equalsIgnoreCase("delay")) {
+ int integer;
+ AnnouncementHandler announcementTask;
+ try {
+ integer = Integer.parseInt(args[1]);
+ }
+ catch (NumberFormatException ex) {
+ sender.sendMessage((Object)ChatColor.RED + "Must be a number to set the delay.");
+ return true;
+ }
+ if (this.plugin.getServerHandler().getAnnouncementDelay() == integer) {
+ return true;
+ }
+ this.plugin.getServerHandler().setAnnouncementDelay(integer);
+ BasePlugin.getPlugin().announcementTask.cancel();
+ BasePlugin.getPlugin().announcementTask = announcementTask = new AnnouncementHandler(this.plugin);
+ announcementTask.runTaskTimerAsynchronously((Plugin)BasePlugin.getPlugin(), (long)this.plugin.getServerHandler().getAnnouncementDelay(), (long)this.plugin.getServerHandler().getAnnouncementDelay());
+ Command.broadcastCommandMessage((CommandSender)sender, (String)((Object)ChatColor.YELLOW + "Announcement Delay has been modified to " + integer));
+ return true;
+ }
+ }
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return args.length == 1 ? BukkitUtils.getCompletions(args, this.COMPLETIONS) : Collections.emptyList();
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/BroadcastCommand.java b/Base/src/com/customhcf/base/command/module/chat/BroadcastCommand.java
new file mode 100644
index 0000000..76553e3
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/BroadcastCommand.java
@@ -0,0 +1,75 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.collect.ImmutableList
+ * org.apache.commons.lang.StringUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.ServerHandler;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.util.BukkitUtils;
+import com.google.common.collect.ImmutableList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
+import org.apache.commons.lang.StringUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+
+public class BroadcastCommand
+extends BaseCommand {
+ private final BasePlugin plugin;
+ private final List COMPLETIONS_FIRST = ImmutableList.of("-raw");
+
+ public BroadcastCommand(BasePlugin plugin) {
+ super("broadcast", "Broadcasts a message to the server.");
+ this.setAliases(new String[]{"bc"});
+ this.setUsage("/(command) [-raw *sendRaw*] ");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ int position;
+ boolean raw;
+ if (args.length < 1) {
+ sender.sendMessage(this.getUsage(label));
+ return true;
+ }
+ if (args.length > 1 && args[0].startsWith("-raw")) {
+ position = 1;
+ raw = true;
+ } else {
+ position = 0;
+ raw = false;
+ }
+ String message = StringUtils.join((Object[])args, (char)' ', (int)position, (int)args.length);
+ if (raw) {
+ if (message.length() < 3) {
+ sender.sendMessage((Object)ChatColor.RED + "Character limit not met, must have atleast 3 characters.");
+ return true;
+ }
+ } else if (message.length() < 4) {
+ sender.sendMessage((Object)ChatColor.RED + "Character limit not met, must have atleast 4 characters.");
+ return true;
+ }
+ message = !raw ? ChatColor.translateAlternateColorCodes((char)'&', (String)String.format(Locale.ENGLISH, this.plugin.getServerHandler().getBroadcastFormat(), message)) : ChatColor.translateAlternateColorCodes((char)'&', (String)message);
+ Bukkit.broadcastMessage((String)message);
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return args.length == 1 ? BukkitUtils.getCompletions(args, this.COMPLETIONS_FIRST) : Collections.emptyList();
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/ClearChatCommand.java b/Base/src/com/customhcf/base/command/module/chat/ClearChatCommand.java
new file mode 100644
index 0000000..967211d
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/ClearChatCommand.java
@@ -0,0 +1,50 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * net.minecraft.util.org.apache.commons.lang3.StringUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.command.BaseCommand;
+import net.minecraft.util.org.apache.commons.lang3.StringUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+public class ClearChatCommand
+extends BaseCommand {
+ private static final int CHAT_HEIGHT = 101;
+ private static final String BYPASS_PERMISSION = "command.clearchat.bypass";
+ private static final String[] CLEAR_MESSAGE = new String[101];
+
+ public ClearChatCommand() {
+ super("clearchat", "Clears the server chat for players.");
+ this.setAliases(new String[]{"cc"});
+ this.setUsage("/(command) ");
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (args.length == 0) {
+ sender.sendMessage(this.getUsage());
+ return true;
+ }
+ String reason = StringUtils.join((Object[])args, (char)' ');
+ for (Player player : Bukkit.getServer().getOnlinePlayers()) {
+ if (player.hasPermission(BYPASS_PERMISSION)) continue;
+ player.sendMessage(CLEAR_MESSAGE);
+ }
+ Command.broadcastCommandMessage((CommandSender)sender, (String)((Object)ChatColor.YELLOW + "Cleared in-game chat for: " + reason), (boolean)true);
+ Bukkit.getConsoleSender().sendMessage((Object)ChatColor.YELLOW + sender.getName() + " cleared in-game chat.");
+ return true;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/DisableChatCommand.java b/Base/src/com/customhcf/base/command/module/chat/DisableChatCommand.java
new file mode 100644
index 0000000..4dc3a02
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/DisableChatCommand.java
@@ -0,0 +1,58 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.apache.commons.lang.StringUtils
+ * org.apache.commons.lang.time.DurationFormatUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.ServerHandler;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.util.JavaUtils;
+import java.util.concurrent.TimeUnit;
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang.time.DurationFormatUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+
+public class DisableChatCommand
+extends BaseCommand {
+ private static final long DEFAULT_DELAY = TimeUnit.MINUTES.toMillis(5);
+ private final BasePlugin plugin;
+
+ public DisableChatCommand(BasePlugin plugin) {
+ super("disablechat", "Disables the chat for non-staff.");
+ this.setAliases(new String[]{"mutechat", "restrictchat", "mc", "rc"});
+ this.setUsage("/(command)");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ long newTicks;
+ long oldTicks = this.plugin.getServerHandler().getRemainingChatDisabledMillis();
+ if (oldTicks > 0) {
+ newTicks = 0;
+ } else if (args.length < 1) {
+ newTicks = DEFAULT_DELAY;
+ } else {
+ newTicks = JavaUtils.parse(StringUtils.join((Object[])args, (char)' ', (int)0, (int)args.length));
+ if (newTicks == -1) {
+ sender.sendMessage((Object)ChatColor.RED + "Invalid duration, use the correct format: 10m1s");
+ return true;
+ }
+ }
+ this.plugin.getServerHandler().setChatDisabledMillis(newTicks);
+ Bukkit.broadcastMessage((String)((Object)ChatColor.YELLOW + "Global chat is " + (newTicks > 0 ? new StringBuilder().append("disabled for ").append(DurationFormatUtils.formatDurationWords((long)newTicks, (boolean)true, (boolean)true)).toString() : "no longer disabled") + (Object)ChatColor.YELLOW + '.'));
+ return true;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/IgnoreCommand.java b/Base/src/com/customhcf/base/command/module/chat/IgnoreCommand.java
new file mode 100644
index 0000000..b17f4bf
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/IgnoreCommand.java
@@ -0,0 +1,228 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.apache.commons.lang.StringUtils
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BaseConstants;
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.StaffPriority;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.user.BaseUser;
+import com.customhcf.base.user.UserManager;
+import com.customhcf.util.BukkitUtils;
+import com.customhcf.util.command.CommandArgument;
+import com.customhcf.util.command.CommandWrapper;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
+import org.apache.commons.lang.StringUtils;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+public class IgnoreCommand
+extends BaseCommand {
+ private final CommandWrapper handler;
+
+ public IgnoreCommand(BasePlugin plugin) {
+ super("ignore", "Ignores a player from messages.");
+ this.setUsage("/(command) [playerName]");
+ ArrayList arguments = new ArrayList(4);
+ arguments.add(new IgnoreClearArgument(plugin));
+ arguments.add(new IgnoreListArgument(plugin));
+ arguments.add(new IgnoreAddArgument(plugin));
+ arguments.add(new IgnoreDeleteArgument(plugin));
+ Collections.sort(arguments, new CommandWrapper.ArgumentComparator());
+ this.handler = new CommandWrapper(arguments);
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ return this.handler.onCommand(sender, command, label, args);
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return this.handler.onTabComplete(sender, command, label, args);
+ }
+
+ private static class IgnoreDeleteArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public IgnoreDeleteArgument(BasePlugin plugin) {
+ super("delete", "Un-ignores a player.");
+ this.plugin = plugin;
+ this.aliases = new String[]{"del", "remove", "unset"};
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName() + " ";
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable by players.");
+ return true;
+ }
+ if (args.length < 2) {
+ sender.sendMessage((Object)ChatColor.RED + "Usage: " + this.getUsage(label));
+ return true;
+ }
+ sender.sendMessage((Object)ChatColor.YELLOW + "You are " + (this.plugin.getUserManager().getUser(((Player)sender).getUniqueId()).getIgnoring().remove(args[1]) ? new StringBuilder().append((Object)ChatColor.RED).append("not").toString() : new StringBuilder().append((Object)ChatColor.GREEN).append("no longer").toString()) + (Object)ChatColor.YELLOW + " ignoring " + args[1] + '.');
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return null;
+ }
+ }
+
+ private static class IgnoreListArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public IgnoreListArgument(BasePlugin plugin) {
+ super("list", "Lists all ignored players.");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName();
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable by players.");
+ return true;
+ }
+ Set ignoring = this.plugin.getUserManager().getUser(((Player)sender).getUniqueId()).getIgnoring();
+ if (ignoring.isEmpty()) {
+ sender.sendMessage((Object)ChatColor.YELLOW + "You are not ignoring anyone.");
+ return true;
+ }
+ sender.sendMessage((Object)ChatColor.YELLOW + "You are ignoring (" + ignoring.size() + ") members: " + '[' + (Object)ChatColor.WHITE + StringUtils.join(ignoring, (String)", ") + (Object)ChatColor.YELLOW + ']');
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return Collections.emptyList();
+ }
+ }
+
+ private static class IgnoreClearArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public IgnoreClearArgument(BasePlugin plugin) {
+ super("clear", "Clears all ignored players.");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName();
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable by players.");
+ return true;
+ }
+ Set ignoring = this.plugin.getUserManager().getUser(((Player)sender).getUniqueId()).getIgnoring();
+ if (ignoring.isEmpty()) {
+ sender.sendMessage((Object)ChatColor.RED + "Your ignore list is already empty.");
+ return true;
+ }
+ ignoring.clear();
+ sender.sendMessage((Object)ChatColor.YELLOW + "Your ignore list has been cleared.");
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return Collections.emptyList();
+ }
+ }
+
+ private static class IgnoreAddArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public IgnoreAddArgument(BasePlugin plugin) {
+ super("add", "Starts ignoring a player.");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName() + " ";
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable by players.");
+ return true;
+ }
+ if (args.length < 2) {
+ sender.sendMessage(this.getUsage(label));
+ return true;
+ }
+ Player player = (Player)sender;
+ UUID uuid = player.getUniqueId();
+ BaseUser baseUser = this.plugin.getUserManager().getUser(uuid);
+ Set ignoring = baseUser.getIgnoring();
+ Player target = BukkitUtils.playerWithNameOrUUID(args[1]);
+ if (target == null || !BaseCommand.canSee(sender, target)) {
+ sender.sendMessage(String.format(BaseConstants.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[1]));
+ return true;
+ }
+ if (sender.equals((Object)target)) {
+ sender.sendMessage((Object)ChatColor.RED + "You may not ignore yourself.");
+ return true;
+ }
+ StaffPriority selfPriority = StaffPriority.of(player);
+ if (StaffPriority.of(target).isMoreThan(selfPriority)) {
+ sender.sendMessage((Object)ChatColor.RED + "You cannot ignore this player.");
+ return true;
+ }
+ if (target.hasPermission("command.ignore.exempt")) {
+ sender.sendMessage((Object)ChatColor.RED + "You do not have permission to ignore this player.");
+ return true;
+ }
+ String targetName = target.getName();
+ if (ignoring.add(target.getName())) {
+ sender.sendMessage((Object)ChatColor.GOLD + "You are now ignoring " + targetName + '.');
+ } else {
+ sender.sendMessage((Object)ChatColor.RED + "You are already ignoring someone named " + targetName + '.');
+ }
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return args.length == 2 ? null : Collections.emptyList();
+ }
+ }
+
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/MessageCommand.java b/Base/src/com/customhcf/base/command/module/chat/MessageCommand.java
new file mode 100644
index 0000000..a682174
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/MessageCommand.java
@@ -0,0 +1,70 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.apache.commons.lang.StringUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ * org.bukkit.event.Event
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BaseConstants;
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.event.PlayerMessageEvent;
+import com.customhcf.util.BukkitUtils;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import org.apache.commons.lang.StringUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+import org.bukkit.event.Event;
+
+public class MessageCommand
+extends BaseCommand {
+ public MessageCommand(BasePlugin plugin) {
+ super("message", "Sends a message to a recipient(s).");
+ this.setAliases(new String[]{"msg", "m", "whisper", "w", "tell"});
+ this.setUsage("/(command) [text...]");
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable for players.");
+ return true;
+ }
+ if (args.length < 2) {
+ sender.sendMessage((Object)ChatColor.RED + "Usage: " + this.getUsage(label));
+ return true;
+ }
+ Player player = (Player)sender;
+ Player target = BukkitUtils.playerWithNameOrUUID(args[0]);
+ if (target == null || !BaseCommand.canSee(sender, target)) {
+ sender.sendMessage(String.format(BaseConstants.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[0]));
+ return true;
+ }
+ String message = StringUtils.join((Object[])args, (char)' ', (int)1, (int)args.length);
+ Set recipients = Collections.singleton(target);
+ PlayerMessageEvent playerMessageEvent = new PlayerMessageEvent(player, recipients, message, false);
+ Bukkit.getPluginManager().callEvent((Event)playerMessageEvent);
+ if (!playerMessageEvent.isCancelled()) {
+ playerMessageEvent.send();
+ }
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return null;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/MessageSpyCommand.java b/Base/src/com/customhcf/base/command/module/chat/MessageSpyCommand.java
new file mode 100644
index 0000000..d6d3b42
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/MessageSpyCommand.java
@@ -0,0 +1,238 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.collect.Iterables
+ * org.apache.commons.lang.StringUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.OfflinePlayer
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.user.ServerParticipator;
+import com.customhcf.base.user.UserManager;
+import com.customhcf.util.BukkitUtils;
+import com.customhcf.util.JavaUtils;
+import com.customhcf.util.command.CommandArgument;
+import com.customhcf.util.command.CommandWrapper;
+import com.google.common.collect.Iterables;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.LinkedHashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
+import org.apache.commons.lang.StringUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.OfflinePlayer;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+public class MessageSpyCommand
+extends BaseCommand {
+ private final CommandWrapper handler;
+
+ public MessageSpyCommand(BasePlugin plugin) {
+ super("socialspy", "Spies on the PM's of a player.");
+ this.setUsage("/(command) [playerName]");
+ ArrayList arguments = new ArrayList(4);
+ arguments.add(new MessageSpyListArgument(plugin));
+ arguments.add(new IgnoreClearArgument(plugin));
+ arguments.add(new MessageSpyAddArgument(plugin));
+ arguments.add(new MessageSpyDeleteArgument(plugin));
+ Collections.sort(arguments, new CommandWrapper.ArgumentComparator());
+ this.handler = new CommandWrapper(arguments);
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ return this.handler.onCommand(sender, command, label, args);
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return this.handler.onTabComplete(sender, command, label, args);
+ }
+
+ private static class MessageSpyListArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public MessageSpyListArgument(BasePlugin plugin) {
+ super("list", "Lists all players you're spying on.");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName();
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ ServerParticipator participator = this.plugin.getUserManager().getParticipator(sender);
+ if (participator == null) {
+ sender.sendMessage((Object)ChatColor.RED + "You are not able to message spy.");
+ return true;
+ }
+ LinkedHashSet spyingNames = new LinkedHashSet();
+ Set messageSpying = participator.getMessageSpying();
+ if (messageSpying.size() == 1 && Iterables.getOnlyElement(messageSpying).equals("all")) {
+ sender.sendMessage((Object)ChatColor.GRAY + "You are currently spying on the messages of all players.");
+ return true;
+ }
+ for (String spyingId : messageSpying) {
+ String name = Bukkit.getOfflinePlayer((UUID)UUID.fromString(spyingId)).getName();
+ if (name == null) continue;
+ spyingNames.add(name);
+ }
+ if (spyingNames.isEmpty()) {
+ sender.sendMessage((Object)ChatColor.RED + "You are not spying on the messages of any players.");
+ return true;
+ }
+ sender.sendMessage((Object)ChatColor.GRAY + "You are currently spying on the messages of (" + spyingNames.size() + " players): " + (Object)ChatColor.RED + StringUtils.join(spyingNames, (String)new StringBuilder().append(ChatColor.GRAY.toString()).append(", ").append((Object)ChatColor.RED).toString()) + (Object)ChatColor.GRAY + '.');
+ return true;
+ }
+ }
+
+ private static class IgnoreClearArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public IgnoreClearArgument(BasePlugin plugin) {
+ super("clear", "Clears your current spy list.");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName();
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ ServerParticipator participator = this.plugin.getUserManager().getParticipator(sender);
+ if (participator == null) {
+ sender.sendMessage((Object)ChatColor.RED + "You are not able to message spy.");
+ return true;
+ }
+ participator.getMessageSpying().clear();
+ sender.sendMessage((Object)ChatColor.YELLOW + "You are no longer spying the messages of anyone.");
+ return true;
+ }
+ }
+
+ private static class MessageSpyAddArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public MessageSpyAddArgument(BasePlugin plugin) {
+ super("add", "Adds a player to your message spy list.");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName() + " ";
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ ServerParticipator participator = this.plugin.getUserManager().getParticipator(sender);
+ if (participator == null) {
+ sender.sendMessage((Object)ChatColor.RED + "You are not able to message spy.");
+ return true;
+ }
+ if (args.length < 2) {
+ sender.sendMessage((Object)ChatColor.RED + "Usage: " + this.getUsage(label));
+ return true;
+ }
+ Set messageSpying = participator.getMessageSpying();
+ boolean all = messageSpying.contains("all");
+ if (all || JavaUtils.containsIgnoreCase(messageSpying, args[1])) {
+ sender.sendMessage((Object)ChatColor.RED + "You are already spying on the messages of " + (all ? "all players" : args[1]) + '.');
+ return true;
+ }
+ if (args[1].equalsIgnoreCase("all")) {
+ messageSpying.clear();
+ messageSpying.add("all");
+ sender.sendMessage((Object)ChatColor.GREEN + "You are now spying on the messages of all players.");
+ return true;
+ }
+ OfflinePlayer offlineTarget = Bukkit.getOfflinePlayer((String)args[1]);
+ if (!offlineTarget.hasPlayedBefore() && offlineTarget.getPlayer() == null) {
+ sender.sendMessage((Object)ChatColor.GOLD + "Player '" + (Object)ChatColor.WHITE + args[1] + (Object)ChatColor.GOLD + "' not found.");
+ return true;
+ }
+ if (offlineTarget.equals((Object)sender)) {
+ sender.sendMessage((Object)ChatColor.RED + "You cannot spy on the messages of yourself.");
+ return true;
+ }
+ sender.sendMessage((Object)ChatColor.YELLOW + "You are " + (messageSpying.add(offlineTarget.getUniqueId().toString()) ? new StringBuilder().append((Object)ChatColor.GREEN).append("now").toString() : new StringBuilder().append((Object)ChatColor.RED).append("already").toString()) + (Object)ChatColor.YELLOW + " spying on the messages of " + offlineTarget.getName() + '.');
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return args.length == 2 ? null : Collections.emptyList();
+ }
+ }
+
+ private static class MessageSpyDeleteArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public MessageSpyDeleteArgument(BasePlugin plugin) {
+ super("delete", "Deletes a player from your message spy list.");
+ this.plugin = plugin;
+ this.aliases = new String[]{"del", "remove"};
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName() + " ";
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ ServerParticipator participator = this.plugin.getUserManager().getParticipator(sender);
+ if (participator == null) {
+ sender.sendMessage((Object)ChatColor.RED + "You are not able to message spy.");
+ return true;
+ }
+ if (args.length < 2) {
+ sender.sendMessage((Object)ChatColor.RED + "Usage: " + this.getUsage(label));
+ return true;
+ }
+ Set messageSpying = participator.getMessageSpying();
+ if (args[1].equalsIgnoreCase("all")) {
+ messageSpying.remove("all");
+ sender.sendMessage((Object)ChatColor.RED + "You are no longer spying on the messages of all players.");
+ return true;
+ }
+ OfflinePlayer offlineTarget = BukkitUtils.offlinePlayerWithNameOrUUID(args[1]);
+ if (!offlineTarget.hasPlayedBefore() && !offlineTarget.isOnline()) {
+ sender.sendMessage((Object)ChatColor.GOLD + "Player named or with UUID '" + (Object)ChatColor.WHITE + args[1] + (Object)ChatColor.GOLD + "' not found.");
+ return true;
+ }
+ sender.sendMessage("You are " + (messageSpying.remove(offlineTarget.getUniqueId().toString()) ? new StringBuilder().append((Object)ChatColor.GREEN).append("no longer").toString() : new StringBuilder().append((Object)ChatColor.RED).append("still not").toString()) + (Object)ChatColor.YELLOW + " spying on the messages of " + offlineTarget.getName() + '.');
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return args.length == 2 ? null : Collections.emptyList();
+ }
+ }
+
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/ReplyCommand.java b/Base/src/com/customhcf/base/command/module/chat/ReplyCommand.java
new file mode 100644
index 0000000..d377f3c
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/ReplyCommand.java
@@ -0,0 +1,86 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.collect.Sets
+ * org.apache.commons.lang.StringUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ * org.bukkit.event.Event
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.event.PlayerMessageEvent;
+import com.customhcf.base.user.BaseUser;
+import com.customhcf.base.user.UserManager;
+import com.google.common.collect.Sets;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+import java.util.UUID;
+import java.util.concurrent.TimeUnit;
+import org.apache.commons.lang.StringUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+import org.bukkit.event.Event;
+
+public class ReplyCommand
+extends BaseCommand {
+ private static final long VANISH_REPLY_TIMEOUT = TimeUnit.SECONDS.toMillis(45);
+ private final BasePlugin plugin;
+
+ public ReplyCommand(BasePlugin plugin) {
+ super("reply", "Replies to the last conversing player.");
+ this.setAliases(new String[]{"r"});
+ this.setUsage("/(command) ");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ Player target;
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable for players.");
+ return true;
+ }
+ Player player = (Player)sender;
+ UUID uuid = player.getUniqueId();
+ BaseUser baseUser = this.plugin.getUserManager().getUser(uuid);
+ UUID lastReplied = baseUser.getLastRepliedTo();
+ Player player2 = target = lastReplied == null ? null : Bukkit.getPlayer((UUID)lastReplied);
+ if (args.length < 1) {
+ sender.sendMessage((Object)ChatColor.RED + "Usage: " + this.getUsage(label));
+ if (lastReplied != null && BaseCommand.canSee(sender, target)) {
+ sender.sendMessage((Object)ChatColor.RED + "You are in a conversation with " + target.getName() + '.');
+ }
+ return true;
+ }
+ long millis = System.currentTimeMillis();
+ if (target == null || !BaseCommand.canSee(sender, target) && millis - baseUser.getLastReceivedMessageMillis() > VANISH_REPLY_TIMEOUT) {
+ sender.sendMessage((Object)ChatColor.GOLD + "There is no player to reply to.");
+ return true;
+ }
+ String message = StringUtils.join((Object[])args, (char)' ');
+ HashSet recipients = Sets.newHashSet((Object[])new Player[]{target});
+ PlayerMessageEvent playerMessageEvent = new PlayerMessageEvent(player, recipients, message, false);
+ Bukkit.getPluginManager().callEvent((Event)playerMessageEvent);
+ if (!playerMessageEvent.isCancelled()) {
+ playerMessageEvent.send();
+ }
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return null;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/SlowChatCommand.java b/Base/src/com/customhcf/base/command/module/chat/SlowChatCommand.java
new file mode 100644
index 0000000..ab6d0e4
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/SlowChatCommand.java
@@ -0,0 +1,56 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.apache.commons.lang.time.DurationFormatUtils
+ * org.bukkit.Bukkit
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.ServerHandler;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.util.JavaUtils;
+import java.util.concurrent.TimeUnit;
+import org.apache.commons.lang.time.DurationFormatUtils;
+import org.bukkit.Bukkit;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+
+public class SlowChatCommand
+extends BaseCommand {
+ private static final long DEFAULT_DELAY = TimeUnit.MINUTES.toMillis(5);
+ private final BasePlugin plugin;
+
+ public SlowChatCommand(BasePlugin plugin) {
+ super("slowchat", "Slows the chat down for non-staff.");
+ this.setAliases(new String[]{"slow"});
+ this.setUsage("/(command)");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ Long newTicks;
+ long oldTicks = this.plugin.getServerHandler().getRemainingChatSlowedMillis();
+ if (oldTicks > 0) {
+ newTicks = (long) 0;
+ } else if (args.length < 1) {
+ newTicks = DEFAULT_DELAY;
+ } else {
+ newTicks = JavaUtils.parse(args[0]);
+ if (newTicks == -1) {
+ sender.sendMessage((Object)ChatColor.RED + "Invalid duration, use the correct format: 10m1s");
+ return true;
+ }
+ }
+ this.plugin.getServerHandler().setChatSlowedMillis(newTicks);
+ Bukkit.broadcastMessage((String)((Object)ChatColor.YELLOW + "Global chat is " + (newTicks > 0 ? new StringBuilder().append("has slowed down for ").append(DurationFormatUtils.formatDurationWords((long)newTicks, (boolean)true, (boolean)true)).toString() : new StringBuilder().append((Object)ChatColor.YELLOW).append("no longer slowed").toString()) + (Object)ChatColor.YELLOW + '.'));
+ return true;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/chat/SoundsCommand.java b/Base/src/com/customhcf/base/command/module/chat/SoundsCommand.java
new file mode 100644
index 0000000..f0b81f0
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/SoundsCommand.java
@@ -0,0 +1,37 @@
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.user.BaseUser;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+/**
+ * Created by nyang on 4/22/2017.
+ */
+public class SoundsCommand extends BaseCommand {
+
+ public static BasePlugin plugin;
+
+ public SoundsCommand(BasePlugin plugin) {
+ super("sounds", "Toggles private messages.");
+ this.setUsage("/(command)");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object) ChatColor.RED + "This command is only executable for players.");
+ return true;
+ }
+ Player player = (Player)sender;
+ BaseUser baseUser = this.plugin.getUserManager().getUser(player.getUniqueId());
+ boolean newToggled = !baseUser.isMessagingSounds();
+ baseUser.setMessagingSounds(newToggled);
+ sender.sendMessage((Object)ChatColor.YELLOW + "You have turned sounds " + (newToggled ? new StringBuilder().append((Object)ChatColor.GREEN).append("on").toString() : new StringBuilder().append((Object)ChatColor.RED).append("off").toString()) + (Object)ChatColor.YELLOW + '.');
+ return true;
+ }
+}
diff --git a/Base/src/com/customhcf/base/command/module/chat/ToggleMessagesCommand.java b/Base/src/com/customhcf/base/command/module/chat/ToggleMessagesCommand.java
new file mode 100644
index 0000000..e539eb9
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/chat/ToggleMessagesCommand.java
@@ -0,0 +1,51 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base.command.module.chat;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.user.BaseUser;
+import com.customhcf.base.user.UserManager;
+
+import java.util.ArrayList;
+import java.util.UUID;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+public class ToggleMessagesCommand
+extends BaseCommand {
+ private final BasePlugin plugin;
+
+ public static ArrayList toggleMSG = new ArrayList<>();
+
+ public ToggleMessagesCommand(BasePlugin plugin) {
+ super("togglepm", "Toggles private messages.");
+ this.setAliases(new String[]{"stoppm", "pmoff"});
+ this.setUsage("/(command)");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage((Object)ChatColor.RED + "This command is only executable for players.");
+ return true;
+ }
+ Player player = (Player)sender;
+ BaseUser baseUser = this.plugin.getUserManager().getUser(player.getUniqueId());
+ boolean newToggled = !baseUser.isMessagesVisible();
+ baseUser.setMessagesVisible(newToggled);
+ sender.sendMessage((Object)ChatColor.YELLOW + "You have turned private messages " + (newToggled ? new StringBuilder().append((Object)ChatColor.GREEN).append("on").toString() : new StringBuilder().append((Object)ChatColor.RED).append("off").toString()) + (Object)ChatColor.YELLOW + '.');
+ return true;
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/essential/AmivisCommand.java b/Base/src/com/customhcf/base/command/module/essential/AmivisCommand.java
new file mode 100644
index 0000000..01bdb6c
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/essential/AmivisCommand.java
@@ -0,0 +1,62 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ * org.bukkit.entity.Player
+ */
+package com.customhcf.base.command.module.essential;
+
+import com.customhcf.base.BaseConstants;
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.user.BaseUser;
+import com.customhcf.base.user.UserManager;
+import com.customhcf.util.BukkitUtils;
+import java.util.Collections;
+import java.util.List;
+import java.util.UUID;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
+
+public class AmivisCommand
+extends BaseCommand {
+ private final BasePlugin plugin;
+
+ public AmivisCommand(BasePlugin plugin) {
+ super("amivis", "Check if a player is visible.");
+ this.setUsage("/(command) [targetName]");
+ this.plugin = plugin;
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ boolean vanished;
+ Player target;
+ if (args.length > 0) {
+ target = BukkitUtils.playerWithNameOrUUID(args[0]);
+ } else {
+ if (!(sender instanceof Player)) {
+ sender.sendMessage(this.getUsage(label));
+ return true;
+ }
+ target = (Player)sender;
+ }
+ if (target == null || !BaseCommand.canSee(sender, target)) {
+ sender.sendMessage(String.format(BaseConstants.PLAYER_WITH_NAME_OR_UUID_NOT_FOUND, args[0]));
+ return true;
+ }
+ sender.sendMessage((Object)ChatColor.YELLOW + target.getName() + " is " + ((vanished = this.plugin.getUserManager().getUser(target.getUniqueId()).isVanished()) ? "in vanish" : "not in vanish") + '.');
+ return true;
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return args.length == 1 ? null : Collections.emptyList();
+ }
+}
+
diff --git a/Base/src/com/customhcf/base/command/module/essential/AutoRestartCommand.java b/Base/src/com/customhcf/base/command/module/essential/AutoRestartCommand.java
new file mode 100644
index 0000000..7de7fee
--- /dev/null
+++ b/Base/src/com/customhcf/base/command/module/essential/AutoRestartCommand.java
@@ -0,0 +1,143 @@
+/*
+ * Decompiled with CFR 0_115.
+ *
+ * Could not load the following classes:
+ * com.google.common.base.Strings
+ * org.apache.commons.lang.StringUtils
+ * org.apache.commons.lang.time.DurationFormatUtils
+ * org.bukkit.ChatColor
+ * org.bukkit.command.Command
+ * org.bukkit.command.CommandSender
+ */
+package com.customhcf.base.command.module.essential;
+
+import com.customhcf.base.BasePlugin;
+import com.customhcf.base.command.BaseCommand;
+import com.customhcf.base.task.AutoRestartHandler;
+import com.customhcf.util.JavaUtils;
+import com.customhcf.util.command.CommandArgument;
+import com.customhcf.util.command.CommandWrapper;
+import com.google.common.base.Strings;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+import org.apache.commons.lang.StringUtils;
+import org.apache.commons.lang.time.DurationFormatUtils;
+import org.bukkit.ChatColor;
+import org.bukkit.command.Command;
+import org.bukkit.command.CommandSender;
+
+public class AutoRestartCommand
+extends BaseCommand {
+ private final CommandWrapper handler;
+
+ public AutoRestartCommand(BasePlugin plugin) {
+ super("autorestart", "Allows management of server restarts.");
+ this.setUsage("/(command) ");
+ ArrayList arguments = new ArrayList(3);
+ arguments.add(new AutoRestartCancelArgument(plugin));
+ arguments.add(new AutoRestartScheduleArgument(plugin));
+ arguments.add(new AutoRestartTimeArgument(plugin));
+ Collections.sort(arguments, new CommandWrapper.ArgumentComparator());
+ this.handler = new CommandWrapper(arguments);
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ return this.handler.onCommand(sender, command, label, args);
+ }
+
+ @Override
+ public List onTabComplete(CommandSender sender, Command command, String label, String[] args) {
+ return this.handler.onTabComplete(sender, command, label, args);
+ }
+
+ private static class AutoRestartTimeArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public AutoRestartTimeArgument(BasePlugin plugin) {
+ super("time", "Gets the remaining time until next restart.");
+ this.plugin = plugin;
+ this.aliases = new String[]{"remaining", "time"};
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName();
+ }
+
+ @Override
+ public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
+ String reason;
+ if (!this.plugin.getAutoRestartHandler().isPendingRestart()) {
+ sender.sendMessage((Object)ChatColor.RED + "There is not a restart task pending.");
+ return true;
+ }
+ sender.sendMessage((Object)ChatColor.YELLOW + "Automatic restart task occurring in " + DurationFormatUtils.formatDurationWords((long)this.plugin.getAutoRestartHandler().getRemainingMilliseconds(), (boolean)true, (boolean)true) + (Strings.nullToEmpty((String)(reason = this.plugin.getAutoRestartHandler().getReason())).isEmpty() ? "" : new StringBuilder().append(" for ").append(reason).toString()) + '.');
+ return true;
+ }
+ }
+
+ private static class AutoRestartScheduleArgument
+ extends CommandArgument {
+ private final BasePlugin plugin;
+
+ public AutoRestartScheduleArgument(BasePlugin plugin) {
+ super("schedule", "Schedule an automatic restart.");
+ this.plugin = plugin;
+ this.aliases = new String[]{"reschedule"};
+ }
+
+ @Override
+ public String getUsage(String label) {
+ return "" + '/' + label + ' ' + this.getName() + "