Skip to content

Instantly share code, notes, and snippets.

@bwbush
Last active January 16, 2021 04:37
Show Gist options
  • Save bwbush/ae14078809e873373c67d385031dee44 to your computer and use it in GitHub Desktop.
Save bwbush/ae14078809e873373c67d385031dee44 to your computer and use it in GitHub Desktop.
Zero Coupon with Collateral
<xml xmlns="https://developers.google.com/blockly/xml"><block type="BaseContractType" id="root_contract" deletable="false" x="13" y="187"><statement name="BaseContractType"><block type="PaymentAtMaturity" id="{=}_ITjLvl4@`q(3yb.1"><value name="start_date"><block type="ActusDate" id="HP|!CTeJ5^81UiX~}:%]"><field name="yyyy">2020</field><field name="mm">1</field><field name="dd">1</field></block></value><value name="maturity_date"><block type="ActusDate" id="sRa@%r-g[$FoEiXaD4{F"><field name="yyyy">2040</field><field name="mm">1</field><field name="dd">1</field></block></value><value name="notional"><block type="ActusDecimalType" id="][{za^q3]:v{^(!Nre.G"><field name="value">1000</field></block></value></block></statement></block></xml>
<xml xmlns="https://developers.google.com/blockly/xml"><block type="BaseContractType" id="root_contract" deletable="false" x="13" y="187"><statement name="BaseContractType"><block type="WhenContractType" id="YH%v9XKu#A@0M@%Uz)hM"><field name="timeout">1</field><statement name="case"><block type="DepositActionType" id="%vf}$j#NRCU[jt8L}OuC"><value name="from_party"><block type="RolePartyType" id="f~F`vYxWx0bYjsMC01#)"><field name="role">issuer</field></block></value><value name="value"><block type="ConstantValueType" id="GpmVxUU%|=s^$PD3Rk1T"><field name="constant">1</field></block></value><value name="token"><block type="AdaTokenType" id=",~cU}{h9Jq9}(m*VmlTW"/></value><value name="party"><block type="RolePartyType" id="{{5)Rpd8O_}A))+{|XXV"><field name="role">issuer</field></block></value><statement name="contract"><block type="WhenContractType" id="DFH1wI!QPx:Z{c4)y}Mp"><field name="timeout">10</field><statement name="case"><block type="DepositActionType" id="(-V|1+=TMW,vzxS;dD7C"><value name="from_party"><block type="RolePartyType" id="PU-a:TJcb#Wm6!V^k(=`"><field name="role">investor</field></block></value><value name="value"><block type="ConstantValueType" id="rO9(WiS@;,Up=4s4c_YV"><field name="constant">850</field></block></value><value name="token"><block type="AdaTokenType" id="c_HTNRm2m}Le`Z9x~?=}"/></value><value name="party"><block type="RolePartyType" id="A1:fVvyLC{pj)Tb$kmt/"><field name="role">investor</field></block></value><statement name="contract"><block type="PayContractType" id="g8Yr=Sx:C{|LkDCUv7j="><value name="payee"><block type="PartyPayeeType" id="O]~1jg3Kz;^R?.5D]l6["><value name="party"><block type="RolePartyType" id="Ov[e9*`C%_f9sogtYrQ]"><field name="role">issuer</field></block></value></block></value><value name="value"><block type="ConstantValueType" id="w6]Zl2L]wpuH+(.q^)6W"><field name="constant">850</field></block></value><value name="token"><block type="AdaTokenType" id="?K/J-/yx/-[C?C=!r3];"/></value><value name="party"><block type="RolePartyType" id="cCfZQgm46/TUM7?{o_IP"><field name="role">investor</field></block></value><statement name="contract"><block type="WhenContractType" id="rea`w#@wQ4p+AL^lM(~_"><field name="timeout">20</field><statement name="case"><block type="DepositActionType" id="@v-D_m@Jqs5h^:sPgFgJ"><value name="from_party"><block type="RolePartyType" id="P7x]f*Yh[gEstm+?uoad"><field name="role">issuer</field></block></value><value name="value"><block type="ConstantValueType" id="FKC9}u-9yA`V1$JkHWPL"><field name="constant">1000</field></block></value><value name="token"><block type="AdaTokenType" id="nJ/uUgSZA?!3Sjuk(i2z"/></value><value name="party"><block type="RolePartyType" id="W6N,0pZ0V0o(RZouVM5m"><field name="role">investor</field></block></value><statement name="contract"><block type="PayContractType" id=",wb+R}/P4P/Q33s?`bgj"><value name="payee"><block type="PartyPayeeType" id="BL,m]d@vU3|(K{%_w-;Y"><value name="party"><block type="RolePartyType" id="@g2m80LXe0J$YG^5Ci$7"><field name="role">investor</field></block></value></block></value><value name="value"><block type="ConstantValueType" id="JZv{OBBO3s]57Q]^75xH"><field name="constant">1000</field></block></value><value name="token"><block type="AdaTokenType" id="qHaparXaSkcXJE=kGaR!"/></value><value name="party"><block type="RolePartyType" id="^B?YlqJ}Pz/#.zvNSAL."><field name="role">investor</field></block></value><statement name="contract"><block type="CloseContractType" id="_d+3tx*(Te5jxT$X,7MB"/></statement></block></statement></block></statement><statement name="contract"><block type="PayContractType" id="?(k`ZTavw503q.TOI|qX"><value name="payee"><block type="PartyPayeeType" id="rx+MJr[UL,}0Lu_si}aY"><value name="party"><block type="RolePartyType" id="3l)hYP]Y:A1z{$|Yc}k/"><field name="role">investor</field></block></value></block></value><value name="value"><block type="ConstantValueType" id="fvX38M_lJ3-VVjrygbPC"><field name="constant">1</field></block></value><value name="token"><block type="AdaTokenType" id="t/}Fb5$JrF^:epc(WN(j"/></value><value name="party"><block type="RolePartyType" id=",)21Y0_Kgs,m[R*_+}YB"><field name="role">issuer</field></block></value><statement name="contract"><block type="CloseContractType" id=",SpB;(#|AwRiKJSf6;rH"/></statement></block></statement></block></statement></block></statement></block></statement><statement name="contract"><block type="CloseContractType" id="S)]k!u_@ItOD]qbxajWi"/></statement></block></statement></block></statement><statement name="contract"><block type="CloseContractType" id=".q#~Tq)NHQkF[270jso_"/></statement></block></statement></block></xml>
When
[Case
(Deposit
(Role "issuer")
(Role "issuer")
(Token "" "collateral")
(Constant 1)
)
(When
[Case
(Deposit
(Role "investor")
(Role "investor")
(Token "" "")
(Constant 850)
)
(Pay
(Role "investor")
(Party (Role "issuer"))
(Token "" "")
(Constant 850)
(When
[Case
(Deposit
(Role "investor")
(Role "issuer")
(Token "" "")
(Constant 1000)
)
(Pay
(Role "investor")
(Party (Role "investor"))
(Token "" "")
(Constant 1000)
Close
)]
20
(Pay
(Role "issuer")
(Party (Role "investor"))
(Token "" "collateral")
(Constant 1)
Close
)
)
)]
10 Close
)]
1 Close
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment