# `gno.land/p/nym-moultest123/xdao` > 🚧 **Partial implementation.** 7 of the 14 functions > `panic("not implemented")`, `Render` returns the literal string `"TODO"`. > The constructor and the admin list work; nothing that touches proposals does. `WhitelistDAO` implements [`p/moul/udao`](../udao)'s `DAO` interface with the simplest possible governance: a flat list of trusted admins. ```go var _ udao.DAO = (*WhitelistDAO)(nil) func NewWhitelistDAO() *WhitelistDAO // seeds admins with the calling realm func (d WhitelistDAO) ListAdmins() []address ``` Everything else (`Propose`, `Execute`, `GetProposal`, `GetProposalStatus`, `AddAdmin`, `DelAdmin`) panics. ## Why a "DAO" that is not decentralized Two honest uses, both stated in the source: 1. **Bootstrapping.** A realm designed to be DAO-governed needs *something* to govern it on day one. A whitelist satisfies the interface, so the realm can ship, and the whitelist can later replace itself with a real DAO through the same interface. No migration, no second code path. 2. **One person, several keys.** Someone holding keys on different machines can present as a single entity without a multisig ceremony for each action. It is not a DAO, and the name says so. --- Part of **[moul/gno-contracts](https://github.com/moul/gno-contracts)** — moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage. **Dependency graph:** ![gno.land/p/nym-moultest123/xdao/v0 dependency graph](https://raw.githubusercontent.com/moul/gno-contracts/main/_assets/gno.land/p/nym-moultest123/xdao/v0/deps.png) > ⚠️ **Disclaimer:** provided as-is, without warranty; not security-audited. Full disclaimer: [DISCLAIMER](https://github.com/moul/gno-contracts/blob/main/DISCLAIMER.md).