# Власність та Ролі

Хоча ви — і тільки ви — є власником вашого персонального контракту CryptoLegacy, у протоколі існують і інші контракти.\
Ми застосовуємо гнучкий, але надійний підхід, заснований на ролях, для управління цими контрактами. Різні DAO-мультисиги включають підписантів з основної команди, партнерських протоколів і провідних фірм із безпеки.

Назви ролей спрощено до:&#x20;

* Msig 1,&#x20;
* Msig 2,&#x20;
* Msig 3.&#x20;

Детальну інформацію про пов’язані з ними мультисиг-гаманці можна знайти в окремих матеріалах.

Нижче наведено таблицю зі списком контрактів, їхніх функцій і призначених їм ролей. Кожна функція захищена персональним таймлоком для виконання.

<table><thead><tr><th width="252.10546875">Contract</th><th width="335.3671875">Function</th><th width="404.4609375">Purpose</th><th width="98.91796875">Role</th><th width="97.05078125">Timelock</th></tr></thead><tbody><tr><td>BuildManagerOwnable</td><td>setBuildManager()</td><td>Додає або видаляє адресу Build Manager. Викликати може лише власник.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>CryptoLegacyBuildManager</td><td>setRegistries()</td><td>Встановлює посилання на Fee Registry, Plugins Registry і Beneficiary Registry.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>CryptoLegacyBuildManager</td><td>setFactory()</td><td>Визначає Factory контракт.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>CryptoLegacyBuildManager</td><td>setSupplyLimit()</td><td>Встановлює ліміт випуску Lifetime NFT. Після досягнення ліміту стають можливими декілька мінтів без створення локів.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>CryptoLegacyBuildManager</td><td>setExternalLens()</td><td>Визначає адресу External Lens контракту.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>CryptoLegacyBuildManager</td><td>withdrawFee()</td><td>Виводить комісію з контракту одержувачу.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>CryptoLegacyFactory</td><td>setBuildOperator()</td><td>Додає або вилучає оператора, якому дозволено створювати контракти CryptoLegacy.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>FeeRegistry</td><td>setCodeOperator()</td><td>Встановлює адресу оператора, який може керувати реферальними кодами.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>FeeRegistry</td><td>setSupportedRefCodeInChains()</td><td>Додає або видаляє підтримувані Chain ID для реферальних кодів.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>FeeRegistry</td><td>setFeeBeneficiaries()</td><td>Визначає кастомних одержувачів комісій у Registry.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>FeeRegistry</td><td>setDefaultPct()</td><td>Встановлює відсоток за замовчуванням для знижки та розподілу.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>FeeRegistry</td><td>setRefererSpecificPct()</td><td>Встановлює специфічні знижки та відсотки розподілу для конкретного реферера.</td><td>Msig 2</td><td>0 days</td></tr><tr><td>FeeRegistry</td><td>setContractCaseFee()</td><td>Визначає комісію для окремого сценарію використання контракту.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>LifetimeNft</td><td>setBaseUri()</td><td>Встановлює нову базову URI для токенів.</td><td>Msig 2</td><td>0 days</td></tr><tr><td>LifetimeNft</td><td>setMinterOperator()</td><td>Надає або відкликає дозвіл на мінт нових токенів.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setDebridgeGate()</td><td>Встановлює контракт deBridgeGate.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setDebridgeNativeFee()</td><td>Визначає нативну комісію для конкретного чейну.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setDestinationChainContract()</td><td>Визначає контракт призначення на іншому чейні.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setSourceChainContract()</td><td>Визначає контракт-джерело на поточному чейні.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setSourceAndDestinationChainContract()</td><td>Одночасно встановлює однакову адресу для контрактів-джерела та призначення.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setLockPeriod()</td><td>Встановлює період локування NFT.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>LockChainGate</td><td>setReferralCode()</td><td>Визначає реферальний код для deBridge.</td><td>Msig 2</td><td>0 days</td></tr><tr><td>LockChainGate</td><td>setCustomChainId()</td><td>Встановлює кастомний Chain ID.</td><td>Msig 2</td><td>5 days</td></tr><tr><td>PluginsRegistry</td><td>addPlugin()</td><td>Реєструє плагін і зберігає номер блоку з описом.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>PluginsRegistry</td><td>addPluginDescription()</td><td>Додає нову описову примітку для вже зареєстрованого плагіна.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>PluginsRegistry</td><td>removePlugin()</td><td>Вилучає плагін із реєстрації.</td><td>Msig 3</td><td>5 days</td></tr><tr><td>SignatureRoleTimelock</td><td>setMaxExecutionPeriod()</td><td>Визначає максимальний дозволений період виконання для запланованих викликів.</td><td>Msig 1</td><td>0 days</td></tr><tr><td>SignatureRoleTimelock</td><td>setRoleAccounts()</td><td>Керує призначенням облікових записів до відповідних ролей: додає, видаляє або оновлює їх.</td><td>Msig 1</td><td>0 days</td></tr><tr><td>SignatureRoleTimelock</td><td>cancelCallList()</td><td>Скасовує заплановані виклики контрактів.</td><td>Msig 1</td><td>0 days</td></tr><tr><td>All contracts</td><td>transferOwnership()</td><td>Передає право володіння контрактом.</td><td>Msig 1</td><td>5 days</td></tr></tbody></table>
