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

Хоча ви — і тільки ви — є власником вашого персонального контракту 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>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cryptolegacy.app/ukrayinska/arkhitektura-prav-dao/vlasnist-ta-roli.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
