diff --git a/.classpath b/.classpath
index b9965edb..c9350e4d 100644
--- a/.classpath
+++ b/.classpath
@@ -23,7 +23,7 @@
-
+
@@ -33,6 +33,14 @@
+
+
+
+
+
+
+
+
@@ -41,10 +49,5 @@
-
-
-
-
-
diff --git a/.project b/.project
index 407e837c..31fa45ec 100644
--- a/.project
+++ b/.project
@@ -17,6 +17,7 @@
+ org.eclipse.pde.PluginNature
org.eclipse.m2e.core.maven2Nature
org.eclipse.jdt.core.javanature
diff --git a/.settings/org.eclipse.core.resources.prefs b/.settings/org.eclipse.core.resources.prefs
index ed7df2b3..62e13849 100644
--- a/.settings/org.eclipse.core.resources.prefs
+++ b/.settings/org.eclipse.core.resources.prefs
@@ -2,5 +2,6 @@ eclipse.preferences.version=1
encoding//src/main/java=UTF-8
encoding//src/main/resources=UTF-8
encoding//src/test/java=UTF-8
+encoding//target/generated-sources/package-info=UTF-8
encoding/=UTF-8
encoding/src=UTF-8
diff --git a/.settings/org.eclipse.pde.core.prefs b/.settings/org.eclipse.pde.core.prefs
new file mode 100644
index 00000000..ba582c22
--- /dev/null
+++ b/.settings/org.eclipse.pde.core.prefs
@@ -0,0 +1,2 @@
+BUNDLE_ROOT_PATH=target/classes
+eclipse.preferences.version=1
diff --git a/osgi-console.sh b/osgi-console.sh
new file mode 100755
index 00000000..adec8b05
--- /dev/null
+++ b/osgi-console.sh
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+
+BUNDLES="org.apache.felix.gogo.runtime org.apache.felix.gogo.shell org.apache.felix.gogo.command org.eclipse.equinox.console"
+JAR=org.eclipse.osgi
+PLUGIN_DIR=/usr/local/lib/eclipse/plugins
+
+for bundle in ${BUNDLES}; do
+ bundle_path=`echo ${PLUGIN_DIR}/${bundle}_*.jar`
+
+ if [ -z "${bundles_arg}" ]; then
+ bundles_arg=-Dosgi.bundles=
+ else
+ bundles_arg+=,
+ fi
+
+ bundles_arg+=${bundle_path}@start
+done
+
+java ${bundles_arg} -jar ${PLUGIN_DIR}/${JAR}_*.jar -console
diff --git a/pom.xml b/pom.xml
index 6875cb95..1e42d8f1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
org.qora
qora-core
2.0.0-SNAPSHOT
- jar
+ bundle
UTF-8
1.60
@@ -15,6 +15,7 @@
1.7.12
2.0.6
3.19.0
+ 3.5.0
src/main/java
@@ -118,12 +119,12 @@
- data.**
- ${project.build.sourceDirectory}/data/package-info.java
+ org.qora.data.**
+ ${project.build.sourceDirectory}/org/qora/data/package-info.java
- api.models**
- ${project.build.sourceDirectory}/data/package-info.java
+ org.qora.api.model**
+ ${project.build.sourceDirectory}/org/qora/data/package-info.java
${project.build.directory}/generated-sources/package-info
@@ -203,7 +204,7 @@
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
- controller.Controller
+ org.qora.controller.Controller
. ..
@@ -213,6 +214,20 @@
+
+ org.apache.felix
+ maven-bundle-plugin
+ ${felix-bundle-plugin.version}
+ true
+
+
+
+ {maven-resources}, {maven-dependencies}
+
+ .,..,{maven-dependencies}
+
+
+
@@ -235,6 +250,11 @@
package-info-maven-plugin
1.0.1
+
+ org.apache.felix
+ maven-bundle-plugin
+ 3.5.0
+
org.hsqldb
diff --git a/src/main/java/database/NoDataFoundException.java b/src/main/java/database/NoDataFoundException.java
deleted file mode 100644
index 68a8bac8..00000000
--- a/src/main/java/database/NoDataFoundException.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package database;
-
-import java.sql.SQLException;
-
-/**
- * Exception for use in DB-backed constructors to indicate no matching data found.
- *
- */
-@SuppressWarnings("serial")
-@Deprecated
-public class NoDataFoundException extends SQLException {
-
- public NoDataFoundException() {
- }
-
-}
diff --git a/src/main/java/qora/account/Account.java b/src/main/java/org/qora/account/Account.java
similarity index 92%
rename from src/main/java/qora/account/Account.java
rename to src/main/java/org/qora/account/Account.java
index 4473ea5d..05d415eb 100644
--- a/src/main/java/qora/account/Account.java
+++ b/src/main/java/org/qora/account/Account.java
@@ -1,22 +1,21 @@
-package qora.account;
+package org.qora.account;
import java.math.BigDecimal;
import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import data.account.AccountBalanceData;
-import data.account.AccountData;
-import data.block.BlockData;
-import data.transaction.TransactionData;
-import qora.assets.Asset;
-import qora.block.Block;
-import qora.block.BlockChain;
-import qora.transaction.Transaction;
-import repository.BlockRepository;
-import repository.DataException;
-import repository.Repository;
+import org.qora.asset.Asset;
+import org.qora.block.Block;
+import org.qora.block.BlockChain;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.account.AccountData;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transaction.Transaction;
public class Account {
diff --git a/src/main/java/qora/account/GenesisAccount.java b/src/main/java/org/qora/account/GenesisAccount.java
similarity index 78%
rename from src/main/java/qora/account/GenesisAccount.java
rename to src/main/java/org/qora/account/GenesisAccount.java
index 34b85b60..17f250f2 100644
--- a/src/main/java/qora/account/GenesisAccount.java
+++ b/src/main/java/org/qora/account/GenesisAccount.java
@@ -1,6 +1,6 @@
-package qora.account;
+package org.qora.account;
-import repository.Repository;
+import org.qora.repository.Repository;
public final class GenesisAccount extends PublicKeyAccount {
diff --git a/src/main/java/qora/account/PrivateKeyAccount.java b/src/main/java/org/qora/account/PrivateKeyAccount.java
similarity index 82%
rename from src/main/java/qora/account/PrivateKeyAccount.java
rename to src/main/java/org/qora/account/PrivateKeyAccount.java
index cdf06b67..ce896b8c 100644
--- a/src/main/java/qora/account/PrivateKeyAccount.java
+++ b/src/main/java/org/qora/account/PrivateKeyAccount.java
@@ -1,10 +1,10 @@
-package qora.account;
+package org.qora.account;
-import data.account.AccountData;
-import qora.crypto.Crypto;
-import qora.crypto.Ed25519;
-import repository.Repository;
-import utils.Pair;
+import org.qora.crypto.Crypto;
+import org.qora.crypto.Ed25519;
+import org.qora.data.account.AccountData;
+import org.qora.repository.Repository;
+import org.qora.utils.Pair;
public class PrivateKeyAccount extends PublicKeyAccount {
diff --git a/src/main/java/qora/account/PublicKeyAccount.java b/src/main/java/org/qora/account/PublicKeyAccount.java
similarity index 85%
rename from src/main/java/qora/account/PublicKeyAccount.java
rename to src/main/java/org/qora/account/PublicKeyAccount.java
index 183a090c..ae9af10b 100644
--- a/src/main/java/qora/account/PublicKeyAccount.java
+++ b/src/main/java/org/qora/account/PublicKeyAccount.java
@@ -1,8 +1,8 @@
-package qora.account;
+package org.qora.account;
-import qora.crypto.Crypto;
-import qora.crypto.Ed25519;
-import repository.Repository;
+import org.qora.crypto.Crypto;
+import org.qora.crypto.Ed25519;
+import org.qora.repository.Repository;
public class PublicKeyAccount extends Account {
diff --git a/src/main/java/api/ApiError.java b/src/main/java/org/qora/api/ApiError.java
similarity index 99%
rename from src/main/java/api/ApiError.java
rename to src/main/java/org/qora/api/ApiError.java
index 4c3b12a6..9a01126d 100644
--- a/src/main/java/api/ApiError.java
+++ b/src/main/java/org/qora/api/ApiError.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import static java.util.Arrays.stream;
import static java.util.stream.Collectors.toMap;
diff --git a/src/main/java/api/ApiErrorMessage.java b/src/main/java/org/qora/api/ApiErrorMessage.java
similarity index 95%
rename from src/main/java/api/ApiErrorMessage.java
rename to src/main/java/org/qora/api/ApiErrorMessage.java
index 580bb9fa..d347bd2f 100644
--- a/src/main/java/api/ApiErrorMessage.java
+++ b/src/main/java/org/qora/api/ApiErrorMessage.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
diff --git a/src/main/java/api/ApiErrors.java b/src/main/java/org/qora/api/ApiErrors.java
similarity index 95%
rename from src/main/java/api/ApiErrors.java
rename to src/main/java/org/qora/api/ApiErrors.java
index 53728601..5ec3c5b0 100644
--- a/src/main/java/api/ApiErrors.java
+++ b/src/main/java/org/qora/api/ApiErrors.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/src/main/java/api/ApiException.java b/src/main/java/org/qora/api/ApiException.java
similarity index 97%
rename from src/main/java/api/ApiException.java
rename to src/main/java/org/qora/api/ApiException.java
index 99e38a61..4e32ce68 100644
--- a/src/main/java/api/ApiException.java
+++ b/src/main/java/org/qora/api/ApiException.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.MediaType;
diff --git a/src/main/java/api/ApiExceptionFactory.java b/src/main/java/org/qora/api/ApiExceptionFactory.java
similarity index 89%
rename from src/main/java/api/ApiExceptionFactory.java
rename to src/main/java/org/qora/api/ApiExceptionFactory.java
index 0d5a80ef..409fe52c 100644
--- a/src/main/java/api/ApiExceptionFactory.java
+++ b/src/main/java/org/qora/api/ApiExceptionFactory.java
@@ -1,8 +1,8 @@
-package api;
+package org.qora.api;
import javax.servlet.http.HttpServletRequest;
-import globalization.Translator;
+import org.qora.globalization.Translator;
public enum ApiExceptionFactory {
INSTANCE;
diff --git a/src/main/java/api/ApiService.java b/src/main/java/org/qora/api/ApiService.java
similarity index 95%
rename from src/main/java/api/ApiService.java
rename to src/main/java/org/qora/api/ApiService.java
index b2aed2d4..868e6e0c 100644
--- a/src/main/java/api/ApiService.java
+++ b/src/main/java/org/qora/api/ApiService.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import io.swagger.v3.jaxrs2.integration.resources.OpenApiResource;
@@ -14,10 +14,9 @@ import org.eclipse.jetty.servlet.ServletHolder;
import org.eclipse.jetty.servlets.CrossOriginFilter;
import org.glassfish.jersey.server.ResourceConfig;
import org.glassfish.jersey.servlet.ServletContainer;
-
-import api.resource.AnnotationPostProcessor;
-import api.resource.ApiDefinition;
-import settings.Settings;
+import org.qora.api.resource.AnnotationPostProcessor;
+import org.qora.api.resource.ApiDefinition;
+import org.qora.settings.Settings;
public class ApiService {
diff --git a/src/main/java/api/Base58TypeAdapter.java b/src/main/java/org/qora/api/Base58TypeAdapter.java
similarity index 95%
rename from src/main/java/api/Base58TypeAdapter.java
rename to src/main/java/org/qora/api/Base58TypeAdapter.java
index cd5e73da..f97affb7 100644
--- a/src/main/java/api/Base58TypeAdapter.java
+++ b/src/main/java/org/qora/api/Base58TypeAdapter.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import javax.xml.bind.annotation.adapters.XmlAdapter;
diff --git a/src/main/java/api/BigDecimalTypeAdapter.java b/src/main/java/org/qora/api/BigDecimalTypeAdapter.java
similarity index 95%
rename from src/main/java/api/BigDecimalTypeAdapter.java
rename to src/main/java/org/qora/api/BigDecimalTypeAdapter.java
index a1c03598..528f9a94 100644
--- a/src/main/java/api/BigDecimalTypeAdapter.java
+++ b/src/main/java/org/qora/api/BigDecimalTypeAdapter.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import java.math.BigDecimal;
diff --git a/src/main/java/api/Constants.java b/src/main/java/org/qora/api/Constants.java
similarity index 99%
rename from src/main/java/api/Constants.java
rename to src/main/java/org/qora/api/Constants.java
index 60886dfd..4156a606 100644
--- a/src/main/java/api/Constants.java
+++ b/src/main/java/org/qora/api/Constants.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import io.swagger.v3.oas.models.Operation;
import io.swagger.v3.oas.models.PathItem;
diff --git a/src/main/java/api/Security.java b/src/main/java/org/qora/api/Security.java
similarity index 96%
rename from src/main/java/api/Security.java
rename to src/main/java/org/qora/api/Security.java
index 43463428..000d731a 100644
--- a/src/main/java/api/Security.java
+++ b/src/main/java/org/qora/api/Security.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import java.net.InetAddress;
import java.net.UnknownHostException;
diff --git a/src/main/java/api/TransactionClassExtractor.java b/src/main/java/org/qora/api/TransactionClassExtractor.java
similarity index 94%
rename from src/main/java/api/TransactionClassExtractor.java
rename to src/main/java/org/qora/api/TransactionClassExtractor.java
index 3c58343e..83108b66 100644
--- a/src/main/java/api/TransactionClassExtractor.java
+++ b/src/main/java/org/qora/api/TransactionClassExtractor.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
import org.eclipse.persistence.descriptors.ClassExtractor;
import org.eclipse.persistence.sessions.Record;
diff --git a/src/main/java/api/TranslatableProperty.java b/src/main/java/org/qora/api/TranslatableProperty.java
similarity index 87%
rename from src/main/java/api/TranslatableProperty.java
rename to src/main/java/org/qora/api/TranslatableProperty.java
index 8dd90e9a..ea5c4e46 100644
--- a/src/main/java/api/TranslatableProperty.java
+++ b/src/main/java/org/qora/api/TranslatableProperty.java
@@ -1,4 +1,4 @@
-package api;
+package org.qora.api;
interface TranslatableProperty {
public String keyName();
diff --git a/src/main/java/api/UnmarshalListener.java b/src/main/java/org/qora/api/UnmarshalListener.java
similarity index 78%
rename from src/main/java/api/UnmarshalListener.java
rename to src/main/java/org/qora/api/UnmarshalListener.java
index 2296c2ef..aa4ae071 100644
--- a/src/main/java/api/UnmarshalListener.java
+++ b/src/main/java/org/qora/api/UnmarshalListener.java
@@ -1,8 +1,8 @@
-package api;
+package org.qora.api;
import javax.xml.bind.Unmarshaller.Listener;
-import data.transaction.TransactionData;
+import org.qora.data.transaction.TransactionData;
public class UnmarshalListener extends Listener {
diff --git a/src/main/java/api/models/AssetWithHolders.java b/src/main/java/org/qora/api/model/AssetWithHolders.java
similarity index 87%
rename from src/main/java/api/models/AssetWithHolders.java
rename to src/main/java/org/qora/api/model/AssetWithHolders.java
index b499f605..3daa9ba3 100644
--- a/src/main/java/api/models/AssetWithHolders.java
+++ b/src/main/java/org/qora/api/model/AssetWithHolders.java
@@ -1,4 +1,4 @@
-package api.models;
+package org.qora.api.model;
import java.util.List;
@@ -6,8 +6,9 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
-import data.account.AccountBalanceData;
-import data.assets.AssetData;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.asset.AssetData;
+
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "Asset info, maybe including asset holders")
diff --git a/src/main/java/api/models/BlockWithTransactions.java b/src/main/java/org/qora/api/model/BlockWithTransactions.java
similarity index 87%
rename from src/main/java/api/models/BlockWithTransactions.java
rename to src/main/java/org/qora/api/model/BlockWithTransactions.java
index 3a6f7854..277f184b 100644
--- a/src/main/java/api/models/BlockWithTransactions.java
+++ b/src/main/java/org/qora/api/model/BlockWithTransactions.java
@@ -1,4 +1,4 @@
-package api.models;
+package org.qora.api.model;
import java.util.List;
@@ -6,8 +6,9 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
-import data.block.BlockData;
-import data.transaction.TransactionData;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "Block info, maybe including transactions")
diff --git a/src/main/java/api/models/OrderWithTrades.java b/src/main/java/org/qora/api/model/OrderWithTrades.java
similarity index 87%
rename from src/main/java/api/models/OrderWithTrades.java
rename to src/main/java/org/qora/api/model/OrderWithTrades.java
index e8c5731b..1bb47f32 100644
--- a/src/main/java/api/models/OrderWithTrades.java
+++ b/src/main/java/org/qora/api/model/OrderWithTrades.java
@@ -1,4 +1,4 @@
-package api.models;
+package org.qora.api.model;
import java.util.List;
@@ -6,8 +6,9 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
-import data.assets.OrderData;
-import data.assets.TradeData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "Asset order info, maybe including trades")
diff --git a/src/main/java/api/models/SimpleTransactionSignRequest.java b/src/main/java/org/qora/api/model/SimpleTransactionSignRequest.java
similarity index 94%
rename from src/main/java/api/models/SimpleTransactionSignRequest.java
rename to src/main/java/org/qora/api/model/SimpleTransactionSignRequest.java
index e68b31e5..65780fe0 100644
--- a/src/main/java/api/models/SimpleTransactionSignRequest.java
+++ b/src/main/java/org/qora/api/model/SimpleTransactionSignRequest.java
@@ -1,4 +1,4 @@
-package api.models;
+package org.qora.api.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
diff --git a/src/main/java/api/models/TradeWithOrderInfo.java b/src/main/java/org/qora/api/model/TradeWithOrderInfo.java
similarity index 91%
rename from src/main/java/api/models/TradeWithOrderInfo.java
rename to src/main/java/org/qora/api/model/TradeWithOrderInfo.java
index c6c3d62b..0d9451ce 100644
--- a/src/main/java/api/models/TradeWithOrderInfo.java
+++ b/src/main/java/org/qora/api/model/TradeWithOrderInfo.java
@@ -1,11 +1,12 @@
-package api.models;
+package org.qora.api.model;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
-import data.assets.OrderData;
-import data.assets.TradeData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+
import io.swagger.v3.oas.annotations.media.Schema;
@Schema(description = "Asset trade, including order info")
diff --git a/src/main/java/api/resource/AddressesResource.java b/src/main/java/org/qora/api/resource/AddressesResource.java
similarity index 94%
rename from src/main/java/api/resource/AddressesResource.java
rename to src/main/java/org/qora/api/resource/AddressesResource.java
index 2d705b3e..777dc57b 100644
--- a/src/main/java/api/resource/AddressesResource.java
+++ b/src/main/java/org/qora/api/resource/AddressesResource.java
@@ -1,7 +1,6 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
-import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.ArraySchema;
import io.swagger.v3.oas.annotations.media.Content;
import io.swagger.v3.oas.annotations.media.Schema;
@@ -19,20 +18,20 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiException;
-import api.ApiExceptionFactory;
-import data.account.AccountBalanceData;
-import data.account.AccountData;
-import qora.account.Account;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.Transformer;
-import utils.Base58;
+import org.qora.account.Account;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiException;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.account.AccountData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transform.Transformer;
+import org.qora.utils.Base58;
@Path("/addresses")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/AdminResource.java b/src/main/java/org/qora/api/resource/AdminResource.java
similarity index 96%
rename from src/main/java/api/resource/AdminResource.java
rename to src/main/java/org/qora/api/resource/AdminResource.java
index cc4894ea..988210f3 100644
--- a/src/main/java/api/resource/AdminResource.java
+++ b/src/main/java/org/qora/api/resource/AdminResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -15,8 +15,8 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import api.Security;
-import controller.Controller;
+import org.qora.api.Security;
+import org.qora.controller.Controller;
@Path("/admin")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/AnnotationPostProcessor.java b/src/main/java/org/qora/api/resource/AnnotationPostProcessor.java
similarity index 95%
rename from src/main/java/api/resource/AnnotationPostProcessor.java
rename to src/main/java/org/qora/api/resource/AnnotationPostProcessor.java
index 5f7e8fdd..7944bd48 100644
--- a/src/main/java/api/resource/AnnotationPostProcessor.java
+++ b/src/main/java/org/qora/api/resource/AnnotationPostProcessor.java
@@ -1,6 +1,5 @@
-package api.resource;
+package org.qora.api.resource;
-import globalization.Translator;
import io.swagger.v3.core.converter.ModelConverters;
import io.swagger.v3.jaxrs2.Reader;
import io.swagger.v3.jaxrs2.ReaderListener;
@@ -22,11 +21,11 @@ import javax.ws.rs.Path;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import api.ApiError;
-import api.ApiErrorMessage;
-import api.ApiErrors;
-import api.ApiService;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrorMessage;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiService;
+import org.qora.globalization.Translator;
public class AnnotationPostProcessor implements ReaderListener {
diff --git a/src/main/java/api/resource/ApiDefinition.java b/src/main/java/org/qora/api/resource/ApiDefinition.java
similarity index 96%
rename from src/main/java/api/resource/ApiDefinition.java
rename to src/main/java/org/qora/api/resource/ApiDefinition.java
index 0da2ad31..1a6fd4b4 100644
--- a/src/main/java/api/resource/ApiDefinition.java
+++ b/src/main/java/org/qora/api/resource/ApiDefinition.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.OpenAPIDefinition;
import io.swagger.v3.oas.annotations.extensions.Extension;
diff --git a/src/main/java/api/resource/AssetsResource.java b/src/main/java/org/qora/api/resource/AssetsResource.java
similarity index 92%
rename from src/main/java/api/resource/AssetsResource.java
rename to src/main/java/org/qora/api/resource/AssetsResource.java
index 8860797f..a6e89697 100644
--- a/src/main/java/api/resource/AssetsResource.java
+++ b/src/main/java/org/qora/api/resource/AssetsResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -8,14 +8,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.parameters.RequestBody;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.ValidationResult;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import transform.transaction.IssueAssetTransactionTransformer;
-import utils.Base58;
import java.util.ArrayList;
import java.util.List;
@@ -30,17 +22,25 @@ import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiExceptionFactory;
-import api.models.AssetWithHolders;
-import api.models.OrderWithTrades;
-import api.models.TradeWithOrderInfo;
-import data.account.AccountBalanceData;
-import data.assets.AssetData;
-import data.assets.OrderData;
-import data.assets.TradeData;
-import data.transaction.IssueAssetTransactionData;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.api.model.AssetWithHolders;
+import org.qora.api.model.OrderWithTrades;
+import org.qora.api.model.TradeWithOrderInfo;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.asset.AssetData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+import org.qora.data.transaction.IssueAssetTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.ValidationResult;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.IssueAssetTransactionTransformer;
+import org.qora.utils.Base58;
@Path("/assets")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/BlockExplorerResource.java b/src/main/java/org/qora/api/resource/BlockExplorerResource.java
similarity index 96%
rename from src/main/java/api/resource/BlockExplorerResource.java
rename to src/main/java/org/qora/api/resource/BlockExplorerResource.java
index 1cf236c7..a0f5a06d 100644
--- a/src/main/java/api/resource/BlockExplorerResource.java
+++ b/src/main/java/org/qora/api/resource/BlockExplorerResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import java.io.BufferedReader;
import java.io.IOException;
diff --git a/src/main/java/api/resource/BlocksResource.java b/src/main/java/org/qora/api/resource/BlocksResource.java
similarity index 96%
rename from src/main/java/api/resource/BlocksResource.java
rename to src/main/java/org/qora/api/resource/BlocksResource.java
index ae53c0ac..c64be1e1 100644
--- a/src/main/java/api/resource/BlocksResource.java
+++ b/src/main/java/org/qora/api/resource/BlocksResource.java
@@ -1,7 +1,5 @@
-package api.resource;
+package org.qora.api.resource;
-import data.block.BlockData;
-import data.transaction.TransactionData;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.media.Content;
@@ -24,16 +22,18 @@ import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiException;
-import api.ApiExceptionFactory;
-import api.models.BlockWithTransactions;
-import qora.block.Block;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import utils.Base58;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiException;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.api.model.BlockWithTransactions;
+import org.qora.block.Block;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.utils.Base58;
@Path("/blocks")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/NamesResource.java b/src/main/java/org/qora/api/resource/NamesResource.java
similarity index 78%
rename from src/main/java/api/resource/NamesResource.java
rename to src/main/java/org/qora/api/resource/NamesResource.java
index e98ad23e..f4a8a684 100644
--- a/src/main/java/api/resource/NamesResource.java
+++ b/src/main/java/org/qora/api/resource/NamesResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Content;
@@ -6,14 +6,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.parameters.RequestBody;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.ValidationResult;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import transform.transaction.RegisterNameTransactionTransformer;
-import utils.Base58;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.POST;
@@ -22,10 +14,18 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiExceptionFactory;
-import data.transaction.RegisterNameTransactionData;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.data.transaction.RegisterNameTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.ValidationResult;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.RegisterNameTransactionTransformer;
+import org.qora.utils.Base58;
@Path("/names")
@Produces({ MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/PaymentsResource.java b/src/main/java/org/qora/api/resource/PaymentsResource.java
similarity index 78%
rename from src/main/java/api/resource/PaymentsResource.java
rename to src/main/java/org/qora/api/resource/PaymentsResource.java
index 08a74c3e..a37a9f44 100644
--- a/src/main/java/api/resource/PaymentsResource.java
+++ b/src/main/java/org/qora/api/resource/PaymentsResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Content;
@@ -6,14 +6,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.parameters.RequestBody;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.ValidationResult;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import transform.transaction.PaymentTransactionTransformer;
-import utils.Base58;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.POST;
@@ -22,10 +14,18 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiExceptionFactory;
-import data.transaction.PaymentTransactionData;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.ValidationResult;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.PaymentTransactionTransformer;
+import org.qora.utils.Base58;
@Path("/payments")
@Produces({MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/TransactionsResource.java b/src/main/java/org/qora/api/resource/TransactionsResource.java
similarity index 93%
rename from src/main/java/api/resource/TransactionsResource.java
rename to src/main/java/org/qora/api/resource/TransactionsResource.java
index 06c8f32d..70272704 100644
--- a/src/main/java/api/resource/TransactionsResource.java
+++ b/src/main/java/org/qora/api/resource/TransactionsResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
@@ -8,10 +8,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.parameters.RequestBody;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
-import qora.account.PrivateKeyAccount;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.TransactionType;
-import qora.transaction.Transaction.ValidationResult;
import java.util.ArrayList;
import java.util.List;
@@ -26,23 +22,27 @@ import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
-import com.google.common.primitives.Bytes;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiException;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.api.model.SimpleTransactionSignRequest;
+import org.qora.data.transaction.GenesisTransactionData;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.globalization.Translator;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.transaction.Transaction.ValidationResult;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.TransactionTransformer;
+import org.qora.utils.Base58;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiException;
-import api.ApiExceptionFactory;
-import api.models.SimpleTransactionSignRequest;
-import data.transaction.GenesisTransactionData;
-import data.transaction.PaymentTransactionData;
-import data.transaction.TransactionData;
-import globalization.Translator;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import transform.transaction.TransactionTransformer;
-import utils.Base58;
+import com.google.common.primitives.Bytes;
@Path("/transactions")
@Produces({MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN})
diff --git a/src/main/java/api/resource/UtilsResource.java b/src/main/java/org/qora/api/resource/UtilsResource.java
similarity index 96%
rename from src/main/java/api/resource/UtilsResource.java
rename to src/main/java/org/qora/api/resource/UtilsResource.java
index 5c48f5aa..f210e78f 100644
--- a/src/main/java/api/resource/UtilsResource.java
+++ b/src/main/java/org/qora/api/resource/UtilsResource.java
@@ -1,4 +1,4 @@
-package api.resource;
+package org.qora.api.resource;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Content;
@@ -6,11 +6,6 @@ import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.parameters.RequestBody;
import io.swagger.v3.oas.annotations.responses.ApiResponse;
import io.swagger.v3.oas.annotations.tags.Tag;
-import qora.account.PrivateKeyAccount;
-import qora.crypto.Crypto;
-import utils.BIP39;
-import utils.Base58;
-import utils.NTP;
import java.security.SecureRandom;
import java.util.Arrays;
@@ -27,14 +22,19 @@ import javax.ws.rs.QueryParam;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.api.ApiError;
+import org.qora.api.ApiErrors;
+import org.qora.api.ApiExceptionFactory;
+import org.qora.crypto.Crypto;
+import org.qora.utils.BIP39;
+import org.qora.utils.Base58;
+import org.qora.utils.NTP;
+
import com.google.common.hash.HashCode;
import com.google.common.primitives.Bytes;
import com.google.common.primitives.Longs;
-import api.ApiError;
-import api.ApiErrors;
-import api.ApiExceptionFactory;
-
@Path("/utils")
@Produces({
MediaType.TEXT_PLAIN
diff --git a/src/main/java/qora/assets/Asset.java b/src/main/java/org/qora/asset/Asset.java
similarity index 86%
rename from src/main/java/qora/assets/Asset.java
rename to src/main/java/org/qora/asset/Asset.java
index c19f6d07..c754e5fc 100644
--- a/src/main/java/qora/assets/Asset.java
+++ b/src/main/java/org/qora/asset/Asset.java
@@ -1,9 +1,9 @@
-package qora.assets;
+package org.qora.asset;
-import data.assets.AssetData;
-import data.transaction.IssueAssetTransactionData;
-import repository.DataException;
-import repository.Repository;
+import org.qora.data.asset.AssetData;
+import org.qora.data.transaction.IssueAssetTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class Asset {
diff --git a/src/main/java/qora/assets/Order.java b/src/main/java/org/qora/asset/Order.java
similarity index 96%
rename from src/main/java/qora/assets/Order.java
rename to src/main/java/org/qora/asset/Order.java
index da45badd..5ebcb1c3 100644
--- a/src/main/java/qora/assets/Order.java
+++ b/src/main/java/org/qora/asset/Order.java
@@ -1,4 +1,4 @@
-package qora.assets;
+package org.qora.asset;
import java.math.BigDecimal;
import java.math.BigInteger;
@@ -8,18 +8,17 @@ import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.asset.AssetData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
import com.google.common.hash.HashCode;
-import data.assets.AssetData;
-import data.assets.OrderData;
-import data.assets.TradeData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import repository.AssetRepository;
-import repository.DataException;
-import repository.Repository;
-
public class Order {
private static final Logger LOGGER = LogManager.getLogger(Order.class);
diff --git a/src/main/java/qora/assets/Trade.java b/src/main/java/org/qora/asset/Trade.java
similarity index 91%
rename from src/main/java/qora/assets/Trade.java
rename to src/main/java/org/qora/asset/Trade.java
index 2220e724..94d48c5d 100644
--- a/src/main/java/qora/assets/Trade.java
+++ b/src/main/java/org/qora/asset/Trade.java
@@ -1,12 +1,12 @@
-package qora.assets;
+package org.qora.asset;
-import data.assets.OrderData;
-import data.assets.TradeData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import repository.AssetRepository;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class Trade {
diff --git a/src/main/java/qora/at/AT.java b/src/main/java/org/qora/at/AT.java
similarity index 93%
rename from src/main/java/qora/at/AT.java
rename to src/main/java/org/qora/at/AT.java
index 06903b7f..979145a7 100644
--- a/src/main/java/qora/at/AT.java
+++ b/src/main/java/org/qora/at/AT.java
@@ -1,20 +1,19 @@
-package qora.at;
+package org.qora.at;
import java.math.BigDecimal;
import java.nio.ByteBuffer;
import java.util.List;
import org.ciyam.at.MachineState;
-
-import data.at.ATData;
-import data.at.ATStateData;
-import data.transaction.DeployATTransactionData;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import qora.transaction.ATTransaction;
-import repository.ATRepository;
-import repository.DataException;
-import repository.Repository;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.at.ATData;
+import org.qora.data.at.ATStateData;
+import org.qora.data.transaction.DeployATTransactionData;
+import org.qora.repository.ATRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transaction.ATTransaction;
public class AT {
diff --git a/src/main/java/qora/at/BlockchainAPI.java b/src/main/java/org/qora/at/BlockchainAPI.java
similarity index 90%
rename from src/main/java/qora/at/BlockchainAPI.java
rename to src/main/java/org/qora/at/BlockchainAPI.java
index 2edfff46..ec58b900 100644
--- a/src/main/java/qora/at/BlockchainAPI.java
+++ b/src/main/java/org/qora/at/BlockchainAPI.java
@@ -1,4 +1,4 @@
-package qora.at;
+package org.qora.at;
import static java.util.Arrays.stream;
import static java.util.stream.Collectors.toMap;
@@ -9,16 +9,15 @@ import java.util.Map;
import org.ciyam.at.MachineState;
import org.ciyam.at.Timestamp;
-
-import data.block.BlockData;
-import data.transaction.ATTransactionData;
-import data.transaction.PaymentTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.block.Block;
-import qora.transaction.Transaction;
-import repository.BlockRepository;
-import repository.DataException;
+import org.qora.account.Account;
+import org.qora.block.Block;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.ATTransactionData;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.transaction.Transaction;
public enum BlockchainAPI {
diff --git a/src/main/java/qora/at/QoraATAPI.java b/src/main/java/org/qora/at/QoraATAPI.java
similarity index 96%
rename from src/main/java/qora/at/QoraATAPI.java
rename to src/main/java/org/qora/at/QoraATAPI.java
index 897c626f..2b124877 100644
--- a/src/main/java/qora/at/QoraATAPI.java
+++ b/src/main/java/org/qora/at/QoraATAPI.java
@@ -1,4 +1,4 @@
-package qora.at;
+package org.qora.at;
import java.math.BigDecimal;
import java.security.MessageDigest;
@@ -13,22 +13,21 @@ import org.ciyam.at.IllegalFunctionCodeException;
import org.ciyam.at.MachineState;
import org.ciyam.at.OpCode;
import org.ciyam.at.Timestamp;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.at.ATData;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.ATTransactionData;
+import org.qora.data.transaction.MessageTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transaction.ATTransaction;
import com.google.common.primitives.Bytes;
-import data.at.ATData;
-import data.block.BlockData;
-import data.transaction.ATTransactionData;
-import data.transaction.MessageTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import qora.transaction.ATTransaction;
-import repository.DataException;
-import repository.Repository;
-
public class QoraATAPI extends API {
// Useful constants
diff --git a/src/main/java/qora/at/QoraATLogger.java b/src/main/java/org/qora/at/QoraATLogger.java
similarity index 92%
rename from src/main/java/qora/at/QoraATLogger.java
rename to src/main/java/org/qora/at/QoraATLogger.java
index 002450fa..6952928f 100644
--- a/src/main/java/qora/at/QoraATLogger.java
+++ b/src/main/java/org/qora/at/QoraATLogger.java
@@ -1,9 +1,8 @@
-package qora.at;
+package org.qora.at;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import qora.at.AT;
+import org.qora.at.AT;
public class QoraATLogger implements org.ciyam.at.LoggerInterface {
diff --git a/src/main/java/qora/at/QoraFunctionCode.java b/src/main/java/org/qora/at/QoraFunctionCode.java
similarity index 99%
rename from src/main/java/qora/at/QoraFunctionCode.java
rename to src/main/java/org/qora/at/QoraFunctionCode.java
index 6fadaf99..86f134c3 100644
--- a/src/main/java/qora/at/QoraFunctionCode.java
+++ b/src/main/java/org/qora/at/QoraFunctionCode.java
@@ -1,4 +1,4 @@
-package qora.at;
+package org.qora.at;
import java.io.UnsupportedEncodingException;
import java.util.Arrays;
diff --git a/src/main/java/qora/block/Block.java b/src/main/java/org/qora/block/Block.java
similarity index 97%
rename from src/main/java/qora/block/Block.java
rename to src/main/java/org/qora/block/Block.java
index 570eb612..daccd873 100644
--- a/src/main/java/qora/block/Block.java
+++ b/src/main/java/org/qora/block/Block.java
@@ -1,4 +1,4 @@
-package qora.block;
+package org.qora.block;
import static java.util.Arrays.stream;
import static java.util.stream.Collectors.toMap;
@@ -13,33 +13,32 @@ import java.util.stream.Collectors;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.qora.account.Account;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.at.AT;
+import org.qora.crypto.Crypto;
+import org.qora.data.at.ATData;
+import org.qora.data.at.ATStateData;
+import org.qora.data.block.BlockData;
+import org.qora.data.block.BlockTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.ATRepository;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transaction.ATTransaction;
+import org.qora.transaction.GenesisTransaction;
+import org.qora.transaction.Transaction;
+import org.qora.transform.TransformationException;
+import org.qora.transform.block.BlockTransformer;
+import org.qora.transform.transaction.TransactionTransformer;
+import org.qora.utils.Base58;
+import org.qora.utils.NTP;
import com.google.common.primitives.Bytes;
-import data.at.ATData;
-import data.at.ATStateData;
-import data.block.BlockData;
-import data.block.BlockTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PrivateKeyAccount;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.at.AT;
-import qora.crypto.Crypto;
-import qora.transaction.ATTransaction;
-import qora.transaction.GenesisTransaction;
-import qora.transaction.Transaction;
-import repository.ATRepository;
-import repository.BlockRepository;
-import repository.DataException;
-import repository.Repository;
-import transform.TransformationException;
-import transform.block.BlockTransformer;
-import transform.transaction.TransactionTransformer;
-import utils.Base58;
-import utils.NTP;
-
/*
* Typical use-case scenarios:
*
diff --git a/src/main/java/qora/block/BlockChain.java b/src/main/java/org/qora/block/BlockChain.java
similarity index 95%
rename from src/main/java/qora/block/BlockChain.java
rename to src/main/java/org/qora/block/BlockChain.java
index e8e00aae..61eb472b 100644
--- a/src/main/java/qora/block/BlockChain.java
+++ b/src/main/java/org/qora/block/BlockChain.java
@@ -1,4 +1,4 @@
-package qora.block;
+package org.qora.block;
import java.math.BigDecimal;
import java.math.MathContext;
@@ -11,15 +11,14 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.json.simple.JSONObject;
-
-import data.assets.AssetData;
-import data.block.BlockData;
-import qora.assets.Asset;
-import repository.BlockRepository;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import settings.Settings;
+import org.qora.asset.Asset;
+import org.qora.data.asset.AssetData;
+import org.qora.data.block.BlockData;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.settings.Settings;
/**
* Class representing the blockchain as a whole.
diff --git a/src/main/java/qora/block/BlockGenerator.java b/src/main/java/org/qora/block/BlockGenerator.java
similarity index 91%
rename from src/main/java/qora/block/BlockGenerator.java
rename to src/main/java/org/qora/block/BlockGenerator.java
index 14b349a7..4b71120d 100644
--- a/src/main/java/qora/block/BlockGenerator.java
+++ b/src/main/java/org/qora/block/BlockGenerator.java
@@ -1,22 +1,21 @@
-package qora.block;
+package org.qora.block;
import java.util.Arrays;
import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import data.block.BlockData;
-import data.transaction.TransactionData;
-import qora.account.PrivateKeyAccount;
-import qora.block.Block.ValidationResult;
-import qora.transaction.Transaction;
-import repository.BlockRepository;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import settings.Settings;
-import utils.Base58;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.block.Block.ValidationResult;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.settings.Settings;
+import org.qora.transaction.Transaction;
+import org.qora.utils.Base58;
// Forging new blocks
diff --git a/src/main/java/qora/block/GenesisBlock.java b/src/main/java/org/qora/block/GenesisBlock.java
similarity index 95%
rename from src/main/java/qora/block/GenesisBlock.java
rename to src/main/java/org/qora/block/GenesisBlock.java
index fee72215..0d8be6c4 100644
--- a/src/main/java/qora/block/GenesisBlock.java
+++ b/src/main/java/org/qora/block/GenesisBlock.java
@@ -1,4 +1,4 @@
-package qora.block;
+package org.qora.block;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -12,20 +12,19 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
+import org.qora.account.GenesisAccount;
+import org.qora.crypto.Crypto;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.GenesisTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.settings.Settings;
+import org.qora.transaction.Transaction;
import com.google.common.primitives.Bytes;
import com.google.common.primitives.Longs;
-import data.block.BlockData;
-import data.transaction.GenesisTransactionData;
-import data.transaction.TransactionData;
-import qora.account.GenesisAccount;
-import qora.crypto.Crypto;
-import qora.transaction.Transaction;
-import repository.DataException;
-import repository.Repository;
-import settings.Settings;
-
public class GenesisBlock extends Block {
private static final Logger LOGGER = LogManager.getLogger(GenesisBlock.class);
diff --git a/src/main/java/blockgenerator.java b/src/main/java/org/qora/blockgenerator.java
similarity index 84%
rename from src/main/java/blockgenerator.java
rename to src/main/java/org/qora/blockgenerator.java
index 746ad8f3..dba5ac3f 100644
--- a/src/main/java/blockgenerator.java
+++ b/src/main/java/org/qora/blockgenerator.java
@@ -1,15 +1,15 @@
+package org.qora;
import java.security.SecureRandom;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import qora.block.BlockChain;
-import qora.block.BlockGenerator;
-import repository.DataException;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-import utils.Base58;
+import org.qora.block.BlockChain;
+import org.qora.block.BlockGenerator;
+import org.qora.repository.DataException;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
+import org.qora.utils.Base58;
public class blockgenerator {
diff --git a/src/main/java/brokenmd160.java b/src/main/java/org/qora/brokenmd160.java
similarity index 89%
rename from src/main/java/brokenmd160.java
rename to src/main/java/org/qora/brokenmd160.java
index d5062fb6..729dcd81 100644
--- a/src/main/java/brokenmd160.java
+++ b/src/main/java/org/qora/brokenmd160.java
@@ -1,6 +1,7 @@
-import com.google.common.hash.HashCode;
+package org.qora;
+import org.qora.crypto.BrokenMD160;
-import qora.crypto.BrokenMD160;
+import com.google.common.hash.HashCode;
@SuppressWarnings("deprecation")
public class brokenmd160 {
diff --git a/src/main/java/controller/Controller.java b/src/main/java/org/qora/controller/Controller.java
similarity index 85%
rename from src/main/java/controller/Controller.java
rename to src/main/java/org/qora/controller/Controller.java
index 20c1c698..6152879f 100644
--- a/src/main/java/controller/Controller.java
+++ b/src/main/java/org/qora/controller/Controller.java
@@ -1,17 +1,16 @@
-package controller;
-
-import api.ApiService;
-import qora.block.BlockChain;
-import qora.block.BlockGenerator;
-import repository.DataException;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-import settings.Settings;
-import utils.Base58;
+package org.qora.controller;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.qora.api.ApiService;
+import org.qora.block.BlockChain;
+import org.qora.block.BlockGenerator;
+import org.qora.repository.DataException;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
+import org.qora.settings.Settings;
+import org.qora.utils.Base58;
public class Controller {
diff --git a/src/main/java/crosschain/BTC.java b/src/main/java/org/qora/crosschain/BTC.java
similarity index 99%
rename from src/main/java/crosschain/BTC.java
rename to src/main/java/org/qora/crosschain/BTC.java
index feb29dc5..6ee8905a 100644
--- a/src/main/java/crosschain/BTC.java
+++ b/src/main/java/org/qora/crosschain/BTC.java
@@ -1,4 +1,4 @@
-package crosschain;
+package org.qora.crosschain;
import java.io.ByteArrayInputStream;
import java.io.DataOutputStream;
@@ -43,8 +43,7 @@ import org.bitcoinj.utils.Threading;
import org.bitcoinj.wallet.KeyChainGroup;
import org.bitcoinj.wallet.Wallet;
import org.bitcoinj.wallet.listeners.WalletCoinsReceivedEventListener;
-
-import settings.Settings;
+import org.qora.settings.Settings;
public class BTC {
diff --git a/src/main/java/qora/crypto/BrokenMD160.java b/src/main/java/org/qora/crypto/BrokenMD160.java
similarity index 99%
rename from src/main/java/qora/crypto/BrokenMD160.java
rename to src/main/java/org/qora/crypto/BrokenMD160.java
index d42b8a34..f7372add 100644
--- a/src/main/java/qora/crypto/BrokenMD160.java
+++ b/src/main/java/org/qora/crypto/BrokenMD160.java
@@ -1,4 +1,4 @@
-package qora.crypto;
+package org.qora.crypto;
/**
* BROKEN RIPEMD160
diff --git a/src/main/java/qora/crypto/Crypto.java b/src/main/java/org/qora/crypto/Crypto.java
similarity index 97%
rename from src/main/java/qora/crypto/Crypto.java
rename to src/main/java/org/qora/crypto/Crypto.java
index 10570bc8..05e68eeb 100644
--- a/src/main/java/qora/crypto/Crypto.java
+++ b/src/main/java/org/qora/crypto/Crypto.java
@@ -1,11 +1,11 @@
-package qora.crypto;
+package org.qora.crypto;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
-import qora.account.Account;
-import utils.Base58;
+import org.qora.account.Account;
+import org.qora.utils.Base58;
public class Crypto {
diff --git a/src/main/java/qora/crypto/CryptoBytes.java b/src/main/java/org/qora/crypto/CryptoBytes.java
similarity index 97%
rename from src/main/java/qora/crypto/CryptoBytes.java
rename to src/main/java/org/qora/crypto/CryptoBytes.java
index b48b554f..13393f2b 100644
--- a/src/main/java/qora/crypto/CryptoBytes.java
+++ b/src/main/java/org/qora/crypto/CryptoBytes.java
@@ -1,4 +1,4 @@
-package qora.crypto;
+package org.qora.crypto;
//Punisher.NaCl;
diff --git a/src/main/java/qora/crypto/Ed25519.java b/src/main/java/org/qora/crypto/Ed25519.java
similarity index 98%
rename from src/main/java/qora/crypto/Ed25519.java
rename to src/main/java/org/qora/crypto/Ed25519.java
index 65c9cc7e..fc67380d 100644
--- a/src/main/java/qora/crypto/Ed25519.java
+++ b/src/main/java/org/qora/crypto/Ed25519.java
@@ -1,12 +1,11 @@
-package qora.crypto;
+package org.qora.crypto;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
+import org.qora.utils.Pair;
import org.whispersystems.curve25519.java.*;
-import utils.Pair;
-
public class Ed25519 {
public static byte[] getSharedSecret(byte[] public_key, byte[] private_key)
diff --git a/src/main/java/data/PaymentData.java b/src/main/java/org/qora/data/PaymentData.java
similarity index 97%
rename from src/main/java/data/PaymentData.java
rename to src/main/java/org/qora/data/PaymentData.java
index 04f25966..41406573 100644
--- a/src/main/java/data/PaymentData.java
+++ b/src/main/java/org/qora/data/PaymentData.java
@@ -1,4 +1,4 @@
-package data;
+package org.qora.data;
import java.math.BigDecimal;
diff --git a/src/main/java/data/account/AccountBalanceData.java b/src/main/java/org/qora/data/account/AccountBalanceData.java
similarity index 96%
rename from src/main/java/data/account/AccountBalanceData.java
rename to src/main/java/org/qora/data/account/AccountBalanceData.java
index bcdb721b..c582b559 100644
--- a/src/main/java/data/account/AccountBalanceData.java
+++ b/src/main/java/org/qora/data/account/AccountBalanceData.java
@@ -1,4 +1,4 @@
-package data.account;
+package org.qora.data.account;
import java.math.BigDecimal;
diff --git a/src/main/java/data/account/AccountData.java b/src/main/java/org/qora/data/account/AccountData.java
similarity index 97%
rename from src/main/java/data/account/AccountData.java
rename to src/main/java/org/qora/data/account/AccountData.java
index e8e5481f..269c0b3b 100644
--- a/src/main/java/data/account/AccountData.java
+++ b/src/main/java/org/qora/data/account/AccountData.java
@@ -1,4 +1,4 @@
-package data.account;
+package org.qora.data.account;
public class AccountData {
diff --git a/src/main/java/data/assets/AssetData.java b/src/main/java/org/qora/data/asset/AssetData.java
similarity index 98%
rename from src/main/java/data/assets/AssetData.java
rename to src/main/java/org/qora/data/asset/AssetData.java
index 547570eb..ff3abc4c 100644
--- a/src/main/java/data/assets/AssetData.java
+++ b/src/main/java/org/qora/data/asset/AssetData.java
@@ -1,4 +1,4 @@
-package data.assets;
+package org.qora.data.asset;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
diff --git a/src/main/java/data/assets/OrderData.java b/src/main/java/org/qora/data/asset/OrderData.java
similarity index 99%
rename from src/main/java/data/assets/OrderData.java
rename to src/main/java/org/qora/data/asset/OrderData.java
index 26856386..b5797078 100644
--- a/src/main/java/data/assets/OrderData.java
+++ b/src/main/java/org/qora/data/asset/OrderData.java
@@ -1,4 +1,4 @@
-package data.assets;
+package org.qora.data.asset;
import java.math.BigDecimal;
diff --git a/src/main/java/data/assets/TradeData.java b/src/main/java/org/qora/data/asset/TradeData.java
similarity index 98%
rename from src/main/java/data/assets/TradeData.java
rename to src/main/java/org/qora/data/asset/TradeData.java
index cf69297e..e4b6e88a 100644
--- a/src/main/java/data/assets/TradeData.java
+++ b/src/main/java/org/qora/data/asset/TradeData.java
@@ -1,4 +1,4 @@
-package data.assets;
+package org.qora.data.asset;
import java.math.BigDecimal;
diff --git a/src/main/java/data/at/ATData.java b/src/main/java/org/qora/data/at/ATData.java
similarity index 99%
rename from src/main/java/data/at/ATData.java
rename to src/main/java/org/qora/data/at/ATData.java
index 12afcdef..48ba5c75 100644
--- a/src/main/java/data/at/ATData.java
+++ b/src/main/java/org/qora/data/at/ATData.java
@@ -1,4 +1,4 @@
-package data.at;
+package org.qora.data.at;
import java.math.BigDecimal;
diff --git a/src/main/java/data/at/ATStateData.java b/src/main/java/org/qora/data/at/ATStateData.java
similarity index 98%
rename from src/main/java/data/at/ATStateData.java
rename to src/main/java/org/qora/data/at/ATStateData.java
index 7d0fc6f4..ce859e55 100644
--- a/src/main/java/data/at/ATStateData.java
+++ b/src/main/java/org/qora/data/at/ATStateData.java
@@ -1,4 +1,4 @@
-package data.at;
+package org.qora.data.at;
import java.math.BigDecimal;
diff --git a/src/main/java/data/block/BlockData.java b/src/main/java/org/qora/data/block/BlockData.java
similarity index 98%
rename from src/main/java/data/block/BlockData.java
rename to src/main/java/org/qora/data/block/BlockData.java
index 15a40c0b..7a8f624b 100644
--- a/src/main/java/data/block/BlockData.java
+++ b/src/main/java/org/qora/data/block/BlockData.java
@@ -1,9 +1,7 @@
-package data.block;
+package org.qora.data.block;
import com.google.common.primitives.Bytes;
-import qora.crypto.Crypto;
-
import java.io.Serializable;
import java.math.BigDecimal;
@@ -11,6 +9,8 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
+import org.qora.crypto.Crypto;
+
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
public class BlockData implements Serializable {
diff --git a/src/main/java/data/block/BlockTransactionData.java b/src/main/java/org/qora/data/block/BlockTransactionData.java
similarity index 95%
rename from src/main/java/data/block/BlockTransactionData.java
rename to src/main/java/org/qora/data/block/BlockTransactionData.java
index fe0410f3..68303677 100644
--- a/src/main/java/data/block/BlockTransactionData.java
+++ b/src/main/java/org/qora/data/block/BlockTransactionData.java
@@ -1,4 +1,4 @@
-package data.block;
+package org.qora.data.block;
public class BlockTransactionData {
diff --git a/src/main/java/data/naming/NameData.java b/src/main/java/org/qora/data/naming/NameData.java
similarity index 98%
rename from src/main/java/data/naming/NameData.java
rename to src/main/java/org/qora/data/naming/NameData.java
index 286506ce..5f857bb8 100644
--- a/src/main/java/data/naming/NameData.java
+++ b/src/main/java/org/qora/data/naming/NameData.java
@@ -1,4 +1,4 @@
-package data.naming;
+package org.qora.data.naming;
import java.math.BigDecimal;
diff --git a/src/main/java/data/package-info.java b/src/main/java/org/qora/data/package-info.java
similarity index 72%
rename from src/main/java/data/package-info.java
rename to src/main/java/org/qora/data/package-info.java
index 0e67fb58..efb02e00 100644
--- a/src/main/java/data/package-info.java
+++ b/src/main/java/org/qora/data/package-info.java
@@ -3,13 +3,13 @@
@XmlJavaTypeAdapters({
@XmlJavaTypeAdapter(
type = byte[].class,
- value = api.Base58TypeAdapter.class
+ value = org.qora.api.Base58TypeAdapter.class
), @XmlJavaTypeAdapter(
type = java.math.BigDecimal.class,
- value = api.BigDecimalTypeAdapter.class
+ value = org.qora.api.BigDecimalTypeAdapter.class
)
})
-package data;
+package org.qora.data;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapters;
diff --git a/src/main/java/data/transaction/ATTransactionData.java b/src/main/java/org/qora/data/transaction/ATTransactionData.java
similarity index 92%
rename from src/main/java/data/transaction/ATTransactionData.java
rename to src/main/java/org/qora/data/transaction/ATTransactionData.java
index 9594724e..19367ec5 100644
--- a/src/main/java/data/transaction/ATTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/ATTransactionData.java
@@ -1,13 +1,14 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.account.GenesisAccount;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.account.GenesisAccount;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/ArbitraryTransactionData.java b/src/main/java/org/qora/data/transaction/ArbitraryTransactionData.java
similarity index 95%
rename from src/main/java/data/transaction/ArbitraryTransactionData.java
rename to src/main/java/org/qora/data/transaction/ArbitraryTransactionData.java
index 19952df1..f7582d53 100644
--- a/src/main/java/data/transaction/ArbitraryTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/ArbitraryTransactionData.java
@@ -1,4 +1,4 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import java.util.List;
@@ -6,9 +6,10 @@ import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
-import data.PaymentData;
+import org.qora.data.PaymentData;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/BuyNameTransactionData.java b/src/main/java/org/qora/data/transaction/BuyNameTransactionData.java
similarity index 96%
rename from src/main/java/data/transaction/BuyNameTransactionData.java
rename to src/main/java/org/qora/data/transaction/BuyNameTransactionData.java
index cedd76eb..743c895e 100644
--- a/src/main/java/data/transaction/BuyNameTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/BuyNameTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/CancelOrderTransactionData.java b/src/main/java/org/qora/data/transaction/CancelOrderTransactionData.java
similarity index 93%
rename from src/main/java/data/transaction/CancelOrderTransactionData.java
rename to src/main/java/org/qora/data/transaction/CancelOrderTransactionData.java
index 7bf91043..75136d4f 100644
--- a/src/main/java/data/transaction/CancelOrderTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/CancelOrderTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/CancelSellNameTransactionData.java b/src/main/java/org/qora/data/transaction/CancelSellNameTransactionData.java
similarity index 92%
rename from src/main/java/data/transaction/CancelSellNameTransactionData.java
rename to src/main/java/org/qora/data/transaction/CancelSellNameTransactionData.java
index f300baf8..02f650f5 100644
--- a/src/main/java/data/transaction/CancelSellNameTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/CancelSellNameTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/CreateOrderTransactionData.java b/src/main/java/org/qora/data/transaction/CreateOrderTransactionData.java
similarity index 94%
rename from src/main/java/data/transaction/CreateOrderTransactionData.java
rename to src/main/java/org/qora/data/transaction/CreateOrderTransactionData.java
index 3534a719..8e3f0233 100644
--- a/src/main/java/data/transaction/CreateOrderTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/CreateOrderTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/CreatePollTransactionData.java b/src/main/java/org/qora/data/transaction/CreatePollTransactionData.java
similarity index 93%
rename from src/main/java/data/transaction/CreatePollTransactionData.java
rename to src/main/java/org/qora/data/transaction/CreatePollTransactionData.java
index e96f1ea7..9d0cd2f9 100644
--- a/src/main/java/data/transaction/CreatePollTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/CreatePollTransactionData.java
@@ -1,4 +1,4 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import java.util.List;
@@ -6,9 +6,10 @@ import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
-import data.voting.PollOptionData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.transaction.Transaction;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/DeployATTransactionData.java b/src/main/java/org/qora/data/transaction/DeployATTransactionData.java
similarity index 96%
rename from src/main/java/data/transaction/DeployATTransactionData.java
rename to src/main/java/org/qora/data/transaction/DeployATTransactionData.java
index ad63b5c5..c32bf183 100644
--- a/src/main/java/data/transaction/DeployATTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/DeployATTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/GenesisTransactionData.java b/src/main/java/org/qora/data/transaction/GenesisTransactionData.java
similarity index 90%
rename from src/main/java/data/transaction/GenesisTransactionData.java
rename to src/main/java/org/qora/data/transaction/GenesisTransactionData.java
index 27163837..3a65c5b1 100644
--- a/src/main/java/data/transaction/GenesisTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/GenesisTransactionData.java
@@ -1,14 +1,15 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.account.GenesisAccount;
+import org.qora.asset.Asset;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.account.GenesisAccount;
-import qora.assets.Asset;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/IssueAssetTransactionData.java b/src/main/java/org/qora/data/transaction/IssueAssetTransactionData.java
similarity index 96%
rename from src/main/java/data/transaction/IssueAssetTransactionData.java
rename to src/main/java/org/qora/data/transaction/IssueAssetTransactionData.java
index 0f590aa1..d37c4ce4 100644
--- a/src/main/java/data/transaction/IssueAssetTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/IssueAssetTransactionData.java
@@ -1,13 +1,14 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.media.Schema.AccessMode;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/MessageTransactionData.java b/src/main/java/org/qora/data/transaction/MessageTransactionData.java
similarity index 94%
rename from src/main/java/data/transaction/MessageTransactionData.java
rename to src/main/java/org/qora/data/transaction/MessageTransactionData.java
index d5b19e40..604ad1fe 100644
--- a/src/main/java/data/transaction/MessageTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/MessageTransactionData.java
@@ -1,13 +1,14 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.asset.Asset;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.assets.Asset;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/MultiPaymentTransactionData.java b/src/main/java/org/qora/data/transaction/MultiPaymentTransactionData.java
similarity index 92%
rename from src/main/java/data/transaction/MultiPaymentTransactionData.java
rename to src/main/java/org/qora/data/transaction/MultiPaymentTransactionData.java
index 754ecd6c..f24a19a4 100644
--- a/src/main/java/data/transaction/MultiPaymentTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/MultiPaymentTransactionData.java
@@ -1,4 +1,4 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import java.util.List;
@@ -6,9 +6,10 @@ import java.util.List;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
-import data.PaymentData;
+import org.qora.data.PaymentData;
+import org.qora.transaction.Transaction;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/PaymentTransactionData.java b/src/main/java/org/qora/data/transaction/PaymentTransactionData.java
similarity index 92%
rename from src/main/java/data/transaction/PaymentTransactionData.java
rename to src/main/java/org/qora/data/transaction/PaymentTransactionData.java
index e4faccb0..2352fd40 100644
--- a/src/main/java/data/transaction/PaymentTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/PaymentTransactionData.java
@@ -1,4 +1,4 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
@@ -6,8 +6,9 @@ import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
@@ -22,7 +23,7 @@ public class PaymentTransactionData extends TransactionData {
@Schema(description = "amount to send", example = "123.456")
@XmlJavaTypeAdapter(
type = BigDecimal.class,
- value = api.BigDecimalTypeAdapter.class
+ value = org.qora.api.BigDecimalTypeAdapter.class
)
private BigDecimal amount;
diff --git a/src/main/java/data/transaction/RegisterNameTransactionData.java b/src/main/java/org/qora/data/transaction/RegisterNameTransactionData.java
similarity index 95%
rename from src/main/java/data/transaction/RegisterNameTransactionData.java
rename to src/main/java/org/qora/data/transaction/RegisterNameTransactionData.java
index 4af0ee65..03b749b6 100644
--- a/src/main/java/data/transaction/RegisterNameTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/RegisterNameTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/SellNameTransactionData.java b/src/main/java/org/qora/data/transaction/SellNameTransactionData.java
similarity index 93%
rename from src/main/java/data/transaction/SellNameTransactionData.java
rename to src/main/java/org/qora/data/transaction/SellNameTransactionData.java
index d9cee47b..c68e66b0 100644
--- a/src/main/java/data/transaction/SellNameTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/SellNameTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/TransactionData.java b/src/main/java/org/qora/data/transaction/TransactionData.java
similarity index 96%
rename from src/main/java/data/transaction/TransactionData.java
rename to src/main/java/org/qora/data/transaction/TransactionData.java
index 45689d6d..29bfa65c 100644
--- a/src/main/java/data/transaction/TransactionData.java
+++ b/src/main/java/org/qora/data/transaction/TransactionData.java
@@ -1,4 +1,4 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import java.math.BigInteger;
@@ -11,12 +11,12 @@ import javax.xml.bind.annotation.XmlSeeAlso;
import javax.xml.bind.annotation.XmlTransient;
import org.eclipse.persistence.oxm.annotations.XmlClassExtractor;
+import org.qora.api.TransactionClassExtractor;
+import org.qora.crypto.Crypto;
+import org.qora.transaction.Transaction.TransactionType;
-import api.TransactionClassExtractor;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.media.Schema.AccessMode;
-import qora.crypto.Crypto;
-import qora.transaction.Transaction.TransactionType;
/*
* If you encounter an error like:
diff --git a/src/main/java/data/transaction/TransferAssetTransactionData.java b/src/main/java/org/qora/data/transaction/TransferAssetTransactionData.java
similarity index 94%
rename from src/main/java/data/transaction/TransferAssetTransactionData.java
rename to src/main/java/org/qora/data/transaction/TransferAssetTransactionData.java
index 8f1a5267..465b9895 100644
--- a/src/main/java/data/transaction/TransferAssetTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/TransferAssetTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/UpdateNameTransactionData.java b/src/main/java/org/qora/data/transaction/UpdateNameTransactionData.java
similarity index 95%
rename from src/main/java/data/transaction/UpdateNameTransactionData.java
rename to src/main/java/org/qora/data/transaction/UpdateNameTransactionData.java
index c7d2e3c0..815a8bfa 100644
--- a/src/main/java/data/transaction/UpdateNameTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/UpdateNameTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/transaction/VoteOnPollTransactionData.java b/src/main/java/org/qora/data/transaction/VoteOnPollTransactionData.java
similarity index 95%
rename from src/main/java/data/transaction/VoteOnPollTransactionData.java
rename to src/main/java/org/qora/data/transaction/VoteOnPollTransactionData.java
index 14368b1c..1c9f9075 100644
--- a/src/main/java/data/transaction/VoteOnPollTransactionData.java
+++ b/src/main/java/org/qora/data/transaction/VoteOnPollTransactionData.java
@@ -1,12 +1,13 @@
-package data.transaction;
+package org.qora.data.transaction;
import java.math.BigDecimal;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
+import org.qora.transaction.Transaction.TransactionType;
+
import io.swagger.v3.oas.annotations.media.Schema;
-import qora.transaction.Transaction.TransactionType;
// All properties to be converted to JSON via JAX-RS
@XmlAccessorType(XmlAccessType.FIELD)
diff --git a/src/main/java/data/voting/PollData.java b/src/main/java/org/qora/data/voting/PollData.java
similarity index 93%
rename from src/main/java/data/voting/PollData.java
rename to src/main/java/org/qora/data/voting/PollData.java
index 98f65b67..79e588e9 100644
--- a/src/main/java/data/voting/PollData.java
+++ b/src/main/java/org/qora/data/voting/PollData.java
@@ -1,8 +1,8 @@
-package data.voting;
+package org.qora.data.voting;
import java.util.List;
-import data.voting.PollOptionData;
+import org.qora.data.voting.PollOptionData;
public class PollData {
diff --git a/src/main/java/data/voting/PollOptionData.java b/src/main/java/org/qora/data/voting/PollOptionData.java
similarity index 94%
rename from src/main/java/data/voting/PollOptionData.java
rename to src/main/java/org/qora/data/voting/PollOptionData.java
index 773d6d2e..fc085f3d 100644
--- a/src/main/java/data/voting/PollOptionData.java
+++ b/src/main/java/org/qora/data/voting/PollOptionData.java
@@ -1,4 +1,4 @@
-package data.voting;
+package org.qora.data.voting;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
diff --git a/src/main/java/data/voting/VoteOnPollData.java b/src/main/java/org/qora/data/voting/VoteOnPollData.java
similarity index 94%
rename from src/main/java/data/voting/VoteOnPollData.java
rename to src/main/java/org/qora/data/voting/VoteOnPollData.java
index 34770052..a7fd532a 100644
--- a/src/main/java/data/voting/VoteOnPollData.java
+++ b/src/main/java/org/qora/data/voting/VoteOnPollData.java
@@ -1,4 +1,4 @@
-package data.voting;
+package org.qora.data.voting;
public class VoteOnPollData {
diff --git a/src/main/java/globalization/BIP39WordList.java b/src/main/java/org/qora/globalization/BIP39WordList.java
similarity index 97%
rename from src/main/java/globalization/BIP39WordList.java
rename to src/main/java/org/qora/globalization/BIP39WordList.java
index 3e5a8d32..e3707447 100644
--- a/src/main/java/globalization/BIP39WordList.java
+++ b/src/main/java/org/qora/globalization/BIP39WordList.java
@@ -1,4 +1,4 @@
-package globalization;
+package org.qora.globalization;
import java.io.BufferedReader;
import java.io.IOException;
diff --git a/src/main/java/globalization/Translator.java b/src/main/java/org/qora/globalization/Translator.java
similarity index 98%
rename from src/main/java/globalization/Translator.java
rename to src/main/java/org/qora/globalization/Translator.java
index 9bdd1462..a5b6836e 100644
--- a/src/main/java/globalization/Translator.java
+++ b/src/main/java/org/qora/globalization/Translator.java
@@ -1,4 +1,4 @@
-package globalization;
+package org.qora.globalization;
import java.util.HashMap;
import java.util.Locale;
diff --git a/src/main/java/qora/naming/Name.java b/src/main/java/org/qora/naming/Name.java
similarity index 92%
rename from src/main/java/qora/naming/Name.java
rename to src/main/java/org/qora/naming/Name.java
index b3faa076..11903089 100644
--- a/src/main/java/qora/naming/Name.java
+++ b/src/main/java/org/qora/naming/Name.java
@@ -1,17 +1,17 @@
-package qora.naming;
+package org.qora.naming;
-import data.naming.NameData;
-import data.transaction.BuyNameTransactionData;
-import data.transaction.CancelSellNameTransactionData;
-import data.transaction.RegisterNameTransactionData;
-import data.transaction.SellNameTransactionData;
-import data.transaction.TransactionData;
-import data.transaction.UpdateNameTransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.data.naming.NameData;
+import org.qora.data.transaction.BuyNameTransactionData;
+import org.qora.data.transaction.CancelSellNameTransactionData;
+import org.qora.data.transaction.RegisterNameTransactionData;
+import org.qora.data.transaction.SellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.UpdateNameTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class Name {
diff --git a/src/main/java/orphan.java b/src/main/java/org/qora/orphan.java
similarity index 76%
rename from src/main/java/orphan.java
rename to src/main/java/org/qora/orphan.java
index 8f548471..8b801850 100644
--- a/src/main/java/orphan.java
+++ b/src/main/java/org/qora/orphan.java
@@ -1,12 +1,13 @@
-import controller.Controller;
-import data.block.BlockData;
-import qora.block.Block;
-import qora.block.BlockChain;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
+package org.qora;
+import org.qora.block.Block;
+import org.qora.block.BlockChain;
+import org.qora.controller.Controller;
+import org.qora.data.block.BlockData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
public class orphan {
diff --git a/src/main/java/qora/payment/Payment.java b/src/main/java/org/qora/payment/Payment.java
similarity index 93%
rename from src/main/java/qora/payment/Payment.java
rename to src/main/java/org/qora/payment/Payment.java
index f3ee0c3e..509fb002 100644
--- a/src/main/java/qora/payment/Payment.java
+++ b/src/main/java/org/qora/payment/Payment.java
@@ -1,4 +1,4 @@
-package qora.payment;
+package org.qora.payment;
import java.math.BigDecimal;
import java.util.Arrays;
@@ -8,17 +8,17 @@ import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
-import data.PaymentData;
-import data.assets.AssetData;
-import data.at.ATData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import qora.transaction.Transaction.ValidationResult;
-import repository.AssetRepository;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.PaymentData;
+import org.qora.data.asset.AssetData;
+import org.qora.data.at.ATData;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transaction.Transaction.ValidationResult;
public class Payment {
diff --git a/src/main/java/repository/ATRepository.java b/src/main/java/org/qora/repository/ATRepository.java
similarity index 96%
rename from src/main/java/repository/ATRepository.java
rename to src/main/java/org/qora/repository/ATRepository.java
index 355baffb..2fe00368 100644
--- a/src/main/java/repository/ATRepository.java
+++ b/src/main/java/org/qora/repository/ATRepository.java
@@ -1,9 +1,9 @@
-package repository;
+package org.qora.repository;
import java.util.List;
-import data.at.ATData;
-import data.at.ATStateData;
+import org.qora.data.at.ATData;
+import org.qora.data.at.ATStateData;
public interface ATRepository {
diff --git a/src/main/java/repository/AccountRepository.java b/src/main/java/org/qora/repository/AccountRepository.java
similarity index 86%
rename from src/main/java/repository/AccountRepository.java
rename to src/main/java/org/qora/repository/AccountRepository.java
index 99ad57ca..6b94cec3 100644
--- a/src/main/java/repository/AccountRepository.java
+++ b/src/main/java/org/qora/repository/AccountRepository.java
@@ -1,9 +1,9 @@
-package repository;
+package org.qora.repository;
import java.util.List;
-import data.account.AccountBalanceData;
-import data.account.AccountData;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.account.AccountData;
public interface AccountRepository {
diff --git a/src/main/java/repository/AssetRepository.java b/src/main/java/org/qora/repository/AssetRepository.java
similarity index 90%
rename from src/main/java/repository/AssetRepository.java
rename to src/main/java/org/qora/repository/AssetRepository.java
index f09ecdfa..f0a0392a 100644
--- a/src/main/java/repository/AssetRepository.java
+++ b/src/main/java/org/qora/repository/AssetRepository.java
@@ -1,10 +1,10 @@
-package repository;
+package org.qora.repository;
import java.util.List;
-import data.assets.AssetData;
-import data.assets.OrderData;
-import data.assets.TradeData;
+import org.qora.data.asset.AssetData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
public interface AssetRepository {
diff --git a/src/main/java/repository/BlockRepository.java b/src/main/java/org/qora/repository/BlockRepository.java
similarity index 94%
rename from src/main/java/repository/BlockRepository.java
rename to src/main/java/org/qora/repository/BlockRepository.java
index 829fcf30..9eb6286b 100644
--- a/src/main/java/repository/BlockRepository.java
+++ b/src/main/java/org/qora/repository/BlockRepository.java
@@ -1,10 +1,10 @@
-package repository;
+package org.qora.repository;
import java.util.List;
-import data.block.BlockData;
-import data.block.BlockTransactionData;
-import data.transaction.TransactionData;
+import org.qora.data.block.BlockData;
+import org.qora.data.block.BlockTransactionData;
+import org.qora.data.transaction.TransactionData;
public interface BlockRepository {
diff --git a/src/main/java/repository/DataException.java b/src/main/java/org/qora/repository/DataException.java
similarity index 92%
rename from src/main/java/repository/DataException.java
rename to src/main/java/org/qora/repository/DataException.java
index 650be904..02f260db 100644
--- a/src/main/java/repository/DataException.java
+++ b/src/main/java/org/qora/repository/DataException.java
@@ -1,4 +1,4 @@
-package repository;
+package org.qora.repository;
public class DataException extends Exception {
diff --git a/src/main/java/repository/NameRepository.java b/src/main/java/org/qora/repository/NameRepository.java
similarity index 80%
rename from src/main/java/repository/NameRepository.java
rename to src/main/java/org/qora/repository/NameRepository.java
index 38615907..23ae5408 100644
--- a/src/main/java/repository/NameRepository.java
+++ b/src/main/java/org/qora/repository/NameRepository.java
@@ -1,6 +1,6 @@
-package repository;
+package org.qora.repository;
-import data.naming.NameData;
+import org.qora.data.naming.NameData;
public interface NameRepository {
diff --git a/src/main/java/repository/Repository.java b/src/main/java/org/qora/repository/Repository.java
similarity index 95%
rename from src/main/java/repository/Repository.java
rename to src/main/java/org/qora/repository/Repository.java
index f5bc16ba..c5407d7b 100644
--- a/src/main/java/repository/Repository.java
+++ b/src/main/java/org/qora/repository/Repository.java
@@ -1,4 +1,4 @@
-package repository;
+package org.qora.repository;
public interface Repository extends AutoCloseable {
diff --git a/src/main/java/repository/RepositoryFactory.java b/src/main/java/org/qora/repository/RepositoryFactory.java
similarity index 83%
rename from src/main/java/repository/RepositoryFactory.java
rename to src/main/java/org/qora/repository/RepositoryFactory.java
index 22c2da1a..2ac7165c 100644
--- a/src/main/java/repository/RepositoryFactory.java
+++ b/src/main/java/org/qora/repository/RepositoryFactory.java
@@ -1,4 +1,4 @@
-package repository;
+package org.qora.repository;
public interface RepositoryFactory {
diff --git a/src/main/java/repository/RepositoryManager.java b/src/main/java/org/qora/repository/RepositoryManager.java
similarity index 95%
rename from src/main/java/repository/RepositoryManager.java
rename to src/main/java/org/qora/repository/RepositoryManager.java
index 2ec36d2d..a03e1cc5 100644
--- a/src/main/java/repository/RepositoryManager.java
+++ b/src/main/java/org/qora/repository/RepositoryManager.java
@@ -1,4 +1,4 @@
-package repository;
+package org.qora.repository;
public abstract class RepositoryManager {
diff --git a/src/main/java/repository/TransactionRepository.java b/src/main/java/org/qora/repository/TransactionRepository.java
similarity index 92%
rename from src/main/java/repository/TransactionRepository.java
rename to src/main/java/org/qora/repository/TransactionRepository.java
index 3503a7eb..afaffe69 100644
--- a/src/main/java/repository/TransactionRepository.java
+++ b/src/main/java/org/qora/repository/TransactionRepository.java
@@ -1,10 +1,10 @@
-package repository;
-
-import data.transaction.TransactionData;
-import qora.transaction.Transaction.TransactionType;
+package org.qora.repository;
import java.util.List;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transaction.Transaction.TransactionType;
+
public interface TransactionRepository {
// Fetching transactions / transaction height
diff --git a/src/main/java/repository/VotingRepository.java b/src/main/java/org/qora/repository/VotingRepository.java
similarity index 85%
rename from src/main/java/repository/VotingRepository.java
rename to src/main/java/org/qora/repository/VotingRepository.java
index 4433a446..722fa6d2 100644
--- a/src/main/java/repository/VotingRepository.java
+++ b/src/main/java/org/qora/repository/VotingRepository.java
@@ -1,9 +1,9 @@
-package repository;
+package org.qora.repository;
import java.util.List;
-import data.voting.PollData;
-import data.voting.VoteOnPollData;
+import org.qora.data.voting.PollData;
+import org.qora.data.voting.VoteOnPollData;
public interface VotingRepository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBATRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBATRepository.java
similarity index 97%
rename from src/main/java/repository/hsqldb/HSQLDBATRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBATRepository.java
index 4e980f6a..bf04748f 100644
--- a/src/main/java/repository/hsqldb/HSQLDBATRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBATRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -8,10 +8,10 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
-import data.at.ATData;
-import data.at.ATStateData;
-import repository.ATRepository;
-import repository.DataException;
+import org.qora.data.at.ATData;
+import org.qora.data.at.ATStateData;
+import org.qora.repository.ATRepository;
+import org.qora.repository.DataException;
public class HSQLDBATRepository implements ATRepository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBAccountRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBAccountRepository.java
similarity index 95%
rename from src/main/java/repository/hsqldb/HSQLDBAccountRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBAccountRepository.java
index e0c27612..a28af6cf 100644
--- a/src/main/java/repository/hsqldb/HSQLDBAccountRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBAccountRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -6,10 +6,10 @@ import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
-import data.account.AccountBalanceData;
-import data.account.AccountData;
-import repository.AccountRepository;
-import repository.DataException;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.account.AccountData;
+import org.qora.repository.AccountRepository;
+import org.qora.repository.DataException;
public class HSQLDBAccountRepository implements AccountRepository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBAssetRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBAssetRepository.java
similarity index 97%
rename from src/main/java/repository/hsqldb/HSQLDBAssetRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBAssetRepository.java
index cd63a09d..8e1faa7b 100644
--- a/src/main/java/repository/hsqldb/HSQLDBAssetRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBAssetRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -8,11 +8,11 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
-import data.assets.AssetData;
-import data.assets.OrderData;
-import data.assets.TradeData;
-import repository.AssetRepository;
-import repository.DataException;
+import org.qora.data.asset.AssetData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
public class HSQLDBAssetRepository implements AssetRepository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBBlockRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBBlockRepository.java
similarity index 95%
rename from src/main/java/repository/hsqldb/HSQLDBBlockRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBBlockRepository.java
index 96119aae..4e3cefbf 100644
--- a/src/main/java/repository/hsqldb/HSQLDBBlockRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBBlockRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -8,12 +8,12 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
-import data.block.BlockData;
-import data.block.BlockTransactionData;
-import data.transaction.TransactionData;
-import repository.BlockRepository;
-import repository.DataException;
-import repository.TransactionRepository;
+import org.qora.data.block.BlockData;
+import org.qora.data.block.BlockTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.TransactionRepository;
public class HSQLDBBlockRepository implements BlockRepository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBDatabaseUpdates.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBDatabaseUpdates.java
similarity index 99%
rename from src/main/java/repository/hsqldb/HSQLDBDatabaseUpdates.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBDatabaseUpdates.java
index 4602b7fe..b13f08d1 100644
--- a/src/main/java/repository/hsqldb/HSQLDBDatabaseUpdates.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBDatabaseUpdates.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.sql.Connection;
import java.sql.ResultSet;
diff --git a/src/main/java/repository/hsqldb/HSQLDBNameRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBNameRepository.java
similarity index 94%
rename from src/main/java/repository/hsqldb/HSQLDBNameRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBNameRepository.java
index 6b642ceb..3ddcf4ff 100644
--- a/src/main/java/repository/hsqldb/HSQLDBNameRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBNameRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -6,9 +6,9 @@ import java.sql.SQLException;
import java.sql.Timestamp;
import java.util.Calendar;
-import data.naming.NameData;
-import repository.NameRepository;
-import repository.DataException;
+import org.qora.data.naming.NameData;
+import org.qora.repository.DataException;
+import org.qora.repository.NameRepository;
public class HSQLDBNameRepository implements NameRepository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBRepository.java
similarity index 94%
rename from src/main/java/repository/hsqldb/HSQLDBRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBRepository.java
index 3ae733cc..90d4f3f9 100644
--- a/src/main/java/repository/hsqldb/HSQLDBRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.Connection;
@@ -10,17 +10,16 @@ import java.util.TimeZone;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import repository.ATRepository;
-import repository.AccountRepository;
-import repository.AssetRepository;
-import repository.BlockRepository;
-import repository.DataException;
-import repository.NameRepository;
-import repository.Repository;
-import repository.TransactionRepository;
-import repository.VotingRepository;
-import repository.hsqldb.transaction.HSQLDBTransactionRepository;
+import org.qora.repository.ATRepository;
+import org.qora.repository.AccountRepository;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.BlockRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.NameRepository;
+import org.qora.repository.Repository;
+import org.qora.repository.TransactionRepository;
+import org.qora.repository.VotingRepository;
+import org.qora.repository.hsqldb.transaction.HSQLDBTransactionRepository;
public class HSQLDBRepository implements Repository {
diff --git a/src/main/java/repository/hsqldb/HSQLDBRepositoryFactory.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBRepositoryFactory.java
similarity index 93%
rename from src/main/java/repository/hsqldb/HSQLDBRepositoryFactory.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBRepositoryFactory.java
index 60bfe8ae..fc3a12de 100644
--- a/src/main/java/repository/hsqldb/HSQLDBRepositoryFactory.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBRepositoryFactory.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.sql.Connection;
import java.sql.DriverManager;
@@ -6,10 +6,9 @@ import java.sql.SQLException;
import java.util.Properties;
import org.hsqldb.jdbc.JDBCPool;
-
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryFactory;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryFactory;
public class HSQLDBRepositoryFactory implements RepositoryFactory {
diff --git a/src/main/java/repository/hsqldb/HSQLDBSaver.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBSaver.java
similarity index 99%
rename from src/main/java/repository/hsqldb/HSQLDBSaver.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBSaver.java
index 8b05767a..27b76aee 100644
--- a/src/main/java/repository/hsqldb/HSQLDBSaver.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBSaver.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.math.BigDecimal;
import java.sql.PreparedStatement;
diff --git a/src/main/java/repository/hsqldb/HSQLDBVotingRepository.java b/src/main/java/org/qora/repository/hsqldb/HSQLDBVotingRepository.java
similarity index 95%
rename from src/main/java/repository/hsqldb/HSQLDBVotingRepository.java
rename to src/main/java/org/qora/repository/hsqldb/HSQLDBVotingRepository.java
index 232a63aa..9803ca6e 100644
--- a/src/main/java/repository/hsqldb/HSQLDBVotingRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/HSQLDBVotingRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb;
+package org.qora.repository.hsqldb;
import java.sql.ResultSet;
import java.sql.SQLException;
@@ -7,11 +7,11 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
-import data.voting.PollData;
-import data.voting.PollOptionData;
-import data.voting.VoteOnPollData;
-import repository.VotingRepository;
-import repository.DataException;
+import org.qora.data.voting.PollData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.data.voting.VoteOnPollData;
+import org.qora.repository.DataException;
+import org.qora.repository.VotingRepository;
public class HSQLDBVotingRepository implements VotingRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBATTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBATTransactionRepository.java
similarity index 87%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBATTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBATTransactionRepository.java
index f1103985..0fea82c1 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBATTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBATTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.ATTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.ATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBATTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBArbitraryTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBArbitraryTransactionRepository.java
similarity index 86%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBArbitraryTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBArbitraryTransactionRepository.java
index eabb1559..8027a286 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBArbitraryTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBArbitraryTransactionRepository.java
@@ -1,17 +1,17 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
-import data.PaymentData;
-import data.transaction.ArbitraryTransactionData;
-import data.transaction.ArbitraryTransactionData.DataType;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.ArbitraryTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.ArbitraryTransactionData.DataType;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBArbitraryTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBBuyNameTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBBuyNameTransactionRepository.java
similarity index 86%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBBuyNameTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBBuyNameTransactionRepository.java
index e2393d9d..62bb1c07 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBBuyNameTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBBuyNameTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.BuyNameTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.BuyNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBBuyNameTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBCancelOrderTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCancelOrderTransactionRepository.java
similarity index 84%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBCancelOrderTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCancelOrderTransactionRepository.java
index 45ffcab2..7b9d8fba 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBCancelOrderTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCancelOrderTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.CancelOrderTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.CancelOrderTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBCancelOrderTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBCancelSellNameTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCancelSellNameTransactionRepository.java
similarity index 83%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBCancelSellNameTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCancelSellNameTransactionRepository.java
index b54641a2..3fbf9008 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBCancelSellNameTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCancelSellNameTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.CancelSellNameTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.CancelSellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBCancelSellNameTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBCreateOrderTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCreateOrderTransactionRepository.java
similarity index 86%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBCreateOrderTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCreateOrderTransactionRepository.java
index 06bd37d6..a4b903da 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBCreateOrderTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCreateOrderTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.CreateOrderTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.CreateOrderTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBCreateOrderTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBCreatePollTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCreatePollTransactionRepository.java
similarity index 90%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBCreatePollTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCreatePollTransactionRepository.java
index ad6733f6..838a1801 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBCreatePollTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBCreatePollTransactionRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -6,12 +6,12 @@ import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
-import data.transaction.CreatePollTransactionData;
-import data.transaction.TransactionData;
-import data.voting.PollOptionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.CreatePollTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBCreatePollTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBDeployATTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBDeployATTransactionRepository.java
similarity index 89%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBDeployATTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBDeployATTransactionRepository.java
index 2ec30e68..d8ea3526 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBDeployATTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBDeployATTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.DeployATTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.DeployATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBDeployATTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBGenesisTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBGenesisTransactionRepository.java
similarity index 84%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBGenesisTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBGenesisTransactionRepository.java
index f56ff5e3..c8b11183 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBGenesisTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBGenesisTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.GenesisTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.GenesisTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBGenesisTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBIssueAssetTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBIssueAssetTransactionRepository.java
similarity index 88%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBIssueAssetTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBIssueAssetTransactionRepository.java
index f48eaac8..270c2d6d 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBIssueAssetTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBIssueAssetTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.IssueAssetTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.IssueAssetTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBIssueAssetTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBMessageTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBMessageTransactionRepository.java
similarity index 88%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBMessageTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBMessageTransactionRepository.java
index 60a618ca..edad7e46 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBMessageTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBMessageTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.MessageTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.MessageTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBMessageTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBMultiPaymentTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBMultiPaymentTransactionRepository.java
similarity index 84%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBMultiPaymentTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBMultiPaymentTransactionRepository.java
index 9db37966..20b4a38d 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBMultiPaymentTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBMultiPaymentTransactionRepository.java
@@ -1,16 +1,16 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
-import data.PaymentData;
-import data.transaction.MultiPaymentTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.MultiPaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBMultiPaymentTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBPaymentTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBPaymentTransactionRepository.java
similarity index 84%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBPaymentTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBPaymentTransactionRepository.java
index 059684f8..026d63cf 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBPaymentTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBPaymentTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.PaymentTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBPaymentTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBRegisterNameTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBRegisterNameTransactionRepository.java
similarity index 85%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBRegisterNameTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBRegisterNameTransactionRepository.java
index 86c54c9c..fb6813be 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBRegisterNameTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBRegisterNameTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.RegisterNameTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.RegisterNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBRegisterNameTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBSellNameTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBSellNameTransactionRepository.java
similarity index 84%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBSellNameTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBSellNameTransactionRepository.java
index f6628d47..e76ed907 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBSellNameTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBSellNameTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.SellNameTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.SellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBSellNameTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBTransactionRepository.java
similarity index 98%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBTransactionRepository.java
index 0dda5dd5..ebbb7a10 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBTransactionRepository.java
@@ -1,4 +1,4 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
@@ -8,13 +8,13 @@ import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
-import data.PaymentData;
-import data.transaction.TransactionData;
-import qora.transaction.Transaction.TransactionType;
-import repository.DataException;
-import repository.TransactionRepository;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.TransactionRepository;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
+import org.qora.transaction.Transaction.TransactionType;
public class HSQLDBTransactionRepository implements TransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBTransferAssetTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBTransferAssetTransactionRepository.java
similarity index 86%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBTransferAssetTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBTransferAssetTransactionRepository.java
index 6c0224b4..21317700 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBTransferAssetTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBTransferAssetTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.TransferAssetTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.TransferAssetTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBTransferAssetTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBUpdateNameTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBUpdateNameTransactionRepository.java
similarity index 86%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBUpdateNameTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBUpdateNameTransactionRepository.java
index dfafa804..be088143 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBUpdateNameTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBUpdateNameTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.UpdateNameTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.UpdateNameTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBUpdateNameTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/repository/hsqldb/transaction/HSQLDBVoteOnPollTransactionRepository.java b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBVoteOnPollTransactionRepository.java
similarity index 86%
rename from src/main/java/repository/hsqldb/transaction/HSQLDBVoteOnPollTransactionRepository.java
rename to src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBVoteOnPollTransactionRepository.java
index 4b9c7030..7dd9c3f8 100644
--- a/src/main/java/repository/hsqldb/transaction/HSQLDBVoteOnPollTransactionRepository.java
+++ b/src/main/java/org/qora/repository/hsqldb/transaction/HSQLDBVoteOnPollTransactionRepository.java
@@ -1,14 +1,14 @@
-package repository.hsqldb.transaction;
+package org.qora.repository.hsqldb.transaction;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
-import data.transaction.VoteOnPollTransactionData;
-import data.transaction.TransactionData;
-import repository.DataException;
-import repository.hsqldb.HSQLDBRepository;
-import repository.hsqldb.HSQLDBSaver;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.VoteOnPollTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.hsqldb.HSQLDBRepository;
+import org.qora.repository.hsqldb.HSQLDBSaver;
public class HSQLDBVoteOnPollTransactionRepository extends HSQLDBTransactionRepository {
diff --git a/src/main/java/settings/Settings.java b/src/main/java/org/qora/settings/Settings.java
similarity index 98%
rename from src/main/java/settings/Settings.java
rename to src/main/java/org/qora/settings/Settings.java
index 71724575..022f14ff 100644
--- a/src/main/java/settings/Settings.java
+++ b/src/main/java/org/qora/settings/Settings.java
@@ -1,4 +1,4 @@
-package settings;
+package org.qora.settings;
import java.io.File;
import java.io.IOException;
@@ -13,12 +13,11 @@ import org.apache.logging.log4j.Logger;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;
+import org.qora.block.BlockChain;
import com.google.common.base.Charsets;
import com.google.common.io.Files;
-import qora.block.BlockChain;
-
public class Settings {
private static final Logger LOGGER = LogManager.getLogger(Settings.class);
diff --git a/src/main/java/qora/transaction/ATTransaction.java b/src/main/java/org/qora/transaction/ATTransaction.java
similarity index 93%
rename from src/main/java/qora/transaction/ATTransaction.java
rename to src/main/java/org/qora/transaction/ATTransaction.java
index 59d694e2..bdbfe24c 100644
--- a/src/main/java/qora/transaction/ATTransaction.java
+++ b/src/main/java/org/qora/transaction/ATTransaction.java
@@ -1,4 +1,4 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
@@ -6,18 +6,18 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.primitives.Bytes;
+import org.qora.account.Account;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.asset.AssetData;
+import org.qora.data.transaction.ATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.ATTransactionTransformer;
-import data.assets.AssetData;
-import data.transaction.ATTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import repository.DataException;
-import repository.Repository;
-import transform.TransformationException;
-import transform.transaction.ATTransactionTransformer;
+import com.google.common.primitives.Bytes;
public class ATTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/ArbitraryTransaction.java b/src/main/java/org/qora/transaction/ArbitraryTransaction.java
similarity index 93%
rename from src/main/java/qora/transaction/ArbitraryTransaction.java
rename to src/main/java/org/qora/transaction/ArbitraryTransaction.java
index ba9b06fc..e69ce8d1 100644
--- a/src/main/java/qora/transaction/ArbitraryTransaction.java
+++ b/src/main/java/org/qora/transaction/ArbitraryTransaction.java
@@ -1,4 +1,4 @@
-package qora.transaction;
+package org.qora.transaction;
import java.io.File;
import java.io.IOException;
@@ -15,21 +15,20 @@ import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-
-import data.PaymentData;
-import data.transaction.ArbitraryTransactionData;
-import data.transaction.TransactionData;
-import data.transaction.ArbitraryTransactionData.DataType;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.crypto.Crypto;
-import qora.payment.Payment;
-import repository.DataException;
-import repository.Repository;
-import settings.Settings;
-import utils.Base58;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.crypto.Crypto;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.ArbitraryTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.ArbitraryTransactionData.DataType;
+import org.qora.payment.Payment;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.settings.Settings;
+import org.qora.utils.Base58;
public class ArbitraryTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/BuyNameTransaction.java b/src/main/java/org/qora/transaction/BuyNameTransaction.java
similarity index 92%
rename from src/main/java/qora/transaction/BuyNameTransaction.java
rename to src/main/java/org/qora/transaction/BuyNameTransaction.java
index d73df077..c8c57d55 100644
--- a/src/main/java/qora/transaction/BuyNameTransaction.java
+++ b/src/main/java/org/qora/transaction/BuyNameTransaction.java
@@ -1,21 +1,21 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.data.naming.NameData;
+import org.qora.data.transaction.BuyNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
-import data.naming.NameData;
-import data.transaction.BuyNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.naming.Name;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class BuyNameTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/CancelOrderTransaction.java b/src/main/java/org/qora/transaction/CancelOrderTransaction.java
similarity index 90%
rename from src/main/java/qora/transaction/CancelOrderTransaction.java
rename to src/main/java/org/qora/transaction/CancelOrderTransaction.java
index 3b7708a5..281aff0c 100644
--- a/src/main/java/qora/transaction/CancelOrderTransaction.java
+++ b/src/main/java/org/qora/transaction/CancelOrderTransaction.java
@@ -1,21 +1,21 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import data.assets.OrderData;
-import data.transaction.CancelOrderTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.assets.Order;
-import qora.crypto.Crypto;
-import repository.AssetRepository;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.asset.Order;
+import org.qora.crypto.Crypto;
+import org.qora.data.asset.OrderData;
+import org.qora.data.transaction.CancelOrderTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class CancelOrderTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/CancelSellNameTransaction.java b/src/main/java/org/qora/transaction/CancelSellNameTransaction.java
similarity index 91%
rename from src/main/java/qora/transaction/CancelSellNameTransaction.java
rename to src/main/java/org/qora/transaction/CancelSellNameTransaction.java
index 60e49218..9492d6f5 100644
--- a/src/main/java/qora/transaction/CancelSellNameTransaction.java
+++ b/src/main/java/org/qora/transaction/CancelSellNameTransaction.java
@@ -1,21 +1,21 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.data.naming.NameData;
+import org.qora.data.transaction.CancelSellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
-import data.naming.NameData;
-import data.transaction.CancelSellNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.naming.Name;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class CancelSellNameTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/CreateOrderTransaction.java b/src/main/java/org/qora/transaction/CreateOrderTransaction.java
similarity index 92%
rename from src/main/java/qora/transaction/CreateOrderTransaction.java
rename to src/main/java/org/qora/transaction/CreateOrderTransaction.java
index 8803e06f..eed5a0f3 100644
--- a/src/main/java/qora/transaction/CreateOrderTransaction.java
+++ b/src/main/java/org/qora/transaction/CreateOrderTransaction.java
@@ -1,22 +1,22 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import data.assets.AssetData;
-import data.assets.OrderData;
-import data.transaction.CreateOrderTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.assets.Order;
-import qora.block.BlockChain;
-import repository.AssetRepository;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.asset.Order;
+import org.qora.block.BlockChain;
+import org.qora.data.asset.AssetData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.transaction.CreateOrderTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class CreateOrderTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/CreatePollTransaction.java b/src/main/java/org/qora/transaction/CreatePollTransaction.java
similarity index 92%
rename from src/main/java/qora/transaction/CreatePollTransaction.java
rename to src/main/java/org/qora/transaction/CreatePollTransaction.java
index 6cf424f4..8f02bb74 100644
--- a/src/main/java/qora/transaction/CreatePollTransaction.java
+++ b/src/main/java/org/qora/transaction/CreatePollTransaction.java
@@ -1,4 +1,4 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
@@ -6,19 +6,19 @@ import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.crypto.Crypto;
+import org.qora.data.transaction.CreatePollTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.voting.Poll;
-import data.transaction.CreatePollTransactionData;
-import data.transaction.TransactionData;
-import data.voting.PollOptionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.crypto.Crypto;
-import qora.voting.Poll;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class CreatePollTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/DeployATTransaction.java b/src/main/java/org/qora/transaction/DeployATTransaction.java
similarity index 95%
rename from src/main/java/qora/transaction/DeployATTransaction.java
rename to src/main/java/org/qora/transaction/DeployATTransaction.java
index d9f11cc8..dca41da2 100644
--- a/src/main/java/qora/transaction/DeployATTransaction.java
+++ b/src/main/java/org/qora/transaction/DeployATTransaction.java
@@ -1,4 +1,4 @@
-package qora.transaction;
+package org.qora.transaction;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
@@ -9,21 +9,20 @@ import java.util.Arrays;
import java.util.List;
import org.ciyam.at.MachineState;
+import org.qora.account.Account;
+import org.qora.asset.Asset;
+import org.qora.at.AT;
+import org.qora.block.BlockChain;
+import org.qora.crypto.Crypto;
+import org.qora.data.asset.AssetData;
+import org.qora.data.transaction.DeployATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transform.Transformer;
import com.google.common.base.Utf8;
-import data.assets.AssetData;
-import data.transaction.DeployATTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.assets.Asset;
-import qora.at.AT;
-import qora.block.BlockChain;
-import qora.crypto.Crypto;
-import repository.DataException;
-import repository.Repository;
-import transform.Transformer;
-
public class DeployATTransaction extends Transaction {
// Properties
diff --git a/src/main/java/qora/transaction/GenesisTransaction.java b/src/main/java/org/qora/transaction/GenesisTransaction.java
similarity index 90%
rename from src/main/java/qora/transaction/GenesisTransaction.java
rename to src/main/java/org/qora/transaction/GenesisTransaction.java
index fc5701e4..c39ed7eb 100644
--- a/src/main/java/qora/transaction/GenesisTransaction.java
+++ b/src/main/java/org/qora/transaction/GenesisTransaction.java
@@ -1,22 +1,22 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.primitives.Bytes;
+import org.qora.account.Account;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.transaction.GenesisTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.TransactionTransformer;
-import data.transaction.GenesisTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PrivateKeyAccount;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import repository.DataException;
-import repository.Repository;
-import transform.TransformationException;
-import transform.transaction.TransactionTransformer;
+import com.google.common.primitives.Bytes;
public class GenesisTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/IssueAssetTransaction.java b/src/main/java/org/qora/transaction/IssueAssetTransaction.java
similarity index 93%
rename from src/main/java/qora/transaction/IssueAssetTransaction.java
rename to src/main/java/org/qora/transaction/IssueAssetTransaction.java
index 22effc19..355469a3 100644
--- a/src/main/java/qora/transaction/IssueAssetTransaction.java
+++ b/src/main/java/org/qora/transaction/IssueAssetTransaction.java
@@ -1,21 +1,21 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.crypto.Crypto;
+import org.qora.data.transaction.IssueAssetTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
-import data.transaction.IssueAssetTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.crypto.Crypto;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class IssueAssetTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/MessageTransaction.java b/src/main/java/org/qora/transaction/MessageTransaction.java
similarity index 91%
rename from src/main/java/qora/transaction/MessageTransaction.java
rename to src/main/java/org/qora/transaction/MessageTransaction.java
index d23f2cbf..bce108dc 100644
--- a/src/main/java/qora/transaction/MessageTransaction.java
+++ b/src/main/java/org/qora/transaction/MessageTransaction.java
@@ -1,20 +1,20 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import data.PaymentData;
-import data.transaction.MessageTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.payment.Payment;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.MessageTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.payment.Payment;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class MessageTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/MultiPaymentTransaction.java b/src/main/java/org/qora/transaction/MultiPaymentTransaction.java
similarity index 91%
rename from src/main/java/qora/transaction/MultiPaymentTransaction.java
rename to src/main/java/org/qora/transaction/MultiPaymentTransaction.java
index 5370e7e1..3db33de4 100644
--- a/src/main/java/qora/transaction/MultiPaymentTransaction.java
+++ b/src/main/java/org/qora/transaction/MultiPaymentTransaction.java
@@ -1,20 +1,20 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import data.PaymentData;
-import data.transaction.MultiPaymentTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.payment.Payment;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.MultiPaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.payment.Payment;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class MultiPaymentTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/PaymentTransaction.java b/src/main/java/org/qora/transaction/PaymentTransaction.java
similarity index 90%
rename from src/main/java/qora/transaction/PaymentTransaction.java
rename to src/main/java/org/qora/transaction/PaymentTransaction.java
index 05391d61..a6729b01 100644
--- a/src/main/java/qora/transaction/PaymentTransaction.java
+++ b/src/main/java/org/qora/transaction/PaymentTransaction.java
@@ -1,19 +1,19 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import data.PaymentData;
-import data.transaction.PaymentTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.payment.Payment;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.payment.Payment;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class PaymentTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/RegisterNameTransaction.java b/src/main/java/org/qora/transaction/RegisterNameTransaction.java
similarity index 92%
rename from src/main/java/qora/transaction/RegisterNameTransaction.java
rename to src/main/java/org/qora/transaction/RegisterNameTransaction.java
index c578fcd4..bcd966a4 100644
--- a/src/main/java/qora/transaction/RegisterNameTransaction.java
+++ b/src/main/java/org/qora/transaction/RegisterNameTransaction.java
@@ -1,21 +1,21 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.transaction.RegisterNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
-import data.transaction.RegisterNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import qora.naming.Name;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class RegisterNameTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/SellNameTransaction.java b/src/main/java/org/qora/transaction/SellNameTransaction.java
similarity index 91%
rename from src/main/java/qora/transaction/SellNameTransaction.java
rename to src/main/java/org/qora/transaction/SellNameTransaction.java
index 6322dde7..ac3b01b3 100644
--- a/src/main/java/qora/transaction/SellNameTransaction.java
+++ b/src/main/java/org/qora/transaction/SellNameTransaction.java
@@ -1,22 +1,22 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.naming.NameData;
+import org.qora.data.transaction.SellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
-import data.naming.NameData;
-import data.transaction.SellNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.naming.Name;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class SellNameTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/Transaction.java b/src/main/java/org/qora/transaction/Transaction.java
similarity index 97%
rename from src/main/java/qora/transaction/Transaction.java
rename to src/main/java/org/qora/transaction/Transaction.java
index 6a547391..e535224b 100644
--- a/src/main/java/qora/transaction/Transaction.java
+++ b/src/main/java/org/qora/transaction/Transaction.java
@@ -1,4 +1,4 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.math.BigInteger;
@@ -10,23 +10,22 @@ import java.util.Map;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.qora.account.Account;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.account.PublicKeyAccount;
+import org.qora.block.BlockChain;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.TransactionTransformer;
+import org.qora.utils.Base58;
+import org.qora.utils.NTP;
import static java.util.Arrays.stream;
import static java.util.stream.Collectors.toMap;
-import data.block.BlockData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PrivateKeyAccount;
-import qora.account.PublicKeyAccount;
-import qora.block.BlockChain;
-import repository.DataException;
-import repository.Repository;
-import transform.TransformationException;
-import transform.transaction.TransactionTransformer;
-import utils.Base58;
-import utils.NTP;
-
public abstract class Transaction {
// Transaction types
diff --git a/src/main/java/qora/transaction/TransferAssetTransaction.java b/src/main/java/org/qora/transaction/TransferAssetTransaction.java
similarity index 90%
rename from src/main/java/qora/transaction/TransferAssetTransaction.java
rename to src/main/java/org/qora/transaction/TransferAssetTransaction.java
index 47948151..031e4d61 100644
--- a/src/main/java/qora/transaction/TransferAssetTransaction.java
+++ b/src/main/java/org/qora/transaction/TransferAssetTransaction.java
@@ -1,20 +1,20 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import data.PaymentData;
-import data.transaction.TransactionData;
-import data.transaction.TransferAssetTransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.payment.Payment;
-import repository.DataException;
-import repository.Repository;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.TransferAssetTransactionData;
+import org.qora.payment.Payment;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class TransferAssetTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/UpdateNameTransaction.java b/src/main/java/org/qora/transaction/UpdateNameTransaction.java
similarity index 91%
rename from src/main/java/qora/transaction/UpdateNameTransaction.java
rename to src/main/java/org/qora/transaction/UpdateNameTransaction.java
index ac87a7e6..cb9b9661 100644
--- a/src/main/java/qora/transaction/UpdateNameTransaction.java
+++ b/src/main/java/org/qora/transaction/UpdateNameTransaction.java
@@ -1,22 +1,22 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
-import com.google.common.base.Utf8;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.crypto.Crypto;
+import org.qora.data.naming.NameData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.UpdateNameTransactionData;
+import org.qora.naming.Name;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
-import data.transaction.UpdateNameTransactionData;
-import data.naming.NameData;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.crypto.Crypto;
-import qora.naming.Name;
-import repository.DataException;
-import repository.Repository;
+import com.google.common.base.Utf8;
public class UpdateNameTransaction extends Transaction {
diff --git a/src/main/java/qora/transaction/VoteOnPollTransaction.java b/src/main/java/org/qora/transaction/VoteOnPollTransaction.java
similarity index 92%
rename from src/main/java/qora/transaction/VoteOnPollTransaction.java
rename to src/main/java/org/qora/transaction/VoteOnPollTransaction.java
index 0dca6a42..faef2d23 100644
--- a/src/main/java/qora/transaction/VoteOnPollTransaction.java
+++ b/src/main/java/org/qora/transaction/VoteOnPollTransaction.java
@@ -1,4 +1,4 @@
-package qora.transaction;
+package org.qora.transaction;
import java.math.BigDecimal;
import java.util.ArrayList;
@@ -7,23 +7,22 @@ import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import org.qora.account.Account;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.VoteOnPollTransactionData;
+import org.qora.data.voting.PollData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.data.voting.VoteOnPollData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.VotingRepository;
+import org.qora.voting.Poll;
import com.google.common.base.Utf8;
-import data.transaction.TransactionData;
-import data.transaction.VoteOnPollTransactionData;
-import data.voting.PollData;
-import data.voting.PollOptionData;
-import data.voting.VoteOnPollData;
-import qora.account.Account;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.voting.Poll;
-import repository.DataException;
-import repository.Repository;
-import repository.VotingRepository;
-
public class VoteOnPollTransaction extends Transaction {
private static final Logger LOGGER = LogManager.getLogger(VoteOnPollTransaction.class);
diff --git a/src/main/java/transform/PaymentTransformer.java b/src/main/java/org/qora/transform/PaymentTransformer.java
similarity index 93%
rename from src/main/java/transform/PaymentTransformer.java
rename to src/main/java/org/qora/transform/PaymentTransformer.java
index ef3da0a2..d49541cd 100644
--- a/src/main/java/transform/PaymentTransformer.java
+++ b/src/main/java/org/qora/transform/PaymentTransformer.java
@@ -1,4 +1,4 @@
-package transform;
+package org.qora.transform;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,13 +6,12 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.data.PaymentData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.primitives.Longs;
-import data.PaymentData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class PaymentTransformer extends Transformer {
// Property lengths
diff --git a/src/main/java/transform/TransformationException.java b/src/main/java/org/qora/transform/TransformationException.java
similarity index 93%
rename from src/main/java/transform/TransformationException.java
rename to src/main/java/org/qora/transform/TransformationException.java
index 39b6c0dd..d8182574 100644
--- a/src/main/java/transform/TransformationException.java
+++ b/src/main/java/org/qora/transform/TransformationException.java
@@ -1,4 +1,4 @@
-package transform;
+package org.qora.transform;
public class TransformationException extends Exception {
diff --git a/src/main/java/transform/Transformer.java b/src/main/java/org/qora/transform/Transformer.java
similarity index 95%
rename from src/main/java/transform/Transformer.java
rename to src/main/java/org/qora/transform/Transformer.java
index ad9959f9..6df49338 100644
--- a/src/main/java/transform/Transformer.java
+++ b/src/main/java/org/qora/transform/Transformer.java
@@ -1,4 +1,4 @@
-package transform;
+package org.qora.transform;
public abstract class Transformer {
diff --git a/src/main/java/transform/block/BlockTransformer.java b/src/main/java/org/qora/transform/block/BlockTransformer.java
similarity index 95%
rename from src/main/java/transform/block/BlockTransformer.java
rename to src/main/java/org/qora/transform/block/BlockTransformer.java
index 2ed501b5..d8e3ce73 100644
--- a/src/main/java/transform/block/BlockTransformer.java
+++ b/src/main/java/org/qora/transform/block/BlockTransformer.java
@@ -1,4 +1,4 @@
-package transform.block;
+package org.qora.transform.block;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -10,30 +10,29 @@ import java.util.List;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Order;
+import org.qora.block.Block;
+import org.qora.data.asset.TradeData;
+import org.qora.data.at.ATStateData;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.transaction.CreateOrderTransaction;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.transform.TransformationException;
+import org.qora.transform.Transformer;
+import org.qora.transform.transaction.TransactionTransformer;
+import org.qora.utils.Base58;
+import org.qora.utils.Serialization;
+import org.qora.utils.Triple;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Bytes;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.assets.TradeData;
-import data.at.ATStateData;
-import data.block.BlockData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.assets.Order;
-import qora.block.Block;
-import qora.transaction.CreateOrderTransaction;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.TransactionType;
-import repository.DataException;
-import transform.TransformationException;
-import transform.Transformer;
-import transform.transaction.TransactionTransformer;
-import utils.Base58;
-import utils.Triple;
-import utils.Serialization;
-
public class BlockTransformer extends Transformer {
private static final int VERSION_LENGTH = INT_LENGTH;
diff --git a/src/main/java/transform/transaction/ATTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/ATTransactionTransformer.java
similarity index 93%
rename from src/main/java/transform/transaction/ATTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/ATTransactionTransformer.java
index 26743fe1..570a9a4a 100644
--- a/src/main/java/transform/transaction/ATTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/ATTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,15 +6,14 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.data.transaction.ATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import data.transaction.ATTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class ATTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/ArbitraryTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/ArbitraryTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/ArbitraryTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/ArbitraryTransactionTransformer.java
index 3cece624..b95f58b5 100644
--- a/src/main/java/transform/transaction/ArbitraryTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/ArbitraryTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -10,23 +10,22 @@ import java.util.List;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.block.BlockChain;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.ArbitraryTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.ArbitraryTransactionData.DataType;
+import org.qora.transaction.ArbitraryTransaction;
+import org.qora.transform.PaymentTransformer;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Base58;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.block.BlockChain;
-import qora.transaction.ArbitraryTransaction;
-import data.PaymentData;
-import data.transaction.ArbitraryTransactionData;
-import data.transaction.ArbitraryTransactionData.DataType;
-import transform.PaymentTransformer;
-import transform.TransformationException;
-import utils.Base58;
-import utils.Serialization;
-
public class ArbitraryTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/BuyNameTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/BuyNameTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/BuyNameTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/BuyNameTransactionTransformer.java
index 87ed0966..c8077660 100644
--- a/src/main/java/transform/transaction/BuyNameTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/BuyNameTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,19 +6,18 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.BuyNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.BuyNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.naming.Name;
-import transform.TransformationException;
-import utils.Serialization;
-
public class BuyNameTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/CancelOrderTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/CancelOrderTransactionTransformer.java
similarity index 90%
rename from src/main/java/transform/transaction/CancelOrderTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/CancelOrderTransactionTransformer.java
index 8946c140..fbcaa1d2 100644
--- a/src/main/java/transform/transaction/CancelOrderTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/CancelOrderTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,18 +6,17 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.CancelOrderTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Base58;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import data.transaction.CancelOrderTransactionData;
-import transform.TransformationException;
-import utils.Base58;
-import utils.Serialization;
-
public class CancelOrderTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/CancelSellNameTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/CancelSellNameTransactionTransformer.java
similarity index 91%
rename from src/main/java/transform/transaction/CancelSellNameTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/CancelSellNameTransactionTransformer.java
index fa9330af..f7218c34 100644
--- a/src/main/java/transform/transaction/CancelSellNameTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/CancelSellNameTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,19 +6,18 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.CancelSellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.CancelSellNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.naming.Name;
-import transform.TransformationException;
-import utils.Serialization;
-
public class CancelSellNameTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/CreateOrderTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/CreateOrderTransactionTransformer.java
similarity index 94%
rename from src/main/java/transform/transaction/CreateOrderTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/CreateOrderTransactionTransformer.java
index a336b19c..e0f8f191 100644
--- a/src/main/java/transform/transaction/CreateOrderTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/CreateOrderTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,18 +6,17 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.block.BlockChain;
+import org.qora.data.transaction.CreateOrderTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.block.BlockChain;
-import data.transaction.CreateOrderTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class CreateOrderTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/CreatePollTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/CreatePollTransactionTransformer.java
similarity index 93%
rename from src/main/java/transform/transaction/CreatePollTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/CreatePollTransactionTransformer.java
index 4087e91b..5429db56 100644
--- a/src/main/java/transform/transaction/CreatePollTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/CreatePollTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -9,22 +9,21 @@ import java.util.List;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.block.BlockChain;
+import org.qora.data.transaction.CreatePollTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
+import org.qora.voting.Poll;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.CreatePollTransactionData;
-import data.transaction.TransactionData;
-import data.voting.PollOptionData;
-import qora.account.PublicKeyAccount;
-import qora.block.BlockChain;
-import qora.transaction.Transaction.TransactionType;
-import qora.voting.Poll;
-import transform.TransformationException;
-import utils.Serialization;
-
public class CreatePollTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/DeployATTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/DeployATTransactionTransformer.java
similarity index 95%
rename from src/main/java/transform/transaction/DeployATTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/DeployATTransactionTransformer.java
index f5ab60ed..903921f1 100644
--- a/src/main/java/transform/transaction/DeployATTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/DeployATTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,21 +6,20 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.transaction.DeployATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transaction.DeployATTransaction;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import qora.transaction.DeployATTransaction;
-import data.transaction.DeployATTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class DeployATTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/GenesisTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/GenesisTransactionTransformer.java
similarity index 91%
rename from src/main/java/transform/transaction/GenesisTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/GenesisTransactionTransformer.java
index f0ab8e99..ed8ef8bf 100644
--- a/src/main/java/transform/transaction/GenesisTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/GenesisTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,17 +6,16 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.asset.Asset;
+import org.qora.block.BlockChain;
+import org.qora.data.transaction.GenesisTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.assets.Asset;
-import qora.block.BlockChain;
-import data.transaction.GenesisTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class GenesisTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/IssueAssetTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/IssueAssetTransactionTransformer.java
similarity index 94%
rename from src/main/java/transform/transaction/IssueAssetTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/IssueAssetTransactionTransformer.java
index 58fd378c..24199d26 100644
--- a/src/main/java/transform/transaction/IssueAssetTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/IssueAssetTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -7,20 +7,19 @@ import java.nio.ByteBuffer;
import java.util.Arrays;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.block.BlockChain;
+import org.qora.data.transaction.IssueAssetTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transaction.IssueAssetTransaction;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.block.BlockChain;
-import qora.transaction.IssueAssetTransaction;
-import data.transaction.IssueAssetTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class IssueAssetTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/MessageTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/MessageTransactionTransformer.java
similarity index 94%
rename from src/main/java/transform/transaction/MessageTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/MessageTransactionTransformer.java
index 2363e700..ac4c1705 100644
--- a/src/main/java/transform/transaction/MessageTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/MessageTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -7,19 +7,18 @@ import java.nio.ByteBuffer;
import java.nio.charset.Charset;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.data.transaction.MessageTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transaction.MessageTransaction;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.transaction.MessageTransaction;
-import data.transaction.MessageTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class MessageTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/MultiPaymentTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/MultiPaymentTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/MultiPaymentTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/MultiPaymentTransactionTransformer.java
index 6a8d1335..b388923b 100644
--- a/src/main/java/transform/transaction/MultiPaymentTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/MultiPaymentTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -10,20 +10,19 @@ import java.util.List;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.block.BlockChain;
+import org.qora.data.PaymentData;
+import org.qora.data.transaction.MultiPaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transform.PaymentTransformer;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.block.BlockChain;
-import data.PaymentData;
-import data.transaction.MultiPaymentTransactionData;
-import transform.PaymentTransformer;
-import transform.TransformationException;
-import utils.Serialization;
-
public class MultiPaymentTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/PaymentTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/PaymentTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/PaymentTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/PaymentTransactionTransformer.java
index 6e940be0..343430e6 100644
--- a/src/main/java/transform/transaction/PaymentTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/PaymentTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,17 +6,16 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import data.transaction.PaymentTransactionData;
-import transform.TransformationException;
-import utils.Serialization;
-
public class PaymentTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/RegisterNameTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/RegisterNameTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/RegisterNameTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/RegisterNameTransactionTransformer.java
index 912a16ce..3e2317b2 100644
--- a/src/main/java/transform/transaction/RegisterNameTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/RegisterNameTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,19 +6,18 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.RegisterNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.RegisterNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.naming.Name;
-import transform.TransformationException;
-import utils.Serialization;
-
public class RegisterNameTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/SellNameTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/SellNameTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/SellNameTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/SellNameTransactionTransformer.java
index b9e7bdf9..7dc75d56 100644
--- a/src/main/java/transform/transaction/SellNameTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/SellNameTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,19 +6,18 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.SellNameTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.naming.Name;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.SellNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.naming.Name;
-import transform.TransformationException;
-import utils.Serialization;
-
public class SellNameTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/TransactionTransformer.java b/src/main/java/org/qora/transform/transaction/TransactionTransformer.java
similarity index 97%
rename from src/main/java/transform/transaction/TransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/TransactionTransformer.java
index 232ce38f..ee244d34 100644
--- a/src/main/java/transform/transaction/TransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/TransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.nio.BufferUnderflowException;
import java.nio.ByteBuffer;
@@ -7,17 +7,16 @@ import java.util.Arrays;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.json.simple.JSONObject;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.transform.TransformationException;
+import org.qora.transform.Transformer;
+import org.qora.utils.Base58;
import com.google.common.hash.HashCode;
-import data.transaction.TransactionData;
-import qora.account.PrivateKeyAccount;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.TransactionType;
-import transform.TransformationException;
-import transform.Transformer;
-import utils.Base58;
-
public class TransactionTransformer extends Transformer {
private static final Logger LOGGER = LogManager.getLogger(TransactionTransformer.class);
diff --git a/src/main/java/transform/transaction/TransferAssetTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/TransferAssetTransactionTransformer.java
similarity index 93%
rename from src/main/java/transform/transaction/TransferAssetTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/TransferAssetTransactionTransformer.java
index f652a649..707edd0e 100644
--- a/src/main/java/transform/transaction/TransferAssetTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/TransferAssetTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,17 +6,16 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.TransferAssetTransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import data.transaction.TransferAssetTransactionData;
-import qora.account.PublicKeyAccount;
-import transform.TransformationException;
-import utils.Serialization;
-
public class TransferAssetTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/UpdateNameTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/UpdateNameTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/UpdateNameTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/UpdateNameTransactionTransformer.java
index e3f00980..32de4eb6 100644
--- a/src/main/java/transform/transaction/UpdateNameTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/UpdateNameTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,19 +6,18 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.UpdateNameTransactionData;
+import org.qora.naming.Name;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.UpdateNameTransactionData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.naming.Name;
-import transform.TransformationException;
-import utils.Serialization;
-
public class UpdateNameTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/transform/transaction/VoteOnPollTransactionTransformer.java b/src/main/java/org/qora/transform/transaction/VoteOnPollTransactionTransformer.java
similarity index 92%
rename from src/main/java/transform/transaction/VoteOnPollTransactionTransformer.java
rename to src/main/java/org/qora/transform/transaction/VoteOnPollTransactionTransformer.java
index d9f9c4f3..92218001 100644
--- a/src/main/java/transform/transaction/VoteOnPollTransactionTransformer.java
+++ b/src/main/java/org/qora/transform/transaction/VoteOnPollTransactionTransformer.java
@@ -1,4 +1,4 @@
-package transform.transaction;
+package org.qora.transform.transaction;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -6,19 +6,18 @@ import java.math.BigDecimal;
import java.nio.ByteBuffer;
import org.json.simple.JSONObject;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.TransactionData;
+import org.qora.data.transaction.VoteOnPollTransactionData;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Serialization;
+import org.qora.voting.Poll;
import com.google.common.base.Utf8;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Ints;
import com.google.common.primitives.Longs;
-import data.transaction.TransactionData;
-import data.transaction.VoteOnPollTransactionData;
-import qora.account.PublicKeyAccount;
-import qora.voting.Poll;
-import transform.TransformationException;
-import utils.Serialization;
-
public class VoteOnPollTransactionTransformer extends TransactionTransformer {
// Property lengths
diff --git a/src/main/java/txhex.java b/src/main/java/org/qora/txhex.java
similarity index 70%
rename from src/main/java/txhex.java
rename to src/main/java/org/qora/txhex.java
index 7d482eda..e011a958 100644
--- a/src/main/java/txhex.java
+++ b/src/main/java/org/qora/txhex.java
@@ -1,16 +1,17 @@
-import com.google.common.hash.HashCode;
+package org.qora;
+import org.qora.block.BlockChain;
+import org.qora.controller.Controller;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.TransactionTransformer;
+import org.qora.utils.Base58;
-import controller.Controller;
-import data.transaction.TransactionData;
-import qora.block.BlockChain;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-import transform.TransformationException;
-import transform.transaction.TransactionTransformer;
-import utils.Base58;
+import com.google.common.hash.HashCode;
public class txhex {
diff --git a/src/main/java/utils/BIP39.java b/src/main/java/org/qora/utils/BIP39.java
similarity index 96%
rename from src/main/java/utils/BIP39.java
rename to src/main/java/org/qora/utils/BIP39.java
index 622f913c..c5ef351e 100644
--- a/src/main/java/utils/BIP39.java
+++ b/src/main/java/org/qora/utils/BIP39.java
@@ -1,9 +1,9 @@
-package utils;
+package org.qora.utils;
import java.util.ArrayList;
import java.util.List;
-import globalization.BIP39WordList;
+import org.qora.globalization.BIP39WordList;
public class BIP39 {
diff --git a/src/main/java/utils/Base58.java b/src/main/java/org/qora/utils/Base58.java
similarity index 99%
rename from src/main/java/utils/Base58.java
rename to src/main/java/org/qora/utils/Base58.java
index 7724fdf1..6d4f669f 100644
--- a/src/main/java/utils/Base58.java
+++ b/src/main/java/org/qora/utils/Base58.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package utils;
+package org.qora.utils;
import java.io.UnsupportedEncodingException;
import java.math.BigInteger;
diff --git a/src/main/java/utils/NTP.java b/src/main/java/org/qora/utils/NTP.java
similarity index 98%
rename from src/main/java/utils/NTP.java
rename to src/main/java/org/qora/utils/NTP.java
index c5a303d9..c0a96baa 100644
--- a/src/main/java/utils/NTP.java
+++ b/src/main/java/org/qora/utils/NTP.java
@@ -1,4 +1,4 @@
-package utils;
+package org.qora.utils;
import java.net.InetAddress;
diff --git a/src/main/java/utils/Pair.java b/src/main/java/org/qora/utils/Pair.java
similarity index 96%
rename from src/main/java/utils/Pair.java
rename to src/main/java/org/qora/utils/Pair.java
index 8468bbee..9293bf22 100644
--- a/src/main/java/utils/Pair.java
+++ b/src/main/java/org/qora/utils/Pair.java
@@ -1,4 +1,4 @@
-package utils;
+package org.qora.utils;
public class Pair {
diff --git a/src/main/java/utils/Serialization.java b/src/main/java/org/qora/utils/Serialization.java
similarity index 97%
rename from src/main/java/utils/Serialization.java
rename to src/main/java/org/qora/utils/Serialization.java
index a394c797..1598e10d 100644
--- a/src/main/java/utils/Serialization.java
+++ b/src/main/java/org/qora/utils/Serialization.java
@@ -1,4 +1,4 @@
-package utils;
+package org.qora.utils;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
@@ -7,10 +7,10 @@ import java.math.BigDecimal;
import java.math.BigInteger;
import java.nio.ByteBuffer;
-import com.google.common.primitives.Ints;
+import org.qora.transform.TransformationException;
+import org.qora.transform.Transformer;
-import transform.TransformationException;
-import transform.Transformer;
+import com.google.common.primitives.Ints;
public class Serialization {
diff --git a/src/main/java/utils/Triple.java b/src/main/java/org/qora/utils/Triple.java
similarity index 94%
rename from src/main/java/utils/Triple.java
rename to src/main/java/org/qora/utils/Triple.java
index c19ee068..9f7c7a15 100644
--- a/src/main/java/utils/Triple.java
+++ b/src/main/java/org/qora/utils/Triple.java
@@ -1,4 +1,4 @@
-package utils;
+package org.qora.utils;
public class Triple {
diff --git a/src/main/java/v1feeder.java b/src/main/java/org/qora/v1feeder.java
similarity index 94%
rename from src/main/java/v1feeder.java
rename to src/main/java/org/qora/v1feeder.java
index fc9649d4..eebc4cbb 100644
--- a/src/main/java/v1feeder.java
+++ b/src/main/java/org/qora/v1feeder.java
@@ -1,3 +1,4 @@
+package org.qora;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
@@ -26,34 +27,33 @@ import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;
import org.json.simple.parser.ParseException;
+import org.qora.asset.Asset;
+import org.qora.block.Block;
+import org.qora.block.BlockChain;
+import org.qora.block.Block.ValidationResult;
+import org.qora.controller.Controller;
+import org.qora.crypto.Crypto;
+import org.qora.data.at.ATData;
+import org.qora.data.at.ATStateData;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.ATTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
+import org.qora.transform.TransformationException;
+import org.qora.transform.block.BlockTransformer;
+import org.qora.transform.transaction.ATTransactionTransformer;
+import org.qora.utils.Base58;
+import org.qora.utils.Pair;
+import org.qora.utils.Triple;
import com.google.common.hash.HashCode;
import com.google.common.primitives.Bytes;
import com.google.common.primitives.Ints;
-import controller.Controller;
-import data.at.ATData;
-import data.at.ATStateData;
-import data.block.BlockData;
-import data.transaction.ATTransactionData;
-import data.transaction.TransactionData;
-import qora.assets.Asset;
-import qora.block.Block;
-import qora.block.Block.ValidationResult;
-import qora.block.BlockChain;
-import qora.crypto.Crypto;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-import transform.TransformationException;
-import transform.block.BlockTransformer;
-import transform.transaction.ATTransactionTransformer;
-import utils.Base58;
-import utils.Pair;
-import utils.Triple;
-
public class v1feeder extends Thread {
private static final Logger LOGGER = LogManager.getLogger(v1feeder.class);
diff --git a/src/main/java/qora/voting/Poll.java b/src/main/java/org/qora/voting/Poll.java
similarity index 90%
rename from src/main/java/qora/voting/Poll.java
rename to src/main/java/org/qora/voting/Poll.java
index f6c747cd..5d051f55 100644
--- a/src/main/java/qora/voting/Poll.java
+++ b/src/main/java/org/qora/voting/Poll.java
@@ -1,9 +1,9 @@
-package qora.voting;
+package org.qora.voting;
-import data.transaction.CreatePollTransactionData;
-import data.voting.PollData;
-import repository.DataException;
-import repository.Repository;
+import org.qora.data.transaction.CreatePollTransactionData;
+import org.qora.data.voting.PollData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
public class Poll {
diff --git a/src/test/java/test/ATTests.java b/src/test/java/org/qora/test/ATTests.java
similarity index 90%
rename from src/test/java/test/ATTests.java
rename to src/test/java/org/qora/test/ATTests.java
index 34f8184f..099de1e7 100644
--- a/src/test/java/test/ATTests.java
+++ b/src/test/java/org/qora/test/ATTests.java
@@ -1,6 +1,18 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.asset.Asset;
+import org.qora.data.at.ATStateData;
+import org.qora.data.block.BlockData;
+import org.qora.data.block.BlockTransactionData;
+import org.qora.data.transaction.DeployATTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.DeployATTransaction;
+import org.qora.transform.TransformationException;
+import org.qora.utils.Base58;
+
import static org.junit.jupiter.api.Assertions.*;
import java.math.BigDecimal;
@@ -8,18 +20,6 @@ import java.util.Arrays;
import com.google.common.hash.HashCode;
-import data.at.ATStateData;
-import data.block.BlockData;
-import data.block.BlockTransactionData;
-import data.transaction.DeployATTransactionData;
-import qora.assets.Asset;
-import qora.transaction.DeployATTransaction;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import utils.Base58;
-
public class ATTests extends Common {
@Test
diff --git a/src/test/java/test/BTCACCTTests.java b/src/test/java/org/qora/test/BTCACCTTests.java
similarity index 99%
rename from src/test/java/test/BTCACCTTests.java
rename to src/test/java/org/qora/test/BTCACCTTests.java
index ac1a6a96..2afb75f2 100644
--- a/src/test/java/test/BTCACCTTests.java
+++ b/src/test/java/org/qora/test/BTCACCTTests.java
@@ -1,4 +1,4 @@
-package test;
+package org.qora.test;
import java.io.File;
import java.net.UnknownHostException;
diff --git a/src/test/java/test/BTCTests.java b/src/test/java/org/qora/test/BTCTests.java
similarity index 95%
rename from src/test/java/test/BTCTests.java
rename to src/test/java/org/qora/test/BTCTests.java
index d2ba3030..ca1cf289 100644
--- a/src/test/java/test/BTCTests.java
+++ b/src/test/java/org/qora/test/BTCTests.java
@@ -1,13 +1,12 @@
-package test;
+package org.qora.test;
import org.bitcoinj.script.Script;
import org.bitcoinj.script.ScriptBuilder;
import org.junit.Test;
+import org.qora.crosschain.BTC;
import com.google.common.hash.HashCode;
-import crosschain.BTC;
-
public class BTCTests {
@Test
diff --git a/src/test/java/test/BlockTests.java b/src/test/java/org/qora/test/BlockTests.java
similarity index 90%
rename from src/test/java/test/BlockTests.java
rename to src/test/java/org/qora/test/BlockTests.java
index 5928b709..ede8d4be 100644
--- a/src/test/java/test/BlockTests.java
+++ b/src/test/java/org/qora/test/BlockTests.java
@@ -1,21 +1,21 @@
-package test;
+package org.qora.test;
import java.math.BigDecimal;
import java.util.List;
import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.*;
+import org.qora.block.Block;
+import org.qora.block.GenesisBlock;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.Transaction;
+import org.qora.transform.TransformationException;
+import org.qora.transform.block.BlockTransformer;
-import data.block.BlockData;
-import data.transaction.TransactionData;
-import qora.block.Block;
-import qora.block.GenesisBlock;
-import qora.transaction.Transaction;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import transform.block.BlockTransformer;
+import static org.junit.jupiter.api.Assertions.*;
public class BlockTests extends Common {
diff --git a/src/test/java/test/BlockchainTests.java b/src/test/java/org/qora/test/BlockchainTests.java
similarity index 64%
rename from src/test/java/test/BlockchainTests.java
rename to src/test/java/org/qora/test/BlockchainTests.java
index 9dc2258b..6df80569 100644
--- a/src/test/java/test/BlockchainTests.java
+++ b/src/test/java/org/qora/test/BlockchainTests.java
@@ -1,9 +1,8 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
-
-import qora.block.BlockChain;
-import repository.DataException;
+import org.qora.block.BlockChain;
+import org.qora.repository.DataException;
public class BlockchainTests extends Common {
diff --git a/src/test/java/test/Common.java b/src/test/java/org/qora/test/Common.java
similarity index 64%
rename from src/test/java/test/Common.java
rename to src/test/java/org/qora/test/Common.java
index 2cfa1fdc..62d39d18 100644
--- a/src/test/java/test/Common.java
+++ b/src/test/java/org/qora/test/Common.java
@@ -1,16 +1,13 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.BeforeAll;
-
-import controller.Controller;
-
+import org.qora.controller.Controller;
+import org.qora.repository.DataException;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
import org.junit.jupiter.api.AfterAll;
-import repository.DataException;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-
public class Common {
@BeforeAll
diff --git a/src/test/java/test/CompatibilityTests.java b/src/test/java/org/qora/test/CompatibilityTests.java
similarity index 90%
rename from src/test/java/test/CompatibilityTests.java
rename to src/test/java/org/qora/test/CompatibilityTests.java
index d5c3e154..0a70991e 100644
--- a/src/test/java/test/CompatibilityTests.java
+++ b/src/test/java/org/qora/test/CompatibilityTests.java
@@ -1,17 +1,17 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.data.transaction.TransactionData;
+import org.qora.transaction.CreateOrderTransaction;
+import org.qora.transaction.CreatePollTransaction;
+import org.qora.transaction.IssueAssetTransaction;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.TransactionTransformer;
+
import static org.junit.jupiter.api.Assertions.*;
import com.google.common.hash.HashCode;
-import data.transaction.TransactionData;
-import qora.transaction.CreateOrderTransaction;
-import qora.transaction.CreatePollTransaction;
-import qora.transaction.IssueAssetTransaction;
-import transform.TransformationException;
-import transform.transaction.TransactionTransformer;
-
public class CompatibilityTests {
@Test
diff --git a/src/test/java/test/CryptoTests.java b/src/test/java/org/qora/test/CryptoTests.java
similarity index 95%
rename from src/test/java/test/CryptoTests.java
rename to src/test/java/org/qora/test/CryptoTests.java
index b90e335a..be7543af 100644
--- a/src/test/java/test/CryptoTests.java
+++ b/src/test/java/org/qora/test/CryptoTests.java
@@ -1,12 +1,12 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.crypto.Crypto;
+
import static org.junit.jupiter.api.Assertions.*;
import com.google.common.hash.HashCode;
-import qora.crypto.Crypto;
-
public class CryptoTests {
@Test
diff --git a/src/test/java/test/ExceptionTests.java b/src/test/java/org/qora/test/ExceptionTests.java
similarity index 97%
rename from src/test/java/test/ExceptionTests.java
rename to src/test/java/org/qora/test/ExceptionTests.java
index b0029a8b..eb6e13bb 100644
--- a/src/test/java/test/ExceptionTests.java
+++ b/src/test/java/org/qora/test/ExceptionTests.java
@@ -1,9 +1,9 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.*;
+import org.qora.block.Block;
-import qora.block.Block;
+import static org.junit.jupiter.api.Assertions.*;
public class ExceptionTests {
diff --git a/src/test/java/test/GenesisTests.java b/src/test/java/org/qora/test/GenesisTests.java
similarity index 86%
rename from src/test/java/test/GenesisTests.java
rename to src/test/java/org/qora/test/GenesisTests.java
index 15f9e016..f7dcf455 100644
--- a/src/test/java/test/GenesisTests.java
+++ b/src/test/java/org/qora/test/GenesisTests.java
@@ -1,25 +1,25 @@
-package test;
+package org.qora.test;
import java.math.BigDecimal;
import java.util.List;
import org.junit.jupiter.api.Test;
+import org.qora.account.Account;
+import org.qora.asset.Asset;
+import org.qora.block.Block;
+import org.qora.block.GenesisBlock;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
+import org.qora.transaction.Transaction;
+
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.AfterAll;
-import data.transaction.TransactionData;
-import qora.account.Account;
-import qora.assets.Asset;
-import qora.block.Block;
-import qora.block.GenesisBlock;
-import qora.transaction.Transaction;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-
// Don't extend Common as we want an in-memory database
public class GenesisTests {
diff --git a/src/test/java/test/LoadTests.java b/src/test/java/org/qora/test/LoadTests.java
similarity index 89%
rename from src/test/java/test/LoadTests.java
rename to src/test/java/org/qora/test/LoadTests.java
index ab86a7c7..ce55b1e9 100644
--- a/src/test/java/test/LoadTests.java
+++ b/src/test/java/org/qora/test/LoadTests.java
@@ -1,17 +1,17 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.*;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.TransactionRepository;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.utils.Base58;
-import data.transaction.PaymentTransactionData;
-import data.transaction.TransactionData;
-import qora.account.PublicKeyAccount;
-import qora.transaction.Transaction.TransactionType;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import repository.TransactionRepository;
-import utils.Base58;
+import static org.junit.jupiter.api.Assertions.*;
public class LoadTests extends Common {
diff --git a/src/test/java/test/NavigationTests.java b/src/test/java/org/qora/test/NavigationTests.java
similarity index 81%
rename from src/test/java/test/NavigationTests.java
rename to src/test/java/org/qora/test/NavigationTests.java
index bb53d1dc..932ae0b7 100644
--- a/src/test/java/test/NavigationTests.java
+++ b/src/test/java/org/qora/test/NavigationTests.java
@@ -1,16 +1,16 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
-import static org.junit.jupiter.api.Assertions.*;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.TransactionRepository;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.utils.Base58;
-import data.block.BlockData;
-import data.transaction.TransactionData;
-import qora.transaction.Transaction.TransactionType;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import repository.TransactionRepository;
-import utils.Base58;
+import static org.junit.jupiter.api.Assertions.*;
public class NavigationTests extends Common {
diff --git a/src/test/java/test/RepositoryTests.java b/src/test/java/org/qora/test/RepositoryTests.java
similarity index 89%
rename from src/test/java/test/RepositoryTests.java
rename to src/test/java/org/qora/test/RepositoryTests.java
index 0658d98a..b8f88335 100644
--- a/src/test/java/test/RepositoryTests.java
+++ b/src/test/java/org/qora/test/RepositoryTests.java
@@ -1,15 +1,15 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+
import static org.junit.jupiter.api.Assertions.*;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-
public class RepositoryTests extends Common {
private static final Logger LOGGER = LogManager.getLogger(RepositoryTests.class);
diff --git a/src/test/java/test/SaveTests.java b/src/test/java/org/qora/test/SaveTests.java
similarity index 75%
rename from src/test/java/test/SaveTests.java
rename to src/test/java/org/qora/test/SaveTests.java
index cdfb3af7..22d3eba6 100644
--- a/src/test/java/test/SaveTests.java
+++ b/src/test/java/org/qora/test/SaveTests.java
@@ -1,16 +1,15 @@
-package test;
+package org.qora.test;
import java.math.BigDecimal;
import java.time.Instant;
import org.junit.jupiter.api.Test;
-
-import data.transaction.PaymentTransactionData;
-import qora.account.PublicKeyAccount;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import utils.Base58;
+import org.qora.account.PublicKeyAccount;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.utils.Base58;
public class SaveTests extends Common {
diff --git a/src/test/java/test/SerializationTests.java b/src/test/java/org/qora/test/SerializationTests.java
similarity index 89%
rename from src/test/java/test/SerializationTests.java
rename to src/test/java/org/qora/test/SerializationTests.java
index f546fc45..222ee581 100644
--- a/src/test/java/test/SerializationTests.java
+++ b/src/test/java/org/qora/test/SerializationTests.java
@@ -1,25 +1,25 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.block.Block;
+import org.qora.block.GenesisBlock;
+import org.qora.data.block.BlockData;
+import org.qora.data.transaction.GenesisTransactionData;
+import org.qora.data.transaction.TransactionData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.transaction.GenesisTransaction;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.Transaction.TransactionType;
+import org.qora.transform.TransformationException;
+import org.qora.transform.transaction.TransactionTransformer;
+
import static org.junit.jupiter.api.Assertions.*;
import java.util.Arrays;
import java.util.List;
-import data.block.BlockData;
-import data.transaction.GenesisTransactionData;
-import data.transaction.TransactionData;
-import qora.block.Block;
-import qora.block.GenesisBlock;
-import qora.transaction.GenesisTransaction;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.TransactionType;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import transform.TransformationException;
-import transform.transaction.TransactionTransformer;
-
public class SerializationTests extends Common {
@Test
diff --git a/src/test/java/test/SignatureTests.java b/src/test/java/org/qora/test/SignatureTests.java
similarity index 86%
rename from src/test/java/test/SignatureTests.java
rename to src/test/java/org/qora/test/SignatureTests.java
index 304503db..196a02ce 100644
--- a/src/test/java/test/SignatureTests.java
+++ b/src/test/java/org/qora/test/SignatureTests.java
@@ -1,20 +1,20 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.block.Block;
+import org.qora.block.GenesisBlock;
+import org.qora.data.block.BlockData;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryManager;
+import org.qora.utils.Base58;
+import org.qora.utils.NTP;
+
import static org.junit.jupiter.api.Assertions.*;
import java.math.BigDecimal;
-import data.block.BlockData;
-import qora.account.PrivateKeyAccount;
-import qora.block.Block;
-import qora.block.GenesisBlock;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryManager;
-import utils.Base58;
-import utils.NTP;
-
public class SignatureTests extends Common {
@Test
diff --git a/src/test/java/test/TransactionTests.java b/src/test/java/org/qora/test/TransactionTests.java
similarity index 94%
rename from src/test/java/test/TransactionTests.java
rename to src/test/java/org/qora/test/TransactionTests.java
index f57def65..ac87e530 100644
--- a/src/test/java/test/TransactionTests.java
+++ b/src/test/java/org/qora/test/TransactionTests.java
@@ -1,6 +1,62 @@
-package test;
+package org.qora.test;
import org.junit.jupiter.api.Test;
+import org.qora.account.Account;
+import org.qora.account.PrivateKeyAccount;
+import org.qora.account.PublicKeyAccount;
+import org.qora.asset.Asset;
+import org.qora.block.Block;
+import org.qora.block.BlockChain;
+import org.qora.data.PaymentData;
+import org.qora.data.account.AccountBalanceData;
+import org.qora.data.account.AccountData;
+import org.qora.data.asset.AssetData;
+import org.qora.data.asset.OrderData;
+import org.qora.data.asset.TradeData;
+import org.qora.data.block.BlockData;
+import org.qora.data.naming.NameData;
+import org.qora.data.transaction.BuyNameTransactionData;
+import org.qora.data.transaction.CancelOrderTransactionData;
+import org.qora.data.transaction.CancelSellNameTransactionData;
+import org.qora.data.transaction.CreateOrderTransactionData;
+import org.qora.data.transaction.CreatePollTransactionData;
+import org.qora.data.transaction.IssueAssetTransactionData;
+import org.qora.data.transaction.MessageTransactionData;
+import org.qora.data.transaction.MultiPaymentTransactionData;
+import org.qora.data.transaction.PaymentTransactionData;
+import org.qora.data.transaction.RegisterNameTransactionData;
+import org.qora.data.transaction.SellNameTransactionData;
+import org.qora.data.transaction.TransferAssetTransactionData;
+import org.qora.data.transaction.UpdateNameTransactionData;
+import org.qora.data.transaction.VoteOnPollTransactionData;
+import org.qora.data.voting.PollData;
+import org.qora.data.voting.PollOptionData;
+import org.qora.data.voting.VoteOnPollData;
+import org.qora.repository.AccountRepository;
+import org.qora.repository.AssetRepository;
+import org.qora.repository.DataException;
+import org.qora.repository.Repository;
+import org.qora.repository.RepositoryFactory;
+import org.qora.repository.RepositoryManager;
+import org.qora.repository.hsqldb.HSQLDBRepositoryFactory;
+import org.qora.settings.Settings;
+import org.qora.transaction.BuyNameTransaction;
+import org.qora.transaction.CancelOrderTransaction;
+import org.qora.transaction.CancelSellNameTransaction;
+import org.qora.transaction.CreateOrderTransaction;
+import org.qora.transaction.CreatePollTransaction;
+import org.qora.transaction.IssueAssetTransaction;
+import org.qora.transaction.MessageTransaction;
+import org.qora.transaction.MultiPaymentTransaction;
+import org.qora.transaction.PaymentTransaction;
+import org.qora.transaction.RegisterNameTransaction;
+import org.qora.transaction.SellNameTransaction;
+import org.qora.transaction.Transaction;
+import org.qora.transaction.TransferAssetTransaction;
+import org.qora.transaction.UpdateNameTransaction;
+import org.qora.transaction.VoteOnPollTransaction;
+import org.qora.transaction.Transaction.ValidationResult;
+
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.AfterEach;
@@ -15,62 +71,6 @@ import org.json.simple.JSONObject;
import com.google.common.hash.HashCode;
-import data.PaymentData;
-import data.account.AccountBalanceData;
-import data.account.AccountData;
-import data.assets.AssetData;
-import data.assets.OrderData;
-import data.assets.TradeData;
-import data.block.BlockData;
-import data.naming.NameData;
-import data.transaction.BuyNameTransactionData;
-import data.transaction.CancelOrderTransactionData;
-import data.transaction.CancelSellNameTransactionData;
-import data.transaction.CreateOrderTransactionData;
-import data.transaction.CreatePollTransactionData;
-import data.transaction.IssueAssetTransactionData;
-import data.transaction.MessageTransactionData;
-import data.transaction.MultiPaymentTransactionData;
-import data.transaction.PaymentTransactionData;
-import data.transaction.RegisterNameTransactionData;
-import data.transaction.SellNameTransactionData;
-import data.transaction.TransferAssetTransactionData;
-import data.transaction.UpdateNameTransactionData;
-import data.transaction.VoteOnPollTransactionData;
-import data.voting.PollData;
-import data.voting.PollOptionData;
-import data.voting.VoteOnPollData;
-import qora.account.Account;
-import qora.account.PrivateKeyAccount;
-import qora.account.PublicKeyAccount;
-import qora.assets.Asset;
-import qora.block.Block;
-import qora.block.BlockChain;
-import qora.transaction.BuyNameTransaction;
-import qora.transaction.CancelOrderTransaction;
-import qora.transaction.CancelSellNameTransaction;
-import qora.transaction.CreateOrderTransaction;
-import qora.transaction.CreatePollTransaction;
-import qora.transaction.IssueAssetTransaction;
-import qora.transaction.MessageTransaction;
-import qora.transaction.MultiPaymentTransaction;
-import qora.transaction.PaymentTransaction;
-import qora.transaction.RegisterNameTransaction;
-import qora.transaction.SellNameTransaction;
-import qora.transaction.Transaction;
-import qora.transaction.Transaction.ValidationResult;
-import qora.transaction.TransferAssetTransaction;
-import qora.transaction.UpdateNameTransaction;
-import qora.transaction.VoteOnPollTransaction;
-import repository.AccountRepository;
-import repository.AssetRepository;
-import repository.DataException;
-import repository.Repository;
-import repository.RepositoryFactory;
-import repository.RepositoryManager;
-import repository.hsqldb.HSQLDBRepositoryFactory;
-import settings.Settings;
-
// Don't extend Common as we want to use an in-memory database
public class TransactionTests {
diff --git a/src/test/java/test/utils/AssertExtensions.java b/src/test/java/org/qora/test/utils/AssertExtensions.java
similarity index 94%
rename from src/test/java/test/utils/AssertExtensions.java
rename to src/test/java/org/qora/test/utils/AssertExtensions.java
index f0d9b4c9..747b001f 100644
--- a/src/test/java/test/utils/AssertExtensions.java
+++ b/src/test/java/org/qora/test/utils/AssertExtensions.java
@@ -1,4 +1,4 @@
-package test.utils;
+package org.qora.test.utils;
import java.util.Collection;