10 UMLClass 210 160 170 60 *Held* No one can finish or cancel the Escrow. style=wordwrap UMLSpecialState 230 80 20 20 type=initial Relation 230 80 210 100 lt=<- EscrowCreate transaction 10.0;80.0;10.0;10.0 Relation 230 210 30 80 lt=<- 10.0;60.0;10.0;10.0 UMLClass 210 270 170 80 *Ready* Anyone can finish the Escrow. style=wordwrap UMLSpecialState 510 300 20 20 type=final Relation 370 290 160 50 lt=<- EscrowFinish transaction 140.0;20.0;10.0;20.0 Relation 230 340 30 110 lt=<- 10.0;90.0;10.0;10.0 UMLClass 210 430 170 80 *Expired* Anyone can cancel the Escrow. No one can finish it. style=wordwrap Relation 370 450 160 50 lt=<- EscrowCancel transaction 140.0;20.0;10.0;20.0 UMLSpecialState 510 460 20 20 type=flow_final UMLSpecialState 990 80 20 20 type=initial Relation 990 90 210 200 lt=<- r2=EscrowCreate transaction 10.0;180.0;10.0;10.0 UMLSpecialState 1270 300 20 20 type=final Relation 1130 290 160 50 lt=<- EscrowFinish transaction 140.0;20.0;10.0;20.0 Text 210 20 180 30 *FinishAfter time only* Text 980 20 180 30 *Condition only* UMLSpecialState 610 80 20 20 type=initial Relation 610 80 210 100 lt=<- EscrowCreate transaction 10.0;80.0;10.0;10.0 Relation 610 210 30 80 lt=<- 10.0;60.0;10.0;10.0 UMLSpecialState 890 300 20 20 type=final Relation 750 290 160 50 lt=<- EscrowFinish transaction 140.0;20.0;10.0;20.0 Text 590 20 180 40 *Both Condition and FinishAfter time* style=wordwrap UMLClass 970 270 170 80 *Conditionally Ready* Anyone with the correct fulfillment can finish the Escrow. style=wordwrap UMLClass 970 430 170 80 *Expired* Anyone can cancel the Escrow. No one can finish it. style=wordwrap Relation 990 340 30 110 lt=<- 10.0;90.0;10.0;10.0 Relation 610 340 30 110 lt=<- 10.0;90.0;10.0;10.0 UMLClass 590 160 170 60 *Held* No one can finish or cancel the Escrow. style=wordwrap UMLClass 590 430 170 80 *Expired* Anyone can cancel the Escrow. No one can finish it. style=wordwrap Relation 110 50 30 550 lt=<- 10.0;530.0;10.0;10.0 UMLClass 590 270 170 80 *Conditionally Ready* Anyone with the correct fulfillment can finish the Escrow. style=wordwrap Relation 90 380 860 30 lt=.. 10.0;10.0;840.0;10.0 Relation 90 230 860 30 lt=. 10.0;10.0;840.0;10.0 Text 10 210 110 50 FinishAfter time style=wordwrap Text 10 360 110 70 CancelAfter time style=wordwrap Relation 750 450 160 50 lt=<- EscrowCancel transaction 140.0;20.0;10.0;20.0 UMLSpecialState 890 460 20 20 type=flow_final Relation 1130 450 160 50 lt=<- EscrowCancel transaction 140.0;20.0;10.0;20.0 UMLSpecialState 1270 460 20 20 type=flow_final Text 100 20 60 30 Time style=wordwrap Relation 920 380 380 30 lt=. 10.0;10.0;360.0;10.0 Text 380 370 170 30 (if CancelAfter specified) fontsize=12 Text 1020 370 160 30 (CancelAfter required) fontsize=12