diff --git a/CHANGELOG.md b/CHANGELOG.md
index 9dccd97b..0227eaef 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -42,6 +42,20 @@ All notable changes to this project will be documented in this file.
- The `AgentRestrictionsSet` event is emitted whenever restrictions are updated for an agent.
- All agent-scoped functions (e.g., mint, burn) now check the agent’s permissions before executing the transaction, ensuring proper enforcement of these restrictions.
+- **Ethers.js Version Upgrade**:
+ - The project was upgraded from **Ethers v5** to **Ethers v6**, introducing several changes to the API and syntax.
+ - **Key Changes**:
+ - Adjusted syntax for contract deployments, interactions, and function calls to comply with Ethers v6.
+ - Replaced deprecated features from v5 with the new Ethers v6 equivalents, ensuring compatibility and future-proofing the project.
+ - Updated test suites and helper functions to use the Ethers v6 `Interface` and `Contract` classes, ensuring smooth testing of the updated code.
+ - This upgrade ensures better performance, enhanced security, and improved developer experience moving forward.
+
+- **Solidity Version Upgrade to 0.8.27**:
+ - Upgraded Solidity version from **0.8.17** to **0.8.27** across all contracts, bringing in multiple new features and improvements:
+ - **File-Level Event Declaration**: Events are now declared at the file level, simplifying code structure and improving readability.
+ - **Custom Errors for Require Statements**: All `require` clauses that previously returned a string reason for failure have been updated to use **custom errors**, making debugging easier and more efficient.
+ - This upgrade provides a cleaner, more efficient error handling process and improves overall code structure without affecting backward compatibility.
+
### Updated
- **Token Recovery Function**:
diff --git a/contracts/DVA/DVATransferManager.sol b/contracts/DVA/DVATransferManager.sol
index b3381ed4..b8664a30 100644
--- a/contracts/DVA/DVATransferManager.sol
+++ b/contracts/DVA/DVATransferManager.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../roles/AgentRole.sol";
import "../token/IToken.sol";
diff --git a/contracts/DVA/DVATransferManagerProxy.sol b/contracts/DVA/DVATransferManagerProxy.sol
index 2a441a9b..1e93ee57 100644
--- a/contracts/DVA/DVATransferManagerProxy.sol
+++ b/contracts/DVA/DVATransferManagerProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
diff --git a/contracts/DVA/IDVATransferManager.sol b/contracts/DVA/IDVATransferManager.sol
index 9d746bdd..69eab01b 100644
--- a/contracts/DVA/IDVATransferManager.sol
+++ b/contracts/DVA/IDVATransferManager.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../roles/AgentRole.sol";
import "../token/IToken.sol";
diff --git a/contracts/DVD/DVDTransferManager.sol b/contracts/DVD/DVDTransferManager.sol
index a0ce737e..9c06741c 100644
--- a/contracts/DVD/DVDTransferManager.sol
+++ b/contracts/DVD/DVDTransferManager.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../roles/AgentRole.sol";
import "../token/IToken.sol";
diff --git a/contracts/ERC-3643/IERC3643.sol b/contracts/ERC-3643/IERC3643.sol
index 8af2604e..d309121e 100644
--- a/contracts/ERC-3643/IERC3643.sol
+++ b/contracts/ERC-3643/IERC3643.sol
@@ -37,7 +37,7 @@
// :#%%=
//
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import "@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol";
diff --git a/contracts/ERC-3643/IERC3643ClaimTopicsRegistry.sol b/contracts/ERC-3643/IERC3643ClaimTopicsRegistry.sol
index 256230ca..6644070a 100644
--- a/contracts/ERC-3643/IERC3643ClaimTopicsRegistry.sol
+++ b/contracts/ERC-3643/IERC3643ClaimTopicsRegistry.sol
@@ -36,7 +36,7 @@
// +@@@@%-
// :#%%=
//
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// Events
diff --git a/contracts/ERC-3643/IERC3643Compliance.sol b/contracts/ERC-3643/IERC3643Compliance.sol
index 6f7a3e61..2969dad5 100644
--- a/contracts/ERC-3643/IERC3643Compliance.sol
+++ b/contracts/ERC-3643/IERC3643Compliance.sol
@@ -36,7 +36,7 @@
// +@@@@%-
// :#%%=
//
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// Events
diff --git a/contracts/ERC-3643/IERC3643IdentityRegistry.sol b/contracts/ERC-3643/IERC3643IdentityRegistry.sol
index d64d8a59..52ebc793 100644
--- a/contracts/ERC-3643/IERC3643IdentityRegistry.sol
+++ b/contracts/ERC-3643/IERC3643IdentityRegistry.sol
@@ -36,7 +36,7 @@
// +@@@@%-
// :#%%=
//
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
import "./IERC3643IdentityRegistryStorage.sol";
diff --git a/contracts/ERC-3643/IERC3643IdentityRegistryStorage.sol b/contracts/ERC-3643/IERC3643IdentityRegistryStorage.sol
index db68bb8e..2583a4be 100644
--- a/contracts/ERC-3643/IERC3643IdentityRegistryStorage.sol
+++ b/contracts/ERC-3643/IERC3643IdentityRegistryStorage.sol
@@ -36,7 +36,7 @@
// +@@@@%-
// :#%%=
//
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
/// events
diff --git a/contracts/ERC-3643/IERC3643TrustedIssuersRegistry.sol b/contracts/ERC-3643/IERC3643TrustedIssuersRegistry.sol
index 06ed14f0..cf1057ff 100644
--- a/contracts/ERC-3643/IERC3643TrustedIssuersRegistry.sol
+++ b/contracts/ERC-3643/IERC3643TrustedIssuersRegistry.sol
@@ -36,7 +36,7 @@
// +@@@@%-
// :#%%=
//
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IClaimIssuer.sol";
/// Events
diff --git a/contracts/_testContracts/MockContract.sol b/contracts/_testContracts/MockContract.sol
index 1881e66f..95f753fc 100644
--- a/contracts/_testContracts/MockContract.sol
+++ b/contracts/_testContracts/MockContract.sol
@@ -1,4 +1,4 @@
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
contract MockContract {
address _irRegistry;
diff --git a/contracts/_testContracts/TestERC20.sol b/contracts/_testContracts/TestERC20.sol
index 90ed59fe..dbe266ef 100644
--- a/contracts/_testContracts/TestERC20.sol
+++ b/contracts/_testContracts/TestERC20.sol
@@ -58,7 +58,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/token/ERC20/extensions/ERC20Pausable.sol";
import "@openzeppelin/contracts/access/Ownable.sol";
diff --git a/contracts/_testContracts/TestUpgradedCountryAllowModule.sol b/contracts/_testContracts/TestUpgradedCountryAllowModule.sol
index 76bb6fdb..81ab029e 100644
--- a/contracts/_testContracts/TestUpgradedCountryAllowModule.sol
+++ b/contracts/_testContracts/TestUpgradedCountryAllowModule.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../compliance/modular/modules/CountryAllowModule.sol";
diff --git a/contracts/_testContracts/v_3_5_2/LegacyIA.sol b/contracts/_testContracts/v_3_5_2/LegacyIA.sol
index c362866a..db920477 100644
--- a/contracts/_testContracts/v_3_5_2/LegacyIA.sol
+++ b/contracts/_testContracts/v_3_5_2/LegacyIA.sol
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-3.0
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
abstract contract ContextLegacy {
function _msgSender() internal view virtual returns (address) {
diff --git a/contracts/_testContracts/v_3_5_2/LegacyProxy.sol b/contracts/_testContracts/v_3_5_2/LegacyProxy.sol
index 5e193918..ba5dcfed 100644
--- a/contracts/_testContracts/v_3_5_2/LegacyProxy.sol
+++ b/contracts/_testContracts/v_3_5_2/LegacyProxy.sol
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: GPL-3.0
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
interface IImplementationAuthorityLegacy {
function getImplementation() external view returns (address);
diff --git a/contracts/_testContracts/v_3_5_2/LegacyToken_3_5_2.sol b/contracts/_testContracts/v_3_5_2/LegacyToken_3_5_2.sol
index dbc098fb..fa154e01 100644
--- a/contracts/_testContracts/v_3_5_2/LegacyToken_3_5_2.sol
+++ b/contracts/_testContracts/v_3_5_2/LegacyToken_3_5_2.sol
@@ -5,7 +5,7 @@
// File: @onchain-id/solidity/contracts/interface/IERC734Legacy.sol
// SPDX-License-Identifier: GPL-3.0
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/**
* @dev interface of the ERC734 (Key Holder) standard as defined in the EIP.
diff --git a/contracts/compliance/legacy/BasicCompliance.sol b/contracts/compliance/legacy/BasicCompliance.sol
index 09bcdb07..9b77bdb6 100644
--- a/contracts/compliance/legacy/BasicCompliance.sol
+++ b/contracts/compliance/legacy/BasicCompliance.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../roles/AgentRole.sol";
import "./ICompliance.sol";
diff --git a/contracts/compliance/legacy/DefaultCompliance.sol b/contracts/compliance/legacy/DefaultCompliance.sol
index b1ee3d68..c2fc523a 100644
--- a/contracts/compliance/legacy/DefaultCompliance.sol
+++ b/contracts/compliance/legacy/DefaultCompliance.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/ICompliance.sol b/contracts/compliance/legacy/ICompliance.sol
index ddd68be4..f9a8070e 100644
--- a/contracts/compliance/legacy/ICompliance.sol
+++ b/contracts/compliance/legacy/ICompliance.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
interface ICompliance {
/**
diff --git a/contracts/compliance/legacy/features/ApproveTransfer.sol b/contracts/compliance/legacy/features/ApproveTransfer.sol
index bb1680ca..d5076852 100644
--- a/contracts/compliance/legacy/features/ApproveTransfer.sol
+++ b/contracts/compliance/legacy/features/ApproveTransfer.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/features/CountryRestrictions.sol b/contracts/compliance/legacy/features/CountryRestrictions.sol
index 36101b66..a2862330 100644
--- a/contracts/compliance/legacy/features/CountryRestrictions.sol
+++ b/contracts/compliance/legacy/features/CountryRestrictions.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/features/CountryWhitelisting.sol b/contracts/compliance/legacy/features/CountryWhitelisting.sol
index 473952df..4adc4c85 100644
--- a/contracts/compliance/legacy/features/CountryWhitelisting.sol
+++ b/contracts/compliance/legacy/features/CountryWhitelisting.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/features/DayMonthLimits.sol b/contracts/compliance/legacy/features/DayMonthLimits.sol
index 67f2566d..fd7381e2 100644
--- a/contracts/compliance/legacy/features/DayMonthLimits.sol
+++ b/contracts/compliance/legacy/features/DayMonthLimits.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/features/ExchangeMonthlyLimits.sol b/contracts/compliance/legacy/features/ExchangeMonthlyLimits.sol
index 77653c12..47201e99 100644
--- a/contracts/compliance/legacy/features/ExchangeMonthlyLimits.sol
+++ b/contracts/compliance/legacy/features/ExchangeMonthlyLimits.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/features/MaxBalance.sol b/contracts/compliance/legacy/features/MaxBalance.sol
index 40e229a3..93434159 100644
--- a/contracts/compliance/legacy/features/MaxBalance.sol
+++ b/contracts/compliance/legacy/features/MaxBalance.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/features/SupplyLimit.sol b/contracts/compliance/legacy/features/SupplyLimit.sol
index 8377ebab..26d5a956 100644
--- a/contracts/compliance/legacy/features/SupplyLimit.sol
+++ b/contracts/compliance/legacy/features/SupplyLimit.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../BasicCompliance.sol";
diff --git a/contracts/compliance/legacy/test/ApproveTransferTest.sol b/contracts/compliance/legacy/test/ApproveTransferTest.sol
index 4b39d26b..0d73c1c4 100644
--- a/contracts/compliance/legacy/test/ApproveTransferTest.sol
+++ b/contracts/compliance/legacy/test/ApproveTransferTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/ApproveTransfer.sol";
diff --git a/contracts/compliance/legacy/test/CountryRestrictionsTest.sol b/contracts/compliance/legacy/test/CountryRestrictionsTest.sol
index 1355cc9e..d9b6519f 100644
--- a/contracts/compliance/legacy/test/CountryRestrictionsTest.sol
+++ b/contracts/compliance/legacy/test/CountryRestrictionsTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/CountryRestrictions.sol";
diff --git a/contracts/compliance/legacy/test/CountryWhitelistingTest.sol b/contracts/compliance/legacy/test/CountryWhitelistingTest.sol
index 58d5b334..49739725 100644
--- a/contracts/compliance/legacy/test/CountryWhitelistingTest.sol
+++ b/contracts/compliance/legacy/test/CountryWhitelistingTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/CountryWhitelisting.sol";
diff --git a/contracts/compliance/legacy/test/DayMonthLimitsTest.sol b/contracts/compliance/legacy/test/DayMonthLimitsTest.sol
index 7a162ae0..500c3060 100644
--- a/contracts/compliance/legacy/test/DayMonthLimitsTest.sol
+++ b/contracts/compliance/legacy/test/DayMonthLimitsTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/DayMonthLimits.sol";
diff --git a/contracts/compliance/legacy/test/ExchangeMonthlyLimitsTest.sol b/contracts/compliance/legacy/test/ExchangeMonthlyLimitsTest.sol
index 992a69be..498ec129 100644
--- a/contracts/compliance/legacy/test/ExchangeMonthlyLimitsTest.sol
+++ b/contracts/compliance/legacy/test/ExchangeMonthlyLimitsTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/ExchangeMonthlyLimits.sol";
diff --git a/contracts/compliance/legacy/test/MaxBalanceTest.sol b/contracts/compliance/legacy/test/MaxBalanceTest.sol
index e5967fb7..816931f4 100644
--- a/contracts/compliance/legacy/test/MaxBalanceTest.sol
+++ b/contracts/compliance/legacy/test/MaxBalanceTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/MaxBalance.sol";
diff --git a/contracts/compliance/legacy/test/SupplyLimitTest.sol b/contracts/compliance/legacy/test/SupplyLimitTest.sol
index 322a3272..94797030 100644
--- a/contracts/compliance/legacy/test/SupplyLimitTest.sol
+++ b/contracts/compliance/legacy/test/SupplyLimitTest.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../features/SupplyLimit.sol";
diff --git a/contracts/compliance/modular/IModularCompliance.sol b/contracts/compliance/modular/IModularCompliance.sol
index 40a1ed99..63dd38b5 100644
--- a/contracts/compliance/modular/IModularCompliance.sol
+++ b/contracts/compliance/modular/IModularCompliance.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../ERC-3643/IERC3643Compliance.sol";
diff --git a/contracts/compliance/modular/MCStorage.sol b/contracts/compliance/modular/MCStorage.sol
index 8337f04b..f50d9e92 100644
--- a/contracts/compliance/modular/MCStorage.sol
+++ b/contracts/compliance/modular/MCStorage.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
contract MCStorage {
/// token linked to the compliance contract
diff --git a/contracts/compliance/modular/ModularCompliance.sol b/contracts/compliance/modular/ModularCompliance.sol
index d2ecf752..039a442d 100644
--- a/contracts/compliance/modular/ModularCompliance.sol
+++ b/contracts/compliance/modular/ModularCompliance.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
import "../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/AbstractModule.sol b/contracts/compliance/modular/modules/AbstractModule.sol
index 6b66f354..53102e47 100644
--- a/contracts/compliance/modular/modules/AbstractModule.sol
+++ b/contracts/compliance/modular/modules/AbstractModule.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./IModule.sol";
import "../../../errors/InvalidArgumentErrors.sol";
diff --git a/contracts/compliance/modular/modules/AbstractModuleUpgradeable.sol b/contracts/compliance/modular/modules/AbstractModuleUpgradeable.sol
index 4a421961..177f49b3 100644
--- a/contracts/compliance/modular/modules/AbstractModuleUpgradeable.sol
+++ b/contracts/compliance/modular/modules/AbstractModuleUpgradeable.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
diff --git a/contracts/compliance/modular/modules/ConditionalTransferModule.sol b/contracts/compliance/modular/modules/ConditionalTransferModule.sol
index 6cd9caa7..e94f07f3 100644
--- a/contracts/compliance/modular/modules/ConditionalTransferModule.sol
+++ b/contracts/compliance/modular/modules/ConditionalTransferModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/CountryAllowModule.sol b/contracts/compliance/modular/modules/CountryAllowModule.sol
index 3008fab3..a8ab9710 100644
--- a/contracts/compliance/modular/modules/CountryAllowModule.sol
+++ b/contracts/compliance/modular/modules/CountryAllowModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/CountryRestrictModule.sol b/contracts/compliance/modular/modules/CountryRestrictModule.sol
index d274b0e3..ca5b7ae0 100644
--- a/contracts/compliance/modular/modules/CountryRestrictModule.sol
+++ b/contracts/compliance/modular/modules/CountryRestrictModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/ExchangeMonthlyLimitsModule.sol b/contracts/compliance/modular/modules/ExchangeMonthlyLimitsModule.sol
index a93b8e69..f653831b 100644
--- a/contracts/compliance/modular/modules/ExchangeMonthlyLimitsModule.sol
+++ b/contracts/compliance/modular/modules/ExchangeMonthlyLimitsModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/IModule.sol b/contracts/compliance/modular/modules/IModule.sol
index cbf11425..a0800fd8 100644
--- a/contracts/compliance/modular/modules/IModule.sol
+++ b/contracts/compliance/modular/modules/IModule.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
// events
diff --git a/contracts/compliance/modular/modules/MaxBalanceModule.sol b/contracts/compliance/modular/modules/MaxBalanceModule.sol
index c8bb4bcd..81d64fbf 100644
--- a/contracts/compliance/modular/modules/MaxBalanceModule.sol
+++ b/contracts/compliance/modular/modules/MaxBalanceModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
import "../IModularCompliance.sol";
diff --git a/contracts/compliance/modular/modules/ModuleProxy.sol b/contracts/compliance/modular/modules/ModuleProxy.sol
index cd8dfe9b..124b2263 100644
--- a/contracts/compliance/modular/modules/ModuleProxy.sol
+++ b/contracts/compliance/modular/modules/ModuleProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol";
diff --git a/contracts/compliance/modular/modules/SupplyLimitModule.sol b/contracts/compliance/modular/modules/SupplyLimitModule.sol
index 1a157ab3..7ab2d466 100644
--- a/contracts/compliance/modular/modules/SupplyLimitModule.sol
+++ b/contracts/compliance/modular/modules/SupplyLimitModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity ^0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/TimeExchangeLimitsModule.sol b/contracts/compliance/modular/modules/TimeExchangeLimitsModule.sol
index 712654b6..99febb0a 100644
--- a/contracts/compliance/modular/modules/TimeExchangeLimitsModule.sol
+++ b/contracts/compliance/modular/modules/TimeExchangeLimitsModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/TimeTransfersLimitsModule.sol b/contracts/compliance/modular/modules/TimeTransfersLimitsModule.sol
index 99a3c6e9..df4ab011 100644
--- a/contracts/compliance/modular/modules/TimeTransfersLimitsModule.sol
+++ b/contracts/compliance/modular/modules/TimeTransfersLimitsModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/TransferFeesModule.sol b/contracts/compliance/modular/modules/TransferFeesModule.sol
index b57cbc83..8802527a 100644
--- a/contracts/compliance/modular/modules/TransferFeesModule.sol
+++ b/contracts/compliance/modular/modules/TransferFeesModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../IModularCompliance.sol";
import "../../../token/IToken.sol";
diff --git a/contracts/compliance/modular/modules/TransferRestrictModule.sol b/contracts/compliance/modular/modules/TransferRestrictModule.sol
index 8584826a..35fdffcc 100644
--- a/contracts/compliance/modular/modules/TransferRestrictModule.sol
+++ b/contracts/compliance/modular/modules/TransferRestrictModule.sol
@@ -66,7 +66,7 @@
* Tokeny sàrl for licensing options.
*/
-pragma solidity ^0.8.26;
+pragma solidity 0.8.27;
import "./AbstractModuleUpgradeable.sol";
diff --git a/contracts/errors/CommonErrors.sol b/contracts/errors/CommonErrors.sol
index b2045473..12e7eac6 100644
--- a/contracts/errors/CommonErrors.sol
+++ b/contracts/errors/CommonErrors.sol
@@ -62,7 +62,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// @dev Thrown when initialization has failed.
error InitializationFailed();
diff --git a/contracts/errors/ComplianceErrors.sol b/contracts/errors/ComplianceErrors.sol
index 3a227d66..3af7df53 100644
--- a/contracts/errors/ComplianceErrors.sol
+++ b/contracts/errors/ComplianceErrors.sol
@@ -62,7 +62,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// @dev Thrown when address is not a token bound to compliance contract.
error AddressNotATokenBoundToComplianceContract();
diff --git a/contracts/errors/InvalidArgumentErrors.sol b/contracts/errors/InvalidArgumentErrors.sol
index 33a1afab..6b1e4862 100644
--- a/contracts/errors/InvalidArgumentErrors.sol
+++ b/contracts/errors/InvalidArgumentErrors.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// @dev Thrown when the address is not an ERC20.
diff --git a/contracts/errors/RoleErrors.sol b/contracts/errors/RoleErrors.sol
index 40580557..2d1aa1a4 100644
--- a/contracts/errors/RoleErrors.sol
+++ b/contracts/errors/RoleErrors.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// @dev Thrown when account already has role.
error AccountAlreadyHasRole();
diff --git a/contracts/events/CommonEvents.sol b/contracts/events/CommonEvents.sol
index 12b3154d..82cd33f9 100644
--- a/contracts/events/CommonEvents.sol
+++ b/contracts/events/CommonEvents.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// event emitted when the implementation authority of the factory contract is set
diff --git a/contracts/factory/ITREXFactory.sol b/contracts/factory/ITREXFactory.sol
index 2551ed67..9d6ce4a1 100644
--- a/contracts/factory/ITREXFactory.sol
+++ b/contracts/factory/ITREXFactory.sol
@@ -59,7 +59,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../events/CommonEvents.sol";
diff --git a/contracts/factory/ITREXGateway.sol b/contracts/factory/ITREXGateway.sol
index 3c11002c..a6c25790 100644
--- a/contracts/factory/ITREXGateway.sol
+++ b/contracts/factory/ITREXGateway.sol
@@ -59,7 +59,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./ITREXFactory.sol";
diff --git a/contracts/factory/TREXFactory.sol b/contracts/factory/TREXFactory.sol
index da195b18..db737ed1 100644
--- a/contracts/factory/TREXFactory.sol
+++ b/contracts/factory/TREXFactory.sol
@@ -59,7 +59,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../roles/AgentRole.sol";
import "../token/IToken.sol";
diff --git a/contracts/factory/TREXGateway.sol b/contracts/factory/TREXGateway.sol
index 58069a31..b8494385 100644
--- a/contracts/factory/TREXGateway.sol
+++ b/contracts/factory/TREXGateway.sol
@@ -59,7 +59,7 @@
* You should have received a copy of the GNU General Public License
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./ITREXGateway.sol";
import "../roles/AgentRole.sol";
diff --git a/contracts/proxy/AbstractProxy.sol b/contracts/proxy/AbstractProxy.sol
index cf5a2064..fe039482 100644
--- a/contracts/proxy/AbstractProxy.sol
+++ b/contracts/proxy/AbstractProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./interface/IProxy.sol";
import "./authority/ITREXImplementationAuthority.sol";
diff --git a/contracts/proxy/ClaimTopicsRegistryProxy.sol b/contracts/proxy/ClaimTopicsRegistryProxy.sol
index 25b29c52..ecccbf65 100644
--- a/contracts/proxy/ClaimTopicsRegistryProxy.sol
+++ b/contracts/proxy/ClaimTopicsRegistryProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./AbstractProxy.sol";
import "../errors/InvalidArgumentErrors.sol";
diff --git a/contracts/proxy/IdentityRegistryProxy.sol b/contracts/proxy/IdentityRegistryProxy.sol
index 301de9ea..ff81a49d 100644
--- a/contracts/proxy/IdentityRegistryProxy.sol
+++ b/contracts/proxy/IdentityRegistryProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./AbstractProxy.sol";
import "../errors/CommonErrors.sol";
diff --git a/contracts/proxy/IdentityRegistryStorageProxy.sol b/contracts/proxy/IdentityRegistryStorageProxy.sol
index 17bbc028..fcf29b95 100644
--- a/contracts/proxy/IdentityRegistryStorageProxy.sol
+++ b/contracts/proxy/IdentityRegistryStorageProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./AbstractProxy.sol";
import "../errors/CommonErrors.sol";
diff --git a/contracts/proxy/ModularComplianceProxy.sol b/contracts/proxy/ModularComplianceProxy.sol
index 973b72d2..b1ec101b 100644
--- a/contracts/proxy/ModularComplianceProxy.sol
+++ b/contracts/proxy/ModularComplianceProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./AbstractProxy.sol";
import "../errors/CommonErrors.sol";
diff --git a/contracts/proxy/TokenProxy.sol b/contracts/proxy/TokenProxy.sol
index 30897cdc..5494d54e 100644
--- a/contracts/proxy/TokenProxy.sol
+++ b/contracts/proxy/TokenProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./AbstractProxy.sol";
import "../errors/InvalidArgumentErrors.sol";
diff --git a/contracts/proxy/TrustedIssuersRegistryProxy.sol b/contracts/proxy/TrustedIssuersRegistryProxy.sol
index 634a8888..25b4567f 100644
--- a/contracts/proxy/TrustedIssuersRegistryProxy.sol
+++ b/contracts/proxy/TrustedIssuersRegistryProxy.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./AbstractProxy.sol";
import "../errors/InvalidArgumentErrors.sol";
diff --git a/contracts/proxy/authority/IAFactory.sol b/contracts/proxy/authority/IAFactory.sol
index 5123506a..9f6af7bd 100644
--- a/contracts/proxy/authority/IAFactory.sol
+++ b/contracts/proxy/authority/IAFactory.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./TREXImplementationAuthority.sol";
diff --git a/contracts/proxy/authority/IIAFactory.sol b/contracts/proxy/authority/IIAFactory.sol
index 4562fcaf..75ca3053 100644
--- a/contracts/proxy/authority/IIAFactory.sol
+++ b/contracts/proxy/authority/IIAFactory.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// Events
diff --git a/contracts/proxy/authority/ITREXImplementationAuthority.sol b/contracts/proxy/authority/ITREXImplementationAuthority.sol
index 41268244..d267ce75 100644
--- a/contracts/proxy/authority/ITREXImplementationAuthority.sol
+++ b/contracts/proxy/authority/ITREXImplementationAuthority.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// events
diff --git a/contracts/proxy/authority/TREXImplementationAuthority.sol b/contracts/proxy/authority/TREXImplementationAuthority.sol
index 95a8009a..5a5686ce 100644
--- a/contracts/proxy/authority/TREXImplementationAuthority.sol
+++ b/contracts/proxy/authority/TREXImplementationAuthority.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/access/Ownable.sol";
import "./ITREXImplementationAuthority.sol";
diff --git a/contracts/proxy/interface/IProxy.sol b/contracts/proxy/interface/IProxy.sol
index b430ac15..8f764639 100644
--- a/contracts/proxy/interface/IProxy.sol
+++ b/contracts/proxy/interface/IProxy.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../events/CommonEvents.sol";
diff --git a/contracts/registry/implementation/ClaimTopicsRegistry.sol b/contracts/registry/implementation/ClaimTopicsRegistry.sol
index a9129cda..33cd62ac 100644
--- a/contracts/registry/implementation/ClaimTopicsRegistry.sol
+++ b/contracts/registry/implementation/ClaimTopicsRegistry.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
import "../storage/CTRStorage.sol";
diff --git a/contracts/registry/implementation/IdentityRegistry.sol b/contracts/registry/implementation/IdentityRegistry.sol
index 9193ee13..e8a39871 100644
--- a/contracts/registry/implementation/IdentityRegistry.sol
+++ b/contracts/registry/implementation/IdentityRegistry.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IClaimIssuer.sol";
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
diff --git a/contracts/registry/implementation/IdentityRegistryStorage.sol b/contracts/registry/implementation/IdentityRegistryStorage.sol
index 2291a1e4..333b9651 100644
--- a/contracts/registry/implementation/IdentityRegistryStorage.sol
+++ b/contracts/registry/implementation/IdentityRegistryStorage.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
diff --git a/contracts/registry/implementation/TrustedIssuersRegistry.sol b/contracts/registry/implementation/TrustedIssuersRegistry.sol
index acc6d50c..ace11ae4 100644
--- a/contracts/registry/implementation/TrustedIssuersRegistry.sol
+++ b/contracts/registry/implementation/TrustedIssuersRegistry.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IClaimIssuer.sol";
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
diff --git a/contracts/registry/interface/IClaimTopicsRegistry.sol b/contracts/registry/interface/IClaimTopicsRegistry.sol
index b83c29bf..e7ae6759 100644
--- a/contracts/registry/interface/IClaimTopicsRegistry.sol
+++ b/contracts/registry/interface/IClaimTopicsRegistry.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../ERC-3643/IERC3643ClaimTopicsRegistry.sol";
diff --git a/contracts/registry/interface/IIdentityRegistry.sol b/contracts/registry/interface/IIdentityRegistry.sol
index 26469b19..8f0d214e 100644
--- a/contracts/registry/interface/IIdentityRegistry.sol
+++ b/contracts/registry/interface/IIdentityRegistry.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../ERC-3643/IERC3643IdentityRegistry.sol";
diff --git a/contracts/registry/interface/IIdentityRegistryStorage.sol b/contracts/registry/interface/IIdentityRegistryStorage.sol
index 318fdf10..18cce88c 100644
--- a/contracts/registry/interface/IIdentityRegistryStorage.sol
+++ b/contracts/registry/interface/IIdentityRegistryStorage.sol
@@ -60,7 +60,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../ERC-3643/IERC3643IdentityRegistryStorage.sol";
diff --git a/contracts/registry/interface/ITrustedIssuersRegistry.sol b/contracts/registry/interface/ITrustedIssuersRegistry.sol
index b5cc75a7..f0232889 100644
--- a/contracts/registry/interface/ITrustedIssuersRegistry.sol
+++ b/contracts/registry/interface/ITrustedIssuersRegistry.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../ERC-3643/IERC3643TrustedIssuersRegistry.sol";
// solhint-disable-next-line no-empty-blocks
diff --git a/contracts/registry/storage/CTRStorage.sol b/contracts/registry/storage/CTRStorage.sol
index a4308c23..5bb952d9 100644
--- a/contracts/registry/storage/CTRStorage.sol
+++ b/contracts/registry/storage/CTRStorage.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
contract CTRStorage {
/// @dev All required Claim Topics
diff --git a/contracts/registry/storage/IRSStorage.sol b/contracts/registry/storage/IRSStorage.sol
index 687fada7..fac2210d 100644
--- a/contracts/registry/storage/IRSStorage.sol
+++ b/contracts/registry/storage/IRSStorage.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
diff --git a/contracts/registry/storage/IRStorage.sol b/contracts/registry/storage/IRStorage.sol
index a0a1d587..956ed581 100644
--- a/contracts/registry/storage/IRStorage.sol
+++ b/contracts/registry/storage/IRStorage.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../interface/IClaimTopicsRegistry.sol";
import "../interface/ITrustedIssuersRegistry.sol";
diff --git a/contracts/registry/storage/TIRStorage.sol b/contracts/registry/storage/TIRStorage.sol
index 976618e5..717f7032 100644
--- a/contracts/registry/storage/TIRStorage.sol
+++ b/contracts/registry/storage/TIRStorage.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IClaimIssuer.sol";
diff --git a/contracts/roles/AgentRole.sol b/contracts/roles/AgentRole.sol
index dbd8b80c..e591d940 100644
--- a/contracts/roles/AgentRole.sol
+++ b/contracts/roles/AgentRole.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/access/Ownable.sol";
diff --git a/contracts/roles/AgentRoleUpgradeable.sol b/contracts/roles/AgentRoleUpgradeable.sol
index f36588a6..4f82628a 100644
--- a/contracts/roles/AgentRoleUpgradeable.sol
+++ b/contracts/roles/AgentRoleUpgradeable.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
diff --git a/contracts/roles/IERC173.sol b/contracts/roles/IERC173.sol
index 16c1b33e..5e0670ca 100644
--- a/contracts/roles/IERC173.sol
+++ b/contracts/roles/IERC173.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
/// @title ERC-173 Contract Ownership Standard
/// Note: the ERC-165 identifier for this interface is 0x7f5828d0
diff --git a/contracts/roles/Roles.sol b/contracts/roles/Roles.sol
index 5bfd7fb6..dd49ace2 100644
--- a/contracts/roles/Roles.sol
+++ b/contracts/roles/Roles.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../errors/InvalidArgumentErrors.sol";
import "../errors/RoleErrors.sol";
diff --git a/contracts/roles/permissioning/agent/AgentManager.sol b/contracts/roles/permissioning/agent/AgentManager.sol
index 2ca84a8e..0a6c6373 100644
--- a/contracts/roles/permissioning/agent/AgentManager.sol
+++ b/contracts/roles/permissioning/agent/AgentManager.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
diff --git a/contracts/roles/permissioning/agent/AgentRoles.sol b/contracts/roles/permissioning/agent/AgentRoles.sol
index c5709ae9..509e43c9 100644
--- a/contracts/roles/permissioning/agent/AgentRoles.sol
+++ b/contracts/roles/permissioning/agent/AgentRoles.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/access/Ownable.sol";
diff --git a/contracts/roles/permissioning/agent/AgentRolesUpgradeable.sol b/contracts/roles/permissioning/agent/AgentRolesUpgradeable.sol
index 38e43210..fb5aef48 100644
--- a/contracts/roles/permissioning/agent/AgentRolesUpgradeable.sol
+++ b/contracts/roles/permissioning/agent/AgentRolesUpgradeable.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
diff --git a/contracts/roles/permissioning/owner/OwnerManager.sol b/contracts/roles/permissioning/owner/OwnerManager.sol
index 96e0227e..00df7a97 100644
--- a/contracts/roles/permissioning/owner/OwnerManager.sol
+++ b/contracts/roles/permissioning/owner/OwnerManager.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../../../token/IToken.sol";
import "../../../registry/interface/IIdentityRegistry.sol";
diff --git a/contracts/roles/permissioning/owner/OwnerRoles.sol b/contracts/roles/permissioning/owner/OwnerRoles.sol
index 291dfd6f..65daf1a5 100644
--- a/contracts/roles/permissioning/owner/OwnerRoles.sol
+++ b/contracts/roles/permissioning/owner/OwnerRoles.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/access/Ownable.sol";
diff --git a/contracts/roles/permissioning/owner/OwnerRolesUpgradeable.sol b/contracts/roles/permissioning/owner/OwnerRolesUpgradeable.sol
index 8a02d22d..2bbeb52e 100644
--- a/contracts/roles/permissioning/owner/OwnerRolesUpgradeable.sol
+++ b/contracts/roles/permissioning/owner/OwnerRolesUpgradeable.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol";
diff --git a/contracts/token/IToken.sol b/contracts/token/IToken.sol
index 487f9c07..2fe76fd8 100644
--- a/contracts/token/IToken.sol
+++ b/contracts/token/IToken.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./TokenStructs.sol";
import "../ERC-3643/IERC3643.sol";
diff --git a/contracts/token/Token.sol b/contracts/token/Token.sol
index 7e8fa0ec..949f6865 100755
--- a/contracts/token/Token.sol
+++ b/contracts/token/Token.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "./IToken.sol";
import "@onchain-id/solidity/contracts/interface/IIdentity.sol";
diff --git a/contracts/token/TokenStorage.sol b/contracts/token/TokenStorage.sol
index 19c03573..a821ea60 100644
--- a/contracts/token/TokenStorage.sol
+++ b/contracts/token/TokenStorage.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "../ERC-3643/IERC3643Compliance.sol";
import "../ERC-3643/IERC3643IdentityRegistry.sol";
import "./TokenStructs.sol";
diff --git a/contracts/token/TokenStructs.sol b/contracts/token/TokenStructs.sol
index 126f3cf5..c8d0357a 100644
--- a/contracts/token/TokenStructs.sol
+++ b/contracts/token/TokenStructs.sol
@@ -62,7 +62,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
struct TokenRoles {
bool disableMint;
diff --git a/contracts/utils/InterfaceIdCalculator.sol b/contracts/utils/InterfaceIdCalculator.sol
index f9fa649e..0f015a1d 100644
--- a/contracts/utils/InterfaceIdCalculator.sol
+++ b/contracts/utils/InterfaceIdCalculator.sol
@@ -61,7 +61,7 @@
* along with this program. If not, see .
*/
-pragma solidity 0.8.26;
+pragma solidity 0.8.27;
import "@openzeppelin/contracts/utils/introspection/IERC165.sol";
import "@openzeppelin/contracts/token/ERC20/IERC20.sol";
diff --git a/hardhat.config.ts b/hardhat.config.ts
index da2b5bf4..90f04820 100644
--- a/hardhat.config.ts
+++ b/hardhat.config.ts
@@ -9,13 +9,12 @@ import 'hardhat-tracer';
const config: HardhatUserConfig = {
solidity: {
- version: '0.8.26',
+ version: '0.8.27',
settings: {
optimizer: {
enabled: true,
runs: 200,
},
- viaIR: true,
},
},
gasReporter: {