"Messages - Sequence Diagram"ClientClientMPEMPEAGIXAGIXDaemonDaemonServiceServicedepositdeposit(value)move_tokens(client, MPE, value)balances[client] += valueopen channelopen_channel(service, value, expiration, replica_group)event_channel_open(channel)sum[channel_id] = 0request to servicesum[channel_id] += pricepayment = sign_payment(channel_id, sum[channel_id])request(data, payment)check_payment(last_channel_state, payment)request(data)response(result)response(result)contract partial withdrawalchannel_claim(payment, false)balances[client] -= payment.valuebalances[service] += payment.valuenewChannel(client, service, value - payment.value, expiration, replica)event_channel_open(contract)withdrawalwithdraw(value)balances[service] -= valuemove_tokens(MPE, service, value)