Actions of the BUYER’s clearing bank agent
The action plan of the buyer's clearing bank, which acts both as CUSTODIAN for PRODUCT and BANK for CASH, is listed below.
There are no temporal triggers here, meaning the engagement of the clearing bank into the contract is initiated by the client.
Triggers in lines 0 and 2 are represent the BUYER instructing the clearing bank directly to deliver cash and receive securities.
Note that in real settlement the client does not send instructions to the clearing bank to move cash or securities, as discussed above.
In that case, the clearing bank is triggered temporally by the existence of the contract and the concrete settlement date stated in it.
The actual changes that are local to the clearing bank, and thus are the ones the clearing bank can execute directly, are highlighted in green.
The first one, which starts in line 8, is receiving securities (capturing the PRODUCT) into the client's vostro account (BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT).
The second one, started in line 10, is the delivery of cash (release of CASH) from the client's vostro account (BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT).
These changes are completed in lines 26 and 28 respectively.
Note the order of these changes — they are effectively interlocked, so that one does not finish before the other.
This is an indirect consequence of the DvP semantics (enforced by the DVP fibre) at the bottom level of the indirect holding hierarchy within the CSD.
The steps highlighted in purple represent causal links connecting actions in the actual plane to the info plane and vice versa.
The interesting part here is how the clearing bank mediates between its client and the CSD.
In line 7, the completed capture of a REQUEST (an info figure), referring in the imperative mood to the capture of PRODUCT (an actual figure) under the gateway representing the BUYER at a location SECURITIES_ACCOUNT, causes the start of the latter (the action in the actual plane).
In simpler words, the clearing bank receiving a request from its client to receive securities initiates the receipt of securities into the corresponding vostro securities account.
Line 9 represents a similar causal link from an info-plane activity (receiving a request from the client to deliver cash) to an actual-plane activity (initiating delivery of cash from the client's vostro cash account).
These two activities cause the start of the corresponding changes in lines 8 and 10, highlighted in green.
However, since these changes are themselves mirrored by remote changes at the CSD, the clearing bank has to redirect the activity to the next level in the indirect holding hierarchy by asking the CSD to execute its version of these changes.
Lines 11 and 12 represent causal links between the initiation of a source action (local to the clearing bank, whose action plan this is part of) and the mirrored, remote action local to another agent — the CSD.
Note that these causal edges were introduced by adding a CUSTODY fibre where the CSD plays the role of CUSTODIAN while the clearing bank plays the role of CLIENT.
In line 11, starting delivery of cash from the BUYER's vostro cash account at the clearing bank initiates a request to the CSD to start delivery of cash from the clearing bank's cash account at the CSD.
Similarly, in line 12, the start of receipt of securities into the BUYER's vostro securities account at the clearing bank initiates a request to the CSD to start receipt of the securities into the clearing bank's account at the CSD.
After these two requests have been sent to the CSD, the clearing bank agent must wait for the CSD to reply before resuming execution of the action plan.
These two requests, once received, engage the CSD in executing the movement of both securities and cash at the terminal level of the holding hierarchy and in responding back once it has completed these movements in a DvP manner.
These actions are part of the CSD's execution plan, as will be shown in the next section.
The replies arriving from the CSD are shown in lines 18 and 20 as triggers of activity within the clearing bank, thus allowing the clearing bank agent to resume execution of its action plan.
In lines 23 and 25, the clearing bank learning that the CSD has completed delivery of cash and receipt of stock causes completion of the corresponding actions on the BUYER's vostro accounts at the clearing bank.
The completion of those actions, in turn, causes the clearing bank to reply to the client with the settlement confirmation — informing the BUYER that the securities have been received into its securities account and that cash has been debited from its cash account.
Because in this example we do not bundle cash and product changes into a single settlement instruction, two replies are sent to the BUYER in lines 27 and 29.
This effectively completes the part of the TRADE frame that has to be played out by the BUYER's clearing bank.
This can be seen in lines 37 and 39, which indicate that the clearing bank is triggering activity within the BUYER agent.
0 : Trigger from BUYER coming into CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:IN
1 : Start executing change : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
2 : Trigger from BUYER coming into CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:IN
3 : Start executing change : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
4 : Finish executing change : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >
5 : Causal (#22) : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:OUT -> CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:INSTANT
6 : Finish executing change : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >
7 : Causal (#23) : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:OUT -> CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:IN // implementing : CAPTURE of PRODUCT by BUYER
8 : Start executing change : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT // implementing : CAPTURE of PRODUCT by BUYER
9 : Causal (#22) : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:OUT -> RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:IN // implementing : RELEASE of CASH by BUYER
10 : Start executing change : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT // implementing : RELEASE of CASH by BUYER
11 : Causal (#27) : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:IN -> RELEASE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >:IN // implementing : RELEASE of CASH by BUYER
12 : Causal (#25) : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:IN -> RELEASE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >:IN // implementing : CAPTURE of PRODUCT by BUYER
13 : Start executing change : RELEASE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
14 : Finish executing change : RELEASE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >
15 : Start executing change : RELEASE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
16 : Finish executing change : RELEASE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >
17 : Causal (#23) : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:OUT -> CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:INSTANT
18 : Trigger from CSD coming into CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >:IN
19 : Start executing change : CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
20 : Trigger from CSD coming into CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >:IN
21 : Start executing change : CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
22 : Finish executing change : CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >
23 : Causal (#27) : CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >:OUT -> RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:OUT // implementing : RELEASE of CASH by BUYER
24 : Finish executing change : CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >
25 : Causal (#25) : CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >:OUT -> CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:OUT // implementing : CAPTURE of PRODUCT by BUYER
26 : Finish executing change : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT
27 : Causal (#22) : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:OUT -> CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:INSTANT // implementing : RELEASE of CASH by BUYER
28 : Finish executing change : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT
29 : Causal (#23) : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:OUT -> CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:INSTANT // implementing : CAPTURE of PRODUCT by BUYER
30 : Executing instantaneous change (#22) : CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >
31 : Causal (#22) : CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:INSTANT -> RELEASE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:IN // implementing : RELEASE of CASH by BUYER
32 : Executing instantaneous change (#23) : CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >
33 : Causal (#23) : CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:INSTANT -> RELEASE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:IN // implementing : CAPTURE of PRODUCT by BUYER
34 : Start executing change : RELEASE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
35 : Start executing change : RELEASE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
36 : Finish executing change : RELEASE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT > having remote effects to 1 agents
37 : Effect to BUYER coming from CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:IN
38 : Finish executing change : RELEASE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT > having remote effects to 1 agents
39 : Effect to BUYER coming from CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:IN
Actions of the BUYER’s clearing bank agent
The action plan of the buyer's clearing bank, which acts both as CUSTODIAN for PRODUCT and BANK for CASH, is listed below.
The interesting part here is how the clearing bank mediates between its client (the BUYER) and the CSD via intermediate levels, where netting can take place (subject of a separate article).
The actual changes that are local to the clearing bank, and thus are the ones the clearing bank can execute directly, are highlighted in green.
The steps highlighted in purple represent causal links connecting actions in the actual plane to the info plane and vice versa, while steps highlighted in blue represent causal links where both activities are within actual plane.
There are no temporal triggers here, meaning the engagement of the clearing bank into the contract is initiated by the client.
Triggers in lines 0 and 2 are represent the BUYER instructing the clearing bank directly to deliver cash and receive securities.
Note that in real settlement the client does not send instructions to the clearing bank to move cash or securities, as discussed above.
In that case, the clearing bank is triggered temporally by the existence of the contract and the concrete settlement date stated in it.
Line 8 represents a causal link from activity in the info plane to activity in the actual plane: the interpretation of a message as a command.
Here, receiving a request to initiate the receipt (CAPTURE) of securities (PRODUCT) into the buyer’s vostro account at the buyer’s clearing bank initiates that receipt of securities.
Line 9 represents the start of receiving securities (capturing the PRODUCT) into the client’s vostro account (BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT).
This action takes place within the setting of the CUSTODY fibre, where the captured (actual-plane) figure is playing the role of CUSTODIED.
Line 10 shows a causal link between two activities within the actual plane: the start of the receipt of securities (capture of PRODUCT) at the vostro account that the buyer has with its clearing bank (BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT) implies the start of the receipt of securities at the pool account of the clearing bank (under the same party playing the CUSTODIAN role — under the buyer’s custodian).
Line 11 shows the start of the latter action — the receipt of securities into the pool account of the clearing bank.
Line 12 shows another causal dependency within the actual plane: the start of receipt of securities into the pool account (POOL_ACCOUNT) itself implies the start of receipt of securities at the nostro account that the clearing bank has with the CSD (BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT).
Line 13 represents the start of the latter action — receipt of securities at the nostro account held with the CSD.
Line 14 represents a causal link from activity in the actual plane to activity in the info plane: the start of receipt of securities at the nostro account held with the CSD (BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT) implies that the clearing bank should send an instruction (release an info figure in the imperative mood) to the CSD to receive securities (to EXECUTE capture of PRODUCT) at the vostro account of the clearing bank (CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT).
Note how the nostro account (BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT) flips into the vostro account (CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT) across this causal link — this is a side effect of switching perspective from the CLIENT agent’s POV to the CUSTODIAN agent’s POV that is part of the CUSTODY frame.
In lines 17 to 23, the same “starting” story happens with the CASH delivery.
After these two requests (to receive securities into the clearing bank’s vostro account at the CSD and to deliver cash) have been sent to the CSD, the clearing bank agent must wait for the CSD to reply before resuming execution of the action plan.
These two requests, once received, engage the CSD in executing the movement of both securities and cash at the terminal level of the holding hierarchy and in responding once it has completed these movements in a DvP manner.
These actions are part of the CSD’s execution plan, as will be shown in the next section.
The replies arriving from the CSD are shown in lines 26 and 34 as triggers of activity within the clearing bank, thus allowing the clearing bank agent to resume execution of its action plan.
Note the order of these changes — they are effectively interlocked, so that one does not finish before the other.
This is an indirect consequence of the DvP semantics (enforced by the DVP fibre) at the bottom level of the indirect holding hierarchy within the CSD.
Line 34 represents a response from the CSD informing the clearing bank that the receipt of securities at the vostro account within the CSD (CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT) has been completed.
This is effectively part of a settlement confirmation from the CSD to the clearing bank (which is playing the role of the CSD’s CLIENT).
Line 39 represents a causal link from activity in the info plane to activity in the actual plane: the receipt of confirmation that securities have been received by the CSD into the corresponding vostro account causes the completion of receipt of securities at the nostro account (BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT).
Line 40 represents the completion of the action of receiving securities at the nostro account of the clearing bank within the CSD.
Line 41 shows a causal link between two activities within the actual plane: the completion of receipt of securities at the nostro account implies the completion of receipt of securities at the pool account (POOL_ACCOUNT).
Line 42 represents the completion of this action (receipt of securities at the pool account).
Line 43 shows another causal link between two activities within the actual plane: the completion of receipt of securities at the pool account implies the completion of receipt of securities at the buyer’s vostro account at the clearing bank (BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT).
Line 46 represents the completion of this action (receipt of securities at the buyer’s vostro account).
Line 47 represents a causal link from activity in the actual plane to activity in the info plane: the completion of receipt of securities at the buyer’s vostro account (BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT) triggers the sending of a message (CREATE REPLY) to the buyer informing it about the completion of this activity.
The same “completion” story happens for the CASH, with the reply from the CSD coming back to the clearing bank in line 26 and the resulting confirmation of the cash delivery being sent to the buyer in line 37.
Note that because, in this example, we do not bundle cash and product changes into a single settlement instruction, two confirmations are sent to the BUYER in lines 53 and 55: the confirmation of the receipt of securities and the confirmation of the delivery of cash.
This effectively completes the part of the TRADE frame that has to be played out by the BUYER’s clearing bank.
This can be seen in lines 53 and 55, which indicate that the clearing bank is triggering activity within the BUYER agent.
0 : Trigger from BUYER coming into CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:IN
1 : Start executing change : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
2 : Trigger from BUYER coming into CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:IN
3 : Start executing change : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
4 : Finish executing change : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >
5 : Causal (#30) : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:OUT -> CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:INSTANT
6 : Finish executing change : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >
7 : Causal (#31) : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:OUT -> CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:INSTANT
8 : Causal (#31) : CAPTURE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:OUT -> CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:IN // implementing : CAPTURE of PRODUCT by BUYER
9 : Start executing change : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT // implementing : CAPTURE of PRODUCT by BUYER
10 : Causal (#18) : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:IN -> CAPTURE of PRODUCT as POOLED* @ POOL_ACCOUNT:IN // implementing : CAPTURE of PRODUCT by BUYER
11 : Start executing change : CAPTURE of PRODUCT as POOLED* @ POOL_ACCOUNT // implementing : CAPTURE of PRODUCT by BUYER
12 : Causal (#19) : CAPTURE of PRODUCT as POOLED* @ POOL_ACCOUNT:IN -> CAPTURE of PRODUCT as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT:IN // implementing : CAPTURE of PRODUCT by BUYER
13 : Start executing change : CAPTURE of PRODUCT as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT // implementing : CAPTURE of PRODUCT by BUYER
14 : Causal (#34) : CAPTURE of PRODUCT as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT:IN -> RELEASE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >:IN // implementing : CAPTURE of PRODUCT by BUYER
15 : Start executing change : RELEASE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
16 : Finish executing change : RELEASE of REQUEST < EXECUTE CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >
17 : Causal (#30) : CAPTURE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:OUT -> RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:IN // implementing : RELEASE of CASH by BUYER
18 : Start executing change : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT // implementing : RELEASE of CASH by BUYER
19 : Causal (#23) : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:IN -> RELEASE of CASH as POOLED* @ POOL_ACCOUNT:IN // implementing : RELEASE of CASH by BUYER
20 : Start executing change : RELEASE of CASH as POOLED* @ POOL_ACCOUNT // implementing : RELEASE of CASH by BUYER
21 : Causal (#26) : RELEASE of CASH as POOLED* @ POOL_ACCOUNT:IN -> RELEASE of CASH as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.VOSTRO_NOSTRO:IN // implementing : RELEASE of CASH by BUYER
22 : Start executing change : RELEASE of CASH as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.VOSTRO_NOSTRO // implementing : RELEASE of CASH by BUYER
23 : Causal (#35) : RELEASE of CASH as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.VOSTRO_NOSTRO:IN -> RELEASE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >:IN // implementing : RELEASE of CASH by BUYER
24 : Start executing change : RELEASE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
25 : Finish executing change : RELEASE of REQUEST < EXECUTE RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >
26 : Trigger from CSD coming into CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >:IN
27 : Start executing change : CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
28 : Finish executing change : CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >
29 : Causal (#35) : CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ CSD.BUYER's CUSTODIAN/BANK.CASH_ACCOUNT >:OUT -> RELEASE of CASH as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT:OUT // implementing : RELEASE of CASH by BUYER
30 : Finish executing change : RELEASE of CASH as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT
31 : Causal (#26) : RELEASE of CASH as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT:OUT -> RELEASE of CASH as POOLED* @ POOL_ACCOUNT:OUT // implementing : RELEASE of CASH by BUYER
32 : Finish executing change : RELEASE of CASH as POOLED* @ POOL_ACCOUNT
33 : Causal (#23) : RELEASE of CASH as POOLED* @ POOL_ACCOUNT:OUT -> RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:OUT // implementing : RELEASE of CASH by BUYER
34 : Trigger from CSD coming into CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >:IN
35 : Start executing change : CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
36 : Finish executing change : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT
37 : Causal (#30) : RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT:OUT -> CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:INSTANT // implementing : RELEASE of CASH by BUYER
38 : Finish executing change : CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >
39 : Causal (#34) : CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ CSD.BUYER's CUSTODIAN/BANK.SECURITIES_ACCOUNT >:OUT -> CAPTURE of PRODUCT as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT:OUT // implementing : CAPTURE of PRODUCT by BUYER
40 : Finish executing change : CAPTURE of PRODUCT as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT
41 : Causal (#19) : CAPTURE of PRODUCT as ASSET* @ BUYER's CUSTODIAN/BANK.CSD.NOSTRO_ACCOUNT:OUT -> CAPTURE of PRODUCT as POOLED* @ POOL_ACCOUNT:OUT // implementing : CAPTURE of PRODUCT by BUYER
42 : Finish executing change : CAPTURE of PRODUCT as POOLED* @ POOL_ACCOUNT
43 : Causal (#18) : CAPTURE of PRODUCT as POOLED* @ POOL_ACCOUNT:OUT -> CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:OUT // implementing : CAPTURE of PRODUCT by BUYER
44 : Executing instantaneous change (#30) : CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >
45 : Causal (#30) : CREATE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:INSTANT -> RELEASE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:IN // implementing : RELEASE of CASH by BUYER
46 : Finish executing change : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT
47 : Causal (#31) : CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT:OUT -> CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:INSTANT // implementing : CAPTURE of PRODUCT by BUYER
48 : Start executing change : RELEASE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT > // implementing : RELEASE of CASH by BUYER
49 : Executing instantaneous change (#31) : CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >
50 : Causal (#31) : CREATE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:INSTANT -> RELEASE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:IN // implementing : CAPTURE of PRODUCT by BUYER
51 : Start executing change : RELEASE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT > // implementing : CAPTURE of PRODUCT by BUYER
52 : Finish executing change : RELEASE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT > having remote effects to 1 agents
53 : Effect to BUYER coming from CAPTURE of REPLY < EXECUTED RELEASE of CASH as HELD* @ BUYER's CUSTODIAN/BANK.BUYER.CASH_ACCOUNT >:IN
54 : Finish executing change : RELEASE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT > having remote effects to 1 agents
55 : Effect to BUYER coming from CAPTURE of REPLY < EXECUTED CAPTURE of PRODUCT as CUSTODIED* @ BUYER's CUSTODIAN/BANK.BUYER.SECURITIES_ACCOUNT >:IN