@subsection TokenVend This interface defines the mechanism for which a specific ERC20 token may be exchanged for a different ERC20 token. A typical use-case is generation of voting tokens based on a momentary voucher balance. This is especially useful if the original ERC20 token is subject to decay (demurrage). The tokens used for exchange @strong{SHOULD} be locked for the full duration of holding the vended tokens. The withdrawal function may or may not allow partial withdrawals. @table @dfn @item ERC165 Interface identifier @include ../../build/TokenVend.interface @item Solidity interface definition @include ../../build/contract_TokenVend.texi @item Reference implementations @itemize @item @uref{git://holbrook.no/erc20-vend.git,} @end itemize @end table