From 93d63918cf0dd81e3bff88cdf84654247d370a0b Mon Sep 17 00:00:00 2001 From: Masato Onodera Date: Thu, 21 May 2026 13:13:46 -1000 Subject: [PATCH 1/3] Update getting_started.md: bump date and fix code block language Co-Authored-By: Claude Sonnet 4.6 --- docs/getting_started.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/getting_started.md b/docs/getting_started.md index 0961552..fff26cf 100644 --- a/docs/getting_started.md +++ b/docs/getting_started.md @@ -18,7 +18,7 @@ The Q3C extension is required for the database. You can install it by the follow Python and the following packages as well as their dependencies will be required for `targetdb`. The dependencies are automatically installed when you install the `targetdb` package via `pip`. -Package versions shown here are those used for the development (as of January 2026). +Package versions shown here are those used for the development (as of May 2026). Newer (and somewhat older) versions should also work. | Package | Version | @@ -114,7 +114,7 @@ pfs-targetdb-cli create-schema -c dbconf.toml ### Generate an ER diagram -``` +```bash # draw the ER diagram pfs-targetdb-cli diagram -c dbconf.toml ``` From 8603d86c2668ccaccbc2d359855c1787bafa8f78 Mon Sep 17 00:00:00 2001 From: Masato Onodera Date: Thu, 21 May 2026 13:21:35 -1000 Subject: [PATCH 2/3] Fix detached HEAD issue by checking out PR branch explicitly Use ref: github.head_ref || github.ref_name in checkout so CI runs on the actual branch rather than detached HEAD merge commit, allowing the diagram commit to be pushed to the PR branch normally. Co-Authored-By: Claude Sonnet 4.6 --- .github/workflows/test_database.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/test_database.yml b/.github/workflows/test_database.yml index 2b0e9f3..3994120 100644 --- a/.github/workflows/test_database.yml +++ b/.github/workflows/test_database.yml @@ -32,6 +32,7 @@ jobs: - uses: actions/checkout@v6 with: token: ${{ secrets.GITHUB_TOKEN }} + ref: ${{ github.head_ref || github.ref_name }} - name: Set up tbls uses: k1low/setup-tbls@f25e3d013a596865b2db90dac7ee19e9f15b5780 # v1.4.0 @@ -185,7 +186,7 @@ jobs: git diff --staged --quiet || ( git commit -m "chore: update ER diagrams [skip ci]" && git restore . && - git push origin HEAD:${{ github.head_ref }} + git push origin HEAD:${{ github.head_ref || github.ref_name }} ) # - name: Run tests From 43e8f4fe6b9ceda9f974362a7e74f758dfb26c13 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Thu, 21 May 2026 23:23:17 +0000 Subject: [PATCH 3/3] chore: update ER diagrams [skip ci] --- diagrams/erdiagram_targetdb_latest.pdf | Bin 0 -> 47897 bytes docs/tbls/README.md | 324 +++++++++++++------------ docs/tbls/public.cluster.md | 76 +++--- docs/tbls/public.filter_name.md | 116 +++++---- docs/tbls/public.fluxstd.md | 108 +++++---- docs/tbls/public.input_catalog.md | 188 +++++++------- docs/tbls/public.partner.md | 10 +- docs/tbls/public.pfs_arm.md | 66 +++-- docs/tbls/public.proposal.md | 84 ++++--- docs/tbls/public.proposal_category.md | 10 +- docs/tbls/public.sky.md | 16 +- docs/tbls/public.target.md | 158 +++++++----- docs/tbls/public.target_type.md | 142 ++++++----- docs/tbls/public.user_pointing.md | 8 +- 14 files changed, 745 insertions(+), 561 deletions(-) create mode 100644 diagrams/erdiagram_targetdb_latest.pdf diff --git a/diagrams/erdiagram_targetdb_latest.pdf b/diagrams/erdiagram_targetdb_latest.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fcfe08ec826f4234e1baacb68392ada8a1d893f0 GIT binary patch literal 47897 zcmV))K#IR5P((&8F)lX>CAICY`wBE5Fd%PYY6?6&ATLa1ZfA68AT=N`AW{k-ARsSB zX>4?5av(28Y+-a|L}g=dWMv9IJ_>Vma%Ev{3V59DeR-1|w~^=n_!KW3G2wm@eouuP znDKbSr0*HaUXe4g8y>HMhtwj)CfgKAx%KHcGjY~k@92}y9&@_URVX0yheTdT@Kpo< z-EjEF3FB5TF4#X+q2)nzw+$KTFA52TG+FvYcJ29tv5oPyna^7K(0;Z|F&8u;}kjNyE}aqt{; z`F6eW;ivcXv1eI13uN^4?pu_sHMjIN)jFb?Co= z@0swU!9i?jxDEcOu@Qe);qNp^>P6sB65IZD&Ewk=I*PyZ&>N2Vw@+EK)e`@+>i_W7 z?|~;j!o+ZLui4-J4u5J^FBxxEe@65G@VNHd1|}?Qvod=1{+rbk=+Sd&g@&iCX{-a_ zZN2i1KwJuA?MiwMA6an$FLHe8+XCE4#2V}2WudmNfsT0}u`kvVSP1C)xCS~Q#0Y!= zo$t$>r$*=idU1rRal4IBawBkrx;;W(M))@z81bG^Kv*rH`+Hgtc}^Rt5LMDU!k2Jb z*?_N^xx&i)dJR9lS_=*k>n=36MOJXR+5l5wy$LHrw<}yY9A1Ml5pZd+4nafcqBa65 z{h_pd#D8ciZ`N#ZMPS!Poc$M!(1&;EEB`ob@UmV(@cV}_AL{&zCzsFO zu73H;)fc~h@!{jMH&4I$=ZDoVzy0RhZ=1##_@DpP>Q}#7J^Ib#Fl`Vr%pvjkY zUjzdE`Z5#b5_*dGAd1k3%hS|GgQE`1*ov&9U%!Wua8~j3ypOX2h&IeB={+Fsbq1NZ z9gwxhU4e}rr@^JwCSd~7qFj!&Av^(>q_JjrNbF3}q{coHU;6SR5*YRs9~N|X1EHB@ z{HSXE!-x#4whH=729B(TQ(pY8y;N#2vOzRX(kTp+$V1ec#WqMJ_~UB5XcfK~TZKqB zT!&(69TKz)+zB85bB5xMb~}r|{{m@{wrPuP=InpgOStyuwGMNlFBBqwwbtV7*DwGv z$vqa?cR2UhG`*7)3N!yB3emI2Uy)|>i=c49AET^f!UTX5)TsyfM<iG+zUQ{a#_U7AR1KYt%U|TfCd1Vq_A!bZ}>xCbzaiZEfpx5RW*I9hZU>e*t!;N^ zMFd=C9gjX)1n#q}^$=m-WEJl`ahqlBSZFt*N@cZWXcY04AUlReL(?TvO^k+Z;=UC6 zAsW-~K{yg&=utAa$3!0L^ZU|7hOI7l&9Y79lT9_beyH!lz#+4o#t=Whk-W+D&iXeC z^P^WP3{hvO5MC~U`hSs_eY&>#?D6!NKW0MF_zGqEW5&tA7VVlH#|(ejZ_u;u1nACy zdE9ugt+iAuCBy=s0k=x7l!pJ$ceBRfMfi^2$`NnDq-nFnSHL}2I5OM#9X%Nu2w|G` z$PV!m;4C%l(LFE0A?6$BTO*Y9cFcaGalKmmAe(}!Q)#WQqMt3U*q&v_Moqg>_W^wL zS+=5yK<{u}Mn_l?f}N#Z;Qp3uqOnnQ zxBN|IFOADCVLj~uuH_G6iN$U6wREe(JEN9M*0EV8x{J)MK!+r*{YuHDb&>bzmsv&o z1$obl$E)K7qh9~H?qlg=ZO{g7oK-|Ei+jk-DpYJCRwVU}W%md5vz>u`!Qbm1xSdsb zuN`r11z548VC^r2AY#kwOag*R>A0(#(L{-=EHnfPU$)KvSIdltgXLB)W>b4uI*t;e zSjHfLvID}dAS{{@{rcB6d^AZHRpB_&L1f=!FszH-S)la1J)%m`U64{$Fqp}##wXOb z1)__aA*$@G{+%?vLYN*37}Q zJyrIcq=z^oRi&zoC=#ScESc7CDMZlvOi{#S&$$pb?5yiX7cr5RqPRqsKM_GKrk`e~f0^yb912j0UvY;2gpLgP8tyh2m+;}QYh!1pD{I)5bb%j&PiYxR>9y=X zb)I5OcZYss{?mE-aoN@TyL<0N-lke%N?EI=9W|}87)gqLS39F>y(O&A5a|ep*$>6` z>%>A|W<|NkgrXqDH(2YHKFhK5FR&5SlQ7I30MPQxIw6k&f;rEuxc)_SEgnv}UwZbn@zFvjQpjl2+=T!_fesSYvqb7Z`b0p5%rED8GnM#ML z=)%mZ=p{pAG})k9mh}4{o*;-GZ(_CqVw zEYg?;@d;X7HXe3#IJ3%U5ZxrwRN#4=_x0!`TDp6F$o>da9-Q(g_CEyn!+T}WU%o@- zH2#Gpj+D=IjLt&6pRZeq0XNFSWNLSrrn;_}jz|t6m15Y`*(B5Qa5S7+@^P*%5i0bT zmJdalXi=crz1PZVMF@K%C=9Dc&~lZqrl*P-<_xaw%ojsU_)GY#)EO;I|dg4tI(?NX(axE3;?pT}Ld=RS4hkADrnO$KW~1!W%KbuN{LltA(;~0EZ`8c#AlM zKWnS+N8;=p4&SexkI5H(9Qs*#IE=$PEDx9A@P5d{SAaw3 z42s2aOI4fd5uJP#P9mTB?@Ab>3ghY+QM1I6(q@!y zEh#pt$xSh8XoI>APQ3z37%3ivX1&DKu=|oq3E)fDRGaBXWYtf&N4cXU9^X2v7Fpw? zykaAI>B5bwVioJ#AID(T)dNx|=Iqt`t4_RrK(cR%MYllqO>;`$mgtLyoHXIES#^l= zYdT5;qm)WMj5PR=hLk32dM8FZ26Z;ef*@tPNzy4nI^by9$&qstjQ@m;cXumdcSDTt zn0bm#E2SN#PwJ#>MANw;ugM(K&uO*aoLA)zF+E$2A<>QPEaw-k_C<337FIi!I5Wp7 zp|d~ZO|?0<;`6(yRXZ~N{o2>I&AyBua2NE%{EWZg78X1hsnYtz@ryg1m$4(?vrYS1 zZtp)~UbMPflKzGm-?fm3I6rE9`2!h0nKg40jKBJP^}4IiRg`HK0r`MzAt->t=d z7~8m;Wg6ia4}s_CsyV;UraohNUz4_W&K|Btvf5b9f|l>=#l#$&h)JU_9H28?N1ZO_75A;@KxTGK~<7 zqkDbJRiTa~NA`=OpXA6qN-%_Po15EhX5`30DA_ZFe+w{4<%sSNPOcu1&boX4z-h0U zM#t+1wAbvHw{Y5P=21d%JaV*k9Z<=6BCWoSBQ?iA&Tum+6DQCe3_48LaL2i>=DvY$ zk93V20^Ggb2WP-`P7>}Y%J!`r?KhJqa*}WdgAP+vygN!x>3xe~?U|x-0^Px&dj%8Y z$8ghK-?n4cfXG4qOQ9o%xR z!ja_6lFX+QW)8;;=0P>)miMM3WiTwtgX)uB9Sby{l~Qx{fb`(G#Hf=Vd=$vMen9)v zl5D9vAZoh%)BOTWI;J?0IK}zHxUAwj5~n8ccM@AiLm_5T@y|24Wj2#)LPI|(=tn`{ zImy5~Sc>ra3$ZLpt-5^~_@K97OtO;lMsk<0{lez!NU}N!!0SdJRwPpPVU&)%j*P3@ z7l5CG5{M~SLfpY^`1(<}ECuW2Lb(YTUVXl{$ZTHLX)C^N^u7Lkx8g;KT9i?Cw`JfB zU-?w7hp#ROO1?cO8j~|sp5=;VbQAe^!RLwwS$bAOywAioiCi~AxSm>h(i`gWnTNf7PGQ95!*J!el(QH%Sm{;X^^Y+G= zp0N>6FUyk&3M?U~4+VMWpa4HQC88t{1a?}$Z8St@%`!C1rZ3%wKxm<%n*RVC(n_vw zRUF4d_0aq_bRT5HD;U2v;%HmLY+}-_%Z69MHt2z&66>mZ=&~@Fw>_xknGO`@WWycR z5`Kd5OFq9%EQP{+zR`_gAs?dY+^`vjI42pZr^Y0MqK78oz$zu@c@cPL6!s|P~FTBp;oNPa` z9LS3@sqHU4K^Oo>TgJPfaBV0hIgJTdTO)7d(&pnkhv+Y)0uCLZw z1j_s)zfQk~ZKepgg2-={t%1WB88?P5Ba0yv7+FD(hE52@9nn-+t{L6F1R}gSD{{kQ zWtp63FAjA$k1oZvV7DNQcRRmN$(?AfBy`D)F0~)J{z#7cvM&ct!oMQ?{xK)>M$ddw zX3=*ZTx$gKHivC>sly0^RmEV^hS)TRsfX~DvS%0EzserFi@dEzsKuqCVW12~T6}wD zWbcxCDw;%?=j$}JcSUl}QS&L#EeZ3F^&Sun%)IN#fqeotujxrqKmAFi@K-%2R!=It zc#(JJ&YfBnWz!dI5jbp8;$)s_uAS^sm6ajEi0Z%!s~%2w({U0kP$N9Quhs zMbf{#lRb+Ci}**D+-T|De?-0|ppWljUA<~ROYA6ClX_KP(@Tm*R#PJs7O6=C`PZaAO<=zF_H8rAn&br8-LU4_@K7iS72p$8l zk6i^;EdlTZe%Szk14$|;maH(`fv`*vW)+4_X4P>p+$N>XvH(6wI(<^LY#ax{owgmK z#LLhxJgy!_MoxkBVk!9}{z`QDgy^Yt)S|Z*q;yinif$d;Ga0C?nq@)Pb(;Z|-95UL zD_yZx6;<2p z@S~wPjXY1wW|@<14+O^EX*?_usv}VY#QNf}>|Zs5AB?T}^R*3<3V$ea0e=f1`uUpG zdm#RSNF1N9nyG*MVHRUuyM`v(%|G~%?N_XW5vsT*E5(ytBd^I!DUPW8XI6}bh!FZ| zY~X$OYjFUw$~5WdVD#b3wi!R+8Dz;d7^KT~hUzrfvQRp}ewh;mqFCJ+WpbP>53jb@ zs_DjU54G=Q%n-b*7rY!>Z9OkKn}T)6ZTMdV;-_n?&mOOSM4xT>>|5w5NP|JsG>f_D zzKb4SS=1ew_cqBQ6X?Y`N>B6YV>b0(W?4MKCq;Z}==Swp_(U)}F{-jqDjKa~(p*}L zi3@!m{`M(rwp!wUR{bBo`u&PqC00tUoD(Z)4PU+gX7z+MEBr6~Ss0_Y4gAR)yS3V_ zE>=Q2V1$+Mc%!!l{s{Xf-wI*jPipHVG#JUZ5_^?f4&Qmfa-Z+dS5@b>**4BV?-suz zv3FzrRzr(xz$h21H`oHbD2`A0E&L(0!Kb;!=fu`)$;KZPTOJNfbIaYzv{-a_xO)r-2(=(?NsZ}CGfM(88lw()8O^HRVX91c)gdcFec zI45a>0={GQ3g{q2Yyk>dx3Vfsn9+>8UEzEM{BD5S)G_dv^A%9e5!r_a1blUk#z0sx-rmOl9#qC^${@G5MsY`yS2(R~QjQKH1P{5sEcEj- zeKrr2!-__0)UP(MN-b9cgiSBG>23C_DpW^19*PP7J9)I5k=>*i?NRyO$do%%zS`M5 z%dYX3u21gD;IVIo{Uq2Y)Oqd0XzfA8wNPgLYGKUn;E-x%sRa#m{E$KI{iVOMq=6O{ zp+qgHpJ*`#eWNgbKpP+WLeb5qKM?TtHme0WdI_Hxwfu5=1({}>0w`9+5ZzRiXKX$Z z0AD`C1<*06`*HY`6-DYpt(dSOk|*V^r~}1Zq`uFyCoCjiVYe)JqUcYQ2UF~(-{V)Q zvsc+eNQ3wdX6k$;@YCh#KRkg^nX|_s$%xAR(m#}ou*!v}!@IKm?l*N-2PWsSl8|%l z*eFY^%0#TPMJ}@os1=$L*0%8z(zm5;11P6-&me;6(jG;^UK&LV8kCHVqM!zgb1a(G z#?BmcSc_mjL1&s5#V#l`rXGq(kmVWIytDFDT6wHPIh=mwAT;%9`5A)#n&cQwoT5Ti z8f3?YE(&`-fAj+?^(uL?G8BrZtMXE$k=e@ZuIIouiJHY{Qi<0bZ%yI8O69Mj=;!2= zew&9{yxL{Cx1>hPo~e8=!MjbOr*d^vU+RP@$D|VV&jy_UHm3*aN>IM(e6rXxKu0#? zM(=yk%LZH)=+!!TFe*3AApd5CONU{}$+hubrh-nOFv1%a)cPj8GZ>-gfEE6c9=&)dh%-sdi?T$QPZGo_8_by_k<$*$3H0gvM4V!c$f2<1q z4Liw}?Gl6jyy1mbw$L}Qra?WAjAA1h2s2{n&1h3cC`7BC6U&s0xP%js$MJQ`=j*@i^;N)gokO|!Kpr}arZ^LoFY|A zn#C-};s7puE&Y^KL|lv=>tc?-yZUFXO`H54e!p49K4`z+G6(IvBDTyyYo!oL8#^)T zPC00;Czp`h>XmPr6?(&ZE?PzYG9@J63PX-FZQT}(+m%w@Y|(ix&{^xeTe(K~t&$3z zYhvYiBcSIO@P^^rMp*_;R*>tJJ9wo5Zc>YuAjqs#i1vDCic_LrkC*y7v5ZB3(-E0~&Oc#d4W!wvDJ7p!griog$5&%K8D)*yv| zkZLR8&zhr~)EF2NH_mPwhi*Tqwgw&E(B!tt;A0Y)A~dymAdqwTs^5x+2=pBr>hTe_ zHu!Qweqs0x^jmGi7kJ}GJj3uDc0nWIK->5(0-1P^Xp~_neCq{0=eGzaYV%vJXvkvg zL>^tQM;cvcJQo3Cp1XiCD;D^Py#jh0pb`go@8o6mFiwRylEulolS0rWg`j&VsA;JJ zCb&#L1S4ld7ECz(W`pZBxL7YxVtup7x6CmNLX%da+0nHOeZZ@(sb{^rYk5C9Z2&xA zIXN%ee&}PRJruSx)5d(};gPQRHj7l6B z=ai0tlPN}-oZWT|OF#`UVGl#VW1FGJOXBf1KRT!E!Kn6i!Yb7A)V792;#Zt`4SC zPovq1Ofiy34B+()X`E?#9k7pG#a(y-AG`zgYH+z5LS{6*Qk z@oIckFy&dhZbXUrlz3EhMwSH>6^eq%Hpd84ls8)n03^=XM&uHE9T%v}5x2LLaKGee z@7NIH7xDoDpiCEvW1VA(9alZB}X8vPxJ^fpl3dEFx7X;+R9?uC8>@ZygGh zS8?*O$ptil(c_#wLMg{gdQc8Xm3=ZQ6$7~;e^(4|)Ryqk0`8>GHSrSC8 zVAI$qe@2#N>4dNYjaD4zF7j)=!K|iyGL>4S=gqFPFQySuqKf_fk*azY`m3zGSM+Dq zMzDzf^iT9eQ~$&Z)ztmCiEoC5e_b0pJKI(%+ER@) zriL7apq;YC@$gd80VKy{ocnMvZ-(4YvJUot>wnFyUW z+gRC}wb;0ri}X?$!84TQ<|q}UZ+{JNSx&0=>ah}SONoM>3ymeuNblB>Y(SJ_?`0dw zwAbliUOfHFQ^DB2lT20_FD(;YwT8u7uk@EKcK!ub8e6Af?#_Ops@f&3>f6+(QpdTf z^x6v_-1>^`QguMqs^rvdan0_)wOSL~7%gsj;f`MIco!CKM{6zFdL_!x?u%9K(M1ci zl~&kdHOro}FHpQ)ykl)OfoaE3`w|8P@G0TXSx0oI!-k#_F7M z*FWyD*of~(#WKQgCX=h=7!Pe|)iy}K|KZ6x<<85qCsf5LCC{sHHvZpo9%RY*tGwRN zGoRXaEUP0?;gEK5UIdPp<&h5RPo*Lfsym+XmYB%??S<;`hn$oN--E@OPi35#e~+0D z@0CG+`40U6@h|O^@$cH3OL5E6uXtd;BGj#tc$1u6bGzP=&MYOy z^D0StFkEj>F-J($4_wErr_+wM9?wqRJ0O)S0rSmAQE9ZJLAXP zMQhQ*XV6(M&K}Y7iq?!T9WAul7qRIRjMFp^!eXDi5hxtKlpPjTcPz0$*;y8;9*de5 zv(aHm=N>O5bbeWPbEOe?bFj28TApFk?0q`vEOTa)ZY?L4 zj#}@;CONR2u7OXlpnK16qu$@*<+PMfMA@S+r=(IWT~BS6ACFN#;of9#Snln4bNLLT z=I^1I;uOo2*=vKU7!|8B9+^>B4@ZfZydma3D-o|Bj?`=46G-FCosN0w(RF*r8a&JupnN?#=5Z+@lY&t4s6rQddhc1N~j z&56pI*_Z7D&VinQpYaad{9*^AR5b49l9TU_e9t!Q=eVt-UFeQ;<=#DGd)Fc!;`^w% z&1gG6m}2Y9yn#Wkk;YUL;*%f!@2v|DAfb+7&dm_ZT1Tp zpXA3ZMqtO*ysfvaryXOa-c9}_RynZ;l%zk+Zr(I?iBj1EOho$ZLo079c zH0nVlUfxVf#0heTLhciJbB|&>-80DTk&bagaJ#QN;0)BxNxI!~!q;)k^qWZoIZ3xe zA@?4Oc$uT*ir%wW)t)IRC&(QNIm~}iw_PIcRyNc<^IuMoI}~z1!Kk>tTN~@mKyKgM zo0BW!5WHP|wl>2aNk1o>;Si|3{%m*CJ(G>@f@ItGvXNl|?tj+^4Am$va&E@()zB;z zEjdOC&;irWt9`c%J~Dm+Qa|QAzObxcrWKxxc^9jHLH#Sm&t6P1EI3VT`;*uT!6}_ud&Kazy@+OGBmpT zFDVVRTamDczfVbm2S}9rqN@r$RSEQoLdJK6|K}tw_!0R(oAGn&;-Xv}^<7~b&9$m< zJ$}1X5fSMb8v*sQJejb-5_I}lxN}vD3=C`4HAR1o5^qg`>6b-Y9Jhv_yXoLf3sKmOe9=a?X=56PCd8UJfIni)8 z)r6n$8nmW+3Be&)m`~WbF)(C0YHN-i_N&&;z=W=<%HBnB@cQUm!|OZ0HI&Pp$o?ba zfijXN75;_ps8T)hdDbbbBWnR8b&=DJQv8;WqaDXX)Tstv)_=U>jW<;(_gqSqJ{5|% z=d$0bsv}(dN~L0Ekt+0S$Rpom%Cb&zSn9D)_yY(&u?)q;GAu_G!)VIIu{6t67j~n0 zxu=vU5vv{Jy%NiBJ8Jcr3Xq13)ff3i72Uc*FY0ow%JD4a{!LuR@^!u!s(*zB%$zO(2)=~0T*rD^{R-m>VJzkTBym?@ zMsp-EeL{eFH3YDw_zKS8AUYmJ^-nct|4pCA3%tgFMRaCJ!?F@P)q-ygU6Rn{mZ9sn zIE(#B(4qhvCPDgYRd)P5?=a~$M%hw(S>EYBWL>uz8<5L{703pQ|A1ee4lC8;~h$= z74jFXt@;(!>q`BPVtA-xA**=E>q`UPty@({}ao|$4PP3Go=a}-yW*Y`&o6qb1iNWqcoIKY(HEp@g_quQ3Ee0G&uEt zS;xD4l5D04R$Axv!)kDW(zsW-6nuYm>Y{fjHnuva%GZYy41s|e$*e%RzU7@>?UZx4 zzpInBz}6jb+)28j;%4@fYdnx0?tY;A54vK!!_8Y>q^e$|X*Vj@c@srgppFWPNxTp- z?Hb)np{^TXpT$O6_O0`5UDJ}8R>qo#Q6-DAPCjO_n0z$P^8Mz8)8~aAw3Yz}taf6o z@Kv>xnO$D8S!NF18A5NI7uVyp@VcYnp!eZNlsV=$P6-~p!u02<;smxvku-pNHU#|W z#6u0JUc6Uswp1-SMKV6ByRUe-xi z0RVr|@zIQE-E2(l-cjp*L-0!wcGWA(SHVqc<#|-9%BlN~2=Oj}c_WQI${M=u9pnKx zbc*9Kz_{ZH|0do%7+}YO)Xd2LJzA#ae#lK?x(|Z$U456LI{WoniL}UB@~uAWTtImz z4b6E-r)X+X)qYG77TN{1eh{TuK2MeDo_mFMS>hP0#aP$X>i4+aJ;AryYun|uErLu< zYnxZhh)cU%$b5I5NXysu$E+)58B1$hxSOjVeDWrpyh#sf7q8-*w8p~lbIw95=$?|? zV@&^5h`ev4#dUZ2NbgA6yv@~|Zfa@uhRX6-E6cqQu9bn)>Zv!YY(u}Dre2iF zNwo@Je6=obZ;Y@u&F|B*ENFA8WR%q{ruM~Xy!3jr%bnN%z4opAk%7Va+R67Jo&@3P zX7pATU0=^lDI>hTyu2swVmzXY@d{UEd+uy`m1!`_0D7gB;ZkpoFSGwH>OmW2bw2Wx zzr=#HrB}KMaB+WKKySKA{ku91NQT2Mok0=tdReY)Q%}8&r?X+x%R%>giWj;+Uj2w7 zwtN;vLfSc~zt)IUIMPFqrKG+nB4n-8|CsJ_XFa#m1f?h0RFvVDIn8r~O^Vngg-DX* z#HL-?RCbh#M5}nLHK~e;34IR!_9<(&TH=3J{U5&i{fb+yR!TX))hnmnN^;(;-hZ=t z!kQKSmmX2g)_A=#+Sx5Wf3f1ms;v`hWfc6;I#4_;hZZSTnj5+00$PlBE8RE^UB7_e zwBI&fv6b?T*#b-96(P3Tu9R)$)+=bx%5I&57UKnacX*l zByXxF?L!-{-ZVrfn18>+N7(2ByJ+HC$;iA0dmkQ`Ql%RMKnd@aQD7U5LRW1jG@0sE zqtd|oJ>tmfv0Majd2d1+K#s;o;8xrLt1Sl*@&ImNzXxz@0W!xT&AHxM011HGQhx*B z7RE$ygI=D%?e;{saWo`AGdxG=HZ(e8oB-^(gi>Xw4Tf%fM!2xprUBuWjXwx;bOzhp zRw-W~-uZNdxS@~3s^=ylJT`d{%OXH`v;|+w01s`(kpQWB>bHc?o$!4SzTqnl#G6H- zr7STIFp3h-0ICs(&|tR;twaDmVBc0C=o-y~;6{dl;D&t{h%|s~ z?vhs0xGcEUo`Tz=)*xZB(q_4Bajn54QLm!X~v_xd?ERWw+lA;9jC)1ajJIn`C#R(K-MF zfESE9961cm1#S|+6{^|X;uP5Ug8+I|L9}SLQi=lb&X)<{78eV)f_~CrrxU?9O80%>1@ zCvXdWD7YO8QLRCGMKu?}jq0=pInH%44sqYn8i-_z+ATe{;Q}>m{6T1=MQsG_N5!&i zfBI3vJW|KfUoTdr3BD&98^rQ(Lwt!8liVg~lvU5YhWOSA)`!8GqXfgvpL?1GST|dV z{t|d|YYl499J=9XQi9ULhfPW)MAA%T!ZwJ@{WKGeLfRtiq)4g>q7vE+fjq)fdKcRy zFD4~6c^n2Ce-0Kb=pM$xgkT;8+MO>)Xe&u1a$9L+!ggpgGMXiTt+AHyURF(Fqol#q z-S=C<2Tuq;5aGfjt3fzN%@WObWpt2ijgkT3+&Glnp5*)h!lg>8Nl@1hLO9L>On?Sm zF)56>QV*7J+bt4;e#hw9|CKs$YlrGXcOj;w29b4$_N5A{SJWKS|!r&qu7)1(1RMzAfK<^pqjjn?@)_ZJY8d&R7Wy5;P4)L7rY(}v-=w?T6i-qP(+SNS27!Be7f&vU{9 zg_c5APd(2KDwx7LP$4l&CmgJ=l+3rs{4p^lR<5JNAuN6`j}YuQCw&9T%cj{juqcI< z{Q`BRq5@@tEsw_2_nOH}xll-jKJ$-tO8@AD4m$}AG0wQ`gI5tDTOPXo+w?GJfCOj_yit8+6XTO ztJK+6uEk8M1slt?7@a|6@|VvrtlWwRkEN{)gnL;ld#z815+<$)u`RSU8vgHCv@Ix% z`D!upze!PV3L*E>G&VvvvxzRLCfMkpS5-lxD$qYL1RrSD8iG%mDy&Xb=|tFd)iz3= z%&As!sA(|onu}sgDch9i!l)*3o_bw^s>*SggX05Fa#)m$GD@RelTnPA%o);qGs=ho zMybKJ|B zWfq8RDg(4M6$2C_xZzE7_GSaL-C;67k!QsKrQf`pGC*_hhTCL-=24)FE*hYvEsfSx z?`l(7pq(z01)2s!A8`dabAei#fJK__5NYK=>x37J`lZ}g>*`77)wyrEM8Yf^GpRMBY&Oheeo##>rFZ&GLw zpHf@lf-g{!vjE$GdyQkG&uMa%LYt%jdq?pe>uN0H6WWHMtNG+OYpi1@c2_;5Lt;O!@-!1wvX6VH^65 z*v3sgU|X7mZMhS+QTj_jUJ;iLM*F#VzGs^1bncmnz1AV;H1HZq)eps=PVa}FenA|VGL_aN&fYT$}2xB-xRN+~3e zyM%GSp90>XByNNvGb>^o(W2ry|-j+<~EU_I^h8ZFHIlyE#HA%!)xppp`ft`Pw+ zNQZG^E(Sa&2>A)!^sezGBYf~djZPA13dHo4sSFYr2tCAgm4G@xJDZcr4gxy-)4Z|kzib{Ziui%N5B#!aO5Gcgx zX-}>WJUk{$$oGp55d|%>WC;#DrD<|TgbgMGwf)H`hlPVDQN49M$zf{3!`1{X5U|4y z@ulGDi*2~^DPMKdYe;X6q*S4MlG~70g{~n=#F7+Y&>Z!6(w#8LiX1c0CgQY>^D)g6 zsBaTK2RaMgATM?0-2`VI}WSiXc=S}a|4*jUIy8s8N)v*VT{LUb1PpA z&3S_%rICEGkqno`m0Vamz38Fmj&-iOyUf*zsA!L>Zpf;NF2*dUP4C_%sy-$#MUSf1 zrR$War@z22CZttR1u9dOwA)l{ZIk=FJ-(Ejkh2N{fk6v$Ln&q%1DzYhS|F(F9}cIO zjSVhh;rF4=P%02s5-5l!f5eAE-c+ZIVn|dK@n%=r(6o!xeVG?>KS8z7NSIu7ZZ<*nuz4f5TcfLYQhMTT zl2myqOwYf%&4MQOJ@g6I;8JMcT8-j-V@68|+eCytgm9Fgil04R{XknysbUT2&Fbx;vyQ?i{(A3NnVKwL6B6295xxRuiSF0>J&Y{zHX|k-ki=%(q zAnu?;w=s3D{SBuQ61I9N=c`aoovNt=xK$FzEpW%#v$%uYAh<8qX;UD{e)li*nglmx z-q+x^l|;H}aGMTyTk8BEwxd=vgza(&pj;GAozfo$q0SQ4eMb85xtfa%qR!1Tk#?*= zeNSl~0nd`gQ!L${G`EfBc2H3t_A}s`E<7eBeP}JBe#UB2;}~0B0AXxW<9nwD$(Mr( zLSDELGorGD=%rG!I@c|?`CHm>-8rJjI$xVB=v=g(cd$B~%>9)T(N*E=1zW<{mDhBI zNmUQHNXU%S`nIr1R`onW?VGI?i&f9*g}=-Q!ClW~X)R54E^DIrtm~imnWf+9VAd#& zc0HJ-dE+WZ?R0?d^XAiaR|&@Y92hIWx}xwu&U+`b1Xi^%E6lsh^=`1LXlUSusxs*G zt9BAoU*g{ zsaP68@R5c%kJP}RMa8-Zxz}F9#N4$FZ?p;=P^>czPFtTRJKTk9hPv=o7nuX|F)cjR z0Gk&eVaJG;v+yE@y-;&46Byo_d1zao)W!X5oJxU=c2d`qb!O=<~2rPvF5~v%< zdb=i-WkUzcMZQ?7`WjZ?@EBvf-6++sqZ3-1>e`Z?w>=51pu^X}9o7#wpi7fThd;EN z!_Z@UG;Q&>x1?aS+lRbQKVLiABJjziPZmP9C)ha)zw{`)lyxZrRvj}RboGvXeTuvb zMiw-A*1t?)?0Y*OU~ipY&$}I~^`w#gcV@~DeEVIbCXJD3S1l=@UayoS>foSmcvUa1ihhOy*2rY1>i4W$-Q zR;F~^#jH#NbG2Auy}{Gbl&6fjUDo0`@~ACS%A644+_-EeFyTTiF5l2$ZAvc-_ZDa@ z&hKKnTDbT^yO3ZRdGBDV+QDd4%yS!h%+Tck+6g+S9#PW$Xe>d7CkpV^3p|e%;fYOn z1xMhnl*0|_rBs3}v^DXlS?;;l5Z@Zl#0&@dxrs$2N-2Sy$`^_bq$cTd9%iaIpaOMb zB4)e8@j?V@suG?oy-O!k9%ddzOot6c2U45LX_)y{rRp@yc8_%(0@bO67cj-=Z2|59 zozS146tEo&roqdw2prbC9We;d4)`9W`qd)kUtoF9I2zElcN>jRcofEAiOHj>|C-c) zrMv2XH7`GztcJ$}tOcPlVg)=8j$mJ3URtGXm0JbNt(dh(hXEm~; z_65=a#bk*xbRrVP#r%$Rzw`ZR7FF&lY>@6_6yD~W%#tlQmG-lUT$P>YK(~I;EN~KRr&;V&t1~%bh4JxXkKv znNKHIqSy=c)$^nRv63dC-RPpMwa5`AlJ$i6(3pE4xXe31f9Pst=q#ykMVp&hF?~?T z`p)D;zo3@K%&He5nlnYf8Y8R&lF6lbku%*hBdRgB(|t%L2qo|SR=+^x5yFEWy2^TM zF&nEZ%!`qfHP&F-j*-Zxi_2S>=p3ubglB>Blmp#K-L4F7`u+dmMd`SBt9Y0$S8}uP z$*UE@PxWlXEUar;?eH{!it5pJ8Y}ZxmMbGwM-}Ntud*4l`>o|O9KDrW%R^Viyw2I0 zUF_83n56Qqp){FOSr*?*?qif@R=YWc%)Mn)UCXvE8X!o};BLWvGI4izcXxO9;O=e- z?(XjH?!h%ca1A`j+H3E1?m6w=_u6|u9+Ng1)ysPInxkfYZ1s0YeBf|*Zj8O2kPM1<7?%3zYKDD;$yJT0uQBP4bNifO}* zG!vNUwF>QAjZhbQx(-1gwCZ}FtegyRwbCU_M$&By)@J7Ei0r@*s(Eo9rz7*K*1@Iu zXY2jMH_L5NBCZq>R00Prp{O?vFyeBVaYtbyxI_a{KQuYQ5kEXYc05CAkZ1)-Tz5AO z^_N&*ZEX`CT)V=wi{t~ubDg)gzt6mb4%@mJUj)?LYQTr2U*BxiprXtrRqZ+P_Ej8F zQR@5C6)u*%1r}`$ia}28%l)*I!RjGU=7YYPXi}#$%Ucj6z%9DAtOp>OV2sC41o1$40=hed1fA>JBJU zurrL6uZy_tQF5cPva2E}j~L0&=$Eo1xK=Ta2$QWCzJ8HEX^y+`zxHH!bLk|dA5>fF zr-3IGuF&%y2&RDZXotWP6%oX0RnGPKU57NHRabZ6LBUp{NN&}_{>0=f5obJh4mlyI zeZu>A`!$=WNU)kJTl%Pv4VM{Q&$v(){u>Gdi(8aNsw#;G^|N=DGpE*s8#YwiTAXS&+StbJ7C@a4g4nb~D30(K-*mHqIQ z@W@L3X4w?j_A{vdl}#Hx?TVq_S{#>j1`}17y**6o@^fFYPy5$-Tsk~J0x^AEb~5Jn zmZY=_=pyzvkx48~j2!)txK6`CJq<3}wNkVP)mhRMy!*%Rwb2>8zw~*b3?KxmK?aD} z^b7AZOot<$4tt{IK1&#!Kr-+MKQXT`zc_oHEhel0dfg}$udKOtq@=Lq?5r{&>2YO{ z52M;X8^mDBYl9*!5nh5qWPR_B3W}W00W)BN6x_j;NWgW~sQUrG&qrw2sti)Puq+4u zyqgmAfG0BW7(9wD{^^Gv8+J01U#9EJ0gs*Iy}*Nfzw>i%_TpGw6!dA^HI-CFIzHNt z95%(NoTDE{l3T4HKykz?-wICf9X)P`gy!++b=i)P3Yxq;jq}1!TbF1)VAz+8p|URcwGJ+ zsn-=x8goAUw_PO5ysFJb8Y4C>{j}pw-pz`2V)rKgy5gS7!iq6AZM@tR9r{sG$6zVh z^2l~7d5h>2G-?#ja8R)N4n}LY!5!A*aQX!mEKZx5CPoax-a2kjjqd%zj!@>-P-48I z6hwBsBl2qcFPs6TBB@l_O5LA)oM9iWw#-LA8ytCI`cq^00J-bZK1YEdH$EeH3QHKS_#10xWlw{xlmu+KoRRe~ zax8h>!l^C6*kKj>y_al!Tt_3YjEQ2cL+ZonZ+L8Y%3=X;X(4c^qMC26JP5 zTLmvpbBiDx&AFO4H`r34tO$;@epfzn!+bu{TvUlpArH{LcO4W384bJrDf@w zL(o=HPQM>@mk2{Lkt`*}3h(?g!?&z0|H2Xr?$s?gVNMl~26H9Z3@wm;5l+B zB;?9f=EU41M%fB_2Bm>T5nPyEoFwh{Oe?%n2VW}}D|dS}PFpMY@6!yDIa-l;BtqP+ zu9D1|=D|4TSBz1LB&{>wgm!SrtvrI|al4_qYGAh}gikK4j}iywfJ7=u_TQhwXj`}R z1H-7a1*1M0sTS#};ul_1Pc0O$fN2d&vS~|KFmC*$lH1B>6g-q`B_-X@=LA@G|14m! z+$F?`fp5%>=U;nWBNG0k{+&W|I}!WqnWUIDSZC0nP98)M*gkFN`U?#Ym*B@XU%X13 zUeC4|cGI%Li)G=O8%5Id=s* zS2Na*!plXHX(YJ3xi38*nA!x-p>QeJZl3(69ffWAc*SVe=*V9_a4PA3gCcZRIASV5 z8tJWI5>I|^`$pp`z>dC$^o^G_SSqm}hvwK+?*VGmj33&vW!(~`3W&P2G1&UyQ>7Go zH z_z1-*IdRrAo?pH;P`n6fLXHB8b(Nm=yE#sYEyeQ`Nn?doVJ|T-mKI}NiO#HJZc<&# zxhr2R)HG&M>5!En4xGSLQyED)W(|HrJ;Z6W^qiU`({SX47qK54m`zOm>`L~2JW#)l zdQQYJKNeTE@eCo;QeqEeZDDp{!gNF4HjE9G_Lnx$4W<#9=9o>Xl45oR$wODpwj7ef zwokBY#fp9L9a_#X^x2GPIh(@7qcy`ZE9hk=RwkZf?_=zm+xA}7B^UTq!VxNmBb%Ti z&Q>!^jYrfoYhnI#3R~ULb+l!{x-@|l42g)q(U@+aZHO5qDNBsTl()yF{s(25?w~MU z4`m3}WF18o+|cd8l&_*;@pc{mY5y9ijeSNELvQCGi*_CwgcM zOCfYC3*bzCZwe|b6UGP?b$*C*+ZQbz1(?ELcpZk0tjzN#2Z+5_KH`BPXjv~kPmUKZ z9L`w7+v5x3vSd-T?v2przfiBOPI^tRnH|e0WJ764I|CsBehh#NZ52S)Ee0*9at2Y^ zX2=W6)9X#Csynoiwc)>_K)qeP$B%js8ukA7Eo>A$D;opbdx`fn!@uK8{fQ_gW|j{3XDY${JSolGy(me9APti2S)=0MH3?< z^)m2o!&b`i;vw$lllpCbpeGDP1P~C1`1;-pqx1?08O9o+GL3H2=F~J9d(|GJEbx9~sEAm$@VUthv_evv$7fW9`yXQrhCtBAxl;AydZ*iX@=O5ETR|Lxsm= z>q2T35-CofOpr3$idjqc9&?ln^JEa}?xy4%zA}Oc}$l1oh#Q6R!ypLHC<vDvbG`DFS}6e~G1>9xJ)0#VHTW>;L&v;fs%W zxo1h=kncjSm4AqL-Kptn7qQ9^Dtt4)QiLNTult~mV670x)3}s9_lq#d%fje0hFy#y zkZ57@h!lQYDx^1xjJeUDHD`jPq#;1Ek?cfz+&aEkJZ=Uv7N?l|_gHbRRfT9DI;J2* z2EDctuzfD)s*?IXxoD)uv?#`nt41gn9EBeR0v!zwH!fX@OoFO2PyDE^<{Umuyjorz zaJqzhr!u)U$bEkrcURfsE^orYL0q9R&v=7XmzB1Y5xAo`q*M)Bnof?^$d3|4=G&{3 zW7*y&tu9lbQI3|%5JP<^E+(dA7xB1t29os<3c`OUO~ybovn)%jB*M{1gHH88Z^!RR zDD7B5wvPd-MfSk>!gM6Cw*&~*nz5Yl{h_bKtDO1b%Tu!Q3?j_6!6Bd21l8_O^GT&; z+pWQoCT34%)=uz9v-VdR=PXSyLhD*=2*+0v_T#zKD2DQu`&*?(x;Tuy+r&}y>J%fj z1#YVRx-ZT$f}ur-8hv%Nq2m#0h^%T_zDM3{p-5r`DeT`{$& zV`0atABY$j6ZSFqM!$rCRe==9el=^>f+7>J1y6$^^p`9{O-w?dHgspZR#MeLbz@reh9aVGf%-!>K+CE~uB0)Vw%kkeN9# zdljDPcL`sR2p=tkjmo>D@GO2f-`>gj?)Wp0$|gmQ^UG4<=4L_X%pBlRk5>OXShX(U zg(|6oL#n?Is-6G{+IC zBs3G43=%qDl#zPTRYU7fe&tteON_=z>JkUyZC!*+b$+Jm{M-T(j!#4)k;o?v{;RM zoOV^T)+S!_bYvsN$>$rpi$9gMjFjDyRSADt8XeeWEg?*ur;N^TQwxn!s;|8CdR7F5 zQar!c&A`M$JGIGK0C{93K9q>cy*03^TI{Th01HR*BqlCK5({neta=JZpM{F4sIuSR zlc=psl^HqG6ymhv7#KW^rL~;3CVH0<4mcBkD@OJD`W|^Z-jibm$yNus4&kyBlQA~A z5;JXcN;D8h3i1*YL5gzNbUGY2VYB3`AElw{r+3!XZ&jn4ermt=f^h7=1V5jkP`}?R zf4vv}Zc-?NYuDd0@O+b5>Y}23*T?0;PZk(pcyE!{l!lZvKz#r&4AyX)#aLo{pY zz{lIHP6r0#Z6lp2qcIidn2%<%Fzo*B5q+kT;cN!(W2j_ySc}^eO?WQNltq|WXkeUZ z4xpaY44T}#69-?F^iKvIy|e8GttGH9zJhG*Caq`UQhPT!BN~tvT=t`SezG72>6@!i zRqG~^2V}Qud6`<{DI+EN>Si7#13}kLosX8@ytCGawX9VVc0r>?afbpEB8xSECGFi< zPY~_Htz3-|mrf>KQYlnS9J_J2UN;QoR)~xfuu%;Pg`Y*XS7#w;v_f(}>c47 zN>Ce~03IlY59Ce~d5)HS5?)2KsE_B)P{^$5#+)Q#TwfTZ0~yc~ttCWg#dTvZC{rHO zG5xAnJKSSc=xDcJ=gkg`QRmM(lSB6(tMO+G@)Bb6A9qCK4z{+gcfm0ANThnX8ZEA`-nXdfu;kC^J_d*$){A)d6Y%uas-Wa z23NtDg<6m^`AgQiCx;kGx&aaWFZ#q`=LxQ2ya5F+6oeiH1ui*+Mz`++BI%Y)eOnUJ z5>glLjCs&hq}<|+!+YYh8gS}VX4RN;NrotRxwe>rUnTE2?Ff4lF^i`ey?8BFQ@5-F zhvM56cG(Jvl+H%)u3r2Y;HjpAxtR6vP7i!0N2dDR9-(uvq&cU(l<`_^x7xuJ?g!dd zg-;I|eB+31Q%FSj(ytbe9e{n)$`t;xoUo(sYT=lXfa402gTxA(X6b8$&~nos&m^U$rMw@k`T(> z8gm*5nV)K+vk-kg>o9q?=a^1}_J>=CDQP>qqDvJf1@TlPZin{}_WS>4!}EBJEY)Gl ziWg8In$96)bJOg@(z`3|Y+vp8{4Y>4mZKLNmyU z4gZ}dL*1?9PPLjA+Za|nD9@XVOvMsyM+1Ub^f~^4I^1Tbz3&HgBYf|cDwm^`th{9&Anai=J7v;dlfe{ zL8K!#yP!f>{8};sD5KrB;a7Hvx!3iQ`Qo(ZQcI_+=*GJS*}#qM6W7Ucgui13ZqSUk z6pyY;nS>DOfQl4qBKr44eAIRwAh;5>fuEfWl+EG9SBA)ilPp9%s!N}QCBrbU6zM@( zZx2$Yt68mVvh0R`g{ylcs%B$684uLBQ$6xFvpKkmrRb1T`MFMc^Po3a!FG|EUPFeR za%hg6Iz|+=^L#Ri7d{>#Uu)kNqP`yZhFzsLf{h!Q7wvIxG0ERAjR z{EXq+MxKf1`SBr~h`If&3BAinBJa zU8w3-FTh)2*uQ%C({&c44MH92Q}n?%^fDIKbewC>vdoYp%YX(VID;`>B1)Lv%dNr} z%(V9L(>)G_BqG4LX1b%aQATpC=r2y6%%zs0GYpsIuY;g0Dds@N^P9)uJMx+M%tg^1 zB9#Yy70&khDqN5O7a;H7T8xbT_=&J68?VVmuj`k<+jGMEBtLsVsRle~v&U-&G^hUQ zoQ}6t;{A5!hN4$A>0n;Hcvcx1M+eZzDZ-&|ag z)wKZ=CXtS1NN4Cgh2^^?iP^WXGx02`9D2LuIXLrS*bUr{Ibs zX{|*qu*WU_ql`wx-F~415Ff-}4$QxQr>A8rCphU}eG$c0QfvnS({=El<*sqv5J+9G z2JFb*Y_C_fJ`Rwb-N|4X3I<#y{oG!n!#jNz#nJ&%Jj}>VS~L6awA{=4*WP_W7#nyt zCNj}SMk$~?)T65X_GpZTi9tZZ@PQN7T6YMJvKBGDrwp2K02&Xc4{ey-3=50!>HbE4auB~{t?@=qTVEmh6iHvO}4oJjMV<7BB(gtCxH&lZ?IqO z0CH;J*eI>$a^>9nd)jQ#yVczG9r<1Eq2(d4fp&(}xPuijgA_Y+b`9*@lk7Uhax7I! z=2+%rfkAPmP!e5ZuO1g5T5ajZvrhau$ziP;eT3DTScFF5zpqCoc$_*U55i7a5k4*! zQQ1vo?Dj92k`YNySUN+R!XjfxqwaqeCb3o|U<*ZNAhZ)^Qkr3tD=lC3V{DoMmf zE&v+&#@@8XcU)=i^YFMFKQt>uG<$IHF&a;F>W*7WC)cBAt0P_Q3xmc`V-;=I6{j8J zobQ@?#Obj!b-ZmKe*hL{%~lWF9gPmE@@>xU$=iw?rL9ByIVQf|1n0OY`>7SJmIG;p_1M=| zg|wTfvt|XTHjen~F+UFK3)M4@#YnBmzaUP2FIklWoMJxN?+`JLtZH2oudg=;coUcO3)I3DuU_D+uPtvh zr)QxIh4h`~2M;Uk?;)V3r8Us# zUgIyFYuDD1^W=`C9i7qoGK<~s;>q7QEpq6*=Hhr>x&6ZKglEP}6mY6&ve|4xw3-F$vC2CFi-mrT0QJbh?j_N zF*v%bs@NR7m3;>l#H)E$j1Po8rU5T#KH)e-gNG?xLn=X?~UJ&j%hSQuM_hgdayl$(P?RJ#n9Ah*c!5^!sV{5;;Uca_6< z@)9dUCPOz(an%8;iH=EiVy*eLrr!fv(;*0Wje8N%Oe(86rfKVf#Q_+gwrokY5gbFz zm#LaU*cW&PI#D*J@!GNQq9Q||aJV{@(nx5M8)A{KG2LUZQZz)eV;igG?N_Q&+Dz0r z`s;43?OEc77i~!*Yq@rf+E~VP3O*X`2`)>e9SM$Nkq>O_?ZVXrW4-7>j)6P^vG-;C9Ke3@vhvJ=OycG59*&YFyNr~sj^)`-Jy&@i zoyND0WJ#!?juY7prlqAIuEtJhv4u(VxuK!T_SS^Q>7v%#OQIkFLgR(gS@NzjDl)pe z<0#+NysirSX)x+2IYh(k){nHj*CW&6zL8j$N$&RL9J=GQxKn54BENR_kxRJIjvnzy zRs9&QWmez^9hXO8ZM>qs<=qDGvysyCM~Y2}3)jGpc`N`TYC;D$)ZrkTA#(4S-79w> z;s#m%C2iXQ0cO88A)a%HCIxQK$VSQa;=c_ej7Cf%4YX}o z0x?r6J5c~3)BGg{#Cc^MiH5mng~nIv38w3U1bsOSHYm1L?0N!yk?8UO-9Y^{fzS97 z<;!FGYayNLUIX-P=V#OAjo>5Dg&n+nQki(Mc<#5TQoX1>zE_#pZ9#u)PW!CQYr)a> zWz*&KR}HSVc0WAKy%h(JItX2406I91X9pb*`Q}51EpL~NH&@iFG5E7P4(B5L6Zo@u z7dJ?!Cy4q-&XZu1kDTo)donOfr9B%M9>-#dJW5b9CBMR*mlTr5?x617IDT3OlT}>= z_-cWAlj@pqaCQ&{@@RkJkl(C+@P1Jxv5a=&!rEV5-I@k)er4gAfk&{p`V}0nx2l|J zbJeAc+hEynLBqFX>AxS`)7FfO*Mp4@-CF?3<*7i+dGDLfbLa=TR)zS)V%+l^Z^`xt zjHkcv(^>iEUHgZ-a{apvWw6PxJEn^W7TZAWhp zl!bDsofBxiQ!I3ybO;M;hf5~fCae0)ANv9G&Z>cQY9zY(z8dXSJ#dXssX!2Sb!$DR)VMqV4tYgTQ=TBmbrysJaLTdTh?5P4-RM ze+8qoySUga_~E|KlSk1&X&qjv_GcR{0H1|1pN@Lh~JM-9qa@QJ0 zIuU`lmJc4ft(H$pB*Mh4064cQVt|@+N+>Ra#5bH$dk`a2Z#7`Tv8@$G1)^=eFD7UK zObV%Pi7$mp;6s9O6D4fCQws5>I0y+SX+v*-Ge%|CJw~hkPiyZ$-|AMqu|r4h0$kz3 z-b0MmHYD2U>QQB0$*!VUuZN)yKn`vY3}K+f+*0o*ms+s9INCqM>W~^J0)yn zHKD%}cOSgJ5;+PWr1}0ED!`VP9bfemSQQfi?jy|MBD@!jyxR{X@~)1ricKF&CBzAM zWOg1XViraA+_0|Y2vve@qXv2dV{-YNlO}4pV)6xsF!#SZL&+yX!Vt!Q`e9s|l&qZx zNTLE!hC-?xT@nge1h6*Jls^@N%2Rfe5iG-KM-Q~q{xXdTxFcrr$3C|c=_aw|JKk>L zr8(N3092@IYEprSKrewWeJlzanKzbIl+_=bfww2Ac-71h@#~-A?REG77pk)-4=syo z8i9yE1y*Oj-d?xKQy2R>7yeq=D0#`_rX)W8KTrk#pj(&$%>QOv=$ZdPWBkop{F^KJ zKc45I6*p<^4}cvwcMHR56#&nVDMR8*=J-vkY0jW>`ixB#{Yn85{RC)#EIsD2? zdYhP|ak3m=CAEEU*|AET#T{EOwQ|}QXA|gdN1lf}?v6eEL(=QB8qj66rf1HbCA=kR zStLz!p=o$MJ`>XQv;4?U8ugIe&Y|_i<{d>BxGhN1U!`M0v!XDxi5^G27Ce4qLv1!z zY50p)*_J+GlQh26rkVMs7Zjwe;RpVf z1H0mt>Tp6{jXdA>j^4*IXyJF~baZjG$PIpaf_C6V_v%!=DX;h+rtp1Q{>An%FtYxe z?s=!N{wopnPJjs-IT+ZR**e*>N8^}Tn-I{cm|62#JDB|~_@jl2nW3Yp!<$jxrkR$Wk&%hvooxL7;>F4U zparn7(gWX@17=nRT6zEzBlA1!`Md%Nv}|lZ`afO1UD7kYmtbaP zp#{*>v(U5s*A^Ms-UiS7rw9`p)8Aubd{YGgeADo~|9`jfXF!Z^ozk-``4N2U_dmDizZTfHJL7+MVA4O?SRm`$t@ckgwqMc0 zF`*yR`@qB4Iey&uZgqTLI!>$SOH2T7Pyffh${1Hd6#nl_u^;(sEPKjjk*xJsZ0i#= zn2>Dw0@3J|^1`j?H7)sad{JnaC@7PY6gcsY@uF{vrerc4nZH?a6&CuqM=_Y}XC5pc zWIklE)zZ;_3Cl+VJ#vyrYr7rj3<{~s6)a(fXu7x>+_*ImM+lb*A{ zkvOmlurThTPbvR`yy0nlt3&tFE$yF^My<9G#L$qtwEZ3#@xC&O$+P z8>mNNuwu3kn%>!?=(~=!h(|0x;;obiBcsvPAcXG-YUb2A&7&1p^p6i8FSaJ)q^WN*$@=$SJ^4IY|z_&G5$Q6b~)qtv;?mH@k+3czl)!js_2 zpSa;fIUm9Ix{04g^l~JY2MA(tlQM$vXH>z6cxG@7nEQpGGH;=r32HSVX(_j>;MkF% ztL4H368+?5pXEqJ;8v}DQqP!H;&(J8Ly5xag>D|k3fsK}f2d4K9B2jn{tC-QwX?E! zdkY4xxBlALNQ37Vd-J5b+a#8K&Oa{2gdxS*CZk1JUHMElgGEG|>c-TBEB3nDypwbl zu9DlZlWA9L;KnuX)X$AlNihk|Li89cH)tj|h$C66{?Ro8Xn`*6(q`L)tJ63FPkgsx zII?DytmD?VK9qD|C_1uGB$C9VnDvy*7k+?`NH4p5^8J-DdHhl>2DOF&H{YUtOv_Lo zWsjVBs6alT+;IGv8lfiFF=a#HS$x5`xCSNkijpClW}oFj%{^GX*gx1cz@_RFr449c z-DfJj;xa*wQGUw=R-y@67N=VKmBL5)@dA6QrEuzW?%YY$B>vv|Ep>K}Y}6TN_F!l{ z#X>L1$P7Ui4JnN}oM|btL+DHu&S{*2Vm2_h9F3dkqRf5SfC_+=qXwrkK7u(5dCuv) zHF)i!oJ;I_38&c6m~pSTOp;FTeFV8_WCiLf*Y%Mb7O8{VcXZj@R6!R zvER!oFRRfim-eG0RBcqb;b_$epz%Z2Z`Y3#Gd80Gy3p}H#~a@HxgWX{TM1)!Wob%S$3|ABe(1NjtrjX zhQ;m7iKOd)#aG^-lTq2tY*yY3mLg@6N{hDXZ#Ur%YTVO@{z$#IV$jC(&qWGG*bD1L z3bvmnyqM|s=$9C0b*1w**j_~HjB}OS?m`S8@lFl>jYRjeHWZ!scDZVDbCSmdc@lk- z4cl8UryVF(C&6iL-+2Ulegb)|AkYKbfQD4>Ym{k7^otD~;bd<9*5`YsZ5-<#-paK6TvtXytgE z`vbXQK8#>IH@c(yMEc=<`%?4zSBRF@Tj|V?{RQThz3JiXFby=ei;Rbz*Pgi(Wy-){Ck> z=+I!|Br*dv$|O>~&=r%=(0)p4=IOj^sUuUx@70*$#NJc*FeGTAo;vy+aKe+Eq0J6B z`W1aRkoy>(4J~QQq*#i=0;I=EMJ$MAHQ~DWV{uS(xQHO3Ei2}7E+3s}+HOHQi^_$| zyG_LB#xSVOiH%_g91~f&kmo6@SHdYd3Mll|G4T|)_(H{vI)R^1+3|kucp&{qOrfL~ z+U7utCmA7o5OTvNeV~^cY$PESO%RJ&aq5z}trSQDE2x zOTpT1!ec+4{JL|1@&S2di&Gz;Vg=DwBB7Ph6IBtGzq3DP&kLIkUW!7Bl*_$5GU{V+4)y4h8APf3%m z;Ful@;9qkB z&uv#>Tm``)DYZt$;5Jt6T3IdZz~!!n9C3@60I>A_aRtasf)(+vcjDVjhlTh~UrJ{FJO@E#?gj3{Um1o zdA$KSTy{=V>=n|wRj;n~t->Z}X(cTb$FUkh<{~BT*(Jby&j-}$GQo_Bv-|-{KhLhk zV|mGbrAa!-dWYHn!IJOR`IjYuK$d?S@;`2cf4l4bZ&8wJHx%&y zCy?})kK=zl8G--w7yQeU@xP-a0WraM;d}O9(CHlo1x5^4`4sV!E%-Y!I9pSv= zF?k~svo{~ZH;l>m=J#pz2VK7Jd}ZtnjqKl{5xJP*8z?k$bo+Off|ISSrIFP;RQ!Vj z-^TD>Wcj1f(?2h@wEh7a|2Ta9 zcR>B8D}{ff#y3O!g+>3L7~*e~M?m-Y*l0xmwEGtVHq?7VvTs&?hkk!%MgA`U{U3Po zXFd2Qy!Zp;{#N$y1>zl;{bhjvX@U4Bym&`Ifd7Io_B=c^6P0f7I=CAhcrto#J_L_~ zAfkShlN&|eTc@XFs;5>YcA%tTpxfOf;ZuOL(M_dDO)JJsHTb5eoadIFCYNqkS3Ofh z3M{Z|Auzepcw+m;oc!bI;K_}LE_nPZ091I~5d!D4X*5~EmpPb@+)M;c#zMnAzgoDePMGg! zth%dtJrCMC-FI^o2t3?Rh+I1i0qz>#JG~L4(iuUDRg8%e zcrZF3@v{IP>=v?kLPe8EO&dJFtA}TwN_>LXxd{-mzd}(W&X)z)ygkuI!LF+*6>Sb< z(iX-TG3T70!)23U$}}H|vL$H-6|2ZY3Q{+jYFeNZtT%r>dKyfCJ=~F_Pm46jANtDv z{d;!;hDF;MZFESP%hY3CLd!Ko`^JT_rKdXVOqoAQ<0=n9@AAr$V?G60AqT8|_0e|X z0BIqs*Ye)P zgiQ7?UVN%_IeOk-y^~A}dD0ETJY%q%fhRtgcJ@o`=Hw)YmqIA`LbotlPqOv|+`m!w zBxu>tGSNB{jS${im~a?(8GzvXDd6`PbGz(nY`s7G(pUfGR@=d?kV*waxs3< z#&aC~6#ugEV%HX)mTz>V6=7zIl_gx@R@i^EgCDr;9zQmGbJ?@|JhUg+%qDsYfvlvc zywEb}z8zT{OeXz!xVRn08o{8>GiZ*x++yg}p1HLFJYH!9D*-2g4dBl2y{GPLtT4szCQ_}#cMQSiEKx770)soupUG=6lxrb$s z@HTw+PeXg+c7f=i&i3sr{t>ZdO=rVorOxw<=xy9rnF59qhuSrEvjdF{0hFrKXT$wJ z0tfR2^fb{&;N4Ne!!*&<^(tqv6$Pean5Sr@cq@2J%P;2aimTcK5!1iyhV19rV9H2mNYxW&voC?%aPa>@;=$b-K0zy9zyLo;33_XPDMPc z?z*lGkINzca!g6~N-{B~apL^V)p+@_rR4=q!WkDvtA97&N$5#f+S_7{Cr!*+?5GdZ zgXfq`bFyG1;_hBr7pncO>ij{tDs-b8gJTir+Gw{2PCZa>+R@f? z{HQ@9{csVgldZr!t>W5$50uI1+-*KQUy0Z)UNdW`V~J`HjL$*K6^#}(Jb2voYJ4`G zit=9g!rG|F_$cHi{Y5m4@?spy>3)f|-#=rBOeDHo#94-GF=_SW7dsZXK|CLAqY-c0 zkt!)~z}EK*Ab~*7b3oe1P}qt!=lRdGGGD5TtE++z_gh-HE4kdt;OcQbF6*bZl9ekr zI=pUUyYijV)N~qGR+c+KGOmFN(wKO@= z51rznSSi&l`N>ygRFwwov0uY9Tk}#=FMe7}@%5f**B!lviP zuIIkFAuiQ|wKuu=I8EUFRi-y!`;-7qm<6OEsrt)q*XY;A60B*hA-yJQ2!8n1Q9m5! z_z=Jm065yipF z5FXLE$|rA!C9cBX;;k+nh5@T#_m|GVde5+O*&iB96fA5`pPpBXGOCAJm&yn#DA?z02?7E&Xq>}|pglt4+1wJgs$I*fZ&gLu z#ruoLw=z{e55 z)es<1@-Y>m9)d;iH4xqsMt!p&ZUOtjCp^usJS0MuJ2$B1eO2gR0Al3%j`%e#=Db zie~&^?!{UZgB@O(y-$RLQ-;JsgzD37T5wSGm=u!NkKVhjr;YT>?zJ2LQIQ(Na*HE@ znOpjj57?_?>2mCkQdQaG;y=;iVp2ZP7Ge?8(|_-(A|?jX32&ftTI7~$mO+=pmD$sr zC+Mmo?IC*E4G+TmX4++-RBE=w5A?-Jq1|+H`Mi^cuYwnBAg@ zz%rb5^o5lNPBBsRr7-llVnbO$Jh*ylhSRb*T(>_4wpzaU!)fp4RI!)W@4v$Vbl~CDU^4d2N+0t^2oMs7#QRoA4@l z7JLH^n43`9Dfp9h?ns~xZ>yTp9A$GJJ#)gT-GF%WYVviMSv#1o$9k%24e7e>+9}jw=1&u z2bu14h*bMXVbNi*wz_SbuLAevfhR!|!kFy1;J-wL^*}!qHz`W((GD<4k&k!_ap>-_a29<4>=sz$H#>yp;AkLpq{t9aTVIO6$PkY9 z0M$_KE@sDqDFNK`-7esF%%DS#LZDjHcQwZ))pp__;Tl!Ew=aCW@I@?MkPQAAGbET_ zh9qimrbq52v4&#R`?FbPg-JH!4G6^kN4#i;;HO3I>E7vf=_IBID;WDPD*mN&|Q2sr_9(?V<2{$Bi*mSglt1 zjp9-TP97Gqr?2YakvoNildur&;B`TgC7WG zh5f+0kj|ZCA&GW8NSa->2~>>bK@m_Vw}(Y8rWR;8mLj^H{57P{0ay9rA(-=M5Ry4boi;qjahl;Il5}Pozo46~Nx0X|yxj9F z9iO0P(-+NvJ|oSLogf~Or?Vf=J$_(xmK!qrbNL0K=lw1&(da+CuJZ4(wfzn@LtQQS zF?c3=ve!ksu$ne_!=a-1rWY5!sZ_A+{Tz|cK#jUgTDf$=4FW!dE3k?Ks%x4 zcLlzvt`TX1D!}xS4el$PPC`6oOfFpM%~u9tag*zm3DNQ0eZ|>sf4z^1CwBQqX(E?4 zcIA_1LE<=LnEk?6)5n_3$vlWEh`GQ%eO2o4osPk2p8)mrNV3k9ezeYm*kYldW}w-rdEuB^kYh_s z!mx0*qE>IbSiv;DL_^E+s^uB1b^V-ABtq+T)4f&65`rKYe~$(|DGc4rp>=jZV5WGmMfw|lRbhf-B^9_@BY?>=@q z6tX@$Q?jo1HxJwl4I<+ZdpSbm6jCPi%9vZlh)FPN+PK>~1SATX!fc^7Z%;8a)+D6e(4|l zgI%-J>8_(Bl8)P9Q6qYs6?iLQ`I`ogn7QJ4_lbA2{fuosQAWusoykks%zQ<=^A*7( zYmMTx1e5d$PlCRgLT9RiT7UHeC2Ik!kcDhk+Owad!6%HExje>fP6|E$d?*E(`fU#& zgsrxamp}Y%O-*oHg!b&_i^lgpE;2A@k?SPB^@t-}yVe`lYb*6~O~GY1d76!lHR^Aj zBiR~M<1YvTud`z>wf@qNz>Qv`*F)uk&jn&q9Kz1TV1iLI=b8#4g|a*c!&pg@$Oaux z(ihLyi{gPwJw}TL@nJx{37hIgS+FrR1JliVHXX}AUL(6>zIIu%0H z>YP%humg*a?bKizYQ~So&?Eef5Ma}vxn>g60xFo!ls=8l>WoD-6gc0yDR{x-a-y!y z$D$-#T{_6Fr%8&oYNh?W}Gjp7x_C(xT_d&3<>)6Zq?@9$LRghJTK(lYe3ieoIr~OYR$T^w$6?m{of9Is3#&%cVj-kbECDhI|s8p zi!R4hbTW%M1IRc#Y`1o%B-@tZ9Iy=R)$vr-e%y?CHTz+6Iw=pWawQ?gbR%4gTO9;D zL6BHM)-#QJ$jWOV#?%Lcw-1ozZLI_SeDW*K78Z>=u0UQspOdZfBQsmMTfk7XtJjtq z$}_CfE_x&Ec4GPx(hh-rVcM=C&^FSk$OX3^H@P0*b_~~0_jND~7Giqa0+yCunasU&?|tjHp8R*HRejE>y>}I7pQ`U?!xRcw zMdg!kv5F`eVPo0raCpPj;?h>(Te>xG>rP9rVApH?*1duf{F6;AmF?xPCXD#RCO#Ix& zYo~*PL4tXgkaJou-TS2+ff!O^(nPbPoBeT&YjySIp@{Ju%NJ?)FBAi9aya9PvFX)*UEX#uuVHi9WX&?4=meQsUpVjzdB zGfiP`%zd#WE!;OsNMBx89j?H*SwpuELbujYwe=%EF=_@!r)Lx+hEUpx?YV@QzO||o zuaVVN;c5HyeX%$8yZM26_Dl5LW?|)u7wgx=oDH&x%3SVmc{7vaks6522n}UZPgiVg zWqAxsI%F3GW(Z6QLgypi)+-BX3~B~VGd2vgC9_#5T%s1M>#NL^32rNR=UsJP)m~BC zy%nvqAQZe)(}lFqTqXzVGhXk>t!9DkPxrRKYo5ImSCpODZMgGN>f(8ni_Te4_2M#n6YEmO9oP6eADpeH# zZWZf)26u@cqkF&=`uvj=`$dJ;)m|Bg5=+N-{GM{mt9UY446=klS4*_rXvCu0Z4ft_ zaLlA^cEq?N-9d!R>OxiXg7gNi5Z>qFs9Fqk?S46K?NA<$pf^J0$bnM1d_GsQ+alyv z9bzgCTlSB6TDFCq_2VdeoI!46qbPKxY>FICpdb4AxRC}^`RN)Fao;t4!ij6rtCWnV zDSAe_j5$Z86dMMlMh@jXD}n|ozk}2Z$LPxgU3;TUQv%$>UjfOB6#KB4oRfPmtcy{r zwRv^3>u{A4H@R=*_ycp^w5f52z2!Zf(8imyWX;&GuZTGCkSkk9#5hM4NVbH*wqq)^ zN01_Vt4vLELku*_2o3Iy;x`TeL0(p3SND^pBubxpws<9spN2#c&S+{^>6f&0;R6lZ zXs&!uFhn3b9*eW^8=wy+8e;6InfTFLY~m5ty9lJO^oPFUal9!Vo8E{q4p~%v3<{D; zV%$gvK7EQJZV9tMnNgvAR0}#M3M6LCd`G%Lwm^~44^?q*^5l4*GN*_UXOzB~rA1>O7pa!iEh@uS zE{7J8tb8&fGNE^riW^>F@AcO`puqiZ!Y2V6R;Y(iNSLxG)?!@jbl+}LW7!qnJgE^;Iw4}36n z3v+JRu;a|R)EuW8BH?WLm%Qg(9wy8trC$LPGsRtE#jq!HVFqYhJDKtry;8)`q|GYe zQ+yhiL&{-U9cvB8JJqyU?*updo*oWuzqqw}F1(LVQ9m{4UmCwolnfJGxs8%RdM|v3 zfcFLybxYbPmTyb4fJyQ>`;U0pC%rU+1eDg?`f?f*4ctq4V7zl0xDzq1kk4j-%gS)t zAzZCG$%u_nbs8qB5V!7(#Bin4VN!f=_Uv9TL38r5_xi|!MB1pxYkWU{wY@^HdTm>| z4UcvBi%SwtgfuM`bk?sWqIYMJx0^q}Un8ZW2o-YpzB)VM-J?V7j|n#e#p{Hb{25i@ zT9H=^3flNIHbF~L7)rS?!I~8`B7q^Lku;bIV;E6qnx?b7Z1Po$Vtk7quAp~UBJAP@ zkXkkXPB2{J3EGpOT(OBSuijMXz@_Z4;P%IVaYtut5b-aGpSwUgrSXX#RkySya7W2- z@Cg-CsL<6U5~F37PO?I^#!izHOZEkw-b3Ho-X~5hl1CP_>v1_{=z!PI+%ZOS3hf>8 zwNYqlqxDrxlz4|XEgiwBOUj8_r%Eq4qvEJ#;!Y=6GsxVu&~B~b$zG#*su9dur)W?s z!<`W6VV>@c*jc=J=eTS(?dTOrrKl_n904LEj@Tjg*}hv9%4QJ3>z9OG4nAMC;grIU zL=oECWg*2VQ+Q0;s8oq}*6SeIm@T7+wz@RK(HR*kjv!SIeiRy{I*io1CFENBy)eRw ze{NP$UheRf{240G5?CdZ;C75i$Ma0ASrmd=GC_cJ!(j=J7OaEry2b!xlgDJA z5KlkKt0s9L>IkF~*wB{3i^@`%VI4EdC-CA4$0}Gex-Y&k=X@TWHeMVblgvC-`lOnA zZwIhX+^IY_W~gq{7&PxurPMyRY2<2c0}P??i}2FZQQMPk+p~$W*7E_$IE%>;dfPfu zrWt3zj+efI%a!7A#R+6(YZ-UkK};oyg0-q_hlzsqBer<59oKO5(WQ#)&HJJpXW)*9 zYW}Nk2_@Q*Yo0a%_ltY!?)&!8JWe8jNydyUz}{pjMs45THCoL?DBxQi{bYX(!OMaZ zmW7__vWl3LKHeKHuM|5iLv9=NJP`4>Hsgq5gTpCPR$}fLB*++HR~6P+NryXDV@a;V zU=v0G+$D@pDXkR=vvy!~@$0iMLprVvyw53Y85@-9NBhj1z8ybzrC%AzX>OdW zd!v_xFMH#XaaU_{V*7q0dY1i1-pA^w{;^f`?2nP+-z1J!1vt~uX%p7f(C5gk1(~I@ z76TFZ!FHg$kkWy>RIRF2heE_XTjkNglm$DT`oaL^Bo^}V=GvhUfMj!8vcOoBRYic7nL zoLFMJgPOy=dZcUR7K55sBNBZM!@XXHM5y4Ds&G81krPi|u(k@83*J3S#5NbX*h4;` z^P*_rdmpiUw|w1E?b#ZkwPu7To0$AK$qBg{hk3f%@Tunp);oEW>c}D?X2{xZcZeqT9V98Az{SjP!^Z~F z>^kL*X^nViEhxK-=_}xpX*M(+u=A2Q+B`wFQj;?x^f`f7@2ZYAEM5lBiy3bD7S6mc z=0|c3u((-^=3av0wi30QjtqG>lb-c&=#UPP^=FMu>>3$3O+yhZaE+hJR;@Q$1*F)@ zi(sDLMO`>?zM#))Z6=m^3DPU58hB>CUGrWl!g2%A^E$mC9XF)ZiS6aSI z1y%J2E+SN`kn?G$Fq`K}KT7jxDC*AfGcyBj3~;5@cVuD{yU2x~$cN58o)?SM<0?*l z6H^5WpAPKMNRFgK0%+j5gb<(LpnD8ar}9-4J}Z!-5t)ALY(Zm`#h!YZ-y&{ZixXfw zVip{sA5RF(U?Jr*x|r+zO0n5}g6GH}&-K(9(%Sbzl#BufDOxr_pi}hjD*!ozh`)xc z!fn5opg*?b-tEX~xx-l5mGfVQ)s{+L1e8GI?^_cphiAw~ULOEW(E)Nl@V z14p-qZ`TxL;>L!ePJZkeU&Us0Wo1{!KKh7Uhg?Q7N7aB)les|@T8M!sFrs-^xM@pC z0ld@z6p1oAd!|x}TMC?d9wP{izW8haf`jJe3_1R{Nc2{y)l5W6{b#Ky?-3KRNO^B- zma@2VKT6%OEG>?aEPxRUUm8)8OE4yi+l{pTct$SK;zi;|`?!R4>Jrt*lcCfV$@PsQg=)1XVs^&8DQtv}~W?5rmz?lq7)6!iQKhyK$8^8Wcwzps(v1Uq*R9w)DSb z8>^aMa;bFdDn@>sfcv~B@3&81qL{Q`LwrKcxb#Pcx#*nI$>HsA&1hli?8TYA-8(2bDYq-A zYnNWLJn6o`x!GS0@N4Umy)n1}-KgD&IAT zuG@xZ0#JS8Q&mszG5mROQv-J4GzxIK(b@NwBqeZFbx7b zUy$W$hGj6tjp`zE-(86Nf`q#Lp2{2UhV;H+k6h6CN&QQb^reH3iso?YW^=8uL&^=X z9Qtz~2nLYQ%-W*)7Ge$62@+B7D&$>IHoRo$N_-YTi@|#(;X?kcLNBklHLT7=5*n4v z4!W_jt`16%@FCJ1IdX?sTq;j2?isSfM#zdD4INj=5;}zkO}S1w-t&;HXp{~n+EEqe z>`?NC#}%DzQ^n)@lD%XG99y6=klIg6`5-dOqC&V!5y@8%oP#{5nLVS}Z8j5)~pd$*-6**f$2jhC^9spPmp-xId<*yxPXRWNAz{Zx>?&MZZ%9yt7HIbARe8fzV| zzIAOFz7Krb<-Scy{I=k!(d~K!ZqH6Q$=HeLqOkS&QW2fflSZfefN!=xD6I5>p5s03 zN4c7c?K2Ir6>^KSjz$x2uWrqz=1T~lX|cZ0)N(ug5KwQ4#hp!yS57F>=ysriRzB=| z7iJ>pwL03BZ8z(8=((R~)7gKbUo+wN&A&J;n9)cq*HHZf|9#3M#2N%!or9<8IQmgE zIqvjTk9P*Wtbzu_KJ=??!k)rs^gbR08Z|U-@*m)yi0glLrH$|@|zuq5MG(y6kdeJ?5c ztgFzlzWQP%nPNxf#`jjAdrecvxwSMKpdw6UUOrKtJ3g=EpNeaBs>GwqV$6Pa=6=d>BPMrW8o>z0iS z{MmlXZXo(K^gY1m+%ORW?bGyjva#`9TM0c3={b>BCeE+=KRyOH-8{OV_ZGu8^$+Lp|@~n}7Yrim9vw@JK z{)n*6gqMk<1?zMm+)dB{<}0Kwi7drjD%)@XE-FM)BK2E`qr($!@(&u@F9nun&1A>3 zGVd^SF$9Bv>)*zLGvhuERnpT|twALYjQ1!*Tq zY-Wp&<{cbutfWB89?{*$!B4FUI^ksJ&G?Eu8vAA_c)#Mu5$%Lo-A`gv*_%5FmlUKM@B`MO6$*SWM5upQ8D$8gO@iiuA2Ozy)38D4z`b zbMwb$T)rCy(z2&sU=wb<*!N*^YsE(4{b1h7Xys2S1lvSQAF;_%_ngt+g<;3OTTQTH zha|)a^BHOpnNZIfxY1Xbrp=;EMvWTL>)>PsIPX}9WI6<;s;to4e>j)a4EtO}Y$bY| zxiyaHMp9pN27zA+==4|Hyw@X>NU=g=LeLd*f5Jpvys6ChDm_nZZw-JkmIuQuj52=E z9|g9Cpqra<%!jLVzmF}T08XR!sXTg-cdgyYdxkv=Fl~?VVmfe?ef)XQQzccZ5sW zoc!hhhm@M(d|OBL%f4k2n~N#k$=;(%+JL9MjUNU3E<}m4CL4#lyuS--`LQxpHjbXm zG&T~%8asKvWIdl6_kTA0h%xWBIVsQefUD9mx{H^4wdsce68;im|KSt3_EQql&U2A+w~FJRrcfmumYf(l;gyiEQ*u<|bdZwS^r`70 zyIMiM)=O5{My?L#MdBaq*bYw&h^;}hV^vqS@{#jh&^70qy_9Qt4fM=g_=5AwL62tu zMi=m6fubtlHiqVLNA*5}Xf9I!t1m=N*B0U{#oKgeq|pWM!Y(0UrfRB3FRW}+ z`WIZ?Nf@5rIc${F$f|DOhT}p|dyaPU`KvmnKFABfD`=o&Oe^}4K81^4zCacyd0{&o zia0ZCDG^i!mx*`fDsHIEcQhXrPg1#pu}AU+YhK=pBNr*wtAN4*PCVgUJjk|4Mm)%F zL@L;%AT?Y#R+TjRG17_;Ws*a?3!@dK3|01d(7ta=zaMG=4H3WtRh&`j)DTzz5`}F6 z!k88#6ikT+U5^{*=7?=6pA~%cA^rjun;x?*@Ci|+8%RUxZ~x%k#!Wp*ur+r;kL=@X z1-3jFxa=x=%d@O3Bc7c72uDd|&hy!G_OnFU**XC((OEYwFd^10znI@pf#|adihW34 zpaBkq0`{sS=dL4@7is&o%F3rMJjg4a+onw3MzF*4?G^ajHmuune*;{|FzHoqZ~MjL zDG1dI_Y*eHwKEpqf)L+aDN#I#2I%uQaF^#c{S+iS-*O4Uezu(f2l*W6i=O5u6qhT) z6P}kVqk>ULe^1n}f_l}@cZCEJ#f3st9*MGT*TQ>phmqqzz$TAHH;ayB z#-%|kco2Qi3JxSc-vR9^HQxbso^l%&blz^|JqXO+ z3_b|#q}k>LHMi{$f(#d5eq-MPkGfrnb5;c?*p%K>NpZ3wDWxE7 zn>_ZB2TP&pdne?h>AM8vpCPc~anJt9@;JM2fX@NOiRdaS$as2K`;QU0#OBu@xTL0t z7=tqcMV7@a8^Ha~w~JU^+VUsheI&tQiQCl(IlD}&8b^g#r~>BXJ}{lh$O5`x6A(R$ zfEpOZ$4U*YRwJHc`+r8FBZ~SV0j283J`2Q$BSEgl&KGwbX>5 zFeJ7B=LQpm#tLx*$=nPL${=4c)044nbMOHa!37f8-d6BrxDFc<*)BCPn7A%RJY=d$ z4tS7f<0ⅈ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 literal 0 HcmV?d00001 diff --git a/docs/tbls/README.md b/docs/tbls/README.md index 64ebae8..85b8a05 100644 --- a/docs/tbls/README.md +++ b/docs/tbls/README.md @@ -4,19 +4,18 @@ | Name | Columns | Comment | Type | | ---- | ------- | ------- | ---- | -| [public.alembic_version](public.alembic_version.md) | 1 | | BASE TABLE | -| [public.cluster](public.cluster.md) | 10 | | BASE TABLE | | [public.filter_name](public.filter_name.md) | 4 | | BASE TABLE | -| [public.fluxstd](public.fluxstd.md) | 63 | | BASE TABLE | -| [public.input_catalog](public.input_catalog.md) | 9 | | BASE TABLE | | [public.pfs_arm](public.pfs_arm.md) | 4 | | BASE TABLE | -| [public.proposal](public.proposal.md) | 15 | | BASE TABLE | | [public.proposal_category](public.proposal_category.md) | 5 | | BASE TABLE | -| [public.sky](public.sky.md) | 14 | | BASE TABLE | -| [public.target](public.target.md) | 73 | | BASE TABLE | +| [public.partner](public.partner.md) | 5 | | BASE TABLE | +| [public.input_catalog](public.input_catalog.md) | 9 | | BASE TABLE | | [public.target_type](public.target_type.md) | 5 | | BASE TABLE | | [public.user_pointing](public.user_pointing.md) | 10 | | BASE TABLE | -| [public.partner](public.partner.md) | 5 | | BASE TABLE | +| [public.proposal](public.proposal.md) | 15 | | BASE TABLE | +| [public.sky](public.sky.md) | 14 | | BASE TABLE | +| [public.fluxstd](public.fluxstd.md) | 73 | | BASE TABLE | +| [public.target](public.target.md) | 89 | | BASE TABLE | +| [public.cluster](public.cluster.md) | 10 | | BASE TABLE | ## Stored procedures and functions @@ -56,12 +55,6 @@ | public.q3c_poly_query | bool | real, real, double precision[] | FUNCTION | | public.q3c_poly_query | bool | double precision, double precision, polygon | FUNCTION | | public.q3c_poly_query | bool | real, real, polygon | FUNCTION | -| public.bt_index_check | void | index regclass | FUNCTION | -| public.bt_index_parent_check | void | index regclass | FUNCTION | -| public.bt_index_check | void | index regclass, heapallindexed boolean | FUNCTION | -| public.bt_index_parent_check | void | index regclass, heapallindexed boolean | FUNCTION | -| public.bt_index_parent_check | void | index regclass, heapallindexed boolean, rootdescend boolean | FUNCTION | -| public.verify_heapam | record | relation regclass, on_error_stop boolean DEFAULT false, check_toast boolean DEFAULT false, skip text DEFAULT 'none'::text, startblock bigint DEFAULT NULL::bigint, endblock bigint DEFAULT NULL::bigint, OUT blkno bigint, OUT offnum integer, OUT attnum integer, OUT msg text | FUNCTION | ## Enums @@ -74,50 +67,122 @@ ```mermaid erDiagram -"public.cluster" }o--o| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" -"public.cluster" }o--|| "public.target" : "FOREIGN KEY (target_id) REFERENCES target(target_id)" +"public.user_pointing" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.proposal" }o--o| "public.proposal_category" : "FOREIGN KEY (proposal_category_id) REFERENCES proposal_category(proposal_category_id)" +"public.proposal" }o--o| "public.partner" : "FOREIGN KEY (partner_id) REFERENCES partner(partner_id)" +"public.sky" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.sky" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_g) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_j) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name)" +"public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name)" +"public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_y) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_z) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" "public.fluxstd" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" -"public.proposal" }o--o| "public.proposal_category" : "FOREIGN KEY (proposal_category_id) REFERENCES proposal_category(proposal_category_id)" -"public.proposal" }o--o| "public.partner" : "FOREIGN KEY (partner_id) REFERENCES partner(partner_id)" -"public.sky" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" -"public.sky" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_g) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_j) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name)" +"public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name)" +"public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_y) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_z) REFERENCES filter_name(filter_name)" -"public.target" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" "public.target" }o--o| "public.pfs_arm" : "FOREIGN KEY (qa_reference_arm) REFERENCES pfs_arm(name)" -"public.target" }o--o| "public.proposal" : "FOREIGN KEY (proposal_id) REFERENCES proposal(proposal_id)" +"public.target" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" "public.target" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" -"public.user_pointing" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.target" }o--o| "public.proposal" : "FOREIGN KEY (proposal_id) REFERENCES proposal(proposal_id)" +"public.cluster" }o--o| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.cluster" }o--|| "public.target" : "FOREIGN KEY (target_id) REFERENCES target(target_id)" -"public.alembic_version" { - varchar_32_ version_num +"public.filter_name" { + varchar filter_name + varchar filter_name_description + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } -"public.cluster" { - bigint cluster_id - bigint target_id FK - integer n_targets - double_precision ra_cluster - double_precision dec_cluster - double_precision d_ra - double_precision d_dec +"public.pfs_arm" { + varchar name + varchar description + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.proposal_category" { + integer proposal_category_id + varchar proposal_category_name + varchar proposal_category_description + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.partner" { + integer partner_id + varchar partner_name + varchar partner_description + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.input_catalog" { + integer input_catalog_id + varchar input_catalog_name + varchar input_catalog_description + varchar_16_ upload_id + boolean active + boolean is_classical + boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.target_type" { + integer target_type_id + varchar target_type_name + varchar target_type_description + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.user_pointing" { + bigint user_pointing_id + varchar ppc_code + double_precision ppc_ra + double_precision ppc_dec + double_precision ppc_pa + resolutionmode ppc_resolution + double_precision ppc_priority integer input_catalog_id FK timestamp_without_time_zone created_at timestamp_without_time_zone updated_at } -"public.filter_name" { - varchar filter_name - varchar filter_name_description +"public.proposal" { + varchar proposal_id + varchar group_id + varchar pi_first_name + varchar pi_last_name + varchar pi_middle_name + double_precision rank + varchar grade + double_precision allocated_time_total + double_precision allocated_time_lr + double_precision allocated_time_mr + integer proposal_category_id FK + integer partner_id FK + boolean is_too + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.sky" { + bigint sky_id + bigint obj_id + varchar obj_id_orig + double_precision ra + double_precision dec + varchar epoch + integer tract + integer patch + integer target_type_id FK + integer input_catalog_id FK + double_precision mag_thresh + varchar version timestamp_without_time_zone created_at timestamp_without_time_zone updated_at } @@ -137,42 +202,49 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision prob_f_star - boolean flags_dist - boolean flags_ebv - varchar version - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision prob_f_star + boolean flags_dist + boolean flags_ebv double_precision teff_brutus double_precision teff_brutus_low double_precision teff_brutus_high @@ -185,60 +257,6 @@ erDiagram boolean is_fstar_gaia boolean is_gc_neighbor boolean is_dense_region -} -"public.input_catalog" { - varchar input_catalog_name - varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar_16_ upload_id - integer input_catalog_id - boolean active - boolean is_classical - boolean is_user_pointing -} -"public.pfs_arm" { - varchar name - varchar description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at -} -"public.proposal" { - varchar proposal_id - varchar group_id - varchar pi_first_name - varchar pi_last_name - varchar pi_middle_name - double_precision rank - varchar grade - double_precision allocated_time_total - integer proposal_category_id FK - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - double_precision allocated_time_lr - double_precision allocated_time_mr - boolean is_too - integer partner_id FK -} -"public.proposal_category" { - integer proposal_category_id - varchar proposal_category_name - varchar proposal_category_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at -} -"public.sky" { - bigint sky_id - bigint obj_id - varchar obj_id_orig - double_precision ra - double_precision dec - varchar epoch - integer tract - integer patch - integer target_type_id FK - integer input_catalog_id FK - double_precision mag_thresh varchar version timestamp_without_time_zone created_at timestamp_without_time_zone updated_at @@ -246,6 +264,7 @@ erDiagram "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -257,93 +276,94 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j -} -"public.target_type" { - integer target_type_id - varchar target_type_name - varchar target_type_description + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster timestamp_without_time_zone created_at timestamp_without_time_zone updated_at } -"public.user_pointing" { - bigint user_pointing_id - varchar ppc_code - double_precision ppc_ra - double_precision ppc_dec - double_precision ppc_pa - resolutionmode ppc_resolution - double_precision ppc_priority +"public.cluster" { + bigint cluster_id + bigint target_id FK + integer n_targets + double_precision ra_cluster + double_precision dec_cluster + double_precision d_ra + double_precision d_dec integer input_catalog_id FK timestamp_without_time_zone created_at timestamp_without_time_zone updated_at } -"public.partner" { - integer partner_id - varchar partner_name - varchar partner_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at -} ``` --- diff --git a/docs/tbls/public.cluster.md b/docs/tbls/public.cluster.md index d1eaf23..6c3dcb8 100644 --- a/docs/tbls/public.cluster.md +++ b/docs/tbls/public.cluster.md @@ -1,7 +1,5 @@ # public.cluster -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -21,16 +19,14 @@ | Name | Type | Definition | | ---- | ---- | ---------- | -| cluster_cluster_id_target_id_key | UNIQUE | UNIQUE (cluster_id, target_id) | -| cluster_pkey | PRIMARY KEY | PRIMARY KEY (cluster_id, target_id) | | cluster_input_catalog_id_fkey | FOREIGN KEY | FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id) | | cluster_target_id_fkey | FOREIGN KEY | FOREIGN KEY (target_id) REFERENCES target(target_id) | +| cluster_pkey | PRIMARY KEY | PRIMARY KEY (cluster_id, target_id) | ## Indexes | Name | Definition | | ---- | ---------- | -| cluster_cluster_id_target_id_key | CREATE UNIQUE INDEX cluster_cluster_id_target_id_key ON public.cluster USING btree (cluster_id, target_id) | | cluster_pkey | CREATE UNIQUE INDEX cluster_pkey ON public.cluster USING btree (cluster_id, target_id) | ## Relations @@ -56,6 +52,7 @@ erDiagram "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -67,77 +64,92 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.input_catalog" { + integer input_catalog_id varchar input_catalog_name varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at varchar_16_ upload_id - integer input_catalog_id boolean active boolean is_classical boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.filter_name.md b/docs/tbls/public.filter_name.md index 00c7f08..80a70c3 100644 --- a/docs/tbls/public.filter_name.md +++ b/docs/tbls/public.filter_name.md @@ -1,7 +1,5 @@ # public.filter_name -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -32,12 +30,16 @@ erDiagram "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_j) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name)" +"public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name)" +"public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_y) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_z) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_g) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_j) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name)" +"public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name)" +"public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_y) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_z) REFERENCES filter_name(filter_name)" @@ -63,42 +65,49 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision prob_f_star - boolean flags_dist - boolean flags_ebv - varchar version - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision prob_f_star + boolean flags_dist + boolean flags_ebv double_precision teff_brutus double_precision teff_brutus_low double_precision teff_brutus_high @@ -111,10 +120,14 @@ erDiagram boolean is_fstar_gaia boolean is_gc_neighbor boolean is_dense_region + varchar version + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -126,66 +139,81 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.fluxstd.md b/docs/tbls/public.fluxstd.md index e6671fb..22460cb 100644 --- a/docs/tbls/public.fluxstd.md +++ b/docs/tbls/public.fluxstd.md @@ -1,7 +1,5 @@ # public.fluxstd -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -21,42 +19,49 @@ | patch | integer | | true | | | same definition as HSC-SSP?; can be derived from the coordinate; Note that it's defined as an integer | | target_type_id | integer | | true | | [public.target_type](public.target_type.md) | target_type_id from the target_type table (must be 3 for FLUXSTD) | | input_catalog_id | integer | | false | | [public.input_catalog](public.input_catalog.md) | input_catalog_id from the input_catalog table | +| psf_mag_u | double precision | | true | | | u-band PSF magnitude (AB mag) | +| psf_mag_v | double precision | | true | | | v-band PSF magnitude (AB mag) | | psf_mag_g | double precision | | true | | | g-band PSF magnitude (AB mag) | | psf_mag_r | double precision | | true | | | r-band PSF magnitude (AB mag) | | psf_mag_i | double precision | | true | | | i-band PSF magnitude (AB mag) | | psf_mag_z | double precision | | true | | | z-band PSF magnitude (AB mag) | | psf_mag_y | double precision | | true | | | y-band PSF magnitude (AB mag) | | psf_mag_j | double precision | | true | | | J band PSF magnitude (AB mag) | -| psf_flux_g | double precision | | true | | | g-band PSF flux (nJy) | -| psf_flux_r | double precision | | true | | | r-band PSF flux (nJy) | -| psf_flux_i | double precision | | true | | | i-band PSF flux (nJy) | -| psf_flux_z | double precision | | true | | | z-band PSF flux (nJy) | -| psf_flux_y | double precision | | true | | | y-band PSF flux (nJy) | -| psf_flux_j | double precision | | true | | | J band PSF flux (nJy) | -| prob_f_star | double precision | | true | | | Probability of being an F-type star | -| flags_dist | boolean | | true | | | Distance uncertanty flag, True if parallax_error/parallax \> 0.2 | -| flags_ebv | boolean | | true | | | E(B-V) uncertainty flag, True if E(B-V) uncertainty is greater than 20% | -| version | varchar | | false | | | Version string of the F-star selection | -| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | -| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | -| filter_g | varchar | | true | | [public.filter_name](public.filter_name.md) | g-band filter (g_hsc, g_ps1, g_sdss, etc.) | -| filter_r | varchar | | true | | [public.filter_name](public.filter_name.md) | r-band filter (r_hsc, r_ps1, r_sdss, etc.) | -| filter_i | varchar | | true | | [public.filter_name](public.filter_name.md) | i-band filter (i_hsc, i_ps1, i_sdss, etc.) | -| filter_z | varchar | | true | | [public.filter_name](public.filter_name.md) | z-band filter (z_hsc, z_ps1, z_sdss, etc.) | -| filter_y | varchar | | true | | [public.filter_name](public.filter_name.md) | y-band filter (y_hsc, y_ps1, y_sdss, etc.) | -| filter_j | varchar | | true | | [public.filter_name](public.filter_name.md) | j-band filter (j_mko, etc.) | +| psf_mag_error_u | double precision | | true | | | Error in u-band PSF magnitude (AB mag) | +| psf_mag_error_v | double precision | | true | | | Error in v-band PSF magnitude (AB mag) | | psf_mag_error_g | double precision | | true | | | Error in g-band PSF magnitude (AB mag) | | psf_mag_error_r | double precision | | true | | | Error in r-band PSF magnitude (AB mag) | | psf_mag_error_i | double precision | | true | | | Error in i-band PSF magnitude (AB mag) | | psf_mag_error_z | double precision | | true | | | Error in z-band PSF magnitude (AB mag) | | psf_mag_error_y | double precision | | true | | | Error in y-band PSF magnitude (AB mag) | | psf_mag_error_j | double precision | | true | | | Error in J band PSF magnitude (AB mag) | +| psf_flux_u | double precision | | true | | | u-band PSF flux (nJy) | +| psf_flux_v | double precision | | true | | | v-band PSF flux (nJy) | +| psf_flux_g | double precision | | true | | | g-band PSF flux (nJy) | +| psf_flux_r | double precision | | true | | | r-band PSF flux (nJy) | +| psf_flux_i | double precision | | true | | | i-band PSF flux (nJy) | +| psf_flux_z | double precision | | true | | | z-band PSF flux (nJy) | +| psf_flux_y | double precision | | true | | | y-band PSF flux (nJy) | +| psf_flux_j | double precision | | true | | | J band PSF flux (nJy) | +| psf_flux_error_u | double precision | | true | | | Error in u-band PSF flux (nJy) | +| psf_flux_error_v | double precision | | true | | | Error in v-band PSF flux (nJy) | | psf_flux_error_g | double precision | | true | | | Error in g-band PSF flux (nJy) | | psf_flux_error_r | double precision | | true | | | Error in r-band PSF flux (nJy) | | psf_flux_error_i | double precision | | true | | | Error in i-band PSF flux (nJy) | | psf_flux_error_z | double precision | | true | | | Error in z-band PSF flux (nJy) | | psf_flux_error_y | double precision | | true | | | Error in y-band PSF flux (nJy) | | psf_flux_error_j | double precision | | true | | | Error in J band PSF flux (nJy) | +| filter_u | varchar | | true | | [public.filter_name](public.filter_name.md) | u-band filter (u_sdss, u_cfht, u_skymapper, etc.) | +| filter_v | varchar | | true | | [public.filter_name](public.filter_name.md) | v-band filter (v_skymapper, v_splus, etc.) | +| filter_g | varchar | | true | | [public.filter_name](public.filter_name.md) | g-band filter (g_hsc, g_ps1, g_sdss, etc.) | +| filter_r | varchar | | true | | [public.filter_name](public.filter_name.md) | r-band filter (r_hsc, r_ps1, r_sdss, etc.) | +| filter_i | varchar | | true | | [public.filter_name](public.filter_name.md) | i-band filter (i_hsc, i_ps1, i_sdss, etc.) | +| filter_z | varchar | | true | | [public.filter_name](public.filter_name.md) | z-band filter (z_hsc, z_ps1, z_sdss, etc.) | +| filter_y | varchar | | true | | [public.filter_name](public.filter_name.md) | y-band filter (y_hsc, y_ps1, y_sdss, etc.) | +| filter_j | varchar | | true | | [public.filter_name](public.filter_name.md) | j-band filter (j_mko, etc.) | +| prob_f_star | double precision | | true | | | Probability of being an F-type star | +| flags_dist | boolean | | true | | | Distance uncertanty flag, True if parallax_error/parallax \> 0.2 | +| flags_ebv | boolean | | true | | | E(B-V) uncertainty flag, True if E(B-V) uncertainty is greater than 20% | | teff_brutus | double precision | | true | | | Effective temperature from Brutus code [K] | | teff_brutus_low | double precision | | true | | | Lower confidence level (16%) of effective temperature from Brutus code [K] | | teff_brutus_high | double precision | | true | | | Upper confidence level (84%) of effective temperature from Brutus code [K] | @@ -69,6 +74,9 @@ | is_fstar_gaia | boolean | | true | | | Flag for F-star from Gaia (Teff=6000-7500K if True) | | is_gc_neighbor | boolean | | true | | | Flag for globular cluster neighbor | | is_dense_region | boolean | | true | | | Flag for dense stellar region | +| version | varchar | | false | | | Version string of the F-star selection | +| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | +| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | ## Constraints @@ -78,6 +86,8 @@ | fluxstd_filter_i_fkey | FOREIGN KEY | FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name) | | fluxstd_filter_j_fkey | FOREIGN KEY | FOREIGN KEY (filter_j) REFERENCES filter_name(filter_name) | | fluxstd_filter_r_fkey | FOREIGN KEY | FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name) | +| fluxstd_filter_u_fkey | FOREIGN KEY | FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name) | +| fluxstd_filter_v_fkey | FOREIGN KEY | FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name) | | fluxstd_filter_y_fkey | FOREIGN KEY | FOREIGN KEY (filter_y) REFERENCES filter_name(filter_name) | | fluxstd_filter_z_fkey | FOREIGN KEY | FOREIGN KEY (filter_z) REFERENCES filter_name(filter_name) | | fluxstd_input_catalog_id_fkey | FOREIGN KEY | FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id) | @@ -91,10 +101,10 @@ | ---- | ---------- | | fluxstd_pkey | CREATE UNIQUE INDEX fluxstd_pkey ON public.fluxstd USING btree (fluxstd_id) | | uq_obj_id_input_catalog_id_version | CREATE UNIQUE INDEX uq_obj_id_input_catalog_id_version ON public.fluxstd USING btree (obj_id, input_catalog_id, version) | -| ix_fluxstd_version | CREATE INDEX ix_fluxstd_version ON public.fluxstd USING btree (version) | -| fluxstd_q3c_ang2ipix_idx | CREATE INDEX fluxstd_q3c_ang2ipix_idx ON public.fluxstd USING btree (q3c_ang2ipix(ra, "dec")) | | ix_fluxstd_input_catalog_fluxstdid | CREATE INDEX ix_fluxstd_input_catalog_fluxstdid ON public.fluxstd USING btree (input_catalog_id, fluxstd_id) | +| fluxstd_q3c_ang2ipix_idx | CREATE INDEX fluxstd_q3c_ang2ipix_idx ON public.fluxstd USING btree (q3c_ang2ipix(ra, "dec")) | | ix_fluxstd_version_fluxstdid | CREATE INDEX ix_fluxstd_version_fluxstdid ON public.fluxstd USING btree (version, fluxstd_id) | +| ix_fluxstd_version | CREATE INDEX ix_fluxstd_version ON public.fluxstd USING btree (version) | ## Relations @@ -103,6 +113,8 @@ erDiagram "public.fluxstd" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.fluxstd" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name)" +"public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_g) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name)" "public.fluxstd" }o--o| "public.filter_name" : "FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name)" @@ -126,42 +138,49 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision prob_f_star - boolean flags_dist - boolean flags_ebv - varchar version - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision prob_f_star + boolean flags_dist + boolean flags_ebv double_precision teff_brutus double_precision teff_brutus_low double_precision teff_brutus_high @@ -174,6 +193,9 @@ erDiagram boolean is_fstar_gaia boolean is_gc_neighbor boolean is_dense_region + varchar version + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.target_type" { integer target_type_id @@ -183,15 +205,15 @@ erDiagram timestamp_without_time_zone updated_at } "public.input_catalog" { + integer input_catalog_id varchar input_catalog_name varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at varchar_16_ upload_id - integer input_catalog_id boolean active boolean is_classical boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.filter_name" { varchar filter_name diff --git a/docs/tbls/public.input_catalog.md b/docs/tbls/public.input_catalog.md index 839fc3e..61b09e5 100644 --- a/docs/tbls/public.input_catalog.md +++ b/docs/tbls/public.input_catalog.md @@ -1,20 +1,18 @@ # public.input_catalog -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | | ---- | ---- | ------- | -------- | -------- | ------- | ------- | +| input_catalog_id | integer | | false | [public.user_pointing](public.user_pointing.md) [public.sky](public.sky.md) [public.fluxstd](public.fluxstd.md) [public.target](public.target.md) [public.cluster](public.cluster.md) | | Unique identifier for input catalogs | | input_catalog_name | varchar | | false | | | Name of the input catalog (e.g., Gaia DR2, HSC-SSP PDR3, etc.) | | input_catalog_description | varchar | | true | | | Description of the input catalog | -| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | -| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | | upload_id | varchar(16) | | true | | | A 8-bit hex string (16 characters) assigned at the submission of the target list (default: empty string) | -| input_catalog_id | integer | | false | [public.cluster](public.cluster.md) [public.fluxstd](public.fluxstd.md) [public.sky](public.sky.md) [public.target](public.target.md) [public.user_pointing](public.user_pointing.md) | | Unique identifier for input catalogs | | active | boolean | | true | | | Flag to indicate if the input catalog is active (default: True) | | is_classical | boolean | | true | | | True if the classical mode is requested | | is_user_pointing | boolean | | true | | | True if user-defined pointings are provided | +| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | +| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | ## Constraints @@ -33,32 +31,48 @@ ```mermaid erDiagram -"public.cluster" }o--o| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" -"public.fluxstd" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.user_pointing" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" "public.sky" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.fluxstd" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" "public.target" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" -"public.user_pointing" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.cluster" }o--o| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" "public.input_catalog" { + integer input_catalog_id varchar input_catalog_name varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at varchar_16_ upload_id - integer input_catalog_id boolean active boolean is_classical boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } -"public.cluster" { - bigint cluster_id - bigint target_id FK - integer n_targets - double_precision ra_cluster - double_precision dec_cluster - double_precision d_ra - double_precision d_dec +"public.user_pointing" { + bigint user_pointing_id + varchar ppc_code + double_precision ppc_ra + double_precision ppc_dec + double_precision ppc_pa + resolutionmode ppc_resolution + double_precision ppc_priority + integer input_catalog_id FK + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} +"public.sky" { + bigint sky_id + bigint obj_id + varchar obj_id_orig + double_precision ra + double_precision dec + varchar epoch + integer tract + integer patch + integer target_type_id FK integer input_catalog_id FK + double_precision mag_thresh + varchar version timestamp_without_time_zone created_at timestamp_without_time_zone updated_at } @@ -78,42 +92,49 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision prob_f_star - boolean flags_dist - boolean flags_ebv - varchar version - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision prob_f_star + boolean flags_dist + boolean flags_ebv double_precision teff_brutus double_precision teff_brutus_low double_precision teff_brutus_high @@ -126,19 +147,6 @@ erDiagram boolean is_fstar_gaia boolean is_gc_neighbor boolean is_dense_region -} -"public.sky" { - bigint sky_id - bigint obj_id - varchar obj_id_orig - double_precision ra - double_precision dec - varchar epoch - integer tract - integer patch - integer target_type_id FK - integer input_catalog_id FK - double_precision mag_thresh varchar version timestamp_without_time_zone created_at timestamp_without_time_zone updated_at @@ -146,6 +154,7 @@ erDiagram "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -157,75 +166,90 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } -"public.user_pointing" { - bigint user_pointing_id - varchar ppc_code - double_precision ppc_ra - double_precision ppc_dec - double_precision ppc_pa - resolutionmode ppc_resolution - double_precision ppc_priority +"public.cluster" { + bigint cluster_id + bigint target_id FK + integer n_targets + double_precision ra_cluster + double_precision dec_cluster + double_precision d_ra + double_precision d_dec integer input_catalog_id FK timestamp_without_time_zone created_at timestamp_without_time_zone updated_at diff --git a/docs/tbls/public.partner.md b/docs/tbls/public.partner.md index 53c4295..d3825a4 100644 --- a/docs/tbls/public.partner.md +++ b/docs/tbls/public.partner.md @@ -1,7 +1,5 @@ # public.partner -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -49,13 +47,13 @@ erDiagram double_precision rank varchar grade double_precision allocated_time_total - integer proposal_category_id FK - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at double_precision allocated_time_lr double_precision allocated_time_mr - boolean is_too + integer proposal_category_id FK integer partner_id FK + boolean is_too + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.pfs_arm.md b/docs/tbls/public.pfs_arm.md index a4e2d5a..bba8eff 100644 --- a/docs/tbls/public.pfs_arm.md +++ b/docs/tbls/public.pfs_arm.md @@ -1,7 +1,5 @@ # public.pfs_arm -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -39,6 +37,7 @@ erDiagram "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -50,66 +49,81 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.proposal.md b/docs/tbls/public.proposal.md index d800018..3fb81ce 100644 --- a/docs/tbls/public.proposal.md +++ b/docs/tbls/public.proposal.md @@ -1,7 +1,5 @@ # public.proposal -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -14,21 +12,21 @@ | rank | double precision | | false | | | TAC score | | grade | varchar | | false | | | TAC grade (A/B/C/F and N/A) | | allocated_time_total | double precision | | true | | | Total fiberhours allocated by TAC (hour) | -| proposal_category_id | integer | | true | | [public.proposal_category](public.proposal_category.md) | | -| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | -| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | | allocated_time_lr | double precision | | true | | | Total fiberhours for the low-resolution mode allocated by TAC (hour) | | allocated_time_mr | double precision | | true | | | Total fiberhours for the medium-resolution mode allocated by TAC (hour) | -| is_too | boolean | | true | | | True when the proposal is ToO | +| proposal_category_id | integer | | true | | [public.proposal_category](public.proposal_category.md) | | | partner_id | integer | | true | | [public.partner](public.partner.md) | | +| is_too | boolean | | true | | | True when the proposal is ToO | +| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | +| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | ## Constraints | Name | Type | Definition | | ---- | ---- | ---------- | | proposal_proposal_category_id_fkey | FOREIGN KEY | FOREIGN KEY (proposal_category_id) REFERENCES proposal_category(proposal_category_id) | -| proposal_pkey | PRIMARY KEY | PRIMARY KEY (proposal_id) | | proposal_partner_id_fkey | FOREIGN KEY | FOREIGN KEY (partner_id) REFERENCES partner(partner_id) | +| proposal_pkey | PRIMARY KEY | PRIMARY KEY (proposal_id) | ## Indexes @@ -55,17 +53,18 @@ erDiagram double_precision rank varchar grade double_precision allocated_time_total - integer proposal_category_id FK - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at double_precision allocated_time_lr double_precision allocated_time_mr - boolean is_too + integer proposal_category_id FK integer partner_id FK + boolean is_too + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -77,66 +76,81 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.proposal_category" { integer proposal_category_id diff --git a/docs/tbls/public.proposal_category.md b/docs/tbls/public.proposal_category.md index 145c091..4e8998f 100644 --- a/docs/tbls/public.proposal_category.md +++ b/docs/tbls/public.proposal_category.md @@ -1,7 +1,5 @@ # public.proposal_category -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -49,13 +47,13 @@ erDiagram double_precision rank varchar grade double_precision allocated_time_total - integer proposal_category_id FK - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at double_precision allocated_time_lr double_precision allocated_time_mr - boolean is_too + integer proposal_category_id FK integer partner_id FK + boolean is_too + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.sky.md b/docs/tbls/public.sky.md index dfe9662..bff44e6 100644 --- a/docs/tbls/public.sky.md +++ b/docs/tbls/public.sky.md @@ -1,7 +1,5 @@ # public.sky -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -26,18 +24,18 @@ | Name | Type | Definition | | ---- | ---- | ---------- | | sky_input_catalog_id_fkey | FOREIGN KEY | FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id) | -| sky_obj_id_input_catalog_id_version_key | UNIQUE | UNIQUE (obj_id, input_catalog_id, version) | -| sky_pkey | PRIMARY KEY | PRIMARY KEY (sky_id) | | sky_target_type_id_fkey | FOREIGN KEY | FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id) | +| sky_pkey | PRIMARY KEY | PRIMARY KEY (sky_id) | +| sky_obj_id_input_catalog_id_version_key | UNIQUE | UNIQUE (obj_id, input_catalog_id, version) | ## Indexes | Name | Definition | | ---- | ---------- | -| sky_obj_id_input_catalog_id_version_key | CREATE UNIQUE INDEX sky_obj_id_input_catalog_id_version_key ON public.sky USING btree (obj_id, input_catalog_id, version) | | sky_pkey | CREATE UNIQUE INDEX sky_pkey ON public.sky USING btree (sky_id) | -| ix_sky_input_catalog_id | CREATE INDEX ix_sky_input_catalog_id ON public.sky USING btree (input_catalog_id) | +| sky_obj_id_input_catalog_id_version_key | CREATE UNIQUE INDEX sky_obj_id_input_catalog_id_version_key ON public.sky USING btree (obj_id, input_catalog_id, version) | | ix_sky_version | CREATE INDEX ix_sky_version ON public.sky USING btree (version) | +| ix_sky_input_catalog_id | CREATE INDEX ix_sky_input_catalog_id ON public.sky USING btree (input_catalog_id) | | sky_q3c_ang2ipix_idx | CREATE INDEX sky_q3c_ang2ipix_idx ON public.sky USING btree (q3c_ang2ipix(ra, "dec")) | ## Relations @@ -72,15 +70,15 @@ erDiagram timestamp_without_time_zone updated_at } "public.input_catalog" { + integer input_catalog_id varchar input_catalog_name varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at varchar_16_ upload_id - integer input_catalog_id boolean active boolean is_classical boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.target.md b/docs/tbls/public.target.md index c0e9f32..1728dae 100644 --- a/docs/tbls/public.target.md +++ b/docs/tbls/public.target.md @@ -1,13 +1,12 @@ # public.target -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | | ---- | ---- | ------- | -------- | -------- | ------- | ------- | | target_id | bigint | nextval('target_target_id_seq'::regclass) | false | [public.cluster](public.cluster.md) | | Unique identifier for each target | | proposal_id | varchar | | true | | [public.proposal](public.proposal.md) | | +| ob_code | varchar | | false | | | Identifer for a combination of a target, observing mode, and exposure time in a program. | | obj_id | bigint | | false | | | Object ID as specified by the observer at Phase 2 (can be same as the input_catalog_object_id) | | ra | double precision | | false | | | RA (ICRS, degree) | | dec | double precision | | false | | | Dec (ICRS, degree) | @@ -19,66 +18,81 @@ | patch | integer | | true | | | same definition as HSC-SSP?; can be derived from the coordinate; Note that it's defined as an integer | | target_type_id | integer | | true | | [public.target_type](public.target_type.md) | target type ID (default: 1 = SCIENCE) | | input_catalog_id | integer | | false | | [public.input_catalog](public.input_catalog.md) | Input catalog ID from the input_catalog table | +| fiber_mag_u | double precision | | true | | | u-band magnitude within a fiber (AB mag) | +| fiber_mag_v | double precision | | true | | | v-band magnitude within a fiber (AB mag) | | fiber_mag_g | double precision | | true | | | g-band magnitude within a fiber (AB mag) | | fiber_mag_r | double precision | | true | | | r-band magnitude within a fiber (AB mag) | | fiber_mag_i | double precision | | true | | | i-band magnitude within a fiber (AB mag) | | fiber_mag_z | double precision | | true | | | z-band magnitude within a fiber (AB mag) | | fiber_mag_y | double precision | | true | | | y-band magnitude within a fiber (AB mag) | | fiber_mag_j | double precision | | true | | | J band magnitude within a fiber (AB mag) | +| psf_mag_u | double precision | | true | | | u-band PSF magnitude (AB mag) | +| psf_mag_v | double precision | | true | | | v-band PSF magnitude (AB mag) | | psf_mag_g | double precision | | true | | | g-band PSF magnitude (AB mag) | | psf_mag_r | double precision | | true | | | r-band PSF magnitude (AB mag) | | psf_mag_i | double precision | | true | | | i-band PSF magnitude (AB mag) | | psf_mag_z | double precision | | true | | | z-band PSF magnitude (AB mag) | | psf_mag_y | double precision | | true | | | y-band PSF magnitude (AB mag) | | psf_mag_j | double precision | | true | | | J band PSF magnitude (AB mag) | -| psf_flux_g | double precision | | true | | | g-band PSF flux (nJy) | -| psf_flux_r | double precision | | true | | | r-band PSF flux (nJy) | -| psf_flux_i | double precision | | true | | | i-band PSF flux (nJy) | -| psf_flux_z | double precision | | true | | | z-band PSF flux (nJy) | -| psf_flux_y | double precision | | true | | | y-band PSF flux (nJy) | -| psf_flux_j | double precision | | true | | | J band PSF flux (nJy) | -| priority | double precision | | true | | | Priority of the target specified by the observer within the proposal | -| effective_exptime | double precision | | false | | | Requested effective exposure time (s) | -| is_medium_resolution | boolean | | true | | | True if the medium resolution mode is requested | -| qa_relative_throughput | double precision | | true | | | Relative throughput to the reference value requested by the observer (default: 1.0) | -| qa_relative_noise | double precision | | true | | | Relative noise to the reference value requested by the observer (default: 1.0) | -| qa_reference_lambda | double precision | | true | | | Reference wavelength to evaluate effective exposure time (angstrom or nm?) | -| is_cluster | boolean | | true | | | True if it is a cluster of multiple targets. | -| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | -| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | -| filter_g | varchar | | true | | [public.filter_name](public.filter_name.md) | g-band filter (g_hsc, g_ps1, g_sdss, etc.) | -| filter_r | varchar | | true | | [public.filter_name](public.filter_name.md) | r-band filter (r_hsc, r_ps1, r_sdss, etc.) | -| filter_i | varchar | | true | | [public.filter_name](public.filter_name.md) | i-band filter (i_hsc, i_ps1, i_sdss, etc.) | -| filter_z | varchar | | true | | [public.filter_name](public.filter_name.md) | z-band filter (z_hsc, z_ps1, z_sdss, etc.) | -| filter_y | varchar | | true | | [public.filter_name](public.filter_name.md) | y-band filter (y_hsc, y_ps1, y_sdss, etc.) | -| filter_j | varchar | | true | | [public.filter_name](public.filter_name.md) | j-band filter (j_mko, etc.) | +| psf_mag_error_u | double precision | | true | | | Error in u-band PSF magnitude (AB mag) | +| psf_mag_error_v | double precision | | true | | | Error in v-band PSF magnitude (AB mag) | | psf_mag_error_g | double precision | | true | | | Error in g-band PSF magnitude (AB mag) | | psf_mag_error_r | double precision | | true | | | Error in r-band PSF magnitude (AB mag) | | psf_mag_error_i | double precision | | true | | | Error in i-band PSF magnitude (AB mag) | | psf_mag_error_z | double precision | | true | | | Error in z-band PSF magnitude (AB mag) | | psf_mag_error_y | double precision | | true | | | Error in y-band PSF magnitude (AB mag) | | psf_mag_error_j | double precision | | true | | | Error in J band PSF magnitude (AB mag) | +| psf_flux_u | double precision | | true | | | u-band PSF flux (nJy) | +| psf_flux_v | double precision | | true | | | v-band PSF flux (nJy) | +| psf_flux_g | double precision | | true | | | g-band PSF flux (nJy) | +| psf_flux_r | double precision | | true | | | r-band PSF flux (nJy) | +| psf_flux_i | double precision | | true | | | i-band PSF flux (nJy) | +| psf_flux_z | double precision | | true | | | z-band PSF flux (nJy) | +| psf_flux_y | double precision | | true | | | y-band PSF flux (nJy) | +| psf_flux_j | double precision | | true | | | J band PSF flux (nJy) | +| psf_flux_error_u | double precision | | true | | | Error in u-band PSF flux (nJy) | +| psf_flux_error_v | double precision | | true | | | Error in v-band PSF flux (nJy) | | psf_flux_error_g | double precision | | true | | | Error in g-band PSF flux (nJy) | | psf_flux_error_r | double precision | | true | | | Error in r-band PSF flux (nJy) | | psf_flux_error_i | double precision | | true | | | Error in i-band PSF flux (nJy) | | psf_flux_error_z | double precision | | true | | | Error in z-band PSF flux (nJy) | | psf_flux_error_y | double precision | | true | | | Error in y-band PSF flux (nJy) | | psf_flux_error_j | double precision | | true | | | Error in J band PSF flux (nJy) | -| ob_code | varchar | | false | | | Identifer for a combination of a target, observing mode, and exposure time in a program. | -| single_exptime | double precision | | false | | | Individual exposure time (s) | -| qa_reference_arm | varchar | | true | | [public.pfs_arm](public.pfs_arm.md) | Reference arm to evaluate effective exposure time ('b', 'r', 'n', 'm') | +| total_flux_u | double precision | | true | | | u-band total flux (nJy) | +| total_flux_v | double precision | | true | | | v-band total flux (nJy) | | total_flux_g | double precision | | true | | | g-band total flux (nJy) | | total_flux_r | double precision | | true | | | r-band total flux (nJy) | | total_flux_i | double precision | | true | | | i-band total flux (nJy) | | total_flux_z | double precision | | true | | | z-band total flux (nJy) | | total_flux_y | double precision | | true | | | y-band total flux (nJy) | | total_flux_j | double precision | | true | | | J band total flux (nJy) | +| total_flux_error_u | double precision | | true | | | Error in u-band total flux (nJy) | +| total_flux_error_v | double precision | | true | | | Error in v-band total flux (nJy) | | total_flux_error_g | double precision | | true | | | Error in g-band total flux (nJy) | | total_flux_error_r | double precision | | true | | | Error in r-band total flux (nJy) | | total_flux_error_i | double precision | | true | | | Error in i-band total flux (nJy) | | total_flux_error_z | double precision | | true | | | Error in z-band total flux (nJy) | | total_flux_error_y | double precision | | true | | | Error in y-band total flux (nJy) | | total_flux_error_j | double precision | | true | | | Error in J band total flux (nJy) | +| filter_u | varchar | | true | | [public.filter_name](public.filter_name.md) | u-band filter (u_sdss, u_cfht, u_skymapper, etc.) | +| filter_v | varchar | | true | | [public.filter_name](public.filter_name.md) | v-band filter (v_skymapper, v_splus, etc.) | +| filter_g | varchar | | true | | [public.filter_name](public.filter_name.md) | g-band filter (g_hsc, g_ps1, g_sdss, etc.) | +| filter_r | varchar | | true | | [public.filter_name](public.filter_name.md) | r-band filter (r_hsc, r_ps1, r_sdss, etc.) | +| filter_i | varchar | | true | | [public.filter_name](public.filter_name.md) | i-band filter (i_hsc, i_ps1, i_sdss, etc.) | +| filter_z | varchar | | true | | [public.filter_name](public.filter_name.md) | z-band filter (z_hsc, z_ps1, z_sdss, etc.) | +| filter_y | varchar | | true | | [public.filter_name](public.filter_name.md) | y-band filter (y_hsc, y_ps1, y_sdss, etc.) | +| filter_j | varchar | | true | | [public.filter_name](public.filter_name.md) | j-band filter (j_mko, etc.) | +| priority | double precision | | true | | | Priority of the target specified by the observer within the proposal | +| effective_exptime | double precision | | false | | | Requested effective exposure time (s) | +| single_exptime | double precision | | false | | | Individual exposure time (s) | +| is_medium_resolution | boolean | | true | | | True if the medium resolution mode is requested | +| qa_relative_throughput | double precision | | true | | | Relative throughput to the reference value requested by the observer (default: 1.0) | +| qa_relative_noise | double precision | | true | | | Relative noise to the reference value requested by the observer (default: 1.0) | +| qa_reference_lambda | double precision | | true | | | Reference wavelength to evaluate effective exposure time (angstrom or nm?) | +| qa_reference_arm | varchar | | true | | [public.pfs_arm](public.pfs_arm.md) | Reference arm to evaluate effective exposure time ('b', 'r', 'n', 'm') | +| is_cluster | boolean | | true | | | True if it is a cluster of multiple targets. | +| created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | +| updated_at | timestamp without time zone | | true | | | The date and time in UTC when the record was last updated | ## Constraints @@ -88,12 +102,14 @@ | target_filter_i_fkey | FOREIGN KEY | FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name) | | target_filter_j_fkey | FOREIGN KEY | FOREIGN KEY (filter_j) REFERENCES filter_name(filter_name) | | target_filter_r_fkey | FOREIGN KEY | FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name) | +| target_filter_u_fkey | FOREIGN KEY | FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name) | +| target_filter_v_fkey | FOREIGN KEY | FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name) | | target_filter_y_fkey | FOREIGN KEY | FOREIGN KEY (filter_y) REFERENCES filter_name(filter_name) | | target_filter_z_fkey | FOREIGN KEY | FOREIGN KEY (filter_z) REFERENCES filter_name(filter_name) | -| target_input_catalog_id_fkey | FOREIGN KEY | FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id) | | target_qa_reference_arm_fkey | FOREIGN KEY | FOREIGN KEY (qa_reference_arm) REFERENCES pfs_arm(name) | -| target_proposal_id_fkey | FOREIGN KEY | FOREIGN KEY (proposal_id) REFERENCES proposal(proposal_id) | +| target_input_catalog_id_fkey | FOREIGN KEY | FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id) | | target_target_type_id_fkey | FOREIGN KEY | FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id) | +| target_proposal_id_fkey | FOREIGN KEY | FOREIGN KEY (proposal_id) REFERENCES proposal(proposal_id) | | target_pkey | PRIMARY KEY | PRIMARY KEY (target_id) | | target_propid_obcode_catid_objid_resolution_key | UNIQUE | UNIQUE (proposal_id, ob_code, input_catalog_id, obj_id, is_medium_resolution) | | target_propid_obcode_key | UNIQUE | UNIQUE (proposal_id, ob_code) | @@ -105,11 +121,11 @@ | target_pkey | CREATE UNIQUE INDEX target_pkey ON public.target USING btree (target_id) | | target_propid_obcode_catid_objid_resolution_key | CREATE UNIQUE INDEX target_propid_obcode_catid_objid_resolution_key ON public.target USING btree (proposal_id, ob_code, input_catalog_id, obj_id, is_medium_resolution) | | target_propid_obcode_key | CREATE UNIQUE INDEX target_propid_obcode_key ON public.target USING btree (proposal_id, ob_code) | -| target_q3c_ang2ipix_idx | CREATE INDEX target_q3c_ang2ipix_idx ON public.target USING btree (q3c_ang2ipix(ra, "dec")) | | target_input_catalog_id_idx | CREATE INDEX target_input_catalog_id_idx ON public.target USING btree (input_catalog_id) | -| target_obj_id_input_catalog_id_idx | CREATE INDEX target_obj_id_input_catalog_id_idx ON public.target USING btree (obj_id, input_catalog_id) | -| target_proposal_id_idx | CREATE INDEX target_proposal_id_idx ON public.target USING btree (proposal_id) | | target_proposal_id_obj_id_idx | CREATE INDEX target_proposal_id_obj_id_idx ON public.target USING btree (proposal_id, obj_id) | +| target_q3c_ang2ipix_idx | CREATE INDEX target_q3c_ang2ipix_idx ON public.target USING btree (q3c_ang2ipix(ra, "dec")) | +| target_proposal_id_idx | CREATE INDEX target_proposal_id_idx ON public.target USING btree (proposal_id) | +| target_obj_id_input_catalog_id_idx | CREATE INDEX target_obj_id_input_catalog_id_idx ON public.target USING btree (obj_id, input_catalog_id) | ## Relations @@ -120,6 +136,8 @@ erDiagram "public.target" }o--o| "public.proposal" : "FOREIGN KEY (proposal_id) REFERENCES proposal(proposal_id)" "public.target" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.target" }o--|| "public.input_catalog" : "FOREIGN KEY (input_catalog_id) REFERENCES input_catalog(input_catalog_id)" +"public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_u) REFERENCES filter_name(filter_name)" +"public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_v) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_g) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_r) REFERENCES filter_name(filter_name)" "public.target" }o--o| "public.filter_name" : "FOREIGN KEY (filter_i) REFERENCES filter_name(filter_name)" @@ -131,6 +149,7 @@ erDiagram "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -142,66 +161,81 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.cluster" { bigint cluster_id @@ -224,13 +258,13 @@ erDiagram double_precision rank varchar grade double_precision allocated_time_total - integer proposal_category_id FK - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at double_precision allocated_time_lr double_precision allocated_time_mr - boolean is_too + integer proposal_category_id FK integer partner_id FK + boolean is_too + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.target_type" { integer target_type_id @@ -240,15 +274,15 @@ erDiagram timestamp_without_time_zone updated_at } "public.input_catalog" { + integer input_catalog_id varchar input_catalog_name varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at varchar_16_ upload_id - integer input_catalog_id boolean active boolean is_classical boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } "public.filter_name" { varchar filter_name diff --git a/docs/tbls/public.target_type.md b/docs/tbls/public.target_type.md index 3a5e94a..9e7849b 100644 --- a/docs/tbls/public.target_type.md +++ b/docs/tbls/public.target_type.md @@ -1,12 +1,10 @@ # public.target_type -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | | ---- | ---- | ------- | -------- | -------- | ------- | ------- | -| target_type_id | integer | | false | [public.fluxstd](public.fluxstd.md) [public.sky](public.sky.md) [public.target](public.target.md) | | Unique identifier for target types | +| target_type_id | integer | | false | [public.sky](public.sky.md) [public.fluxstd](public.fluxstd.md) [public.target](public.target.md) | | Unique identifier for target types | | target_type_name | varchar | | false | | | Name for the target type. | | target_type_description | varchar | | true | | | Description of the target type | | created_at | timestamp without time zone | timezone('utc'::text, CURRENT_TIMESTAMP) | true | | | The date and time in UTC when the record was created | @@ -29,8 +27,8 @@ ```mermaid erDiagram -"public.fluxstd" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.sky" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" +"public.fluxstd" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.target" }o--o| "public.target_type" : "FOREIGN KEY (target_type_id) REFERENCES target_type(target_type_id)" "public.target_type" { @@ -40,6 +38,22 @@ erDiagram timestamp_without_time_zone created_at timestamp_without_time_zone updated_at } +"public.sky" { + bigint sky_id + bigint obj_id + varchar obj_id_orig + double_precision ra + double_precision dec + varchar epoch + integer tract + integer patch + integer target_type_id FK + integer input_catalog_id FK + double_precision mag_thresh + varchar version + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at +} "public.fluxstd" { bigint fluxstd_id bigint obj_id @@ -56,42 +70,49 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision prob_f_star - boolean flags_dist - boolean flags_ebv - varchar version - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision prob_f_star + boolean flags_dist + boolean flags_ebv double_precision teff_brutus double_precision teff_brutus_low double_precision teff_brutus_high @@ -104,19 +125,6 @@ erDiagram boolean is_fstar_gaia boolean is_gc_neighbor boolean is_dense_region -} -"public.sky" { - bigint sky_id - bigint obj_id - varchar obj_id_orig - double_precision ra - double_precision dec - varchar epoch - integer tract - integer patch - integer target_type_id FK - integer input_catalog_id FK - double_precision mag_thresh varchar version timestamp_without_time_zone created_at timestamp_without_time_zone updated_at @@ -124,6 +132,7 @@ erDiagram "public.target" { bigint target_id varchar proposal_id FK + varchar ob_code bigint obj_id double_precision ra double_precision dec @@ -135,66 +144,81 @@ erDiagram integer patch integer target_type_id FK integer input_catalog_id FK + double_precision fiber_mag_u + double_precision fiber_mag_v double_precision fiber_mag_g double_precision fiber_mag_r double_precision fiber_mag_i double_precision fiber_mag_z double_precision fiber_mag_y double_precision fiber_mag_j + double_precision psf_mag_u + double_precision psf_mag_v double_precision psf_mag_g double_precision psf_mag_r double_precision psf_mag_i double_precision psf_mag_z double_precision psf_mag_y double_precision psf_mag_j - double_precision psf_flux_g - double_precision psf_flux_r - double_precision psf_flux_i - double_precision psf_flux_z - double_precision psf_flux_y - double_precision psf_flux_j - double_precision priority - double_precision effective_exptime - boolean is_medium_resolution - double_precision qa_relative_throughput - double_precision qa_relative_noise - double_precision qa_reference_lambda - boolean is_cluster - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at - varchar filter_g FK - varchar filter_r FK - varchar filter_i FK - varchar filter_z FK - varchar filter_y FK - varchar filter_j FK + double_precision psf_mag_error_u + double_precision psf_mag_error_v double_precision psf_mag_error_g double_precision psf_mag_error_r double_precision psf_mag_error_i double_precision psf_mag_error_z double_precision psf_mag_error_y double_precision psf_mag_error_j + double_precision psf_flux_u + double_precision psf_flux_v + double_precision psf_flux_g + double_precision psf_flux_r + double_precision psf_flux_i + double_precision psf_flux_z + double_precision psf_flux_y + double_precision psf_flux_j + double_precision psf_flux_error_u + double_precision psf_flux_error_v double_precision psf_flux_error_g double_precision psf_flux_error_r double_precision psf_flux_error_i double_precision psf_flux_error_z double_precision psf_flux_error_y double_precision psf_flux_error_j - varchar ob_code - double_precision single_exptime - varchar qa_reference_arm FK + double_precision total_flux_u + double_precision total_flux_v double_precision total_flux_g double_precision total_flux_r double_precision total_flux_i double_precision total_flux_z double_precision total_flux_y double_precision total_flux_j + double_precision total_flux_error_u + double_precision total_flux_error_v double_precision total_flux_error_g double_precision total_flux_error_r double_precision total_flux_error_i double_precision total_flux_error_z double_precision total_flux_error_y double_precision total_flux_error_j + varchar filter_u FK + varchar filter_v FK + varchar filter_g FK + varchar filter_r FK + varchar filter_i FK + varchar filter_z FK + varchar filter_y FK + varchar filter_j FK + double_precision priority + double_precision effective_exptime + double_precision single_exptime + boolean is_medium_resolution + double_precision qa_relative_throughput + double_precision qa_relative_noise + double_precision qa_reference_lambda + varchar qa_reference_arm FK + boolean is_cluster + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ``` diff --git a/docs/tbls/public.user_pointing.md b/docs/tbls/public.user_pointing.md index 5d2b36f..487bf01 100644 --- a/docs/tbls/public.user_pointing.md +++ b/docs/tbls/public.user_pointing.md @@ -1,7 +1,5 @@ # public.user_pointing -## Description - ## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | @@ -50,15 +48,15 @@ erDiagram timestamp_without_time_zone updated_at } "public.input_catalog" { + integer input_catalog_id varchar input_catalog_name varchar input_catalog_description - timestamp_without_time_zone created_at - timestamp_without_time_zone updated_at varchar_16_ upload_id - integer input_catalog_id boolean active boolean is_classical boolean is_user_pointing + timestamp_without_time_zone created_at + timestamp_without_time_zone updated_at } ```