# 📝 Intro

<https://github.com/seer-pm/demo/tree/main>

### Actors and actions

1. Market Creator:
   * Action: Initiates the creation of a new prediction market.
   * Can be performed by: Any address.
2. Token Holder:
   * Action: Interacts with <mark style="color:red;">`Router`</mark> to split and merge outcome tokens, as well as redeeming them upon market resolution. Buys and sells outcome tokens on a third-party decentralized exchange (DEX).
   * Can be performed by: Any address with sufficient collateral/outcome tokens.
3. Liquidity Provider:
   * Action: Provides initial liquidity to the market by splitting positions and adding liquidity to a DEX.
   * Can be performed by: Any address with sufficient collateral/outcome tokens.
4. Answerer:
   * Action: Provides answers to the market questions or challenges provided answers if believed to be incorrect.
   * Can be performed by: Any address meeting the criteria set by the question (current bond required to submit an answer or arbitration fee for raising a dispute).
5. Market Resolver:
   * Action: Resolves the market by calling <mark style="color:red;">`Market.resolve()`</mark> or <mark style="color:red;">`RealityProxy.resolve(market)`</mark> after the reality questions are finalized.
   * Can be performed by: Any address, as long as the questions are finalized.

### Seer contracts

1. MarketFactory: Creates new prediction markets.
2. Market: Represents an individual prediction market.
3. MarketView: Contains convenient view functions to retrieve information of one or more markets
4. Router: Handles splitting, merging, and redeeming of positions.
5. GnosisRouter: Router implementation with functions to use xDAI to split, merge and redeem outcome tokens on Gnosis Chain.
6. MainnetRouter: Router implementation with functions to use DAI to split, merge and redeem outcome tokens on Ethereum Mainnet.
7. RealityProxy: Resolves the market based on the answer provided.

### External services

1. Third-Party Decentralized Exchange: Facilitates trading of outcome tokens.
2. Kleros: Handles arbitration in case of disputes.
3. Reality: Oracle system for resolving market outcomes.
4. ConditionalTokens: Creates and manages outcome tokens.
5. Wrapped1155Factory: Wraps ERC1155 tokens to ERC20 tokens.


---

# 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://seer-3.gitbook.io/seer-documentation/developers/intro.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.
