> For the complete documentation index, see [llms.txt](https://docs.ilikeitstable.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ilikeitstable.com/governance/readme.md).

# Procedure

This page outlines the process of submitting a DAO proposal and voting on it.

**DISCLAIMER:** *This page is still located here, because our Operating Agreement specifies this as its location. Moving it somewhere under the ILIS DAO header should happen relatively soon.*

**This governance procedure is out of date, and was used for the previous iteration of smart contracts. The up to date procedure will follow very soon.**\
\
To submit a proposal to the DAO, one needs to hold at least 1 ILIS and present it to the voting contract ([component\_rdx1cpzm6rgdwgw9p075zsh5kfjuxa9rzzyt47x6xcgzhzydp9lkymyx78](https://dashboard.radixdlt.com/component/component_rdx1cpzm6rgdwgw9p075zsh5kfjuxa9rzzyt47x6xcgzhzydp9lkymyx78/summary)), together with a description of your proposal, using the `propose` method on the voting contract by submitting a transaction manifest\*. All relevant details, such as voting period and conditions for the vote to pass (must be a simple majority or higher) must be included in the description.\
\
An example of a transaction manifest used to submit a proposal:

```
CALL_METHOD
  Address("{your_account_address}")
  "withdraw"
  Address("resource_rdx1t4r86qqjtzl8620ahvsxuxaf366s6rf6cpy24psdkmrlkdqvzn47c2")
  Decimal("1")
;

TAKE_ALL_FROM_WORKTOP
  Address("resource_rdx1t4r86qqjtzl8620ahvsxuxaf366s6rf6cpy24psdkmrlkdqvzn47c2")
  Bucket("proof_of_membership")
;

CALL_METHOD
  Address("component_rdx1cpzm6rgdwgw9p075zsh5kfjuxa9rzzyt47x6xcgzhzydp9lkymyx78")
  "propose"
  "{your proposal's description}" //describe your proposal following the guidelines mentioned above
  Bucket("proof_of_membership")
;

CALL_METHOD
  Address("{your_account_address}")
  "deposit_batch"
  Expression("ENTIRE_WORKTOP")
;
```

After a proposal is submitted, it is displayed on the [official venue](https://ilikeitstable.com/governance), together with the relevant parameters. Voting on a proposal is done through the `vote_on_proposal` method on the voting contract.

To call this method, a manifest like such can be used:

```
CALL_METHOD
  Address("{your_account_address}")
  "withdraw"
  Address("resource_rdx1t4r86qqjtzl8620ahvsxuxaf366s6rf6cpy24psdkmrlkdqvzn47c2")
  Decimal("{amount_to_vote_with}") //fill in the amount of ilis you want to vote with
;

TAKE_ALL_FROM_WORKTOP
  Address("resource_rdx1t4r86qqjtzl8620ahvsxuxaf366s6rf6cpy24psdkmrlkdqvzn47c2")
  Bucket("ilis_to_vote_with")
;

CALL_METHOD
  Address("component_rdx1cpzm6rgdwgw9p075zsh5kfjuxa9rzzyt47x6xcgzhzydp9lkymyx78")
  "vote_on_proposal"
  {proposal_id}i64 //fill in the proposal id of the proposal you want to vote on. This is displayed on the official venue next to a proposal (https://ilikeitstable.com/governance)
  {vote}           //fill in whether you want to vote for or against the proposal, use `true` to vote for, and `false` to vote against.
  Bucket("ilis_to_vote_with")
;

CALL_METHOD
  Address("{your_account_address}")
  "deposit_batch"
  Expression("ENTIRE_WORKTOP")
;
```

After the voting period has passed, and the conditions to pass have been met it is excecuted, preferably autonomously. If a proposal cannot be autonomously executed on chain after passing, the managing members are responsible for executing the necessary steps to enact the proposal.

*\* submitting a transaction manifest to the Radix DLT can be done in multiple ways, but we recommend using the console by RDX Works:* [*https://console.radixdlt.com/transaction-manifest*](https://console.radixdlt.com/transaction-manifest)
