Remove premium output
We can remove the premium output completely and take the premium into account while preparing the funding transaction.
- In case the user pays a premium we can increase the user's input amount in the transaction.
- If the maker pays a premium we can reduce the user's input amount.
This will reduce transaction size so we should pay less. Additionally, it will make transaction outputs stable:
- outputs[0] will be always contract's output
- outputs[1] will be always AH fee output
- outputs[2] if appeared will be always change output (before it could be either premium or change output and it was not obvious)