diff --git a/src/contract/mod.rs b/src/contract/mod.rs index 985cd73d..5bdbe6f8 100644 --- a/src/contract/mod.rs +++ b/src/contract/mod.rs @@ -59,7 +59,7 @@ pub use fungible::{ pub use global::{GlobalState, GlobalValues}; pub use meta::{MetaValue, Metadata, MetadataError}; pub use operations::{ - Extension, Genesis, Input, Inputs, Issuer, OpRef, Operation, Redeemed, Transition, Valencies, + Extension, Genesis, Identity, Input, Inputs, OpRef, Operation, Redeemed, Transition, Valencies, }; pub use seal::{ ExposedSeal, GenesisSeal, GraphSeal, OutputSeal, SecretSeal, TxoSeal, WitnessId, WitnessOrd, diff --git a/src/contract/operations.rs b/src/contract/operations.rs index b6ca61a5..9fa5329c 100644 --- a/src/contract/operations.rs +++ b/src/contract/operations.rs @@ -238,13 +238,10 @@ pub trait Operation { fn disclose_hash(&self) -> DiscloseHash { self.disclose().commit_id() } } -/// Issuer is a binary string which must be encoded into the issuer identity in -/// the application. -/// /// We deliberately do not define the internal structure of the identity such /// that it can be updated without changes to the consensus level. /// -/// Contract validity doesn't assume any checks on the issuer identity; these +/// Contract or schema validity doesn't assume any checks on the identity; these /// checks must be performed at the application level. #[derive(Wrapper, Clone, PartialEq, Eq, Hash, Debug, Default, From, Display)] #[wrapper(Deref, AsSlice, BorrowSlice, Hex)] @@ -258,12 +255,12 @@ pub trait Operation { derive(Serialize, Deserialize), serde(crate = "serde_crate", transparent) )] -pub struct Issuer(SmallBlob); +pub struct Identity(SmallBlob); -impl FromStr for Issuer { +impl FromStr for Identity { type Err = hex::Error; - fn from_str(s: &str) -> Result { Issuer::from_hex(s) } + fn from_str(s: &str) -> Result { Identity::from_hex(s) } } #[derive(Clone, PartialEq, Eq, Debug)] @@ -285,7 +282,7 @@ pub struct Genesis { pub globals: GlobalState, pub assignments: Assignments, pub valencies: Valencies, - pub issuer: Issuer, + pub issuer: Identity, pub validator: ReservedBytes<1, 0>, } diff --git a/src/schema/schema.rs b/src/schema/schema.rs index 10f315c8..0b99ea62 100644 --- a/src/schema/schema.rs +++ b/src/schema/schema.rs @@ -37,7 +37,7 @@ use strict_types::SemId; use super::{ AssignmentType, ExtensionSchema, GenesisSchema, OwnedStateSchema, TransitionSchema, ValencyType, }; -use crate::{Ffv, GlobalStateSchema, Occurrences, LIB_NAME_RGB}; +use crate::{Ffv, GlobalStateSchema, Identity, Occurrences, LIB_NAME_RGB}; #[derive(Wrapper, Copy, Clone, Ord, PartialOrd, Eq, PartialEq, Hash, Debug, From, Display)] #[wrapper(FromStr, LowerHex, UpperHex)] @@ -177,6 +177,8 @@ pub struct Schema { pub genesis: GenesisSchema, pub extensions: TinyOrdMap, pub transitions: TinyOrdMap, + + pub developer: Identity, } impl CommitEncode for Schema { @@ -193,6 +195,8 @@ impl CommitEncode for Schema { e.commit_to_serialized(&self.genesis); e.commit_to_map(&self.extensions); e.commit_to_map(&self.transitions); + + e.commit_to_serialized(&self.developer); } } diff --git a/src/stl.rs b/src/stl.rs index c5691c2a..e69e7d66 100644 --- a/src/stl.rs +++ b/src/stl.rs @@ -34,7 +34,7 @@ use crate::{ /// Strict types id for the library providing data types for RGB consensus. pub const LIB_ID_RGB: &str = - "urn:ubideco:stl:8mcrov7AXHM6ursbnhGhUL4fqTZy75qbnizFBXkVraDc#owner-sport-siren"; + "urn:ubideco:stl:3FutCjz99uxoPmwTgNPP6TxXnZo3FqKUvgzSTqeHE6Ef#opinion-visitor-domino"; fn _rgb_core_stl() -> Result { LibBuilder::new(libname!(LIB_NAME_RGB), tiny_bset! { diff --git a/stl/RGB@0.1.0.sta b/stl/RGB@0.1.0.sta index 715b2986..a80f34ad 100644 --- a/stl/RGB@0.1.0.sta +++ b/stl/RGB@0.1.0.sta @@ -1,5 +1,5 @@ -----BEGIN STRICT TYPE LIB----- -Id: urn:ubideco:stl:8mcrov7AXHM6ursbnhGhUL4fqTZy75qbnizFBXkVraDc#owner-sport-siren +Id: urn:ubideco:stl:3FutCjz99uxoPmwTgNPP6TxXnZo3FqKUvgzSTqeHE6Ef#opinion-visitor-domino Name: RGB Dependency: 5teCJyjMWaxbQK8vdga2soWh2U7waERS3ev8KHShJcgv#trumpet-scratch-pelican Dependency: 7EpM1uymEteG4g4xmF5ntKYX1wXXpbQj5iLiDreH4jWa#protein-donald-cool @@ -7,7 +7,7 @@ Dependency: 9pKFs7Gw7gwerYGVcPCDqiCv5fa165qC6PvFxiotJjaG#rebel-herbert-tourist Dependency: DVtm25LRKU4TjbyZmVxPhvCmctZ6vKkPKqfpU2QsDNUo#exodus-axiom-tommy Dependency: DzTvt9gGhPUKD8Dkkjk9PDBhkJ4gtWxXWQjxnmUYLNrs#voyage-kimono-disco Dependency: HX2UBak8vPsTokug1DGMDvTpzns3xUdwZ7QJdyt4qBA9#speed-atlanta-trilogy -Checksum-SHA256: b65f337f9fe0dd1977c1075c4c48b1681fda8d6ce3045b300d7f538fe6bcc772 +Checksum-SHA256: 5eee2c71a033052911d8f3489e92a9e08edd2f66534cbf134e87b20d3f149217 15!sq21u!F?8_As^WnPDotHzoVsdtr@aSRwVWi2G1l#x)zY9}za%p39RC#b^b6l` Ak=DuM$QKdrry9#1TdpOKse5vu1&=u{+IqgZa|}aoZEb0ER%LQ&W_g1AZO^z3qkU`2%>V!Z000000RR90{{R30 00d-VbYTDq0Zm&2unN%Ogv+IWOlAQDZ9;ju-OD&R*`2#>nd!~X9RL6T000000RR9 0{{R3000v=nbYWv?00{xXnY9F@W0kV-aZ{ajBd_ZDnD~<$3CBu40zYmn*4oVg000 0000030|Ns900000ALvL<$a$#e1Nn`~900#g7Kp+4OLvL<$a$#e1Q*>c;Wd;HUb7 -N>_ZD9fPe?pBbXnLZDCQbtT8M#6j)d{3jR^Dm(O*v6=1jQW(XlZkFZ*qA7tX}unn +N>_ZD9dO2*Sc=dh!>eFXZ}~`(j@J<0BW!v=CCR!Z6iokS4PSXlZkFZ*qA7tX}unn a3&j1e>rv@^qhHtfKCHVZx@cs8P0Mj&qH62}EIZVN-NrbY%qr00;m8KmY&$00000 0RR600000000~8SbY*UHX>V=@3Ik?lb^+R(Q4?4eR(6nw`%qbz^!%<&Wu0B;HjDvStiWprU=VRT^u^?F S>S$_F2)vN@Mb6UJ-F(lri_dqerx4lR4>iBsz2WM<=Vqt7^0owP`H}~XwW|nkt{7 -&IWbpPi(wX$0pXUqF<#0Z84+~*)b7^O8ZDnqBa{(&yMM2gb*yIgxLg7xQ_Wp*<{ #EXTnHMp{o_cMFjX()@VQgh?V`*h`0o{dW0B>Pr5ftu@@z<*O39}j`u&O7io3b$I -s?RA$O$KRmb9H5M0ix1^1KGjKL;n+-tOZHsZ4l|5$r%8I8frlHV#NU|*$H-GY-wa +s?RA$O$KRmb9H5M0TZ=v*wkl~PY(I$Mew&MffU7`j0KQkk9Gw|gx3~hw+VJ(Y-wa +bZ>G3T(C5e*2&|@7ZL8K8p|GAt|gDDdvc%!k2x;ddcL`HllNeFa6}P}rq7L!(40 )FbL%msz%JU8hqvFyoea2o4M$~eWpinBQ)6glZD9rl2yJC_VPs)+VE_pMb>vO>-_ DBy8`Vb0jGrW9$=2qSMXvL3Hxis%K?D(@2ECdMkBvAw~e7wpXAk(w46fI`9<@J`JC>QW-9;y000000 o1#@L>Nn`>@sch`a6%+H}y3w7NL%Cvdc9ihwVg6yH$(01#_!hrw1fvw5rj-B|XP@ r^w5ufb=C_Ju$l1`nW&GEpSWb-yZDDvxbY*RG0006HM{I9mVQf=$VRU6wd2nR~0R R933`cBlVqt7nVQh6}a|Hna2m$|SW59S)fNA-MxPs%HqZ2GTKAXWWi*W4(A64;XF -kb-x000000096000000000F^Zg6#U1_B3ga%FZ;b#wuf5WIk~G+K)5%bR49t5yk`^qQ9la%FR6a&~280$i{(k=DuM$QKdrry9#1TdpOKse5vu1&=u -{+IqgZbIZ6bJLYKfb7gWS-+`&{Sr=ykNJ#YFTr_BQwWqKF0SHNMaCLM|VQ>Wj015 -*2Y!hN5_Bp3Y36tDMM#=e#tGI($UA5U3KNx<*C>jbO<32;hs$B9ZCsU(1!DsC|W1 -LOd&b_IRG-(&Q$wPGkmB{9L9(7`0)Rt93YLV-HLXe?vTA1;^Q1`ZqBog<<0RR910 -0000|Nj600000021#ykb#!wD0RRaB)s0^W44Zsb!Bn|0RRX906+i$000000096000000000S -1Wn^h#RC#b^0|5hJZh8L*O=WapRC#b^1pxp60troJbYWIuY;|P?0RRX906+i$000 -000096000000000P0WprU=VRT^y0RRdCb>vO>-_DBy8`Vb0jGrW9$=2qSMXvL3H< -hRK;Ry+%0Td-Xj!?y>j|@I6Zgd6;17>D+ -0ot2U6Id2jc94hrndMfLayEe1ISdA&%p{mB1!VWk)dp{HRC#b^0j`%vJQH`jUTBM -dlGewUJ>Ch;PTm$$^Gg(x7@Q$kSO{%pbYWy+bYTKqur!g@$>Ycu5$>lN%N|>Clv)aMjKgwAH@`bu -1x<7g|G$};xvA~n-$_S25D|^b#!wAT(C5e*2&|@7ZL8K8p|GAt|gDDdvc%!k2x;d -dcL`HIG#g>Clv)aMjKgwAH@`bu1x<7g|G$};xvA~n-$_S3t@9}X=iS2Wo~qH0$i{ -(k=DuM$QKdrry9#1TdpOKse5vu1&=u{+IqgZb2y$uh9?yTI7S;;e;>sZfv!yd427 -@;7veO2zMB=|GYE2JWMyS-Wn=Ycu5$>lN%N|>a{^qjG?CWH< -H#2g?xz~d9$T&@kEwfdpaqXPF4}s&xpQr=t;O}HAO^^zqT0%g+nC0;-MWK<)&Ge4 -`aq}l(*_53X>@L7b8`Y*ur!g@$>Ycu5$>lN%N|>Ycu5$>lN%N| ->5%bR49t5yk`^qQ9hb7f&{0nuj{y+ac4_6daU{%%bk3j+fu`A*2Y1(Gbp$uT -FEss(d&VRU5yXj3#G4BS)3O?Kk8E~;iP+B(^hzXq!*4!qFzdIL(#2X|?7Ze??G0R -?m5$xzO!^w7hb16`x)q0rkjWP;FH9)y-8%N3?sW*kp-bZ~WaL349yXKrm}Zgf&*c -4c8~Wn@HQbYTVr1#fU~b#wuf5WIk~G+K)5%bR49t5yk`^qQ9h -b7f&{0nuj{y+ac4_6daU{%%bk3j+fu`A*2Y1(Gbp$uTFEss(d&VRU5y|7c^tcv66 -A`G>fIgq>HOrf1lB-q;n)I5N1aoC!Yyr_{7rjFg@b(FW? -*48~9t#5lC;3juy9JUg#K|!ymZ}AFbYXO50c}La^e<`!Iztr?rsl#d#OQkEER^^L -)C{HEhxT=ipa*wpbZ%vHa{&c&;K@+Vs`Svqn*&{=>Y>ovG-QI%SssLzB+C`1S!Nk -eb#!obbU|}-X=iS2Wo~pV0h18CfUz`Mi!Z}iQtl5;XwV -(E`Zdd&WRj~^37YhpmjrWVVQc}>XBWLg67cp3gzo-sO&$va11I@T$h!rSEX2t%Cz -h%Ob97;JWdSa-rT!PdFhnqz;9Q#@L7b8`U&b -KuEP&Z_j#!I -JVg&1PPwC}G0t$0Lb#i5700jX8NU3b>%M}yz;kwbCmqWQ?a(0yP=wbe0q{) ->8+xQm0YXqYdo~D%m7H6OD0<^0n_2##VWXRdjy=DB@qgYOj0}5eubYWv?ZDnqB00 -jX7LNH;4h{)8d6ed8&{mBRDiWpZ<6ZbNTvZE19EW -o~o@0RRU806-xC2vTKaWo2z;WCZ~L3IRs#=EDda{kY~=q$*tC#t4Le{2#tvcDZqM -smk?FcgmDd%EKc;pw+KsVi?D}qDSkO*B!5Mb*xG -|_(S5o&32kL$X<<}(aAg5PFkyv=$keM8CP2si$rmim(Ekws4U>QXM0|*v-OPCeb7 -5?B000OKQe}2!VQgh&L}7Gc1_A|kVQh6}0WzLeQ3m-<6)UHjqig^*m4co5us7ukl -*0UQzs7w8g#>e9Y;*ts5D-#jc4c8~Wn@NmZf9v?Y-I)m1$JRKwa1v8ba_B>T#2Nxy?Vr*${WNB_^0fo5uE4%chrVX>dKSj6?lx}! -~!>v+nlk{(+0jO?A+5>c9X93BNnyJGEOB((CXB(HiD*XOTXpbLr$Svz}Z|7;7BCi -HhV`ybYcu5$>lN%N|> -oKLkF4~iax8KK|47hp;ZDn*}RC#b^a{vkfb>vO>-_DBy8`Vb0jGrW9$=2qSMXvL3 -H?j2hN@!NP)tga7~l000000RI3000000019t+Ze?Utd2nTO015$z{^Dg=h --~N_zJ`Red1EINWrM}GXaQb}6c#qIM2EQnB}H_;!MSfIY{o4njA(e*y9jN*vODbS -xwYq{gu+hp0000000000{{R300000040d5`Wo~16RC#b^a{vheM(yUq2ps*m=2xU -DT;RqCgn#@WzFu~@adfH5^@&-|0000000000{{R30000002WMq&WpinB0T@Wt)5K -h{xQ8##XkXX-V5JAC*Swe0D}EgBwY$m<1qx+&bY*UHX>V?G015$Qbsj>g6`?#s5r -WnKhSeO?L~x^!;Y#eFP|P}0Z%Ez&184%wsNMHUptBVZ#B!U%rHo-i1kG~VoNp!e_ -~i}U0000000000{{R30000003v_Z}ZgXjLX>V?G015##QV*^ZmKt8YDf|&5KZQ>6 -5I6*X)C9iYp+?yjr7~y%cC{O5i=z9Tbk4I8B8ok+RO(3iQ~4#2=U8Jf?FGcx0000 -000000{{R30000002vcKdWo=@6CZUzbiW@dH)+M7 -`mSQb`xkca!3baG*1bV+0Zp9m~TI>-W|y2 -ahx3nF|Vuawki#7NH?S|Q-Q!u2{b4s>#1ZgXjLX>V>+d2nR`G*S<)6P6lYy(#<=B -R_>s@(?%#f7ArN-=Rj?7Ns(12yJC_VPs)+VFC4eO*mP8`7qV21dnrCyk{{a-lF$F -G0V5TNAc?Tc{K-TY;R&=Y;ytH_t7`^M?JbaMfzqIy@8$eYR~OKp92)%PJ48iGR>vvBgJ_74J{JehzCVRLh7XKrm}Zgg -`2paMVhWqNlC78^@LRWpe@Dg=PS6VP -p{$?vC--s`v@B8YHl)C#jpVFzBk!DMw8Sc42I3WMOn~asphiG?CWH@L7b8`Y*ur!g@$>Ycu5$>lN%N|>9Tsh)f38uw_!yYu^q5NmF4cWzX2VQzD2bZKvHa{vkfmB -{9L9(7`0)Rt93YLV-HLXe?vTA1;^Q1`ZqBog<<0anoDa5|}^mjM6(000000RR600000001#AiVQzD2bZKvHQ)6glZD9rm2yJC_ -VPs)+VE_pMb>vO>-_DBy8`Vb0jGrW9$=2qSMXvL3HGEG0000000000{{R300000025D|^b# -!w83IT`y;$>KfZ0H=mhJ>?uVKfZ0H=mhJ>?uVa{vheM(yUq2ps*m=2x -UDT;RqCgn#@WzFu~@adfH5^@&-|0000000000{{R300000033g#@X=Gt^Z*l+x0s -sVVZ*FA(00035b8l^B00jX8xw8kLTBlY?hC@Pbx)uvRkBn&f=uiF4Ermb|dF>BiZ -SSEb;k|42*wg~2q@3^Lq|9zft}OB~jx>)hO74peesZgXjLX>V>+d2nR~0RR93 -4pez?WkYXmZE19EWo~o?0{{nSWo~72X>$Mt0Rdl6PU5ehFh)eHIB}Jk=XT9450fn -)nl5j*It%y3o`V4jbaG*Cb7^#GZ*Bku0s)^0EJ-@Z0;0Ob-P{Wzd?2rs)M&&=&l* -}G;Jw22Ix+z?QV*^ZmKt8YDf|&5KZQ>65I6*X)C9iYp+?yjr7~y&31xV6Wo~n6Z* -Bku0s)^0EJ-@Z0;0Ob-P{Wzd?2rs)M&&=&l*}G;Jw22Ix+!dbsj>g6`?#s5rWnKh -SeO?L~x^!;Y#eFP|P}0Z%E!6RC#b^WI=OtX=iS8LTqVnWK(5fY*ctqbaDg)01ISg -V{Bn^VRUJBWdH>M00;p&C-dJ*Ygad93@i9pCb+uV$agN<27ESr7(9FG*~&Hm0000 -000030{{R30000012xfI|XK7+=WdH>M00;rv#pxZ$?Eb+fZ@!;9xB`-n7hgEflW( -{{JNKm>5MosT0000000030{{R30000023UhRFbz^jOa%E%y1pxpE0f8RpmkyA>T} -tj_kdvFcMGT4`fC%jFncQ)?C=$=&Q2+n{000000RR60000000RIYMbaY{3Xl-R~b -N~eb00;rzm4zh;p_e*BIH}G_uHL`vNz<~wu(~9K*$!EolXjf|0000000030{{R30 -0000PRC#b^WI=OtX=iS8LTqVnWK(5fY*ct@WCR2N3uI+uY+-U?bZK^F00jX62mzD -8lw1;)SBG%dXmxGxLL8mnw6u)Qc}1I}@VaR|$Swc?00000009600000000039W_5 -07X<}?;00jX62m$}nN9KoA`=lHP5CAeGSam&QM5L=EvI-ld!uoqop~3(F0000000 -960000000006Cb98cbV{~&5DV!5;tB_sd<000000096000000000SAVQgh?V`*h`1pxp -F0Y>fS!w4MxxaL=+DqP^k2!wz9AHH68xp8!<%Jqp^&Hw-a000000RI300000001H --OY-Mg^c~p6DWd#8M00IeCZ)s#xbYXO51pxp601a1ZbZ%vHb3txnXm4@`0t$C&bZ -%vHb5C+)0m2^a+yK+Q;_HtBn{qn)u@JyEm+8*~Xc?3hrUVCR$_aOAbZ%vHb4g?Yi -ECIT&Bl;lSX#$ms8AQN7m&qYI@o0Raxbxa~M%Zlr^{H1ibsRCVcA*+(@K+$R_oJY%-uiLn6)Z)RpgXklq?0000 -AS7~%^Wpi^-Z*v9$254nzXJ~W)00aqiX>Db5bYX39002l2SVL%GX>LJoV`y)3Q)P -4n0sseMX>?<6X>I@o0RdM|1Dlv2GgcwhyoKA15f!oiUqrEIR!#9W1W`<`8<7D9Y- -w?IX=DHe0RdM|1Dlv2GgcwhyoKA15f!oiUqrEIR!#9W1W`<`8<7-PLug@XZbEEnZ -e&wsVQf@*P;_zx0sseMX>?<6X>I@o0Rn>jZ -jZ{OM>iY*&c?b?a -Zznm(1lyi>j4IAX>oOFWB>&L0)qT+m0wKdX15oFQo;tORnQe30EoyhqL?3u+Bn$C -$*{(8u7-Qt<6xS@-s>{OM>iY*&c?b?aZznm(1lyi>lRo;Xklq?MR;&*X=7=0Q)OX -nRCsA*1OfmDVrg_^Z)t7-1pxwr{BM`7lcy62B%ff6&(PG$S`7lcy62B%ff6&(PG$SL`7lcy6 -2B%ff6&(PG$S`7lcy62B%ff6&(PG$SL?_X=DTf00&}ebYpL6ZU6-V0` -+VYVk7oBr%DNv+($;q`HHK!gIHa)*%m(-e#9sm3ZsHT^UK%K(4i9Ajp1M~R@C@!4 -#dQE#lUD;OiKi1RsjZVX>oOFWB>&L0`+VYVk7oBr%DNv+($;q`HHK!gIHa)*%m(- -e#9sm3ZsHT^UK%K(4i9Ajp1M~R@C@!4#dQE#lUD;OiKi1Rs +kb-x000000096000000000O{WMyu2X>@r70RRX906+i$000000096000000000F^ +Zg6#U1_B3ga%FZ;b#wuf5WIk~G+K)5%bR49t5yk`^qQ9la%FR +6a&~280$i{(k=DuM$QKdrry9#1TdpOKse5vu1&=u{+IqgZbIZ6bJLYKfb7gWS-+` +&{Sr=ykNJ#YFTr_BQwWqKF0SHNMaCLM|VQ>Wj015*2Y!hN5_Bp3Y36tDMM#=e#tG +I($UA5U3KNx<*C>jbO<32;hs$B9ZCsU(1!DsC|W1LOd&b_IRG-(&Q$wPGkmB{9L9 +(7`0)Rt93YLV-HLXe?vTA1;^Q1`ZqBog<<0RR9100000|Nj600000021#ykb#!wD +0RRaB)s0^W44ZlVPs)+VFdvI3ITQGP59r=ivkR6Lh9EroO>_;00000000300 +00000000BPh(?sa&l#EV`Xy&0t0PnZU6uR18re=0006EPjEwTZEb0EZDnqB1_}da +W_AJEn^6;37FKqUhx?i3R+Mr!fY&(;2BFL(m@EZk_srD>Z*Ww3aAg6mmq$Dkce`F +_i+_^V$Co|c3C&L47E<#|6p|R6Ay`-lZDn*}WMOn+0$i{(k=DuM$QKdrry9#1Tdp +OKse5vu1&=u{+IqgZb8WA!#r3Bk2FRnL+RBXEn8vr=x`Tq%|A_kfK&ST81_x(sZ( +?C=a{^qjG?CWHYcu5$>lN%N|>0-0$i{(k=DuM$QKdrry9#1TdpOKse5vu1&=u{+I +qgZb8WA!#r3Bk2FRnL+RBXEn8vr=x`Tq%|A_kfK&ST81_^dyY-Mg^X=QT)T(C5e* +2&|@7ZL8K8p|GAt|gDDdvc%!k2x;ddcL`HZLh7x^`{^P$fKg#%8c8X#<$(NgM!un +i2C|Kr}onZ2X|?7Ze??G0$i{(k=DuM$QKdrry9#1TdpOKse5vu1&=u{+IqgZb2y$ +uh9?yTI7S;;e;>sZfv!yd427@;7veO2zMB=|GX`^Ga%pgM0$i{(k=DuM$QKdrry9 +#1TdpOKse5vu1&=u{+IqgZb8WA!#r3Bk2FRnL+RBXEn8vr=x`Tq%|A_kfK&ST81_ +V!VNn`~900#g7Kp+4GPjGK_bOr+gZ*T#X$mV(;bz)!CmQ_M(k?Vd!kfCo{nDM?)_ +qK{868FUdba?@X{^Dg=h-~N_zJ`Red1EINWrM}GXaQb}6c#qIM2EQoZf^hp0v=Cw +bZ~WaL349yXKrm}Zgf&*c4c8~Wn@8gbYWv?1_T9faBp>V0h18CfUz`Mi!Z}iQtl5 +;XwV(E`Zdd&WRj~^37YhpmjrWVVQc}>XBWLg67cp3gzo-sO&$va11I@T$h!rSEX2 +t%Czh%Ob97;JWdUeYG$0JzQ^rkp;@L7b8 +`U&bKuEP&Z_j#!V0h18CfUz`Mi!Z}iQtl5;XwV(E`Zdd&WRj~^37Yhp +mjrWVVQc}>XBWLg67cp3gzo-sO&$va11I@T$h!rSEX2t%Czh%Ob97;JWdZ+aW59S +)fNA-MxPs%HqZ2GTKAXWWi*W4(A64;XFkc6EX>@L7b8`U&bKuEP&Z_j#!^xB4~9n`Dx!RtcK)nwJD~WnpXq(PtOELlW@z3 +54$cZcQEw0|O`dPRP3jk}Sl@F(;O)1#@&^bY%f;M8@5%bR49t5yk`^qQ9hb7f&{0nuj{y+ac4_6daU{%%bk3j+fu`A*2Y1(Gbp$u +TFEss(d&VRU5yF0!Tm7r-z?Fqq(6n;Tke)*kJ44PoBPfF{#q^A_Q|2X|?7Ze??G0 +R?m5$xzO!^w7hb16`x)q0rkjWP;FH9)y-8%N3?sW)M$zZe?UsbYXO5Q)6glZD9li +01ISgV{Bn^VRUJBWdHyG0SIPwZf9v?Y-Ioi0Rj2+tO#bVL3d`<{R|O(1hLsv{SIe +d5<6l9>v2!%ioJpYH;+t0eX2w~A!Q+0eaZ{MVycPK^T!VRUq1V`yzR000000RI3 +00000001i@Rc4c8~Wn@8gbYWv?1_J_VWC4V64U;TR^uxCZOKFR+hj1x=Ibox?`Aroor<$W|05z3@o%ygg< +qMR;{BXaKU%$CX5lEZwTb6rTk%m8Md`Zf607xcDo(^rWT@v%fz@xDS+ +Wc!R^OQf-s;Z=(UIZb#Y!bYW)!$&Z?;!v;$l{rzVfm%J+c{!D0(A9Khp>v3=AX`3 +Ri22*2bWo=;w3Ik?lb^+R(Q4?4eR(6nw`EY+ ++|}0$i{(k=DuM$QKdrry9#1TdpOKse5vu1&=u{+IqgZbCdUAcyL4!ji%3ykIsch`a6%+H}y3w7NL%Cvdc9ihwVg6yH$(01#_!hrw1fvw5rj-B +|XP@r^w5ufb=C_Ju$l1`nW&GEpSWb-q0000000030000000000BXKZg`VQf@+aAk +7<3IWybk`76TvuW{aQ_%-X`?VwZ$5L?~`!+pRSq0(b70UtNPhHsg*CGu`j1)10Rz +d$z^j_AbD^H9X)_TFhf`x$P>NY& +HCT(P)^FVARS*Zg3m2dUS*m(weL9PhQe$_)hyWq5RDZgXjGZgT(%0c3R^La7y@JV +OzJ)&GXo9MeQ_qmbcB?4VH0I#X{*-T?z>0?er0_e!9%6%WL6o5Q7yVM7GXa@w44C +HDB`4cq_#000000093000000000Yga$#@6CZgT(%0W?w%t`n9TUcD*&5hFi^ +PVx{q1b@^7zTcrn*%qZTXaRP$8)%E7`<-;ovk@YSJ+V~kNcmIwC6DJ=V=(On#Ml4 +;000000093000000000SOWp-t3Z*XOD0TZ=v*wkl~PY(I$Mew&MffU7`j0KQkk9G +w|gx3~hw+K^XXk~3-Nn`~900#g7Kp+4LRB~Z%b7^#GZ*B$(17>D+0ot2U6Id2jc9 +4hrndMfLayEe1ISdA&%p{mB1!VWk)e2*8Zgg^CV{}Pm0iOsgNjk^^qPoT1+zTRnA +g`3vXv9d*8d@RXy~6c6G7fZdVQzD2bZKvHRC#b^0W?w%t`n9TUcD*&5hFi^PVx{q +1b@^7zTcrn*%qZTXb5d(bYWy+bYTJYdQCW4e)%xftOSp9TD)g5B;KO;Krzd=y+`r +t_<1!4XKZg`VQg~&+V{~n_vCwKmUM9ZPku*a@b)#*ne?8Y=L^y0a6WSn25D|^b#! +w9siJyUlgOLOB};96cGdSG6&iv=7PD~jruGj4o;;a=3t@9}X=iS2Wo~qH0iXgu^J +RK>3KknnLsqhlVJsk2VEKBm*V?S!>C(%{wF!1%Y-Mg^X=QT(-GycVZ((E+6z-1k* +Q)plvl=9@swb(NvM}hX&nZVu33g#@X=Gt^Z*l@$ur!g@$>Ycu5$>lN%N|>oKLkF4~iax8KK|47hp+cWHEPWpi@ +^T(C5e*2&|@7ZL8K8p|GAt|gDDdvc%!k2x;ddcL`H%eXB&=4kVCWpXCpfvNCW7iR +%TNc7%ZG-!6Ur?3G55L9wuZgXjLX>V>qb#7#AWd;HWX>M?JbWLG!0Tr2NWXrXyKn +GOwA#t$mH2bG7pQ)aE=^FQF!@KkQh!AUTZ+C7~a$#@6CZgT(%0hP$+dLDIRU +(}XWLTZugenOC;Z(5k~zEJnJiX;;E#Q|2(Iq5Tio4{G+8Pm0)7; +l&Fu6+?N3W000000096000000000nFa$#@6CZc}4uWo=;w1_*6sbYWy+bYTD +q0d?d}_}|Wp0vpvv$c&#PW69R$ltr%da5t5w^x+8!q5uE@000000RI300000000( +DmZ(?C=a{vkf)$WoGNrn+a000000RI300000000wDpaCLNZ015$z{ +^Dg=h-~N_zJ`Red1EINWrM}GXaQb}6c#qIM2EQnHo-KZ`k;Xmr`<4sJYKN!!u{G5 +u+^j1lf!PF4>GEG0000000000{{R30000003t@9}X=iS2Wo~qH015$z{^Dg=h-~N +_zJ`Red1EINWrM}GXaQb}6c#qIM2EQnHo-KZ`k;Xmr`<4sJYKN!!u{G5u+^j1lf! +PF4>GEG0000000000{{R300000033g#@Wo~0>Wpe-t0Y>fS!w4MxxaL=+DqP^k2! +wz9AHH68xp8!<%Jqp^&Hw-a000000RI3000000010+sY-wa+bZ>G11OfmAZf|a70 +00011aog~WdH>M0=csXpjxL^Nrpp0Zn_o=KaY%P`RGsm%`JsM3VH1hU~TWACgHqw +;r~cW`-Qb7^w`1pxtHPfp^mpD;#5t2l9$ndf%REf13|ADS+2w>k +^=#h!x!3UqQ|ZgXjLX>V=-1p)z|2rNlD$O59e#ogQsB77jPl+h5j^* +S;EG*S<)6P6lYy(#<=BR_>s@(?%#f7ArN-=Rj?7Ns(10tsb!bY*UHX>V=-1p)z|2 +rNlD$O59e#ogQsB77jPl+h5j^*S;EWOW`wsTH9-LlJ`2|Ay5Z(?oEi +kl{+~pis;@Q*TJ#8dQ03Wn@8fb7^O8b3$xsZe&wsVQf@*P;_zx1ON+UWn*k%a$$6 +7c4Yts0RRXAIVbbqN^4g)WDG0#SSGl-+Q@e<+6H_!d>A}?>eLb#i5700jX62myf}=a&wUzgq*nHzp%O_gxL;Ro0E2(0000000000|Nj60000008B}? +2Wn@8fb7^O8b3$xsZe&wsVQf@*X=DTh01ISgV{Bn^VRUJBWdH>M00;q-z?57PmRE +;x*JyQZ??N1%-?X%h&UrM00;s9(nscpRQseH2M_=0H1c! +=>Px#000000RR60000000RIYMbaY{3Xl-R~bN~eb00;reGP>7z&ZQf?Gib;@a|Hna2?0j!=ED +da{kY~=q$*tC#t4Le{2#tvcDZqMsmk?c;Wd#8M000eFX>@L7b8|s%V`y)31_BCqX>@L7b8}B}W +C6k+?A!p;zT)eT0-JI=`>_zfHkawo185nP6{Z9SY03$AX>@L7b8|^#0f}o^CC$c= +UszhlV5m?Ru@{iVU*wrVdeH+Q@FPbX@d{UIbZ%vHb5C+)1OfmDZ*D_qVQFpv1pxs +LzqsuE4_HHJVQFqbZewU~a#Lk=1OfmDVr +g_^Z)t7-1pxt9P6L~mATw4W)x3qLMnX>MdwWnpYo +cu;h51OfmDVrg_^Z)t7-1pxwr{BM`7lcy62B%ff6&(PG$S`7lcy62B%ff6&(PG$S3SVL%GX>LMnX>MdwWnpYocxhw=0sseMX>?<6X>I@o0Rn>jZjZ$vY*ct@WCQ +{L2V!Y-V{d7000jX8g8XllUrgm@w--DRIM~X`1JyK;>q +K>mX$cszrKCL=@F5H{a;)B(Tlt4rog*WC0S0Voadl~A00jX8g8XllUrgm@w--DRIM~X`1JyK;>qK>mX$cszrKCL=@F5H{a;)B(Tlt4rog*WC +5LiQKVQFqtWn*$>bW>$vYy<)T2V!Y-V{d7000jX8g8XllUrgm@w--DRIM~X`Xc_Cg)w39@m$R6qOEzWQ+NTC@=;-DRIM~X`Xc_Cg)w39@m$R6qOE +zWQ+NTC@=;?<6X>I@o0Rr`G6JjIwI +j2eqliWu}$@z+_xPw?-wb>Rw7=FYk8VaL=Li5Yl(a@n1+Ku60FILp}Zw|!7cE!MG +Sxid=WmW+OY-w?IX=DHe0Rr`G6JjIwIj2eqliWu}$@z+_xPw?-wb>Rw7=FYk8VaL +=Li5Yl(a@n1+Ku60FILp}Zw|!7cE!MGSxid=WmW -----END STRICT TYPE LIB----- diff --git a/stl/RGB@0.1.0.stl b/stl/RGB@0.1.0.stl index 035a18c8..8e120b57 100644 Binary files a/stl/RGB@0.1.0.stl and b/stl/RGB@0.1.0.stl differ diff --git a/stl/RGB@0.1.0.sty b/stl/RGB@0.1.0.sty index 9066b245..7ec45643 100644 --- a/stl/RGB@0.1.0.sty +++ b/stl/RGB@0.1.0.sty @@ -1,5 +1,5 @@ {- - Id: urn:ubideco:stl:8mcrov7AXHM6ursbnhGhUL4fqTZy75qbnizFBXkVraDc#owner-sport-siren + Id: urn:ubideco:stl:3FutCjz99uxoPmwTgNPP6TxXnZo3FqKUvgzSTqeHE6Ef#opinion-visitor-domino Name: RGB Version: 0.1.0 Description: Consensus layer for RGB smart contracts @@ -271,7 +271,7 @@ data FungibleState : bits64#8 U64 data FungibleType : unsigned64Bit#8 -@mnemonic(super-hexagon-sample) +@mnemonic(photo-peru-rider) data Genesis : ffv Ffv , schemaId SchemaId , flags CommitVerify.ReservedBytes1#joker-lemon-mental @@ -282,7 +282,7 @@ data Genesis : ffv Ffv , globals GlobalState , assignments AssignmentsBlindSealTxid , valencies Valencies - , issuer Issuer + , issuer Identity , validator CommitVerify.ReservedBytes1#joker-lemon-mental @mnemonic(formal-door-pixel) @@ -309,6 +309,9 @@ data GlobalStateType : U16 @mnemonic(bicycle-europe-shampoo) data GlobalValues : [RevealedData ^ 1..] +@mnemonic(instant-tiger-athena) +data Identity : [Byte] + @mnemonic(press-egypt-helena) data Input : prevOut Opout, reserved CommitVerify.ReservedBytes2#pocket-habitat-soviet @@ -318,9 +321,6 @@ data InputMap : {Bitcoin.Vout -> ^ 1.. OpId} @mnemonic(liquid-meaning-convert) data Inputs : {Input} -@mnemonic(veteran-tango-content) -data Issuer : [Byte] - @mnemonic(light-nelson-brain) data MediaType : any#255 @@ -406,7 +406,7 @@ data RevealedFungible : value FungibleState , blinding BlindingFactor , tag AssetTag -@mnemonic(scale-initial-anita) +@mnemonic(pump-popular-sensor) data Schema : ffv Ffv , flags CommitVerify.ReservedBytes1#joker-lemon-mental , metaTypes {MetaType -> ^ ..0xff StrictTypes.SemId#cargo-plasma-catalog} @@ -416,6 +416,7 @@ data Schema : ffv Ffv , genesis GenesisSchema , extensions {ExtensionType -> ^ ..0xff ExtensionSchema} , transitions {TransitionType -> ^ ..0xff TransitionSchema} + , developer Identity @mnemonic(garcia-smoke-ozone) data SchemaId : [Byte ^ 32] diff --git a/stl/Schema.vesper b/stl/Schema.vesper index e2145095..80e5e6a4 100644 --- a/stl/Schema.vesper +++ b/stl/Schema.vesper @@ -28,6 +28,7 @@ SchemaId commitment hasher=SHA256 tagged=urn:lnp-bp:rgb:schema#2024-02-03 TransitionSchema map len=0..MAX8 TransitionType mapKey TransitionSchema mapValue + Identity serialized Schema rec ffv is U16 aka=Ffv @@ -115,4 +116,5 @@ Schema rec some rec LibSite option wrapped tag=1 lib bytes len=32 aka=LibId pos is U16 + developer bytes len=0..MAX16 aka=Identity