


Asymmetry / USDaf-v2
Everything you need to learn for the Asymmetry contest: 109 comprehensive code tours totaling over 1400 steps, formulas presented in LaTeX, and a detailed glossary.
Click here to try out our interactive demo!
Cantina, 12 Jul → 22 Jul 2025
Everything you need to learn for the Asymmetry contest: 109 comprehensive code tours totaling over 1400 steps, formulas presented in LaTeX, and a detailed glossary.
Click here to try out our interactive demo!
Cantina, 12 Jul → 22 Jul 2025
Everything you need to learn for the Asymmetry contest: 109 comprehensive code tours totaling over 1400 steps, formulas presented in LaTeX, and a detailed glossary.
Click here to try out our interactive demo!
Cantina, 12 Jul → 22 Jul 2025
Code Tours
1.1 Asymmetry Protocol: A High-Level Overview
2.1 AddressesRegistry: Overview
2.2 AddressesRegistry: State Variables
2.3 AddressesRegistry: Constructor
2.4 AddressesRegistry: Setting Contract Addresses
3.1 Gas Pool
4.1 Core Contracts: BOLD Token
5.1 WETH Price Feed: Overview
5.2 IWETH Interface Details
5.3 WETH Price Feed: Implementation Deep Dive
6.1 External Integrations: RETH Price Feed: Overview
6.2 RETH Price Feed: Interfaces
6.3 RETH Price Feed: Implementation Details
7.1 External Integrations: WSTETH Price Feed: Overview
7.2 WSTETHPriceFeed Contract In-depth
8.1 BTC Price Feed: Overview & Integration
8.2 BTC Price Feed: Deep Implementation
9.1 External Integrations: cBTC Integration: Overview
9.2 cBTC Integration: WrappedCbbtc.sol
9.3 cBTC Integration: CbbtcOracle.sol
9.4 cBTC Integration: CbbtcFallbackOracle.sol
10.1 External Integrations: wBTC Integration Overview
10.2 External Integrations: wBTC Integration Overview
10.3 Understanding WrappedWbtc.sol
10.4 The Primary wBTC Price Oracle
10.5 The wBTC Fallback Oracle
11.1 External Integrations: tBTC Integration: Overview
11.2 tBTC Oracle
11.3 tBTC Oracle
11.4 tBTC Fallback Oracle
11.5 tBTC Fallback Oracle
12.1 Curve USD Oracle: Component Overview
12.2 ScrvUsdOracle.sol: Primary Oracle Deep Dive
12.3 CrvUsdFallbackOracle.sol: Fallback Oracle Deep Dive
13.1 sDAI Oracle
14.1 sfrxUSD Oracle
15.1 External Integrations: sUSDe Oracle
16.1 sUSDS Oracle
17.1 StyBOLD Oracle
18.1 External Integrations: Composite Price Feed
19.1 Core Contracts: Pools: Overview
19.2 ActivePool
19.3 DefaultPool
19.4 CollSurplusPool
20.1 Core Contracts: Sorted Troves: Overview
20.2 Core Contracts: Sorted Troves: Interface Summary
20.3 Core Contracts: Sorted Troves: Data Structures
20.4 Core Contracts: Sorted Troves: Insert & Remove
20.5 Core Contracts: Sorted Troves: Batch & Reinsertion Operations
20.6 Core Contracts: Sorted Troves: Position Finding & Validation
21.1 Interest Router: Overview & Architectural Role
21.2 Interest Router: Distribution Mechanism, Security & Governance
22.1 Stability Pool: Purpose & Architecture
22.2 Public API: IStabilityPool
22.3 Events: IStabilityPoolEvents
22.4 Core Data Structures
22.5 Deposit & Withdrawal Operations
22.6 Liquidation Mechanics
22.7 Reward Calculations
22.8 Access Control & Security
22.9 Edge Cases & Integration Scenarios
23.1 Core Contracts: Collateral Registry: Overview
23.2 CollateralRegistry.sol: Implementation Details
24.1 Core Contracts: Trove: Overview
24.2 Core Contracts: Trove: Data Structures
24.3 Core Contracts: Trove: Trove as an NFT
24.4 TroveManager: State and Initialization
24.5 TroveManager: Core Trove Operations
24.6 TroveManager: Liquidations
24.7 TroveManager: Redemptions
25.1 Core Contracts: Borrower Operations: Overview
25.2 BorrowerOperations: State and Dependencies
25.3 BorrowerOperations: Creating and Managing Troves
25.4 BorrowerOperations: Debt Operations
26.1 Periphery: HintHelpers Overview
26.2 HintHelpers: Probabilistic Hint Generation
26.3 HintHelpers: Upfront Fee Prediction System
27.1 Periphery: MultiTroveGetter: Overview
27.2 MultiTroveGetter: Sorted Trove Data Fetching
27.3 MultiTroveGetter: Data Structures and Frontend Integration
28.1 Periphery: NFTMetadata: Overview
28.2 NFTMetadata: MetadataNFT.sol
28.3 NFTMetadata: SVG and JSON Generation Utilities
29.1 Periphery: ExchangeModuleInterfaces
30.1 Periphery: UniswapV3ExchangeModule: Overview & Integration Context
30.2 Periphery: UniswapV3ExchangeModule: Uniswap V3 Interfaces
30.3 Periphery: UniV3Exchange Implementation Deep Dive
30.4 Periphery: UniPriceConverter & Fixed-Point Price Math
30.5 Periphery: Integration & Testing of UniswapV3ExchangeModule
31.1 Periphery: HybridExchangeModule – Overview & Integration
31.2 HybridCurveUniV3Exchange.sol – Architecture & Balance‐Sweep
31.3 HybridCurveUniV3Exchange.sol – SwapFromBold & SwapToBold Flows
31.4 HybridCurveUniV3ExchangeHelpers.sol – Off-Chain Quoting & Path Logic
32.1 BalancerFlashLoanModule: Overview
32.2 Balancer Protocol Interfaces
32.3 Internal Flash Loan Interfaces
32.4 BalancerFlashLoan Implementation
33.1 Periphery: CoreZappers Overview
33.2 CoreZappers: The IZapper Interface
33.3 CoreZappers: BaseZapper's Foundations
33.4 CoreZappers: ZapperAsFuck In-Depth
34.1 AssetZappers: Overview
34.2 WETHZapper: Raw ETH Operations
34.3 Bitcoin Asset Zappers: Decimal Conversion Pattern
35.1 Periphery: LeverageZappers: Overview
35.2 Periphery: LeverageZappers: Implementation Deep Dive
36.1 Periphery: ZapperUtils Overview
36.2 Periphery: ZapperUtils: LeftoversSweep Deep Dive
36.3 Periphery: ZapperUtils: GasCompZapper Deep Dive