def coin_spend_for_lock_coin( prev_coin: Coin, subtotal: int, coin: Coin, ) -> CoinSpend: puzzle_reveal = LOCK_INNER_PUZZLE.curry(prev_coin.as_list(), subtotal) coin = Coin(coin.name(), puzzle_reveal.get_tree_hash(), uint64(0)) coin_spend = CoinSpend(coin, puzzle_reveal, Program.to(0)) return coin_spend
def lineage_proof_for_zero(parent_coin: Coin) -> Program: return Program.to((0, [parent_coin.as_list(), 1]))
def lineage_proof_for_genesis(parent_coin: Coin) -> Program: return Program.to((0, [parent_coin.as_list(), 0]))