16 lines
500 B
Plaintext
16 lines
500 B
Plaintext
include "List.aes"
|
|
|
|
contract C =
|
|
payable stateful entrypoint split(targets : list(address)) =
|
|
require(targets != [], "NO_TARGETS")
|
|
let value_per_person = Call.value / List.length(targets)
|
|
spend_to_all(value_per_person, targets)
|
|
|
|
stateful function
|
|
spend_to_all : ({v : int | v >= 0}, list(address)) => unit
|
|
spend_to_all(_, []) = ()
|
|
spend_to_all(value, addr::rest) =
|
|
require(value < Contract.balance, "")
|
|
Chain.spend(addr, value)
|
|
spend_to_all(value, rest)
|