+---------------------------------+ ┌─────────────────────────────────┐ | | │ │ | BEFORE | │ AFTER │ | | │ │ | +---------------+ +--+ | │ ┌───────────────┐ ┌──┐ │ | | | +-+| | │ │ │ └─┐│ │ | | +-------+-------+ || | │ │ ┌───────┼───────┐ ││ │ | | | | | ++ | │ │ │ │ │ ├┘ │ | +-------+-------+ +-+ | | | │ └───────┼───────┘ ┌─┐ │ │ │ | | | | -+-M | | │ │ │ │ ─┼─M │ │ | +----+-+ | | | U-+- | │ ┌────┼─┐ │ │ │ U─┼─ │ | | +-+----------|--+ | | │ │ └─┼──────────│──┘ │ │ | | | | | | | │ │ │ │ │ │ │ | | +---+--------|---------+ | │ │ ┌───┼────────│─────────┤ │ | | +---+--------|-|-------+ | │ │ └───┼────────│─│───────┘ │ | | | | | | │ │ │ │ │ │ | +------+ | | | │ └──────┘ │ │ │ | | | | │ │ │ │ | | | | │ │ │ │ | +-+ | │ └─┘ │ | | │ │ |+---+---+ +-----+---+ +---+---+| │┌───┬───┐ ┌─────┬───┐ ┌───┬───┐│ || λ | +-+->| nil | +-+->| t | ◻ || ││ λ │ ╶─┼─>│ nil │ ╶─┼─>│ t │ ◻ ││ |+---+---+ +-----+---+ +---+---+| │└───┴───┘ └─────┴───┘ └───┴───┘│ | | │ │ +---------------------------------+ └─────────────────────────────────┘