diff --git a/data/4XMM-DR12/4XMM_DR12cat_slim_v1.0_UDS.fits.catalog b/data/4XMM-DR12/4XMM_DR12cat_slim_v1.0_UDS.fits.catalog
new file mode 100644
index 0000000..1855970
--- /dev/null
+++ b/data/4XMM-DR12/4XMM_DR12cat_slim_v1.0_UDS.fits.catalog
@@ -0,0 +1,4281 @@
+SIMPLE = T / Standard FITS format BITPIX = 8 / Character data NAXIS = 1 / Text string NAXIS1 = 11541 / Number of characters VOTMETA = T / Table metadata in VOTable format EXTEND = T / There are standard extensions COMMENT COMMENT The data in this primary HDU consists of bytes which COMMENT comprise a VOTABLE document. COMMENT The VOTable describes the metadata of the table contained COMMENT in the following BINTABLE extension. COMMENT Such a BINTABLE extension can be used on its own as a perfectly COMMENT good table, but the information from this HDU may provide some COMMENT useful additional metadata. COMMENT There is one following BINTABLE. NTABLE = 1 / Number of following BINTABLE HDUs END
+
+
+
+
+
+
+A unique number assigned to a group of catalogue entries which are assumed to be the same source. The process of grouping detections in to unique sources has changed since the 2XMM catalogue series and is described in Section 3.8 (https://xmmssc-www.star.le.ac.uk/Catalogue/3XMM-DR4/UserGuide_xmmcat.html#DiffUniqueId). The SRCID assignments in 4XMM-DR12 bear no relation to those in 3XMM-DR4 and earlier but the nearest unique sources from the 3XMM-DR4 catalogue to the 4XMM-DR12 unique source is provided via the DR4SRCID column.
+
+
+
+The IAU name assigned to the unique SRCID (see https://xmmssc-www.star.le.ac.uk/Catalogue/3XMM-DR4/UserGuide_xmmcat.html#DiffIauId).
+
+
+The mean Right Ascension in degrees (J2000) of all the detections of the source SRCID weighted by the positional errors POSERR.
+
+
+The mean Declination in degrees (J2000) of all the detections of the source SRCID (see DEC) weighted by the positional errors POSERR.
+
+
+The error of the weighted mean position given in SC_RA and SC_DEC in arseconds (see Sec. 3.2.4 at http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb).
+
+
+The total band detection likelihood of the source SRCID is the maximum of the likelihoods of all detections of this source (EP_8_DET_ML).
+
+
+The mean band 1 flux (0.2 - 0.5 keV) of all the detections of the source SRCID (EP_1_FLUX) weighted by the errors (EP_1_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean band 1 flux in SC_EP_1_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean band 2 flux (0.5 - 1.0 keV) of all the detections of the source SRCID (see EP_2_FLUX) weighted by the errors (EP_2_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean band 2 flux in SC_EP_2_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean band 3 flux (1.0 - 2.0 keV) of all the detections of the source SRCID (see EP_3_FLUX) weighted by the errors (EP_3_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean band 3 flux in SC_EP_3_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean band 4 flux (2.0 - 4.5 keV) of all the detections of the source SRCID (see EP_4_FLUX) weighted by the errors (EP_4_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean band 4 flux in SC_EP_4_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean band 5 flux (4.5 - 12 keV) of all the detections of the source SRCID (see EP_5_FLUX) weighted by the errors (EP_5_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean band 5 flux in SC_EP_5_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean total band flux (0.2 - 12 keV) of all the detections of the source SRCID (see EP_8_FLUX) weighted by the errors (EP_8_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean total band flux in SC_EP_8_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean band 9 flux (0.5 - 4.5 keV) of all the detections of the source SRCID (see EP_9_FLUX) weighted by the errors (EP_9_FLUX_ERR), in erg/cm2/s.
+
+
+Error on the weighted mean band 9 flux in SC_EP_9_FLUX (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean hardness ratio of the bands 1 and 2 of all the detections of the source SRCID (EP_HR1) weighted by the errors (EP_HR1_ERR).
+
+
+Error on the weighted mean hardness ratio in SC_HR1 (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean hardness ratio of the bands 2 and 3 of all the detections of the source SRCID (EP_HR2) weighted by the errors (EP_HR2_ERR).
+
+
+Error on the weighted mean hardness ratio in SC_HR2 (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean hardness ratio of the bands 3 and 4 of all the detections of the source SRCID (EP_HR3) weighted by the errors (EP_HR3_ERR).
+
+
+Error on the weighted mean hardness ratio in SC_HR3 (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+The mean hardness ratio of the bands 4 and 5 of all the detections of the source SRCID (EP_HR4) weighted by the errors (EP_HR4_ERR).
+
+
+Error on the weighted mean hardness ratio in SC_HR4 (see http://xmmssc-www.star.le.ac.uk/Catalogue/2XMM/UserGuide_xmmcat.html#CatComb for details).
+
+
+Extent radius of a source detected as extended by the SAS task emldetect (for more details see http://xmmssc.irap.omp.eu/Catalogue/4XMM-DR12/col_srcpar.html)
+
+
+Error on the extent radius SC_EXTENT (see http://xmmssc.irap.omp.eu/Catalogue/4XMM-DR12/col_srcpar.html)
+
+
+The total band detection likelihood of the extended source SRCID is the largest of the extent likelihoods of all detections of this source (EP_EXTENT_ML).
+
+
+The chi square probability (based on the null hypothesis) that the time series of the unique source SRCID as detected by any of the observations can be explained by a constant flux. It corresponds to the minimum value of the EPIC probabilities in each detection, EP_CHI2PROB.
+
+
+The fractional excess variance of the unique source. It is the value corresponding to the exposure and instrument that shows the lowest probability of being constant (i.e. it is the PN_FVAR, M1_FVAR or M2_FVAR value corresponding to EP_CHI2PROB, SC_CHI2PROB.
+
+
+The error on the fractional excess variance of the unique source. It is the value corresponds to the exposure and instrument that shows the lowest probability of being constant (i.e. it is the PN_FVARERR, M1_FVARERR or M2_FVARERR value corresponding to EP_CHI2PROB, SC_CHI2PROB.
+
+
+The variability flag for the unique source SRCID is set to VAR_FLAG of the most variable detection of this source.
+
+
+The summary flag for the unique source SRCID is taken to be the worst flag of all detections of this source (SUM_FLAG).
+
+
+
+The minimum EPIC band 8 flux (EP_8_FLUX) amongst any of the constituent detections of the unique source.
+
+
+The error on the minimum EPIC band 8 flux (EP_8_FLUX_ERR) amongst any of the constituent detections of the unique source.
+
+
+The maximum EPIC band 8 flux (EP_8_FLUX) amongst any of the constituent detections of the unique source.
+
+
+The error on the maximum EPIC band 8 flux (EP_8_FLUX_ERR) amongst any of the constituent detections of the unique source.
+
+
+The MJD start date (MJD_START) of the earliest observation of any constituent detection of the unique source.
+
+
+The MJD end date (MJD_STOP) of the last observation of any constituent detection of the unique source.
+
+
+The number of detections of the unique source SRCID used to derive the combined values.
+
+
+
+Normally set False, but set True when a given detection has a probability above zero of being associated with two or more distinct sources. The SRCID is that of the match with the highest probability, but there remains some uncertainty about which source is the correct match for the detection.
+
+
+Webpage URL of the source
+
+
+
+
+
+ XTENSION= 'BINTABLE' / binary table extension BITPIX = 8 / 8-bit bytes NAXIS = 2 / 2-dimensional table NAXIS1 = 257 / width of table in bytes NAXIS2 = 7299 / number of rows in table PCOUNT = 0 / size of special data area GCOUNT = 1 / one data group TFIELDS = 45 / number of columns EXTNAME = '4XMM-DR12' / table name TTYPE1 = 'SRCID ' / label for column 1 TFORM1 = 'K ' / format for column 1 TTYPE2 = 'IAUNAME ' / label for column 2 TFORM2 = '21A ' / format for column 2 TTYPE3 = 'SC_RA ' / label for column 3 TFORM3 = 'D ' / format for column 3 TUNIT3 = 'deg ' / units for column 3 TTYPE4 = 'SC_DEC ' / label for column 4 TFORM4 = 'D ' / format for column 4 TUNIT4 = 'deg ' / units for column 4 TTYPE5 = 'SC_POSERR' / label for column 5 TFORM5 = 'E ' / format for column 5 TUNIT5 = 'arcsec ' / units for column 5 TTYPE6 = 'SC_DET_ML' / label for column 6 TFORM6 = 'E ' / format for column 6 TTYPE7 = 'SC_EP_1_FLUX' / label for column 7 TFORM7 = 'E ' / format for column 7 TUNIT7 = 'erg/cm**2/s' / units for column 7 TTYPE8 = 'SC_EP_1_FLUX_ERR' / label for column 8 TFORM8 = 'E ' / format for column 8 TUNIT8 = 'erg/cm**2/s' / units for column 8 TTYPE9 = 'SC_EP_2_FLUX' / label for column 9 TFORM9 = 'E ' / format for column 9 TUNIT9 = 'erg/cm**2/s' / units for column 9 TTYPE10 = 'SC_EP_2_FLUX_ERR' / label for column 10 TFORM10 = 'E ' / format for column 10 TUNIT10 = 'erg/cm**2/s' / units for column 10 TTYPE11 = 'SC_EP_3_FLUX' / label for column 11 TFORM11 = 'E ' / format for column 11 TUNIT11 = 'erg/cm**2/s' / units for column 11 TTYPE12 = 'SC_EP_3_FLUX_ERR' / label for column 12 TFORM12 = 'E ' / format for column 12 TUNIT12 = 'erg/cm**2/s' / units for column 12 TTYPE13 = 'SC_EP_4_FLUX' / label for column 13 TFORM13 = 'E ' / format for column 13 TUNIT13 = 'erg/cm**2/s' / units for column 13 TTYPE14 = 'SC_EP_4_FLUX_ERR' / label for column 14 TFORM14 = 'E ' / format for column 14 TUNIT14 = 'erg/cm**2/s' / units for column 14 TTYPE15 = 'SC_EP_5_FLUX' / label for column 15 TFORM15 = 'E ' / format for column 15 TUNIT15 = 'erg/cm**2/s' / units for column 15 TTYPE16 = 'SC_EP_5_FLUX_ERR' / label for column 16 TFORM16 = 'E ' / format for column 16 TUNIT16 = 'erg/cm**2/s' / units for column 16 TTYPE17 = 'SC_EP_8_FLUX' / label for column 17 TFORM17 = 'E ' / format for column 17 TUNIT17 = 'erg/cm**2/s' / units for column 17 TTYPE18 = 'SC_EP_8_FLUX_ERR' / label for column 18 TFORM18 = 'E ' / format for column 18 TUNIT18 = 'erg/cm**2/s' / units for column 18 TTYPE19 = 'SC_EP_9_FLUX' / label for column 19 TFORM19 = 'E ' / format for column 19 TUNIT19 = 'erg/cm**2/s' / units for column 19 TTYPE20 = 'SC_EP_9_FLUX_ERR' / label for column 20 TFORM20 = 'E ' / format for column 20 TUNIT20 = 'erg/cm**2/s' / units for column 20 TTYPE21 = 'SC_HR1 ' / label for column 21 TFORM21 = 'E ' / format for column 21 TTYPE22 = 'SC_HR1_ERR' / label for column 22 TFORM22 = 'E ' / format for column 22 TTYPE23 = 'SC_HR2 ' / label for column 23 TFORM23 = 'E ' / format for column 23 TTYPE24 = 'SC_HR2_ERR' / label for column 24 TFORM24 = 'E ' / format for column 24 TTYPE25 = 'SC_HR3 ' / label for column 25 TFORM25 = 'E ' / format for column 25 TTYPE26 = 'SC_HR3_ERR' / label for column 26 TFORM26 = 'E ' / format for column 26 TTYPE27 = 'SC_HR4 ' / label for column 27 TFORM27 = 'E ' / format for column 27 TTYPE28 = 'SC_HR4_ERR' / label for column 28 TFORM28 = 'E ' / format for column 28 TTYPE29 = 'SC_EXTENT' / label for column 29 TFORM29 = 'E ' / format for column 29 TUNIT29 = 'arcsec ' / units for column 29 TTYPE30 = 'SC_EXT_ERR' / label for column 30 TFORM30 = 'E ' / format for column 30 TUNIT30 = 'arcsec ' / units for column 30 TTYPE31 = 'SC_EXT_ML' / label for column 31 TFORM31 = 'E ' / format for column 31 TTYPE32 = 'SC_CHI2PROB' / label for column 32 TFORM32 = 'E ' / format for column 32 TTYPE33 = 'SC_FVAR ' / label for column 33 TFORM33 = 'E ' / format for column 33 TTYPE34 = 'SC_FVARERR' / label for column 34 TFORM34 = 'E ' / format for column 34 TTYPE35 = 'SC_VAR_FLAG' / label for column 35 TFORM35 = 'L ' / format for column 35 TTYPE36 = 'SC_SUM_FLAG' / label for column 36 TFORM36 = 'I ' / format for column 36 TTYPE37 = 'SC_EP_8_FMIN' / label for column 37 TFORM37 = 'E ' / format for column 37 TUNIT37 = 'erg/cm**2/s' / units for column 37 TTYPE38 = 'SC_EP_8_FMIN_ERR' / label for column 38 TFORM38 = 'E ' / format for column 38 TUNIT38 = 'erg/cm**2/s' / units for column 38 TTYPE39 = 'SC_EP_8_FMAX' / label for column 39 TFORM39 = 'E ' / format for column 39 TUNIT39 = 'erg/cm**2/s' / units for column 39 TTYPE40 = 'SC_EP_8_FMAX_ERR' / label for column 40 TFORM40 = 'E ' / format for column 40 TUNIT40 = 'erg/cm**2/s' / units for column 40 TTYPE41 = 'MJD_FIRST' / label for column 41 TFORM41 = 'D ' / format for column 41 TUNIT41 = 'd ' / units for column 41 TTYPE42 = 'MJD_LAST' / label for column 42 TFORM42 = 'D ' / format for column 42 TUNIT42 = 'd ' / units for column 42 TTYPE43 = 'N_DETECTIONS' / label for column 43 TFORM43 = 'I ' / format for column 43 TTYPE44 = 'CONFUSED' / label for column 44 TFORM44 = 'L ' / format for column 44 TTYPE45 = 'WEBPAGE_URL' / label for column 45 TFORM45 = '54A ' / format for column 45 TCOMM45 = 'Webpage URL of the source' DATE-HDU= '2022-07-13T10:20:29' / Date of HDU creation (UTC) STILVERS= '3.3 ' / Version of STIL software STILCLAS= 'uk.ac.starlink.votable.FitsPlusTableWriter' / STIL Author class END UU4XMM J021100.4-034008@@`C
YxO?pDA(')H('R(A-'8_
+(BM=W&"=^<=>| =>[=/ZF * (* (@#ݒ@#:i Fhttp://xmm-catalog.irap.omp.eu/source/206553438610005/ U4XMM J021100.4-035233@@`C`cz?y@$\"%'{&'9H&ڕ6(1}Y'* (T((('m?p>u>8>S>y ?]" 8 ((((@#ݒ@#:i Fhttp://xmm-catalog.irap.omp.eu/source/206553438610051/ 4XMM J021100.6-060454@@`[5#SC?A_K%%>&@O`%53%%,'{J&U'"^'(k'#*'U&%?>G>+>e>}
%> I 8^ (k'#*(k'#*@Q&'}@Q*Q Fhttp://xmm-catalog.irap.omp.eu/source/206776701350050/ b4XMM J021100.6-052935@@`[BM":?'CC)%%'&(b&J(l'Vf)Lz(9).,(Df)4P'O?k=>)=Tf=^y= ?Uw F ).,(Df).,(Df@hNG+@hRAs Fhttp://xmm-catalog.irap.omp.eu/source/206776501340002/ 4XMM J021101.0-060915@@`oi`? A3y) %p%&
+K'!&(6'i(E'6(>( (J("'(P? @
+?L>?>B
+{>v>Q ( (J( (J@Q&'}@Q*Q Fhttp://xmm-catalog.irap.omp.eu/source/206776701350064/ 4XMM J021101.1-052546@@`Q`?cAu%I%/&:*&V' J&Y_&ʁ]&ʂ(#'({#' '&8k>>V?$b>H%,>,
+> ? ({#' ({#' @hNG+@hRAs Fhttp://xmm-catalog.irap.omp.eu/source/206776501340041/ k4XMM J021101.7-052103@@`ogxT?<%Bؐ'&us='_&G'S}&>' '1q(W(D)=m((N'>=>$>^>j6>9> )=m()=m(@hNG+@hRAs Fhttp://xmm-catalog.irap.omp.eu/source/206776501340011/ 4XMM J021101.9-055301@@aõOV?+Aɨ&r'&"'K&kt'h&F(#'j).}(F)v(J(G'0?k>=w]>_|:>x]>"Ǟ>{ ZZ )v(J)v(J@h|@hu Fhttp://xmm-catalog.irap.omp.eu/source/206776602330030/ 4XMM J021102.2-045329@@a/ fe*@,WB
+'I':(B'T/(d('kU((
O(C)Hr):)Ne*!(,?+>"@>5¾}Mv>gH>ZAz?(I@˴ ):)Ne):)Ne@듍Fr(@듓' Fhttp://xmm-catalog.irap.omp.eu/source/206776316010013/ =4XMM J021102.4-042346@@aH#?kAO&"&+;#8%c|&Kk&A܆ &(*oP(0(h$(&&Ŀ=?g?.Ŀ ?/? ?GX^ L, (h$((h$(@O˩@OX Fhttp://xmm-catalog.irap.omp.eu/source/206776201330054/ ܚ4XMM J021102.4-054417@@aP?M֏8*?z3iB!& &t'&a8'q&l&zK&&'}(T'H(u''>qm=ئV>,\>>OS?>; d ('(( @h
+sK@hu Fhttp://xmm-catalog.irap.omp.eu/source/206776602320026/ {4XMM J021102.9-045300@@aX]qC?At(
+s'pL('i/(()[h(oy)/c)D*N)j*(E?D>R ~">Qkb>Aw<>J>B@A'o *N)j*N)j@fϸw@fpB Fhttp://xmm-catalog.irap.omp.eu/source/206776301330043/ \Q4XMM J021103.1-041425@@aGV54?^P\C1 (U'#/($'.z8(E'4:('U(j()y(O)`+'}yiN=隻==+=>Z/p =C?Ǭ>oF )jU(G*s`)@O`o@Oh4, Fhttp://xmm-catalog.irap.omp.eu/source/206776101330001/ 4XMM J021103.8-054537@@bJ
+̜ۧ?AXK&m&< '\ &Fh&>&"%qw&J'P((n-t(&R'c&]<:j>̾->uAC>LѴ?0 >(' )= (n-t(&R(n-t(&R@h|@hu Fhttp://xmm-catalog.irap.omp.eu/source/206776602330035/ 4XMM J021104.0-055251@@b([]pE@@{&R[&&B'&F&'3S'7k'U(V(J(h(_q')Q'!>LF>N>>f߸?> վ77?0Q ?O (h(_q(h(_q@h|@hu Fhttp://xmm-catalog.irap.omp.eu/source/206776602330040/ O4XMM J021104.1-050406@@b5%yF0RI?7B |H',&mUA'&'9[&y&a@&ׯ:'y(p(Р(w{T(z!',%ޒ8>|3:>mzd>*n?U> p (b(c)A()!E@PZes@Pcۯ Fhttp://xmm-catalog.irap.omp.eu/source/206776401320015/ Q4XMM J021104.1-045324@@b7mUp>!*D(B&T)5&)1|'
q)G/V'
)Uh(*i$(*'s=%=
x[2= =#o叅=g: A>"U>O>6F *.(*KK)@fϸw@d9 Fhttp://xmm-catalog.irap.omp.eu/source/206776301330001/ 4XMM J021104.2-061245@@b=]ٹ'͒@Bn(
+K'&(-'p
+'N'Al(i%')Q)B* )FJ)~id(t>o>9">
KD>D<#> A@f!A * )FJ* )FJ@Q&'}@Q*Q Fhttp://xmm-catalog.irap.omp.eu/source/206776701350033/ z4XMM J021104.7-055648@@bsɋ9?6ܯC!O'$&^n(G*X&\'&R'j5&;)(N)(})('Q>A=|=EPN%=$?b9= X}?P F )N=)>))*7@Q&'}@hu Fhttp://xmm-catalog.irap.omp.eu/source/206776701350010/ q4XMM J021104.7-062023@@bz:\ BM?NCdM(#`&(K&c(yT'֣(?W'uS'(w)( )a'==8u=a=t=_! y>s H<6>7q>F )P(i)]);=@Q&'}@Qk Fhttp://xmm-catalog.irap.omp.eu/source/206776701350001/ d4XMM J021104.9-051540@@b*c 5I <@ZA`'"&tA&(4&?7_&L'%'v& ?(E͠(\(Pi'z'GĿ>? oW>uh>ݾ?Z (\(Pi(\(Pi@PZes@P_ Fhttp://xmm-catalog.irap.omp.eu/source/206776401320036/ p4XMM J021104.9-053148@@bg$pP?{FBNp%%&(%('$&94(S'4CK(x,G(I)H((V7'
ڸ?:I>?> ?~D?f> 3BCG>Tm | )H()H(@hNG+@hRAs Fhttp://xmm-catalog.irap.omp.eu/source/206776501340016/ 4XMM J021105.1-060057@@bntN?!B],'`Ct'-&'&&V(&`|(
+](Gr((Zd(ˤ'Co=XX>Do=>?Zy(>,