I read the draft and this seems to have some functionality that I am looking for. I'm pretty new to bitcoin-dev, but I'm persistent and have a lot of time on my hands. I would like multiple tapleaves be restricted on the amount that they can spend. Say an input of 1 BTC, has a locking script of a tapscript that has 1 of 3 pubkeys of Alice, Bob and Carol(participants). I want to restrict the outputs of their next transactions to .2, .3 and .5 BTC respectively. In the event of Bob spending their output, they are restricted to make a transaction that has a change output that has at least Alice and Carol's Amount, and a 1 or 2 tapscript or a 1 of 3 tapscript if Bob didn't spend all of their funds. In the event of two of the three participants separately broadcast their transactions, I'm hoping that the second sender, can combine the two transactions into a package where the outputs and witnesses would be adjusted where two participants share an output with their respective amounts, and the remainder participant still has their funds available. Is this clear? I don't have a lot of experience communicating complex ideas in writing. I've been looking at some BIP's like OP_CHECKTEMPLATEVERIFY as well which had some idea's I really liked like OP_AMOUNTVERIFY. I'm not aware of the risks that the community previously discussed about the topic. Andrew Sent with [Proton Mail](https://proton.me/) secure email. ------- Original Message ------- On Thursday, March 2nd, 2023 at 6:54 AM, Greg Sanders via bitcoin-dev wrote: > Greetings AJ, > > Glad I could resurrect the idea! > >> Then instead of `idx hash delay OP_TRIGGER_FORWARD` you > write `idx hash delay 2 "OP_CSV OP_DROP OP_FORWARD_OUTPUTS" > OP_FORWARD_LEAF_UPDATE` > > Interesting idea! (I'll let you be the one to scope creep the proposal :) ) > > To be pedantic, EXPR_TRIGGER would become: > > <2> OP_FORWARD_LEAF_UPDATE > > and at spend time the idx and hash are put into the witness stack. > > To be clear, could be embedded in the