From fb33e12c928e6403fbcad41d780a99144b21f8c8 Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 10:03:32 +0200 Subject: [PATCH 01/10] draft blog announcement --- src/_blog/2025-05-grants.md | 46 ++++++++++++++++++++++++++++++++++ src/assets/utility-grants.png | Bin 0 -> 42316 bytes 2 files changed, 46 insertions(+) create mode 100644 src/_blog/2025-05-grants.md create mode 100644 src/assets/utility-grants.png diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md new file mode 100644 index 00000000..c68881b6 --- /dev/null +++ b/src/_blog/2025-05-grants.md @@ -0,0 +1,46 @@ +--- +title: Spring 2025 IPFS Utility Grantees +description: "We're delighted to announce the grantees for the Spring 2025 round of IPFS Utility Grants." +author: Robin Berjon +date: 2025-05-12 +permalink: '/2025-05-grants/' +header_image: '/utility-grants.png' +tags: + - grants + - funding + - ecosystem +--- + +The IPFS Implementations Grants program exists to advance the development, growth, and impact of the IPFS project +through a focus on developer choice and availability. We provide financial support to projects and teams working to +make IPFS accessible to more developer communities. + +We recently ran [the Spring 2025 grant session for utilities](https://ipfsgrants.io/utility-grants/), which supports +developers creating essential utilities, libraries, and tooling. It was a tight competition with strong contenders +and we're delighted with the grantees who came out of this round. + +## rsky-satnav from Rudy Fraser + +If you're anywhere near work on the [AT Protocol](https://atproto.com/) then you surely know Rudy, among other things for his +work on [BlackSky](https://www.blackskyweb.xyz/) and the [rsky](https://github.com/blacksky-algorithms/rsky) +(say "risky") projects. + +The grant will go to [rsky-satnav](https://github.com/blacksky-algorithms/rsky/tree/main/rsky-satnav) (Structured +Archive Traversal, Navigation And Verification — we do appreciate a quality acronym), a local-first and user-friendly +[CAR](https://dasl.ing/car.html) explorer for AT Protocol. + +CAR archives are a very convenient part of the IFPS ecosystem, used to package up multiple CID-addressed resources +in one bundle, and AT Protocol PDSs rely on them for data exports. But end users, even technical ones, have found +dealing with CAR files challenging due to a lack of tooling. We really look forward to playing with rsky-satnav +ourselves! + +## CAR indexing from Ben Lau + +Another issue with CAR is indexing: storing a CAR archive with a given service may make it challenging to +discover its contents the archive is treated as an opaque blob. + +Ben and team at [Starling Lab](https://starlinglab.org/) are developing a browser-based tool to help +locate the content of CAR archives, without relying on public indexing services. It's definitely going to +boost that part of the ecosystem! + +And beyond that, stay tuned: we will have more annoucements coming. diff --git a/src/assets/utility-grants.png b/src/assets/utility-grants.png new file mode 100644 index 0000000000000000000000000000000000000000..f204ffce7f088e7903362e43102142b26d0d3b51 GIT binary patch literal 42316 zcmeFZWn2|&yEse=g0#{N(w)*ME!_>$-Q6HcNQZPcQqnAtMmnTjv@|S2y5T=;_c_mg z&tB*A`{lq7)-W^I+}C||4dF@(QfMfIC@?TEXfo2`Dljle$S^RlUyqHaDy}r#&L!wlO7qB86C?Cb4*y<0XRP>ms_$+S`YP=m%zko%mGZ z>ymiYo;IUxX{n1ng*og1dQ_a?_ZC_m>Brft&%+(opSf@ft(vFw9i1kR%449U{Gtxx z)g`2jAYt#mm8<$qfXn(cVe>7v&sXyls;m)4nTW(W)k|Be+l9oiZGur;al{cvbDgG# z@|e&mmZT3dkS$cd1&b4J+1aePt3_`_+nt5-L}bIAIlkJnlaJ-#lvMVKIZt23D(!6P z(ssHb{WRG`Qp&Tf;v4DxRPe6}koI;^MkW#EVz*kfVgECD#T7)jAEB^s0$+TUn#TSB z7yErIRWQH9B-|3D6`K+N{atQjt?EGuQk|#c*B(I)Dzt?bt%Rt2IRCgpf z4Ze8?^DKDl-Lr4-IG6~(C{V;ds*%e}V{inOlhdrjdA){J!heqXQgk2|GhUQ27fp#m z4NhH@TS@2?bqYQ6Ba2w;4}D8a!jA@G+3yf&y1BGSW$m0zK?rF{S=F;EDo;VS*ZkJ9C`sN zDCikEYitZYamXj5cXI3s_=a-SArac2w4>;|)ZXo~F{hlQ5T(2x#@}R2davG{_Ku|5 z*7g|>LCdrB80PMSJ{}X+cQ@7DKRsR%M@MsZfY*GTs+-gnQ1r0u@hYEsJeiFk>WW%B z@_g~_=@J21wzOW|9#d-&HOIWk`v?Vr+nW^f zL7cO&=$?0!F-;j-atpG1PRura>uj8lEyCe_xD>4z3Trk zh-^ADm^efn2cqVrJBcfo=ArS4T^qnYHa~_vCOFnVCPMj`r|6X5qg+FmPJfo@k|>pk zQKP2KsolV&=pJQTXd7Xhy(i0;myty*Yagdqsh7II4zh7(T@OFLJ|;aTzM4M%e7t|$ zxY75b1SJWj6NLap0tM*>3!|WV592PQH~sPRljj$7S*pZ&lxiejkUq;UiZ05wijoxl zvV6kD!~9u8T0jnx8%0mg0H%|m-=I@x$W$ZDp>p-(PtQ_dEg~yi&I?G(7Y^kP6|tDi z=;iZsSz;VhcURqH#G~V-zhDedF)HyaEhx2Bw^H{i`J~LPfu^os)U12e+ws_N!8NLA?C>FJ9tO6eE0sorH=qoOs3q)UF0EbXO_QkMTx6j3Bv zt9DYi$r*wj{9W22k#m%@w{EJ=x1L&uTSrI-XYR>d+#IAny^d@*)-{D+hQE+Mli#E{ ztvRTf(T&LUa0lxw#hcz+;I#R42|~0j1#y^im=3VcvF+gL=eA_?d?(HB%B^RuW#c)C zY|+E@mUGU`brGMZfm?ySlB>-eF8yaJvYdPB>1g+;OA2jx*{zf-KuK) zT7NSWGT zI9_gBZl!E^P93q*supt<2P-IU5e;vREeiznYtN^y>8%N_bUDg6UV+Uz)Q3K==|HZ3 z%J)TWH7whGFzb11Mq=FR+USVa!rRh*;drXG;na(Bbb7?}d+$i)^wa5=-`?vL`seme;NBt@NF(?s0_vD(h*vZ1yo-v=#H8ugy4^rNeI>maJu3p~dz8*HwdJYZsSB%4E2N3GLaAb2GfWO_j=7JY zy10H_y(E-%PCET0Cw`R|R2VJW$V!596LDejCKZ))zQ)qhWr~?S@s^xm*nOaK`2H)C zHMpAiBe9Xfh4b1*dQ!}~_tt@Kkanm3I7r22qxo}inO2##hFBSnrbp$tc0!}MXT{iD zvs;0i6~tfHp}NiVZXRu%i2r!%WM&iXZskNwtj)IV)x)`Dan!VkvH$bipS1(tlcVy6 zsGf+LD9k8BC?a@H5tX;5SE^Tv%RIDp2lNe$ORb2F5=|R38nYE{FHv5CUW(1bHP$C` zyhVMxY;XAO&N)?H`wV>oeIPpMIPkb3vss{V?^Z8PW!!Mb0IXK1QD3@y$Ffw}wrJl% zR5o3PS|)PGba|x^r6@03;co{fUC7!KQaqR3-=FJS&}=t!3;1=kzY~r9q%Q7FtjH*6Pfdh^eR7US~~h- zZte0Kb*ko@Svhy1TMlzWMdM;sYi)OF{*`8}Ax6dzeq}F}9n&NFiPCSX%L-drq#{)O zC#$x{;M~#gnHOWSFu&q8PvDTP1wyZ z-lp$6j0m|4G0*N*)$4mSEsYDbU#Ml_%}x_OvV%esWJS>38el_TYjrQ4&D(fVip( zZ@RY;07S7cNoHCy=JN6|48Som3?eKx3_NfI3w*=C62c(X8- z!Ptz&)6VhnIWU5r{J^1|nX3`Gr=6|63%{ojliCoOV z*^Hcrg^h)cQW%AtoLtb^)SO>MT=H*l;4dLcOIKG%epXfw4-Xa(P8J7e3s!bMK0a19 z4pt5hX5bEH7cYBPBTr^~7pgxG`LE}Qo4J@cTRFN~IoOjwKG(?D!Oc~OlJaq(|Ni=e zrFrym8Y4lmbjH2 zKxzOrVfI&SY=VES^RG+)!SoNPx{H~!n1dYv=_>pmX8jHP&x`*P@UJzs|Fb3+C&xdR z{Ku7lKtAq)U&YMD!Pf1OhU)fKuEGEqwA23+O8Y-x!t7jJe*^vV?Ei$&f(r4^v;Px9 z(b)>1gV7^u!t8&q@XvF9-!I7e$oqfD!XH8V>ntE?!YG2Q|1Gt`DD#p^AuuqaFf!t= z)jVPM7Lih(OU!i~ec9E1mpn|_^?tn|Fa>5T(pW=|?j4MBkFWV*qy_(!fXj?(57S`r zyI!Uu96li-wF9}ZPw%O*+`)@Gl~uEWEqi-=avpAq7sCN$*@x*nmEMpF!?9E5LwC)g zU5Z5n5oGc}7`T7`5~X-r@+OVRMFIvE0aNtfzpN4HB9Hl?TmWtkdXJOCrsEiz@stYc zvtd3e3&a0=$wxGl9O0fzq8`L@8bMtZGly-^;@`;pg&>MTV3%bli8D`Ms+Lb zd^nQOH-wV!`ve;0F-3D$0OI2=P*`+9C!(lP;uv%qAV1H5`8fVwU|kL$`i20e5)U$AEp1Lv|!Gs zVBrB7Y!PUwVfzkuTK&4kq34@N=8gSyHY*!uEG9IihechlWSgs0Uj<>H4OcqbIp5qb zt(G`Rl_s#9&dfSinbvEysRjIwK3T=Nj?$EbiJeG6tn618|2|zPO&dePZryyat_Q=DT9e&sNmIH_V z=Jp>tO!|9*Hzh7(%&WzpEZ6aZn66Lpgi-RH6a07c(oHXfgT@Nfb?cXZb=^6DvA3@J zG6gDeY+i*0m2pBbT(K1}iiKkuOqb^egvms%YHJD#-%i8N`cZc~f`iF8o>28?-F-8o zZ*gxp2$)FYXN>$}x&K^NprpEw#^72y(<|sJp>AWHyOaSm79y~U8gY4=kWn?&3!ZJY z(;D1KleibeuwDI7ci-PPBHT^EDVJJ~^+WR7wke8G*^SM|sq)Y3jpoFOrGv%^8o)NE zDLvztlyPwzl;GYN7wdf@q~^Njage5OzptYm(^e48*K$-mY=Jkc3Mm?yvP!1T3Q)9f zsVKg8eFMc6urY}mO|e-9{#rQRPEFRGG!N%th9iFYCD+WVZ&=mEAzN|SQ_3Ck*(;e% zr@^Y2CIh=yG%^SZ8Gobzw!ilSWrN}QcCzQDU;W`d))3>Rt4{rZ<1@aT_Ost*dD>1P z``xyi3+@sr-R!tfe43~jpglzK;lIztPCscp7MGi^+FqGj(@D`wv}i>2Fj!g3dr6jr`G3ju zvA3iSfU0*NUSf`8t7uKeT)cAbKc5L!M3wFJAtbP1^|_E=o=Lk-v?QHI)GA}hlp>YR z7V&}R*53dz3L&8zIsCv9e7OKA8nx@``@t-tVwtxj!mr&A6N+Bjd+;eL;zWLk`q zR`oz>jaK4Z=G4B+`xoBz&_{Ys3o2;HR{~PL`F82H=|F6EBk+E6O_J7F<|GkR5=>LD zKpGb{I+83wjWYplVJ#r;aV3!u{`R#pBOYVY(h^@S@ zl0Y1O82aTOf@GT>K;OY=^8>-XL%)26DqF1$Wxg2tzf}`}T&xR0<0=BeZpBahpbQiW zM2|%opJCE-nS61#&%ds8p1S?O?`F>@u9RRj0jpQalQz51sE?mXPDLaOH0s%q2~zTX zYj+tkJ22S}uzF|cGw#jo6#+$QFtGrs2MJ<&kLulYRDAzrW}Xo1LuSnLt{|VAk>_)k z-_d|EIHoP{vnIdlVV%@|260=pkP}(8Yhjh8E3`lvSq>26cXg?V?yNj=q)nM6Uxv%Q zBr8m3g$e41Vk8e%DHg)bTN4GnJ04nIU1si-4@02#O9?H zlh&bW!80Ib;YQdIh`isEt#$?-vb8^nB@swRd2#g08*FSsz+;u>xsC={_3A(bXkI1k z3t)kfNeH$+67<$sjn8S7gdttK=MEsqrs=9?saqJ3Cvp)aX+cvCtVhe43!k?fFt5c^ zfl|o!<>4lmz0MF$rWBoz|L9l{a4aEIIOxzw#Q}H^Di^v1aa><>ru6uv-Zv5gu_yh0 zZ){HZlDIVS^pZWVvz@m!HiL1Xl6n?^ckx58j;g{VY+=;nVXS=ds>)D9ZO7{Y#X5w@ zwaz}xUg$PsZ=Ab?A`F@U#-ct7ppt{7+>o`U;>>(-Qy2$?`pxdj!cn8BRJ_m);9zxm z7a8a3QC!L2Lkk!_&;S7g*KRLTeCsvW5?w9sb)Q)(_i(7jbta$j$Zn1WW#~by=Q%uN zwLP3>b9eSNt-LRkWH#stU_yCd5+X)w9z;#LS+s4L)QI8uJoHH<(^Lk9Fl4@+VvU)h zh^4dtoBcuLh;)%pO4H43L0g^L=ayeV_x47?H^)w)E)R>|oeyu)v?t9ETvE%W3=@gm zP^`p5UPB8km}A*UVm%EIb#RA*biMcWs+PN0ckNJY#ef(?Q-lLw|KWz@W-7l1&5|s@ zakVtyDPuuQ-QLW6+I^D0ciP>o%ZG~Ek)(5IG6H&mT>2?-UZ&UB)onHVV`7oYG^z;i z3x@nxFGo17leDQoM=QgGGj{cRQd`Za(*y|+d$ePqzkMfcg545X$0{Vze)%Sr3X2Ge z5OsWoX`CQ>a)zq_1gz-zTNMtw28RA=-abqX4VF91@)mQ!*R74MXJ<=gO+9J17?93l zvp$u>*W2OH3{oYa2ac_((HaXq&2}N3LlTRxPcK9Yh#5$UBGQmIj#jmAnyS6;k$x$v zo|C>C$tY70X1vWMfF_+C!GH-WCg(?|6`c!tJm;V51AfFF+$?~^?Zwg|`_@*t+nKSM^HQnO zJ9MQjJ!ZYz9|7wf71)ZSGNcU=TFo4%odlRrXp!^iG@@Y4>RL?j&XS2ZtqFXoEC#td zF|cou&Ge%pe+~QUjd?9LL#)RA#i(FwQ70O>*w;vIe%_r*fwWGzTJ)@<{>}R5NuubL z1&mB9u@<_@m0QDTUc=-e3Ht(RC}r)sX$uxMcU@~maOQZ$GO9L%wNZvj8Tv{(&%_icZ zM=n6g2@RGnk%D1%t~e6atU&2WoJt)7yU4_``Z=rsAI2h!>-Jc2{6zC6ET1FJNdho} z@^1weJqPS;EpLP=#!W_e-Zzf;QZKo;=LcKW7AA`sHmr>o^KS$0olMZ=4>bpyO^Wtx zZLicOudtwm`gG&~@2(ubo|TR5@-Fph*F z45x(5?ChjN&)N}y=TML%34FLeZa?RvMG%lw$n!WPI{kVLwn%7shI|urM$%G(qk!sd z-2+Yjr62RWR>i4{UB24=@fK8p(-)k

g`&2qIya(+VT-kiG-zwj2J)U;d^XeD$RojE&?xuAP@^?u!dUSQUM?n~KwqK%9G zgWweVjPn~^0}3c1{09~QCs$`Nc>af`iMBmGvCcev$p(8oXPr^83mU0sQ>??tYpG{u z`Wu_UVp-(f(4J9_BVF$EJ>n;_T4g<}fW%nZi_ag*%J!j{E<5@rM`Qxuzh(p@+q|X?(fHplT)9C-?}2(x4-S!*TZaB@7Z!kN_0M+ z|9nTAmi^4KzXMrY)q;15+Yxh~ot3CdY&sf_Jd?5+((~-E|CT2hI4gvv&%$U5b?!S? z4-HcG+AcS~1z+;U-*BWx-ERpDEH=8@gXE~omEb<@mwBT?;YCc1_>QzhzE=yxeRbEim97RB)LZQ7^fx9#EMWKirQxhx=%+V2Z( z4fG4!Z)i5M_=(CGdK5*%$uzgshrS;d9t3#rTwHg9j0ZmPk9gvk!AiB%kN4PQr!*HE zoNsp)b}9?6tcU!|C|y0KA{}wl*#UdP1OuYvZ+hNzj9*WBIj?9)#(!S)QN`z`l)?OW zY(vfnoAoyP1zwa1rBXq8`yvzX4xUnTjjNbyoZHKb@$?#M^na^W>_>pJOkXVt@nE@s zd4eXFW~Q`f>a?9BMn;O58?S=5>*A_YmRUJ)KZ!zs&WpI*0wJZYo+L;ZHD|A)Hj)_B?)?Y9GjYFWQG{6(F_vR@-5P-x>A|lBx z#AZ<;>cM37^Hn%O?Q|+$zrFtM-pFOt-uw^{2GOw$G)b+YonZ_SIf$eFn-VavlW>B* z19fyq&dfOqf+B7xDxYd9ff~}so8>u_yKK-kXlJy%Sp0KlvtLEU!Nf4$uHJC%n+s-s^m z-s5koZA%T#@@>H?wm)Uu=cMf$%NBfz#*6gV*lQhfMIK(=D4aq|)7i)$^H55PJgS`0 zCZ-nCg(2zrx`cxO_=e|5kwcYLhcnmv$-aH$|B@PjJArtxGx%qDlG$M>TvZ@+t~^lT z+o7v=Bo#YzB4|`!0jLg7YaaLmVM-qtf=mT6N28ES$3rt>s&O#L2b; z(6D|~Q!g(qRC|@(I$2}Rt@;<|puRpDU2JG*t39Gk`tyC7MrcFL!;0tdD{VVPLi$0* zwK!&NXxK2u_Ai&R*S^8}st_}47f#61*A^*rmZZMSC z$cwszFyG6S4b_>Urd)SwtJPM<`N2p{BHury|KGs^$|I|SNPd4yuk`zsdTtdOUKo-8 zs&_oezI=HMP0&kTVqSeGu-O=tMVLU|23LV=4RQA8OV&nJ<_{_6l8UT|w^;y99R($v zu5JWHzj6Gx(7?co01|w+J3vY!B7KiOEi(N0Wjh8PHpwRYM7r@D%%+P!`EO2j5+x3uH!1ejQK$ts;={%bF zygSf=QJzv$)BH4uqHMszu<&q`U{I$Na2|JQnssj;=h(zihouFrh>L{>c+ewwac^jX zhD`p>pkvanXLFJqT73FwbTG33hw;0d;3*UX3FJSNlz?_pBE9E==DjgR$pryr{H4u_ z4aFV-PZt*lb}f#MVD+C$%|DMsJpq1q*P2s9Aw7UjSQvm>7%?)``X|sI{|(rf5Q`CM z=sW+bMux?QSpY2n0?g1ap!9<_mKOKFY>W~>jmnu^8k*w(=+gCAy~*OHf)-1X2a1XV zs7bDi#y){gmk*CNPtZmZil6}K1cd?FM^t|hIU01jAS(h?^_+?P0L^K@z+qtlsKvp* zCj4LM@_!76lGlp@3i5vphhhWB1%t#r#n}Hp3NHRSC;X*=`}4wmiF6h1<{-;?g*t}M z-(NO6S6n)!YJv2s^k_7i9++ok127pir6|mt`=bKmYh0wpn=34*b?R(i>Na4>M|}SR zw3-jUV?>&FXJ)~>A4Bi${a$k_i zmjg{Z^?WM4E*m?eeVB1s{&CpK$nZsl$JB%rxxcM--2iFmweBFAK*Y?x_@sH1;^5r} zwaV!T-0g>3+4ei2%q*{L0QO|n`D2wZVPUm}3Uuu!=z#8--{8ZK>*?YQ-O3AGDf`CE z>ovog-7-V33D8+cc{9SImOZ~xW`G@TzHiG9VUs*ZS6uxWZf@79neR5YA59`YaT|{i zDl4-LYVJ6+Pml%VY~2ZHYO-kY%Do^F;LUQs#*JueP!yS4qmU*8FB@>yo+OKHwgUP6 zt47n4fd@XW(0d@rUjlz)U5LZY0Cav}($xL~IZ_2b8G#+z|!69h8S5}37!xTaO zRnu)Z15^suuY%<+wk^oq4%(>XZQO>BoM+)Dxx#K(ge)3drVDdNx~}I(@_Y;*x_5l+ z9kcu=0y0jq)?=BcwKWSIZ~)RJf%~GZd{IIa{QUjp?F0vgb^1x%)k2Axd5LJ!xJJsQ z%qtd9pDcSWfgX77z{#m@$OSJf98Ahz%1{5o*$BHcO(vyOHYK-}0Nrn*HcIa<1o%|? zJMglhzWIy5&jUpdD)H@R)Z7o(47H+#mVAurES7CuVsR8^Pqub64bHPcsmSu!Gf^>N ztMN>EZiiI7Ow-HEBY8v3MIq61&7R=4%R7cA7l#uf6;mf7Q&mEcVQ{j@ivfEG?E%W;JHf{IBgvw)CpTxIr!PJFQqVgJCXU%v)Xt&R;Q?6aH>_6bO zqH#BVdtLEhO_YH4`Mg^Ha=`dG+05NX?Q??d`>iK<5xD${BI|-|ABUvT zIFYSOr`lsjqnSMUsl_D{SeJ$A#@pFK`mU+^;!R#IR(}Pn)K91#{uO- zm2vuhhC`|P*ma|YfwsDYbH9BdV)^GHN+X3VeAiA@e4ho-F&rH)Fy7qaV_8o3N~g%Z zFOjh@n_$Z4AsNg&fk;U{m8y@^t%$a^ra4woArYoH8We;~%x@Hl1%LT8Gg{|`dch$E zIoQHh{6^8ZoO_$)A1e-{Hi!5UkDNGr$Kvg zkv@wmy|wY8uuuuY0(bHiJLSp}%bajzgyaSrPFdAdTFrt}mCm8(jk zXJ2OB7q^r+RjRzx`x8#g0D+IbRNNvepCzLQ=wk00-?pN_txxXPlESFsTiC*Npn1UR zS1{Tlr?pU#FhNJgGnggRo$+M(8mJh>On)o9Xru8ST!NqaAVWhr9g#~PIm3C>{Q7+H zr_C(Wb!oVT={SEvk$gI0i=G$_Ur)Py8*`q{+?@9%-vxtU_n5}9SI*+`Hi_cY?Pq>r zpn%>5)-tS4YBti6#ee)9ByWE| zW3BI9LAT)%)*GGqS?Pu(%k!7mMPo;AT8&5&T#e>K?8&As8Ans{uLX;p&Fe9W-6j_} z?c)?~$yQ%-m5Vr`U=g3^^n8}myTANw)upmm^Lh0HaJLtP9LT3qsIV397$e7OX=~Ej zRYW+Y&Of1f`e(OpbjX(rWIwN%^X5-^?dA*_ckU5>EkVojC&D8DLbef@(qA+)>KC8T zjUK#z88B0NnCWMQ#0+}-=+xB}3F^D-So&6KYdJjmW~Y=Rg>E0ZuDiVQD{L4Y+^QSx z5_ceR$2pwsqGd9*;Ze zdUd1G5Phe*V^(|~PP^4ldbjG7xPY;LDWb!x5GB=c<$0de>Z7Ha6>g5E-!3exR;?r_ z*hXyn*kD>O1DZg~QVn+@GiR!PQUhFpZnHRfVY>!JdTw){-QPYvXvUap@rO z>8DpSTfIV)%4RGqFDtV%7VgNqhbmq*-_zM1(f!CBHt8E~9*8c?E4MMXtFZq9;r-66({oU%=jVe#WW z(Di%iO$n91>=z>SV_B~=soPymN`VWrq#E-;jM}VGPmgj|%eWf63^Y$%6h_)LuLe+I zwVRD9H#-}JHIGvx8C%W<3bc{!${7!Nyk~^nz4Yr1)XF@7f=>zYm#Q zn^D_6>UhvMAO*1ARQj?umXK~|O``#?ynu=@g+9CP;^z2IT1x$XQ6_Rs)~M4%{e*|ZrURl z65%ZKyQrmECiref$@$RZI!DKTVmJQn)d?xcDwWm30kYd7k+6MF&;i=)S|B!*{8O9B zNdhuD9ejU-=7{>`Q_H|cE8gnz^deOHyLIVhL&Sx-?J3&vex#s<`^vFK;V;>_#0GEm zvc=JVPWain-t8MS{Qmut)f(;8sfxfh-tt}c@`&?KC9K~gbI$YncjnqZ@64WSP>vpB z_RAxEIjI_|QKe3Av`_YYr%{4>>SNp=4EQKx7e3FFVsPk$6&U+&=_WU_hy0H_DgZLN zGzHogKlwD81JvCMK}g7r_z5m}LktpvXnN5$Q>e-NEnBD>tN*AA*%y+3C1W*BqvBPn z%9>@QI|*Ke6gr%YoQtfCv;^m!c=t5$hHtXVMLpkG(BGM#BhaBHyu){$>u+8)&&RTP zU#gtHfjf_np}PWWlNG_?y9FoJAG&j~^s29RMK^m5KGynj0ic-(RUx4L$^kAjx>_b& zHZ`s!rd97oNhRK*6UN)W6T4aH^CkME7G?wlY))zJGOCdKZ5Eszd6j#kCjJ9c2fuE} zi>+FZk;#WSJIpNg1}b%R{zk5z&o zl%rP0+-K@RYBnU^!h*{T2ltKa*LBH?+$BvwWzmV7&UfJFGWI`|Gd;9F?Q7e;rKz=6 zSd&EXe&T$tl;0Oxi%_svFY^r7+IAg(-QJ^k6htHdiL3C*e!-`&DgcS(gycl?iygcY ztZe|+#1c>xVj|9LSsU#C!^>NsBXsJ4s#-Ngkg(Akk`-QF;I@_U>lSBd z>U8aSv4pJKYO2%Q6g|k(rZUQ@`J`YpUx-U!mb)~V*7;)K%N@E$vX5-Kn~4C(xQ;!y z{Cp_N+k9HMyVrW^!!zA$JDNiNPf{G-YKeAKzAyC``9R6)gOx$P8j$FObdQZkpvhwM0`^!kkSPd$Lf ztKq;8zKTHpy-OIf)X(mg?rB(b5ObR7F*;v}A6(i2>6HG&{c&BTU&kzbfG0z%$itaW zvYU25#Nh>Z8ELZH841lKjCD49Do^2}HypE0Wg|tJ!=hp$|8bq=ra4Vn9?i_U?#Kre zj<{p00ndjJN;4ayTz1T3m!tfr~T)lDVi5ZgEm~#wUZ)gD& zID|9lLV4BwJZb)5)33(Lo2Kl0yu`JL%bCmMnJNZkHf!>*wL;`ZI-o_gDLXqdAfx@H z#iLh?OZ+jrM>ZfQZO40Z_|6{zT+!$@{`p+OVD`dF-B_O>c+1WEgRF)?fQ_6a{dlhG zNJTUWZ+vD8Vx#{z!s_;u*%Kj!5B8-98S^Y24^E%0W3KE*_wYuL&Isci{P;m~ZD%{z z7PVsynZ@#gdvxjSoVJX-%Q_^l2EA;(L-rwDsAX)s3*I2#0sI{PEo&+~7QO_5N^%iDf5?)?gUW&fIlQ3u zSmtQDl%(ui-D|Zks(C1a7^HhCgJwV%-dmOP6U@)7W%%9&E;uRj*@mWljwbZP%)8%p zxtr!Suc1WwBbk3jZ*9p#7HsOgFVMDjXo-Gi+t<4FndH&!Mz9p7i(dQLgN=JlcGAlm zHP3fS?>%#gYl5$2Y10~G(=lca1HLYWeLG{y$@bA>)ma7klnWeJIQ;%?_E6!#rZ((R zQd{}Mp{*Q`bqy-&2YRaerv%;{WkkG@-bQY&9 zKbl3%jnCdQOg=MAjZwsHE+bV&nJvXOhhB#BDsHPgqa(AP=$Hz9+u5xF9+r#e7qe}K zAdj|r+8CQ#K@*$1UxF7RPHW4H>>D(9Q$cG$<|u9zI!FJi@wWb4_wOm_SQl9PLX30F z64c6Mp&A2wIg$q{FsHL3`csWB)!WyTta}MDatE~^wanXAi=u_|tB=4jqD64N5YEpG zKixIDn*BnO!L_|5c=f-pOTs~y+416Wb3X0AX$GW?o|dSN;=nE*8mjN;`Pn-kRuGkb zn#nBn-!Qug%*>EgMBB#o;XePFh8@rouzYu2NtCUx;%eM9W4W8uS^WMB(H3ZG^J`Lr)$F>EoP z7fP=(GZI5^%jr4iylrj^AS~9*iQgu3U`IVd5dggd7po^pSlPsg#9+^a5zh}es&;!lIO|X{w z0i&~**>T{$b=J7)wN#V{*tK7D_4~@6enVV!Dyu#d!xuS;$z}hs-Mk{U@ZiUq>^mjE zJ-!}(A~w(#Jf)4t)6_D94w);>lQ7My(PykKX|0P9kZw}!<+{jkSRBw}qog3eoH?Pe zRO@Iy!ctBgc|ZxR@3qWNoy=(qB;?M$@BPtGA_HoQ5UJaFF(>-=3ws|ycAftgx6kQ8 z-W)q7h{1}iEtWthj$T*Yq86Z|Y+;%2Wxgx6j7^WKC|8Db~LX+FUpn-ljq2e9-D$mc1Bb_J8F z&wn0>lv$H54k`A+jhyGENxbBux!LHf88&6jm*LV@DghUvR#_I0>E~kkg%D z(SzmQDR)FF=hZ1|a9#=Y)&*nA!tz~P)_MU=EcbisV~2tEqAg3GF4(-T<)|ySVuqIU z$f0J;IAI^w8)ZxV9jk~kebc}xyDL<~PoA;p6pSsY_Z}2^ zuoBi6wPGf}cXJF){}bGJ0b?ax3&Hb6nQrrS*J3(&1{C}$KJQKMV2@oRI5%`mIBj~n zlOwgUOQKo0eb>3(pyKwzI6C zC?yGdGqRbU-fK7w`@Qo&C|zN>*$FX(Yp{27#&gHAV9`+f{p3l-@Aly=b~8g%%kf6} zOukhUHGYg;yhfItA)?MBqVzeRS!U*v)0paMzSMvmX#ykk|2;7qr1v<=(21oam9>d0 z7C_SERqZz2$|p@J65?7{Z851EeoJnIJN_In4XndMVW31-U%QR`wxbyzuidn_sk zhQhw+<#_%S8Wq0@diGhQ6pzV1AcLMOshrRCXu;_S(2^Q6>2wF3&Mxn4k=l6%B>5Dm z`RrwyW$W?8Y=Y-O7fIwwrdtOyi(}fVMMDbv!C{JWe*!G$$EF(XURU#`|9G3ZvMeN8 zN+O{MBtt18$!ut6PWtKaJ%Mx{7j;Kt8wEkbEV8uKB1dZ+q`>o13r+9Mq1@pcuiq78H)4A(?N`0e#y8%~|DM<6zcZ&0*psX`G-B1kd70 z7-ivt)mV=#S!pec?Yg2jEX`}nKS&J&B@6Dg?U!$F(597d;d>+WGKF7`K)#*b7BvsL zX!29WmIC4~SBO%Vx!{Ds=ezZU*5TxL;S)RO8ZmdK7iRi?=oKQFv|r+luNdw|;IeZU z4ye8j3QiPaPYXQ7XlMhy?JJs{a$CO&veXY3hb=R_bI0s-di}_G%&&=sk|le zRa>1_oHCMnB8&_Fcgr9JMsprfQg#Is;cXgW%g*o=^A*J~|FKv}Z55`CM(SJDDxDoY zueegno`KZBn}v|}G!V@}GW|Bj)~iX$?NbgNo6PGPy4#?`t0=JtJ>>qHgQAe>!!{!ZwGgM%ZjVpwAsQgJ zWIt9r=A=~LO7D=`-;+$v7KbkxPmvD$JKKe(JH{3!F6`#yGM(f2PhZ^(Q=QUg7dZ?W z{2?zT9UzkLkv=AJyeQFL82J%%?^Kv8{Q=84J%rV3C`+pOB2@){WQo~XDDm;_G&aTy zG9NE({1^6!SLZwDKU-C_j(!(Drvoiedl2k+cna(Y-u1A)&Uo+<&GfE*Xg>$af?$`v zYx&6gU#N8SX^m{$X{Qx;;~D?gIG89Q5P&HLcUP7G{=5%g)@jGsBp2CK zL-g%<=deiK@TNo^F>0N4!Wse`(UKoiJ^%I3=fCJ9i$n*&G<>!tbSy`F-|ihN9Z#!X ze<1;83&sNNJwRYKJg(bX7^waSmO?VI5Ts{oR<#Hcf!~=yE%%VA}a_UK9jWBCKx)14ZS?sJ2U+ zM+|jD&%r&e(yQMMbF6AF$8tLfN@N0(gm#$?O0`YuURVG2C<%X}@zmp>>co?H>i~i# z*Q0-S80++86_ZjA7PQe&^knMf-i$#_!wDEQHk%ffHvzXgq_rw9y{NBk^glwpJAmYV zdcm!1VPHSvDSy68y4&>Z&vaU#CJ^))Y-}g%2GKl)q#->kdbeJR_vC~^%?=jKXpd1+ zkttLKkL}1>VLi)`^Am)@SO`pkb+y(voMUK4&dl`hLnvP&p&g~azwykNwU|ZETlQ5g zuPAB#K5uj3M7P90!I%t}$-}|Z3_|L$_#A(KURFL=Y_m{f)(oJB*IL`?w>iFA{1wmk zv)N*Ks6qX`cZH>~#Fb;*-*ZjCG`X_ylj`SR?X%4t=~5PDdCMqEp4jSI-|aW>Gn2H8>MpG-{{;Zv1_QNO zCJ2K-{TK-bl@C^Ig^tfo(wCU~QN17z_1ln!9S2;VI!4I;_ueGk5pT-}l05hG%96LF zbro8*a}UEcQRE&%Stj)9FSd@gE=dIdt^Qn=faE~SFz7eNbOR%w zuC1w1T?tC4kEw0UM|yO~|22Sz&k4NWOOxd(dr()LYS}I^{@@L{=rg=+h>xAW!fgqSYwM!>kgvW5fV&pl)0i(O`+!?o+o(=LaP z;i0gDziwtQMw6sb@xOW9ma#hXs0vt_Z(mkXl7MP2CO)5U?@Mgxa3awS(K)wZg>Q)@ z!Xuf2V>bT;@gFDvQ}fKM_ctp!@UCfPv(QmbyLjlbHNt)HJ#HsxX!r$x`}eg6BHY*t zSu`nXJp<$>*_4g%f)fgF=pm!U{`$6w+>(o&p7+pFb*@8t{_) z?V^N+X(ODhcC~Xr)#-g_v#3HAzZ%zc#M~P5X#6<`ydJhQThA_r;*suNuUkIV@p#H) zGdQ_>>f+*WD*b0NAm|JM8`8SP3}=L_l{6<19HBjz`01e4Z0n!~_@6|t`*N^dSm(VS zf^**E%!Y}|xKJ4($2-80w20eDdUqDrwCq5%7B_Y)K|{i4be$EaDq9@Sm*6ZC>wjN zrV`HU?lT`X`~7-71$*wBOW6}lmtUVh4RtO{5|Q@)YhWzpIr7acdIAWCu?;Sq5*Y8N zif{AZ2@f-ULx_gbguzE|54b3+5JXE1kdu z<#5Q$G$hzRX7NY0Lh_3tYx`7(Z43F2_p3M$vfG0}x}RvCDw}Q3Y=+dBwNSu<3sO_1 zL4I#_mE&@?KeReazs_vkm%V2)^dHo}R$X5m)B}Ad!{#(lByCIA`W(TnIN~cB{{AsX ziq(W$c$=*mnlRvr>3Fa%?2Tb-9$+mVrqB-oCR8?)i^e z3lJmAizdDP!R+~TDp{wmTn}ayGx|IK^jE5rE>(NOFD-^lrCuohVGVzfq`?Y&-s4e zm*@NgXRY@a)~v;vb>H)ey|2CZb?uEsz9eY6Jj_Ne+|v1C62W?N2`^*f&lSDT>m?Q2UkR&@vfKhu;taec zZP$HvXq-e%K?>CI(%|QrHncmzM&q*sA@9+Dn?fbZ@1a8i9)@fFOgta>&zNYOP;naD zOEkJdHb)1wi)@j5tE+#z-%=On&dp&W{6*+2^CPOMif~=d)7)b3q5l`znRONL_IVGtm3-2q+og0qXN@c=7YCl8MWM^*{0>CQR+Tc-j+R@ub6M8REy15RQ&biSVw5YPd{fv7nPwJG2UjPxs?s}C; zX??h~5w5J)t|HH05at7fET;+=diR6?2J)zypSQ))t-$&G8?@o)MI<(tSZAxp7~RkH zZC%p~3^h5!}xRr1C3o>v!u+_@@{T`rW z1H9I62CRN>V3WBpemcL z#kV!c77AH8M1M;J1N(14{0mU-jc4d>8xD;r@yE_3c!8$M0YTR9Y}%dzL>+m}W;gGQ zK(P^WoG<&)P6xF%Y7@_EI{~+X+BQpZXVIh_WFi6IjmXUwkMvk&e!CI^M zC4YF8HzIaZN*NdVva~!NhI-V}z5%+vnOR`ud&}XE)OyB!o+=@9>su+4x~0`<;UL`- zi8f8sFb?uH4S7{V?>sEN+8$OBodCtK4E}9qo|*(oM7hM8ZV%!6$7f(9BQO!Nx=oY9 z@PIdpob@uydY?$a3ECRuvuJqM%LU}FBmoo)@O#P}m<+S_aaLobbv45xTveUixd!9M z1K3KoAxYmuB9?J(w@OTg+;5L5=t@zm7YexKE~+S%G_7-ZCILupEf2N$T&%3qsWQ8t zu5rZ~ed_H{2qhV+5EJ&^>FnPVKTmGiGtcq|TWXR%X>^;rzkgby-}p3!JMT|SF-`!q z{n7hAU~{#3A6ID@-)`m-%L3$=s-2Lr;S5(2{(ya=1%ig|v6Sqht|u!oY-xe;*Vf6Y z4>_W5=(`DHzlezX?2KKF@4As9V0qCz{nf$8*tvI2QSl zxDKP-Dp$_MWVvp%HzrAzQ#`56${;rt=EYuS%Z3#a@jxICghe^FGo_g$cX z84IDok@U+Ih*capxan7V0G}jqtQ7vL#G5E0F~yCxS?4lmbdvi5>0zv;cH3z*dFuAd zt6UMTnU}02o52hGQ`waO6CZ(U=oO`d2r8u3d4w;KXa(T}Sjh z>s@xKSCweh_0-h<-`97UVMY!tyyEj`9;Xcg;*B^u`+Tz3r=-R;Gf7pfxPgBT^($<) zLys-_E{3n%Tpph@Uv&-ltpU>gp#@e3w)*yh9pQ)XXR^+mOo}5=q~zazYskiWO^ozg zA&KxWuxhWM|C3A9?@swHlk6S`Zr*V82^o?Q^*=VF9eia)(=fx5V2(0dWN^-bufTdU zsZM|E#OvJ>0-rtD`+ioXM8>GebgY!l@*zn%lr+8q>FV!AL;aoYyjLU=>dJcNYTq_) z;(9(>l6Q7Eonr6y@Wg+e_Iw`J1g~z+@C*&`1hOjY3di)hzDG;BJ__UtMF9o5QVKmm z&=M2$lTUlk$OI6FkZ7~n*5KV4sCKQ?{W>NBvKG#nmt!a(zeKBk3cUAJ7#||5_*2$I8zXdf%Dnxg6jjwmHb(LH+q73h#S5>OuOCD0Xq5 z)W(v(NUqTLCp^GLl?rh1WvlSSu6t<(a{UStKsyqn@=J&#lath$x>z${HEG&oIjygv z(na=KzmI~eN|$ZIrVCfzj&s@~F|C{OT>e%z^JqS`#)J7CkpJmj%Ge~dn4B>`G3#b= z&Qp}4!NK^O(3Ap*w%o|8E)BkCX!{C>IuA#bgvu7!&P+$kLWV$HrT)(L&Ci>6hXS-(8r$+!GY@Hx$U$qdLM~(#19^xOE$bDzahvlY~D(z6>w> zrWUqO!7!_XI2K}NRcjc7;aJ%es}9+jN#1t8vj2UH1Abcj{0o@cZk0f|B>Ijm&xsVd zUn>we|5XZ8(f}Tui2c&aGdcVOnKfRbl|iZ9v}j2 z;LY_>Q-jOO!s&}>gkOmHACNDhP z4ZnKSEUK5uL=7q>O8Fz)=~F5`dV(bs6tKRlL)H6z0>H?oi#N~^jj zVGgQoQmh8M75#aT>&lCRP*sXWs?6QyqU7InEe+3!PAeCeK8Ep@X5KIuk-mQ6%9w7L< z3+wgT`p6qHPK$CZp5wU~ds~~=|2YE>0NM&Cn5m+sq$W~n#=l9MeG*-_%PbulZgr~Abv{#MsD!|!%F3S(%8zq0 z-}t7Frbhn>2w$VE&N*DaeoYi1r!oHYx$)DmXkcZgNlP4Y-D-uL7NU|tPk30R^yofI zDQKVbgA9vIhI-HBgzp^^s<}{dPgRra22NdH54M zu=M^b_Ni3f$+#Y|XNLn_6kM=>ynppTo?#JCulv_f zuCYK!@?EEf6z$g)yvK1BpMj+~kXnA@lhj*M^b~%q^oj(e z`8So3ioICuZ%!KiK~xiYGK$Yw*tJvGhY(;!>zHj8I`!1JsJW3h&o$l1itvr`I0hCB z;@nU5ZJ$%);Ur*oWLV>+657t!R6^iJ^H&y&?xkMb?2DSj~(R*dp<@I5x zI8-OL&A5K`L?BGndGpESPcmyi5*;}BW2U!Id+~} zY{bxdJA8^s_r=CWJy%mX{90Rpc3+Yj< zYPMd(5hCx5H>{(`q4Vwi-w;npxJZheV3%z_4aywSeEU#9K4|2WW9+2R_!e6B&9-_0 zJF=#M*hSx+qx4eU_0zt;c>QoiUic(Dm`?s9)jwjJG~hJ{)g#Ls&t1cah^9`n8XzmMS#uge0xEdoqal~VE{Qa3>#(WSr71&@%}6@gwro{ddKXHqs*OMI!I8=O zCl_$`&f(<^0F6dkpj&WQ@lSmOp`?0yeqUwpA~xaG2aeN%#MzoT`UaSkc2l!I|Ewu` z1K7_Z#^q|wlh5D7&dkI8lD)1c8*CO^u|Kw96100GvsIz@E`d4xj}2Lk1b~JQ-=~55 zfdF}~yZNo4xQOk z#F|)@wPc?G)UFoCdVG4f`6oXi@{mEp4z$LZ-8sNyo5#@6zDc+pNeqi@5TJmqRR4U@ zidAIftE>J3d|pWR_qb*Q(9r8$9xn1BjwO`e@Y1VC^K5fJhtS|izx|d!s_9-e-9Dr3 zjae$X*Lk2pOB5%YW3?{iS8E_IW~if~Z^2TQ&ThO3t=UL=K@;xRVPQqqs6*U{$pjY) z4||Z`fEUT}qTTAy{9vTZ(aH1J(CU)WwqKmFzFYs~*s%cUC;V$OLR9}jI(MX8LH2Q? zFZUTNCB~C+(NMN**`x65jb9qar_|AS30E$kMK2QV1IGC^i`w;6KK;+EV%4`l{)ct?K$w>>SOgU1#+wl|V#9N!S+? z!D!ShaFV)rEVuBt0OajkL^sfJOY|Gs-?l-bUcfSJ`A$cQwxOOtpBtHf@*=O+s~i`Y z)?Gxd0w+!jA6s(lydk)FM0vbL_&cmyA0)BWY2wb@=;dV<8hQH!x~tqm9;e_kv#$PD z!_#?{;)Dm?IsN1Lw^J<;-MO1hOKEFpnD}rQVCRb1sabe1mC4|T z1Cdz98nL%R03mU~OYdmUt}yz@PHLe0W5Dj*f<&tRk0STo6)YUxjd#0Zq-sE>EHTh1 z;$)UJ_M@siU(w-hE^Z8SimNpiUI1yc7bcjm%=nRi2*9O0Vpe#|U!4 zXm;IdCD9YE92ol;!DodOe@~*{LyT*Zc8A9&()R)vADT7@f5ZCJk8QdY(nOkFmG_d8 zC*m;w2f!7|6sQP$Y1g)v4-lzey|CzWlUn8^{$Vhv%wzzwtdS=!G8yXoLS&aqy;#BH zHBOJ{h$>o5cufuue*`3!FunHXFmTX{Wrl|5osYle`eOL8j-ubB2wHZ3pic=s88LbG zCyrwUAP=}`*?YVfYOQBvDa~p5L8mdR%}*;prEUMve@5?7Eq{fv1qZe)%9R zn+~bzHJuWIdc0ToZ1LH+F!h7=7x-Mg11}QbYjj|YgSuFkg>u7|$-TlvVve?b+WAgV zQ9u>teEtmx#HF~k5R?7A*g-HsnhfL5;cLHknP(GG__=Ps0qrcHD`%{kkzt5PY^2|j zBjxXo!{4AdM1iPiJ=}XVi3(4P-!RO$j95OcW{-uI*bUH8!jh(TIiAEKm~w@Xn)=_+ zpaK2n-ac0>c%58dCH3VV(9G+u}^22F6f_@G&w7VxPl%YV1b||htdD8)Mo*i14JybI$bXq!9Y(l6r znKQ4+{X@Ln6W+V3h{y`HkCpJObuQ;Pg|GfnILUD63S#YHa(RE|4v52=#=3?SQc`uJ zrUTS8@?DPed*|wZRt|GNjsB-C>N9|kV~zTW4OK$F-FL>>DIsiQlS2r~Q9n#^&garx zi0#Pw!hVc;@TPIsnFXTEr28zzb|tAW{e4LM$1I&#qVNQbryGF+)z+YbD*m$pPH!l_ zTcCA!)7eq_(PmJ?TA843TNhZCy=kRuhgc?okmpYv=Jq5gPM5|?yKpL)H>H+OX4kCX)?iQZe-^(s%^8~=phphg zj{sh6e5VtO$`EorHwE;3r1ce*8XC9~2Zy-Y z1-D!{J68_w0yU44T{y4pKXLyCa(JeND6$S}VkNgrixGkNC}->gSftc3Tw3??z1WK0 z!L4`(4@J}q#!R`JB9^vJy6~HC10{*VV_|PRpbjR+%djFs-xn}qGZw#0i-O{CA`!tp zC+lP~eXwk${!2gYT*$4iPmQQQSd{5Popm`VK5~WdN2cnqK`s$*3dMKP`Gwa83TIAAScHDJ>nEGuXFS_SH4BjR`dPpL0yCs7tfM!|6S>ufoPP3KLPMN-7=HNqDDc+dK)C%2 z{U}O|mc}s4E{hBSHi4wFGVixH$^#GZRpLH7qC9<`DvVK7MAs2cG(aS&GA@o0aQKw1 zP;DUfiTZ=yuMb`@&l(u9(tWjZS9Mbw9`MihjY-=sX_$wfHV(TSxO@Cjbw3veVAQMe zwEy&=V0%s(d!UVDHNxt3_)ZoSqCCbgU#{p*3yV=b?b!BpqhTQ6S+=Pq7slH0B zq^Xw2tyar$9_%FaVg;+pDaf!&-T$WQW|yYQ%0{>4YvUfWY#+f@_=m1)!}}_gKp}^9 zdmOjUCNkaaqk67o&2+Vn?R+a@=J*uea0xFwIEg*}vF-NjujD)~7qH`MCqLr3|N5A} z0m)xd%I}!&2W#B=FliJ;Nc`RZ{6qX~1HM0Y4y%6kH@o*Y<@n#u4yZK0tF#z{|M%_x zxdL(jw`z9}%AX_if2ZZ&jctG$_y3`i@eS zqim~PnZk^lQLp(-^mlF`&JdZ)#q>L}N@;zOj`U>FizDmDb~{P^fWZIVsWZ4ld72+g zFkpT6T*be6IT%+1V@xUVMbOyn+Yu z!8d}Dj9zTrZPW1-6abraKe&)Wu~Ap7--c@lxIjd7JNN_ljplfH19%>vR~LuZ4J!&VE$c_yI0x``Q`)5#3$t*3P@1xnqzd9uab#tzjb-s` z8%+Wa8;901hzl~by6JSaEQ?~rzozYLV}FhYM#Fx_^H~Zl$tSWitVooK`^lK*&dhy4rLhw?DlFd%4yWU4tj8elPU#sv;nNXi`dv7VB+WWTn z%5gNrTZit{$)S15$Y)j1r}V}=TdBrdC>sBhH+Q^6CLIi9C+YRg!)u6fs9#O(@SQ5x ziL8n4DLSm5>h#lE7c%V&Wj|k=6T7p`($;hs_b+MWN@uz9#=7kvAcy4Y3b16hkJQIU zAwNXE#l%A=R^zkEXavFsGfqNlGD98CPrO#iYK~a%dfIGM39tD~x&+#%>M~r5tv~e^ zN>t7-wD6fzDpjioRVGa;L(Kh)S%?^_RR_PqocnwS`jVNkoLJQ{zR11qz?26?opMbA|nk^GUc_O-8=dJe& zhMFl)&ag@rpzP6dX+vB#{kYzt=6*Ip*Q`wr35$gWsy7^PS7guK-fu>3oJ6`SAe<(r z$vNsD4ST3$yrlU7Edu)BX%^xn1rj}0aGum0bIFDTU-+SY^&EQ+Pn&zCECICG>o(8{ z7x`~W`9Ie2ON6L3p43DSdya>{szo+yi3V1ttvi?7WpvKeEe)0}ej_aE`SX0i6Vx4} z18rQRr*$6=mB-n3RD+~H^5HnR)NLP4udI-fesP*8(K{DfkrBg_8m#I==t@xxG;gu& zG@Zjj-%5!5D9zrl472wYckr)7!92EpynN?9C>H}o7t!-hJu?~n)|H?_q7Kd$AKx{eh~MHRBNsBo7NR_WQ2 zHNNBIu6*guW2L#a1bL!+uINnRLaLwyy5e6JKKcOrSehf^{%Shl7IKI1=PeVl)ALo^5QP^x>y=%DUB}k~H+Ce|P zI(T7sW~yKtT-K7E6iS*{b}2Vp8e*se&s#b_J#%chf`_*oVdXPkbH zL2_0?zdpc9jYl~WvzoorgPPxdDLnLjVn4?rX-YCP7-bPfEa=(fx%8nIe9i<7Vku%p zTmjx{>a)4D;r|4hzmJVN%hS&tMc#WkZsLzMpG7wCDGBQ~+0)jBRG0PEB(xAF*e)op zu6ji<$L=m$`9Oj;R&_m;UU4uqjAl5&$UEnRnB>3dMuVPz;p9z%Dh~w-8jP3GkKFOX z*H2MpjmLc}fae&;-GclZYjP|UaATf$aMH}oZA1&Ry$EO22$Fs;?5$bv%~!KgbHN+f zQr@&ZGS>dl-Q52Y6Ezu)Dq~M?{rC)P-$QAiY$D_ozZ*Vsv_au@#w0@f?#bQ55%u^% z9-D4q2$yFvsu__%I_tOE`h(_gDQU<;;kHh3f^8%WsI)uW z%MB+>LV2M2Bogd0WZBJ%4gp#&bkQPrpog0uGg)$5okhq4Xy1p`(-2 z4;I(3*Ka|HemD2Z0z%9)rm1J2W8JGb4g>G4iNCzNT@uW3yB$TJCOJ6NY_Z^~jYAhU za=v}L4SY@3rZ_Cwz`cU6vg8xHRw=n$az)#YOBlE-h}Bdv`il9iJ?aOaF-(17X{*qe z`z*ZOV1zr{Xw9p<@zM0ocID!~aW)<&_AZ3Ae6rY<%r^*Q!leg+h^IKv)qi3iq3wru-Cyq_a z`E$*gjXUox%Qp%YT#i8iL%p9Mbvo;CS^wJ=FRZ^zvuyBz<~H51gG-iFbbw>F7^1`H9OWlHV=w zTA|4QTDQ#5;w8=Uf8*W1pB8IGG2BE~(u!xvPfbYR8vR+Z<~zl)JC_g%Los_U=(0og zoJzHuz?SfC<^H}g2duT%b1$g}34E|5=o6{;E1FHokhw}auxvqjd{&&>VQmiAVB)i! z9R+$`wc0rnq-shbb*eW zLNYnhjrD$$E%K(yn~SW`EcI?&S%1zW!`q7_j_r4d*#iy9{>pNGQr1{um3sbhL_T&! zp^L?5kKo5C+=$_(yge~Mg1gm>apup~w6YNmOpL_7t_ zQP0_4Yw52Ly=uX0?VK-fTKb=xg~lBHz&#yETO!ClaYrDO_G61V$0t?>@uUhNrZ4kl zS9-(+)Mv;o@>ZsUltzx*Vg-E$y*84zIuK4qO%vk`;8hv0S$|Ofb(eOXzW=Ghs`9_u zqf!S^opg)`T44Fe zc_jZltS)Q744~#;kUnNF-dM2zjB zi_&c3@lKj96qwK8fPU%1!o= zNV;>a>`ZVN)q0cBaofHk=i9qKvvGZiyy$kG^Skz(KHzT%WzgGml9J`8w%* zyYfC>t;>M@JoN=nu#X80Fl=$aWaG{lzf+5t`)#hVn;7^w75vTK68D zq~jM<#}(2YJD?S4z9zl9y%>)#44!F#uacls(?3*CVvT0=DqmqUxR~%_!EBump~=0L z`0t8yv@|V`8*(P?t0$0d6t`Av>vnV-gcnzQk`bo__BNF5Nx$B92M(T#`L2ft!Gf-TIr|@$ksC($O9;{RhK{$yX?$RYWo=egPRc3q{qGR6bJDf|Yre!*;V8VWW<(5dNHLnRj}#GJ zn^F(NJd-UhwXY%1czKj7P$STF_^-&vieb^lSp5|8lPULj9GvSI1WipNv72x;<|8lT!{<6H%@6*x zZ1`{L@y!b)Bf#E@(7D_K>Y~{eSFC0X&}O?2p4*a;FiaGd*d*Uj z+EkhL(0=nrMS)grT>&6uaIW&R>&VWbiRP4;Y+?G7A*}5(7mxZwls}Zg|NaS-$Nkm7 z)~ux#)CTzKk9n9V11HL-g9htO-%9)6Yb+p%y@2OWjL`{j6u$6lmdi$08J;aHrp-3} zfIWUW)zcMC{a{3}pZbF`b!gTGg`DYo4U0R7Nsqhe|oLzF5 zT92Eji2~7=KV(xWAtE3|^Y~5BIi%8n%&GZ;zexE03Q40);^feH@6eAHkGki-6frRY z9VHqQRfjS|IojCRl~oD$gHOKGo@Z!F?{&N?45pg*oNQ(UjsggJ4H=K`+K9!{fY{)X zib4|owBw#Vlss(NRny41Z6X(Ki$$r^h~7Vl!Kw2sRrloDGq-5km$UrF*I52O<6c?w zNm;E>Iq}ZEJ;KFDgYn&Qeu*oNu%_t_tFSDu?8kf6D!4o0{(4HS+DAr2taq=~EAjU3 zj?Hg-(ecfM2*j0{$q4H6kNgL>A35uBBMl8UAC?dUJY(Zi7yr4`vO-09!StR|s##KN zO2x0@J-FWe-v<%rB)gp`YyuXrx{j3X8o@<2n=XAWXN)P-N55=DW$#?Gu7^HMQIo7} zNxr@7e6y{s4dd#$#kkU^{8QT1vk|f^y(fz=1l*K3OAK~f&$MLbJP(OzJm^cmq4d>- zSM*;UPBzj>+Sm1M9Oj#AU5=-Xl=vI03Z54!*(9l+3iEJo=y{&73lH{i-gzwQbD4HX zM^TZPZ3Z!7GU~Zg{zmQgGB&`!HL=mF8PzUQ4K%%Sr=}Yj+&|@U@vxh&8yq=aPfn*A zY8VCM@%MM%#w^QoEExkKEtX)0BOdY(hDDfX4c+Wms2p8oh+DVXWWtz)-=3p^<-cP5 ziHBms%#;Gp#dHeRoePAC)aaYevnN+7J2{`X4GkrRW=T^-IM`N8_0q(uBW{NmcfFR7 zgGSs#RD&>WT~-AVi$ekXBpc!0K#asNhcoP*KTd?mvY_qc;Lh)AJl84p+u&8BO&LyS zlN7KQXfxk)^Z`6~!EAu5RKncJt9WcLc z|1v_G$?hMFdSukraHqKhm`Pyyf{OOtC$Uia}F+V{!SIG z=z8)r<6pA#IHVp%Wn04}TB^Q}P?I)2H2if7Ucw>I0W$xyp8C&Kw%Ws@nTw&yed!mE z1&*KZNbo5sy3)=ie1zIe)sep+@p@a`)2rCAD}Q%hP5=*bI6+44U`avMqo|0w(!4BJ zX%T26G^XL25ytE~{_wlFgI^9DgL5b+<$AqyNKQ)CjT}7+MCyCh~#+)i^ zy1j274N?vX19ryo{naf0}Hcomn~CJ((#=ooT2yJ~}-t#JfqPdSrfHs6ctR=-0izR01^}3n--#9%sew z8zwuF+wtSJO5S#`kWQH))%Kpsp|U*l(S=%PYCJop%-qmX5le}*l0{c7BpDEjEV$@Y zW2@C|mst4w7tRUmos#af6~hNpc6X$IjgLIP;J7nDAV38P@;HwxN@!WFlI6ia4fzRPlnhkp8=&(%}*pR&)=}nX^oN50cVPp~>c5 zat1D;fMyN+UdNn?$FUR`i(y!%of~4XH%Gx&qFp1Hqg6ELbk?5GFJf08!A|zsSkkw45xF(NrWh%ANi?*Mqf(sJElx=KI ze~*&{5T*utko$kQQ*gtlOFKTjh^9U1d$1vnhdi_rJH6pb;D3WHX@u20UThgbZ5z&Ys>-RoS8~%`L^%~sRno`xU? zP(DQ##+T}Zi<$ICJ5kUz9r$$>&?@I6Gp6wK+~keYpmCS9-Tx?i!PsnDrClQ|M*CY@ zx0|63$+3mecj))>w_26@Uh1sVc_=B<_xos5chN5jGvzkgkRXOg*kd@x4BWShSs;`0 zO#hl~x0oW@p;1VWYXITyi@|Q`ojamAW0-r*ZDk0jIlx5cjS>3MzWyf3JRgn$_~`;E zkFiTjxIk=lY=PbnVe9E6?5pRcLD^Tq$D;|o=~StiIAVj`cCI^sIos zNO_h8IhMy)*A^fxACK9##!i>?grxR-s64N8RPuFygb&7JfPl}m?;4QJHTQOaUc4B+ zQf*E#yqaU~?sMNX|9-BD2fv~TYDzzgoPt*Vd z;8jd`qh&jzOXa?XIb@4l_r-c*?U0NSMER_|GpL2c^RqRZrZ_e(P){eUQ5JKP~(${1WRq5u) zXez|^f(_;QzYy4F61y||H8r3_VWQe*1|Zd zm~v5&qc`m)(`}XpNXp|s@fxMfXi)Wq^Ro(W$hdyEn?il7*j~vfMaIl+$C*?wD6}o) zX}$KCL19oX69=h0QpxVXN@F}r0+T$xV@9wj=tnooG(x;R|5b9c{cYIoh3tZ>3g?PrM)nV=JStfu>ZPvKTA8Qm7@t9#G$2C; zV1*ZQy_0s}td5n_uutdUB*jWUCl2nfElv2R=Y-dk>H8otkxYhr_XtX5Bwnj)*9%DTz!>}Vl1_)wBV!}n zRXsPUCchiny{M%*b-mDvZiE76WXbU1?x5T$8D*mX3vVTYcq60z*&hhFCk{+m8OYuY z`SKJkv2s+L}1o{xJ{GnhFC@8SbpJ>DK`NH9Ewee$deN zwR+pc45fss*xGt=WW_Ig^9j0b=@;))Bs$_JzQ&_<{}K#1KEXA={eB{7Li$WIosUgJX*$T){+sdq=M&P?UsY`IOKFs;QZEo=^|jpm+x0DM*(|=Y z)m#HCppx50Z@K&WEkwMJM&MG&O#c{42x8!Nh_Im#Qq^vsgA55@se8XSsxmH@?pGEU zygm+>=EEiU-xq~4@4UO;YIgmd;>KpvGH$j>Ec!lXQFtckAji1x zHx2HONHOu$i_9AZ>?eG%SvMu1Exj`y<_!Z91&@(4dS0b`{3BBHfo`y+(t^6-v zr~Ay!&{rn9b#7I&hs#C}*Qk0}24sV=av{Z^lDQ?!!qyi!`D4Rur(VT9W_pmhrqA8( zq_C@gLN#d2Mv1w>UC^@8o6k_9m(ulXXf}b@sS9@BW3gAOad=1@>nh8!nA@3=@`EfH zbzj)5A1B;(wLs_uPBO%UdL34pPf?zWC>tP@YS_nk(>cr=p%XyK=%;o&li62G8>Z49 z$i?=)xaf;3n;n>Er-T>06lxDu+M66Qdo8ke=LEwdpVQsFi}mOide7Vr3P3`Gjjh{U zlw9sj>}^NW_qRLyPb?0)g;}n{uHhvIX-in$juOC?gN5Q0KuZ-3ps&oV#l6mK5tEEo z?kL)dWytWXDHAfB3W)7ji$?LCw>Q)=3w+cN$dfv)3769nOq`Atv}$*2n&`7m4}J=S*WbyFlYj9H6yKP?m|5 zMWGbzVhX-9uAvo+4!%ur8#4er5)$5v^6mokeprEzO)^PO#6R@V|EAsF)5HM*+4NT# zf8OqlHPmyer0t_BVCLA-N8HwQYRu&doyrB@@2mWY)%ITW@c}>*T_WU>PnqCOM}UPk zFqfcj4BoHQ$8`jZ2=wHu-WxG{)!UbB;H5hz;>Jn|;4!^=8?|-I6N)3}GQx#qh4WZH ziPh}>6p4Ltth;CI)AP8fj-sc)3@guOL+F<#x0R1SLvQQ$)9LjPgJVsqoQ=LK_~s5N z$$PO$gXvv`K!qKb56!@lc%ii|`ja;guAB7*cUFA(?yZ2H?TqDfyw@0yiz1~T6Rr1R z>?;}>DAw%zQ=J?l@1$u>d^R5O+o@)D8^p}vTWBJjBaxrLTx-2eh6YI7&H1!{4rtP& zHIXSMI%z$~Dx^@~(8t?(w{;L7usx@xUP`X#c;2ue%=|-`c{RMN zUOnO!5~3eV2 zG3EQLa#Tn{h%LOnWc9zA)&FEHUn#dwPkeBi-l}XHsVV4WkE1Ghuq)67_(t{GPrP+I zC4u55kBi_KQN{jiS-_z4GySzt9Q%ob3}}%o=IPl;Ga75{(Y>=pazld%y~~fankCKi+)nK^usCElq!hWpVn|#EYG1AV!m(;QA)qI=?U=TVeEiTx9LUdPB8pFtxza}0-tb(qU}bO@rRy4)XzW9DVOnWS=7 z)|_#?`(4B1&1w-)ph-Id2= z9Q6sqe1Qd+C`ajCXqJbe5>vZTo*861o8zsiD$VQN5v{NZ#;A|fZ%C0R^G%kYC6!SP zjbVj#VEzt>?rh}KFjdM+K)0rXSOD$G!O=XloD6$`_B0R!JUcGFnna-8s00T6Z@bZi z-6FaB8FDcVKH+`WAi=*$hY1LFiewUBtVmR!nwEJxoiD0g-VdRx#||=Q@bqa21AiDb z_RVp*C3`IsB6v6IL1ldk$lx-vZ-xtpQX@Myda+p_+U^OuRYK8L1NT;um`h@cQDTdl z#S^8odd*9cHRKBkS#fQq)JLe`;?`kl8qy+p#o1n4vKH4|1-aOCUPx~9k{ypF7evy8 z>guIWl+2L_?hfx29Y=o65Y>z(;LvJs#NPgkc1uOv^u6>()uYbjL38Y~3|e*kpJ3Dq zx7iYY2~XP{f`$@uvjvG}J{Lnp(~F_161m~51GW9=;|>@2*tsgpp1P8DR{Sfaw~qVQ zp*QA+B|!-y|GTOz8iM+uh;2Kf#k+OdHwMSQZ1^eS9`o49(2v8AV+PBz=4?`y0)YBL zf8R(1ahU0-mTEVpMAXc}#iLYjW5UfNk_Sz}!Xvpoap}SU$+_<{S&z#jJt)trO5q(A z%0Mpu^sgajvkx)U3kGDjU-SdOu3*DuFkWY>XC#x3E<%BX<~%Y#w0YY-$26Y?s8J== zch77J`gxRzFYi>QRI=Ay#SuH3`S3k>ryg%-G@U?)eC5sp0x zfF=R&zGRP$@Ce|r@oE+Ck7D!;5v|uKV8|EVq*xb7*q1F%RO8ZVa=?YY2Yt3U;63}* z2H$J=kWF`a_l_!SQpN?3>@o1Kbk7LQIBr=&kJt7JKh3^X5a|}p^3CZf*JN?v8vm`P zDc9yx7ER9pzwgX^ z=jg%p}+H5{a148`EN$mZAvRZUUMp(99n(!V_hLWIpNES%@nVPp%!dS8L>7c z)7L&-I}~O0&LF4CarS<%iBj^zQ;)91KluF*d(k}qN@C_Bw3}1K z{3nHC-zhTWZY;m`n;?NL!-YN1a?@WrL|bVeODr45g9_(sfH(V%1R3K?E0 z=sndEJ&HN#7nIoPOW}B)p@9?}BJu_8jWo1F%rahC%$D4DCf0SESitNfMVazUHBLRm zv6%NoQ)f4)2RT@QRVQ^|gSArE9<(sFzaS2Dan4Qsa`)o5-#$?N!q&XvY6q#RHR%QC zQw+%r*|qNbDFdV_0f)wnXgm)~dyv05d`@bcI%CGqx7!o9y7P7QV9pDQ8ui{uaazNn zFINg5!`Zu@$%N{sC{iZO_^UhHK8DdY`3g<4N3A z174pfpCKzkp^>Z4v^8@Iq!yGnFW3h@_uL^k+&}@_*J;p*?Df{S`wkg7sh}IWc@(}iTOO6%wyc@waea1Fn@mcT!Ri&_k4uYb^ z>|qGnmiN=PMcw``UsAtJ|G(|tJ!InttM&EXp?ry|gV5ydQ4Jsgu{$Q#EIFF)wp`iP zl*H741K&}Cm&Tqxa@ab641bihl+D^TrPJe}?hV398Ptt{V@lF9W~0rODr>Qf8Tl`_o`&3P8dNdUV{u1Y zFh~8>C;gYnM%gObj3>od@zszFXygJd3odHPC{qz%ogirP1nO5RLR$24)3g82j$AvN zbotpN-nnM$^efZuFN*)7Z~wA&f9F|O(dLUy4w;OVHOD9Qzbj7z?TcBOS|P8~_~%y9 z|NSTLN_SL!b**EL+&*u`*4ZmI&t5SvyomqbG+))}#`*Vjw&h&Wp5D!R|K9KyQBZ1vR8a)(Zaufd6<5h}BB${``#p2>uRe#jSTO*Br>mdKI;Vst0CnzomH+?% literal 0 HcmV?d00001 From 9777c23e53d4eeecfcc3dd8916f0fc0e26a2b7a2 Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 05:39:57 -0400 Subject: [PATCH 02/10] Update src/_blog/2025-05-grants.md Co-authored-by: Bumblefudge --- src/_blog/2025-05-grants.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index c68881b6..c732c971 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -36,7 +36,8 @@ ourselves! ## CAR indexing from Ben Lau -Another issue with CAR is indexing: storing a CAR archive with a given service may make it challenging to +Another issue with CAR files is that they are as diverse as the data usecases and ergonomics of the IPFS ecosystem: +while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus most CAR tooling cannot reconstruct or navigate its contents. discover its contents the archive is treated as an opaque blob. Ben and team at [Starling Lab](https://starlinglab.org/) are developing a browser-based tool to help From 80dc5bfbcea84462aa0740a1bc4c66de8bae3a02 Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 05:40:21 -0400 Subject: [PATCH 03/10] Update src/_blog/2025-05-grants.md Co-authored-by: Bumblefudge --- src/_blog/2025-05-grants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index c732c971..c9057027 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -38,7 +38,7 @@ ourselves! Another issue with CAR files is that they are as diverse as the data usecases and ergonomics of the IPFS ecosystem: while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus most CAR tooling cannot reconstruct or navigate its contents. -discover its contents the archive is treated as an opaque blob. +As these big-data archive files are not introspectable with UnixFS tools, Lau's team is open-sourcing some indexing tools they created internally which create a _private index_ of Filecoin uploads, rounding out a historic tooling/interop gap in the ecosystem. Ben and team at [Starling Lab](https://starlinglab.org/) are developing a browser-based tool to help locate the content of CAR archives, without relying on public indexing services. It's definitely going to From c568922524845c1962f1c042a71207082daf5cee Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 05:40:35 -0400 Subject: [PATCH 04/10] Update src/_blog/2025-05-grants.md Co-authored-by: Bumblefudge --- src/_blog/2025-05-grants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index c9057027..4e8ae90c 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -41,7 +41,7 @@ while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus mo As these big-data archive files are not introspectable with UnixFS tools, Lau's team is open-sourcing some indexing tools they created internally which create a _private index_ of Filecoin uploads, rounding out a historic tooling/interop gap in the ecosystem. Ben and team at [Starling Lab](https://starlinglab.org/) are developing a browser-based tool to help -locate the content of CAR archives, without relying on public indexing services. It's definitely going to +locate the content of [Filecoin CAR archives](https://spec.filecoin.io/systems/filecoin_files/piece/), without relying on public indexing services. It's definitely going to boost that part of the ecosystem! And beyond that, stay tuned: we will have more annoucements coming. From 26f2bbf2d8213321d708806a9acb13c3d0afc250 Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 10:17:53 -0400 Subject: [PATCH 05/10] Update src/_blog/2025-05-grants.md --- src/_blog/2025-05-grants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index 4e8ae90c..4e1205a0 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -19,7 +19,7 @@ We recently ran [the Spring 2025 grant session for utilities](https://ipfsgrants developers creating essential utilities, libraries, and tooling. It was a tight competition with strong contenders and we're delighted with the grantees who came out of this round. -## rsky-satnav from Rudy Fraser +## rsky-satnav from Rudy Fraser, BlackSky If you're anywhere near work on the [AT Protocol](https://atproto.com/) then you surely know Rudy, among other things for his work on [BlackSky](https://www.blackskyweb.xyz/) and the [rsky](https://github.com/blacksky-algorithms/rsky) From d1541537305371ce7af688fc9a02084a6e8b96bd Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 10:18:00 -0400 Subject: [PATCH 06/10] Update src/_blog/2025-05-grants.md --- src/_blog/2025-05-grants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index 4e1205a0..ff52b39c 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -34,7 +34,7 @@ in one bundle, and AT Protocol PDSs rely on them for data exports. But end users dealing with CAR files challenging due to a lack of tooling. We really look forward to playing with rsky-satnav ourselves! -## CAR indexing from Ben Lau +## CAR indexing from Ben Lau, Starling Lab Another issue with CAR files is that they are as diverse as the data usecases and ergonomics of the IPFS ecosystem: while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus most CAR tooling cannot reconstruct or navigate its contents. From 6f0977dbebadc172afdadc759f9dbf6d45083a3e Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 10:18:08 -0400 Subject: [PATCH 07/10] Update src/_blog/2025-05-grants.md --- src/_blog/2025-05-grants.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index ff52b39c..32a38694 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -15,7 +15,7 @@ The IPFS Implementations Grants program exists to advance the development, growt through a focus on developer choice and availability. We provide financial support to projects and teams working to make IPFS accessible to more developer communities. -We recently ran [the Spring 2025 grant session for utilities](https://ipfsgrants.io/utility-grants/), which supports +We recently ran [the Spring 2025 grant cycle for utilities](https://ipfsgrants.io/utility-grants/), which supports developers creating essential utilities, libraries, and tooling. It was a tight competition with strong contenders and we're delighted with the grantees who came out of this round. From f4eb528df167d79cd1a2bd0a073e96da902a6e20 Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Mon, 12 May 2025 16:19:34 +0200 Subject: [PATCH 08/10] more idnexing --- src/_blog/2025-05-grants.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index 32a38694..810a897a 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -36,12 +36,15 @@ ourselves! ## CAR indexing from Ben Lau, Starling Lab -Another issue with CAR files is that they are as diverse as the data usecases and ergonomics of the IPFS ecosystem: -while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus most CAR tooling cannot reconstruct or navigate its contents. -As these big-data archive files are not introspectable with UnixFS tools, Lau's team is open-sourcing some indexing tools they created internally which create a _private index_ of Filecoin uploads, rounding out a historic tooling/interop gap in the ecosystem. +Another issue with CAR files is that they are as diverse as the data usecases and ergonomics of the IPFS ecosystem: +while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus most CAR tooling cannot reconstruct or +navigate its contents. As these big-data archive files are not introspectable with UnixFS tools, Lau's team is open-sourcing +some indexing tools they created internally which create a _private index_ of Filecoin uploads, rounding out a historic +tooling/interop gap in the ecosystem. Ben and team at [Starling Lab](https://starlinglab.org/) are developing a browser-based tool to help -locate the content of [Filecoin CAR archives](https://spec.filecoin.io/systems/filecoin_files/piece/), without relying on public indexing services. It's definitely going to +locate the content of [Filecoin CAR archives](https://spec.filecoin.io/systems/filecoin_files/piece/), without relying on +public indexing services. This is a stepping stone to more general solutions for indexing. It's definitely going to boost that part of the ecosystem! And beyond that, stay tuned: we will have more annoucements coming. From 0a45642c211c8d50a939c0205bef00cd791ceca6 Mon Sep 17 00:00:00 2001 From: Robin Berjon Date: Tue, 13 May 2025 14:06:54 +0200 Subject: [PATCH 09/10] Cole --- src/_blog/2025-05-grants.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index 810a897a..9d4daf5e 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -47,4 +47,20 @@ locate the content of [Filecoin CAR archives](https://spec.filecoin.io/systems/f public indexing services. This is a stepping stone to more general solutions for indexing. It's definitely going to boost that part of the ecosystem! +## DASL Testing from Cole Anthony Capilongo, Hypha Worker Co-operative + +Not all heroes wear capes, many of the cooler ones write tests. Tests are important in development, but they +are particularly important when you're creating interoperable standards. The difference between a standard and +a random piece of paper isn't that the standard was blessed by a special standards organization — there are +plenty of worthlessly blessed pieces of paper out there — but rather that the standard has a comprehensive test +suite passed by multiple independent production-quality implementations. + +With this in mind, we're excited to also support [Cole](https://hypha.coop/people/#Cole%20Anthony%20Capilongo) +(from the mighty [Hypha](https://hypha.coop/) working on a test suite for [DASL](https://dasl.ing/)'s +[dCBOR42](https://dasl.ing/dcbor42.html) (an interoperable subset of IPLD for deterministic data encoding) and +[CIDs](https://dasl.ing/cid.html) (a usable subset of IPFS CIDs). Cole will exercise the tests against +multiple implementations and help us fix bugs in the specifications too. It's going to be +fantestic. + + And beyond that, stay tuned: we will have more annoucements coming. From 739affd6495934b0aae0067a47de9f959fdd58d4 Mon Sep 17 00:00:00 2001 From: Mosh <1306020+mishmosh@users.noreply.github.com> Date: Tue, 13 May 2025 11:23:52 -0400 Subject: [PATCH 10/10] Add additional team member names --- src/_blog/2025-05-grants.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/_blog/2025-05-grants.md b/src/_blog/2025-05-grants.md index 9d4daf5e..32ef4fa4 100644 --- a/src/_blog/2025-05-grants.md +++ b/src/_blog/2025-05-grants.md @@ -16,12 +16,12 @@ through a focus on developer choice and availability. We provide financial suppo make IPFS accessible to more developer communities. We recently ran [the Spring 2025 grant cycle for utilities](https://ipfsgrants.io/utility-grants/), which supports -developers creating essential utilities, libraries, and tooling. It was a tight competition with strong contenders +developers creating essential utilities, libraries, and tooling for the IPFS ecosystem. It was a tight competition with strong contenders and we're delighted with the grantees who came out of this round. -## rsky-satnav from Rudy Fraser, BlackSky +## rsky-satnav CAR Explorer from Rudy Fraser, BlackSky -If you're anywhere near work on the [AT Protocol](https://atproto.com/) then you surely know Rudy, among other things for his +If you're anywhere near work on the [AT Protocol](https://atproto.com/) then you surely know Rudy Fraser, among other things for his work on [BlackSky](https://www.blackskyweb.xyz/) and the [rsky](https://github.com/blacksky-algorithms/rsky) (say "risky") projects. @@ -34,17 +34,17 @@ in one bundle, and AT Protocol PDSs rely on them for data exports. But end users dealing with CAR files challenging due to a lack of tooling. We really look forward to playing with rsky-satnav ourselves! -## CAR indexing from Ben Lau, Starling Lab +## CAR Indexing from Ben Lau, Basile Simon, and Yurko Jaremko, Starling Lab Another issue with CAR files is that they are as diverse as the data usecases and ergonomics of the IPFS ecosystem: while Filecoin uploading returns a CAR file, it sidesteps the UnixFS and thus most CAR tooling cannot reconstruct or -navigate its contents. As these big-data archive files are not introspectable with UnixFS tools, Lau's team is open-sourcing +navigate its contents. As these big-data archive files are not introspectable with UnixFS tools, the [Starling Lab](https://starlinglab.org/) team is open-sourcing some indexing tools they created internally which create a _private index_ of Filecoin uploads, rounding out a historic tooling/interop gap in the ecosystem. -Ben and team at [Starling Lab](https://starlinglab.org/) are developing a browser-based tool to help -locate the content of [Filecoin CAR archives](https://spec.filecoin.io/systems/filecoin_files/piece/), without relying on -public indexing services. This is a stepping stone to more general solutions for indexing. It's definitely going to +Ben, Basile, and Yurko are developing a browser-based tool to help +locate contents within [Filecoin CAR archives](https://spec.filecoin.io/systems/filecoin_files/piece/), without relying on +public indexing services. This is a stepping stone to more general solutions for CAR indexing. It's definitely going to boost that part of the ecosystem! ## DASL Testing from Cole Anthony Capilongo, Hypha Worker Co-operative @@ -55,12 +55,11 @@ a random piece of paper isn't that the standard was blessed by a special standar plenty of worthlessly blessed pieces of paper out there — but rather that the standard has a comprehensive test suite passed by multiple independent production-quality implementations. -With this in mind, we're excited to also support [Cole](https://hypha.coop/people/#Cole%20Anthony%20Capilongo) +With this in mind, we're excited to also support [Cole Anthony Capilongo](https://hypha.coop/people/#Cole%20Anthony%20Capilongo) (from the mighty [Hypha](https://hypha.coop/) working on a test suite for [DASL](https://dasl.ing/)'s [dCBOR42](https://dasl.ing/dcbor42.html) (an interoperable subset of IPLD for deterministic data encoding) and [CIDs](https://dasl.ing/cid.html) (a usable subset of IPFS CIDs). Cole will exercise the tests against multiple implementations and help us fix bugs in the specifications too. It's going to be fantestic. - And beyond that, stay tuned: we will have more annoucements coming.