# Subdelegations

There is a new `bytes32 rights` parameter associated with each delegation, that did not exist in V1. This is used for **subdelegations**, or splitting up the rights associated with a wallet/token and pointing them towards distinct receiver wallets. For example, an NFT may grant airdrop rights, governance rights, event ticketing rights, gameplay rights, IP licensing rights, and access to a tokengated chat.

You can either continue aggregating these rights and pointing them to a single wallet, or choosing a more granular approach that points different rights to different wallets.&#x20;

## Simple Approach

To delegate all rights, pass an empty bytestring as the rights param. This can be done in most programming languages with the empty string: `""`. This encompasses all rights and any specific rights check will return true. Most users should do this unless specifically directed otherwise until app adoption paths become clear.

## Complex Approach

Apps can choose to check a specific bytestring if they would like users to opt into more granular control. For example, an onchain governance protocol could call `checkDelegateForERC20(to, from, contract_, "governance")` which would encompass both users who made the default simple approach and users who specifically delegated `"governance"` rights. The delegate.xyz frontend will eventually assist in grouping users into simple lowercased english words in conjunction with integration partners to avoid fragmentation. Please reach out if interested!
