# Clear User List

This auxiliary storage divides tasks into multiple blocks to prevent excessive workload in any single block. It keeps track of which user's files should be cleaned next.

```rust
/// Returns the list of account and associated territory from which the files needs to be removed.
///
/// This function divides tasks into multiple blocks to prevent excessive workload in any single block.
/// It identifies and processes the files that should be cleaned for each user.
///
/// # Arguments
///
/// * `block_hash` - An optional parameter representing the hash of the block. If provided, the function
///   will clear the user list associated with this specific block.
///
/// # Returns
///
/// * `Result<Option<BoundedVec<(AccountId32, BoundedVec<u8>)>>, Box<dyn std::error::Error>>` -
///   If successful, returns an `Option` containing a bounded vector of tuples. Each tuple consists of
///   an `AccountId32` and a bounded vector of `u8` representing user data. If there is no data to clear,
///   returns `None`. In case of an error, returns an error wrapped in a `Box`.
///
pub async fn clear_user_list(
    block_hash: Option<H256>,
) -> Result<Option<BoundedVec<(AccountId32, BoundedVec<u8>)>>, Box<dyn std::error::Error>>
```


---

# 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://doc.cess.network/developer/cess-sdk/sdk-rust/chain/file_bank/clear_user_list.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.
