From c49ac56d30482db628d2c673abfca16292f0c8f7 Mon Sep 17 00:00:00 2001 From: Paddy Mullen Date: Wed, 13 Nov 2024 13:52:12 -0500 Subject: [PATCH] Feat/infinte row (#328) 1. Adds DFViewerInfinite and BuckarooWidgetInfinite. These lazily load data, 50 rows at a time. This makes the table much more responsive and uses less browser memory. Encoding JSON is very slow in python. 2. Removes display sampling since data is loaded lazily. also removes the "displayed" status bar item, since all rows are available by default 3. Sorting works across all rows, not just the sampled displayed set. 4. Upgrades AG-Grid from 31.0.3 to 32.3.2 5. Histograms no longer animated, they were re-animating on each new lazy data load 6. Convenience method for creating DOMWidget models and views 7. Fixes #255 Display "No Rows to show" appears as a cell in summary stats --- buckaroo/buckaroo_widget.py | 160 +- buckaroo/widget_utils.py | 13 +- docs/example-notebooks/Extending-pandas.ipynb | 38 +- .../citibike-trips-2016-04.parq | Bin 3326006 -> 2708717 bytes docs/examples/App.tsx | 11 +- docs/examples/ex/ColumnsEditorEx.tsx | 6 +- docs/examples/ex/DFViewerInfiniteEx_large.tsx | 277 + docs/examples/ex/InfiniteEx.tsx | 23 + js/baked_data/olympic-winners.ts | 9998 +++++++++++++++++ js/components/BuckarooWidgetInfinite.tsx | 153 + js/components/DCFCell.tsx | 19 +- js/components/DFViewerParts/DFViewer.tsx | 170 +- .../DFViewerParts/DFViewerInfinite.tsx | 260 + js/components/DFViewerParts/DFWhole.ts | 2 +- js/components/DFViewerParts/Displayer.ts | 14 +- js/components/DFViewerParts/HistogramCell.tsx | 66 +- .../DFViewerParts/InfiniteViewerImpl.tsx | 108 + .../DFViewerParts/OtherRenderers.tsx | 2 +- .../DFViewerParts/SeriesSummaryTooltip.tsx | 2 +- js/components/DFViewerParts/TableInfinite.tsx | 154 + js/components/DFViewerParts/gridUtils.ts | 181 +- js/components/Operations.tsx | 9 +- js/components/StatusBar.tsx | 30 +- js/components/WidgetTypes.tsx | 3 +- js/components/utils.ts | 2 +- js/dcefwidget.ts | 188 +- js/index.ts | 14 + package.json | 7 +- tests/ts/gridUtils.test.ts | 2 +- yarn.lock | 57 +- 30 files changed, 11693 insertions(+), 276 deletions(-) create mode 100644 docs/examples/ex/DFViewerInfiniteEx_large.tsx create mode 100644 docs/examples/ex/InfiniteEx.tsx create mode 100644 js/baked_data/olympic-winners.ts create mode 100644 js/components/BuckarooWidgetInfinite.tsx create mode 100644 js/components/DFViewerParts/DFViewerInfinite.tsx create mode 100644 js/components/DFViewerParts/InfiniteViewerImpl.tsx create mode 100644 js/components/DFViewerParts/TableInfinite.tsx diff --git a/buckaroo/buckaroo_widget.py b/buckaroo/buckaroo_widget.py index 120a1225..a5bc1a05 100644 --- a/buckaroo/buckaroo_widget.py +++ b/buckaroo/buckaroo_widget.py @@ -8,6 +8,7 @@ TODO: Add module docstring """ +import traceback from ipywidgets import DOMWidget import json import pandas as pd @@ -23,9 +24,9 @@ from .pluggable_analysis_framework.analysis_management import DfStats from .pluggable_analysis_framework.pluggable_analysis_framework import ColAnalysis -from .serialization_utils import EMPTY_DF_WHOLE, check_and_fix_df -from .dataflow.dataflow import CustomizableDataflow, StylingAnalysis, exception_protect -from .dataflow.dataflow_extras import (Sampling) +from .serialization_utils import EMPTY_DF_WHOLE, check_and_fix_df, pd_to_obj +from .dataflow.dataflow import CustomizableDataflow, StylingAnalysis +from .dataflow.dataflow_extras import (Sampling, exception_protect, merge_column_config) from .dataflow.autocleaning import PandasAutocleaning @@ -242,12 +243,13 @@ class RawDFViewerWidget(BuckarooProjectWidget): """ #### DOMWidget Boilerplate + # _model_name = Unicode('InfiniteViewerModel').tag(sync=True) + # _view_name = Unicode('InfiniteViewerView').tag(sync=True) _model_name = Unicode('DFViewerModel').tag(sync=True) _view_name = Unicode('DFViewerView').tag(sync=True) + #_model_id = Unicode('paddy').tag(sync=True) #END DOMWidget Boilerplate - - df_data = List([ {'a': 5 , 'b':20, 'c': 'Paddy'}, {'a': 58.2, 'b': 9, 'c': 'Margaret'}]).tag(sync=True) @@ -269,4 +271,152 @@ class RawDFViewerWidget(BuckarooProjectWidget): { 'index': 'mean', 'a': 28, 'b': 14, 'c': 'Padarget' }, { 'index': 'dtype', 'a': 'float64', 'b': 'int64', 'c': 'object' }]).tag(sync=True) +""" +interface PayloadArgs { + sourceName: string; + start: number; + end: number +} +interface PayloadResponse { + key: PayloadArgs; + data: DFData; +} +""" + +class InfiniteViewerWidget(BuckarooProjectWidget): + """ + + A very raw way of instaniating just the DFViewer, not meant for use by enduers + + instead use DFViewer, or PolarsDFViewer which have better convience methods + """ + + #### DOMWidget Boilerplate + # _model_name = Unicode('InfiniteViewerModel').tag(sync=True) + # _view_name = Unicode('InfiniteViewerView').tag(sync=True) + _model_name = Unicode('InfiniteViewerModel').tag(sync=True) + _view_name = Unicode('InfiniteViewerView').tag(sync=True) + #END DOMWidget Boilerplate + + + def __init__(self, df): + super().__init__() + print("InfiniteViewerWidget 231") + self.df = df + + payloadArgs = Dict({'sourceName':'[]', 'start':0, 'end':50}).tag(sync=True) + payloadResponse = Dict({'key': {'sourceName':'[]', 'start':0, 'end':49}, + 'data': []} + ).tag(sync=True) + + # @exception_protect('payloadArgsHandler') + @observe('payloadArgs') + def _payloadArgsHandler(self, change): + start, end = self.payloadArgs['start'], self.payloadArgs['end'] + print(self.payloadArgs) + if self.payloadArgs.get('sort'): + sort_dir = self.payloadArgs.get('sort_direction') + ascending = sort_dir == 'asc' + slice_df = pd_to_obj(self.df.sort_values(by=[self.payloadArgs.get('sort')], ascending=ascending)[start:end]) + else: + slice_df = pd_to_obj(self.df[start:end]) + self.payloadResponse = {'key':self.payloadArgs, 'data':slice_df} + + + +class InfinitePdSampling(PdSampling): + serialize_limit = -1 #this turns off rows shown in the UI + +class BuckarooInfiniteWidget(BuckarooWidget): + """Extends CustomizableDataFlow and DOMWIdget + + Replaces generic options in CustomizableDataFlow with Pandas implementations + Also adds buckaroo_state object and communication to simpler CustomizableDataFlow implementations + + """ + + #### DOMWidget Boilerplate + _model_name = Unicode('BuckarooInfiniteWidgetModel').tag(sync=True) + _view_name = Unicode('BuckarooInfiniteWidgetView').tag(sync=True) + #END DOMWidget Boilerplate + + sampling_klass = InfinitePdSampling + #final processing block + @observe('widget_args_tuple') + def _handle_widget_change(self, change): + """ + put together df_dict for consumption by the frontend + """ + _unused, processed_df, merged_sd = self.widget_args_tuple + if processed_df is None: + return + + # df_data_dict is still hardcoded for now + # eventually processed_df will be able to add or alter values of df_data_dict + # correlation would be added, filtered would probably be altered + + # to expedite processing maybe future provided dfs from + # postprcoessing could default to empty until that is + # selected, optionally + + #note this needs to be empty so that we can do the infinite stuff + self.df_data_dict = {'main': [], + 'all_stats': self._sd_to_jsondf(merged_sd), + 'empty': []} + + temp_display_args = {} + for display_name, A_Klass in self.df_display_klasses.items(): + df_viewer_config = A_Klass.style_columns(merged_sd) + base_column_config = df_viewer_config['column_config'] + df_viewer_config['column_config'] = merge_column_config( + base_column_config, self.column_config_overrides) + disp_arg = {'data_key': A_Klass.data_key, + #'df_viewer_config': json.loads(json.dumps(df_viewer_config)), + 'df_viewer_config': df_viewer_config, + 'summary_stats_key': A_Klass.summary_stats_key} + temp_display_args[display_name] = disp_arg + + if self.pinned_rows is not None: + temp_display_args['main']['df_viewer_config']['pinned_rows'] = self.pinned_rows + if self.extra_grid_config: + temp_display_args['main']['df_viewer_config']['extra_grid_config'] = self.extra_grid_config + if self.component_config: + temp_display_args['main']['df_viewer_config']['component_config'] = self.component_config + + self.df_display_args = temp_display_args + + payload_args = Dict({'sourceName':'unused', 'start':0, 'end':50}).tag(sync=True) + payload_response = Dict({'key': {'sourceName':'unused', 'start':0, 'end':49}, + 'data': []} + ).tag(sync=True) + + # @exception_protect('payloadArgsHandler') + @observe('payload_args') + def _payload_args_handler(self, change): + + start, end = self.payload_args['start'], self.payload_args['end'] + print("payload_args changed", start, end) + _unused, processed_df, merged_sd = self.widget_args_tuple + if processed_df is None: + return + + print(self.payload_args) + try: + if self.payload_args.get('sort'): + sort_dir = self.payload_args.get('sort_direction') + ascending = sort_dir == 'asc' + sorted_df = processed_df.sort_values(by=[self.payload_args.get('sort')], ascending=ascending) + slice_df = pd_to_obj(sorted_df[start:end]) + self.payload_response = {'key':self.payload_args, 'data':slice_df, 'length':len(sorted_df)} + else: + slice_df = pd_to_obj(processed_df[start:end]) + self.payload_response = {'key':self.payload_args, 'data':slice_df, 'length':len(processed_df)} + except Exception as e: + print(e) + stack_trace = traceback.format_exc() + self.payload_response = {'key':self.payload_args, 'data':[], 'error_info':stack_trace, 'length':0} + raise + + def _df_to_obj(self, df:pd.DataFrame): + return pd_to_obj(df) diff --git a/buckaroo/widget_utils.py b/buckaroo/widget_utils.py index 2a59d4e2..f6237d62 100644 --- a/buckaroo/widget_utils.py +++ b/buckaroo/widget_utils.py @@ -1,5 +1,5 @@ import traceback -from .buckaroo_widget import BuckarooWidget +from .buckaroo_widget import BuckarooInfiniteWidget import pandas as pd from datetime import datetime as dtdt import os @@ -20,13 +20,8 @@ def is_in_ipython(): return ip -def enable(sampled=True, - summaryStats=False, - reorderdColumns=False, - showCommands=False, - auto_clean=False, - postProcessingF=None, - debug=False +def enable(buckaroo_kls=BuckarooInfiniteWidget, + debug=False, ): """ Automatically use buckaroo to display all DataFrames @@ -63,7 +58,7 @@ def enable(sampled=True, def _display_as_buckaroo(df): from IPython.display import display try: - bw = BuckarooWidget(df, debug=debug) + bw = buckaroo_kls(df, debug=debug) return display(bw) except: if debug: diff --git a/docs/example-notebooks/Extending-pandas.ipynb b/docs/example-notebooks/Extending-pandas.ipynb index 49770b12..3ef5b045 100644 --- a/docs/example-notebooks/Extending-pandas.ipynb +++ b/docs/example-notebooks/Extending-pandas.ipynb @@ -65,9 +65,19 @@ ] }, { - "cell_type": "markdown", + "cell_type": "code", + "execution_count": null, "id": "4", "metadata": {}, + "outputs": [], + "source": [ + "bw.df_display_args" + ] + }, + { + "cell_type": "markdown", + "id": "5", + "metadata": {}, "source": [ "# Using the Pluggable Analysis Framework\n", "\n", @@ -87,7 +97,7 @@ { "cell_type": "code", "execution_count": null, - "id": "5", + "id": "6", "metadata": { "tags": [] }, @@ -114,7 +124,7 @@ }, { "cell_type": "markdown", - "id": "6", + "id": "7", "metadata": {}, "source": [ "# Adding a styling analysis\n", @@ -133,7 +143,7 @@ { "cell_type": "code", "execution_count": null, - "id": "7", + "id": "8", "metadata": { "tags": [] }, @@ -194,7 +204,7 @@ }, { "cell_type": "markdown", - "id": "8", + "id": "9", "metadata": {}, "source": [ "Let's look at pinned_rows, they can be modified by setting `pinned_rows` on Buckaroo Instaniation" @@ -202,7 +212,7 @@ }, { "cell_type": "markdown", - "id": "9", + "id": "10", "metadata": {}, "source": [ "# lets add a post processing method" @@ -211,7 +221,7 @@ { "cell_type": "code", "execution_count": null, - "id": "10", + "id": "11", "metadata": { "tags": [] }, @@ -227,7 +237,7 @@ { "cell_type": "code", "execution_count": null, - "id": "11", + "id": "12", "metadata": { "tags": [] }, @@ -276,7 +286,7 @@ }, { "cell_type": "markdown", - "id": "12", + "id": "13", "metadata": {}, "source": [ "## Where to use PostProcessing\n", @@ -315,7 +325,7 @@ }, { "cell_type": "markdown", - "id": "13", + "id": "14", "metadata": {}, "source": [ "# Putting it all together\n", @@ -326,7 +336,7 @@ { "cell_type": "code", "execution_count": null, - "id": "14", + "id": "15", "metadata": { "tags": [] }, @@ -355,7 +365,7 @@ }, { "cell_type": "markdown", - "id": "15", + "id": "16", "metadata": {}, "source": [ "# Why aren't there click handlers?\n", @@ -367,7 +377,7 @@ }, { "cell_type": "markdown", - "id": "16", + "id": "17", "metadata": {}, "source": [ "# What about autocleaning and the low code UI\n", @@ -385,7 +395,7 @@ { "cell_type": "code", "execution_count": null, - "id": "17", + "id": "18", "metadata": {}, "outputs": [], "source": [] diff --git a/docs/example-notebooks/citibike-trips-2016-04.parq b/docs/example-notebooks/citibike-trips-2016-04.parq index 50fde79dba76e2ece814b6f1b15b1d320ac6fb4f..0037b5f552404c7d0e799af0b53c7ab7bd6345d1 100644 GIT binary patch delta 1499 zcma)+ZA?>F7{_~WFVX^v6e-my6ztA~zVZY~YaDP(nI%{PMu*)NO~)9>)WBpRI|W4@9%pHt%p#yAo^-pUfiRt@qkkSK(V zag_Cx4U~AwMoI!jMUm{A#E>z`Tq$4b^5D@H&_$o?$|jG`tA&&cNfhauOwmv_Q?^iE zplqdV6H_jv_#eyf&h_Gykg8M6&Yxn)Y_|vFeNZ42pH3BvPivDyTzDbKV7U)6V?!Tb zWyrOKUWOKU)tQ!vJ|AQV_nm3teP{aQU2d^|jKMJ<7?cmcyTOnUC}VtGBL$qek)jFmwq2($dCRpDeL)GNW?R(kg*ct4ePFlUwnO-`}WCC z3?A+#S<1dk-!r7?0gavcMQ0Fhb`$Yt_e;A&T+93u25oJyL%D>r^z1nrQPT#wLVfiP zvA#NE_dWSyzZXAm13j(oDMP%AG(f6Opw)?5tKK&(Z=Sq}+uFgbnE%7el4-wJm|ND1 zbIXS5Vfoi{?f78WXi;3jODs7vbrJ8iL!MAJVx*YFvJrFiEO)2F&*B?>7HzEe+GUo6 z7TQ^QtF|0dBDUn1lCio2RN_#dWz@j+PXt&z*#YUwr(J%Qbka!}oUw?5Gg&ikZaj30 z#a0{Wl)Wp6O7MwA$-#HuI~ zLEgLwqVD>ylt`t_2{4LK3%|HT6pqGT6%`zY+)L4nT>VZ`9-2 z0dTQ}H8?#04#tYx2f?P=)2RQ4|K9z0d=N_5QU?YH!7VQ-HRF~b*jcE-LqW(@z0ydp z`L_d#_hU~GY>WjT1tITb;Yxi~yuFHd@_d6-LfPu=rDb6Owex&I)yhViR)^$gw^STE z+VGn5)%V>8_tm}$*()acc=SzZz6QSNne($3Sl!7q+FH-Mb?;Ty8!KvSjri~esG0bt O5SSFMbeT;0oBstNo>oc# delta 623397 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
  • xlBe=4wTAc4; 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 qA-UFpopQ@J498FglfwRoaN2< z9{XYO!YBA(^wY4C4#O=(k6`dMTqw@_e0R%pS{Oy}GG2qxt!!8H#WL6;^V<#EWNU1A z+<{ReBL%d0nenRobKgBM7(*}?lQ0Eyun=qD+1rI5aR3M5*6-mDJcG^8IEaUCCT_AK zJDe&DR}n4H69d3hg(H(NnH#6U{y4by$SCgp94yKW+=PW;KteGF6D2h_8DXT{$cuvT z#8g0aG(bZbxih-M;h2e?=5HkP2qN)33B?-1(FepP1j*OqV1x=@lp+sTEE*&qv1f#tIqu8p(Xo_ZNkACne@G)Hd zOISeLwGWr^3!)1b`NmeP4|qFldf|9{NQkuXuv$%{)In>!4Ud(hH3(Mj6HLG&tc20F zU@Oe)Cmh2Gn3}`!H)$ms%C}dNbCU)J%;WjX$3-PrHIGdX^nnv%PE%m7K7)h(6~4tD z?8Olr1#NqNW?P7v|^=?%)~GV~*g|#Nj3}UWBu3i%OzA%)Kt^!D2FP;Yc;@ zkJTIs59=tn6YDVRI9>0MaJpW>5BoFJn+yt#NdQF(SL*Z->#*i={ zK8Jbkz!8|+1$b~>`8v$=9)8CoJcUD&Y7|3~mYZzIg+eHf5_km-VD*jK2A;CEXopDt zPLd~KD$MU|?7;zCgjK$YyC8Zf)@a_LyueK+WJL}XMk$zQRkQ}HM~dkgUI+&(XzOaO z*JHc+8|g5P;}?)~D9f1WNh-z*=HnAD$e{z*J<%HjVasM>78YYEY|~a))SWPZ#kHtU z2#{thPr#g>zn6K%$*@0l!KsLRo><1O%druzW?{aC#c=@6gMvibkZ>HwD-k!T;OG^B zW9Q=4@H!082o6CjSfsGMuu?|tf%oBLjKmaJwYBhYyNmDf15V-;%;y>&fWZibK4J8t zxJivXa0jpAH5km|8LS^7fB(+v8Eq7n!yb9?_rWOVa2Q;lI0!$(VwuiU`X5R>k@u?Z+lpmGX1oOZWsmw|0w!VsY>5NB z4jXV0m*A?L%TVk|eAQqvlEK9+LOv8kF}QV42?3t}`!lt}tg<_Lmud(8D;tRB;! zb`zVMM6jYSpfJkAQ8H2uSiBZ6l6hG;3pNlRVVk_yN1j{{Vi%d0fCnnCtJb zx=-*oyGb&Qe^1z|dcf^v9T>3{+G7BQ!)W7RAvfZC7|oeBz)jr71M@e^Q&x}lDY+)) zCL_$vN}Agna0L5dFeYLp_QMr_#dX|(3uT$kS4_4eHwvH(T*#I*gxhTcw;XP@^eEsEt zj4pjB)=Zu$sdynXJcGGV2xULVLn#iE11?!*oIyB1y>RI z_t(tRevoVAldM(DFpKACc3!ZO?xF}vpfsxCb<~GL-WcwxCv4G2Fz>1GR4u|LxPv`7 zi*vZ*=O6p`8~(&YBFCN0_kE(c$pDX*yU34%u;LY9KY4sao)Sa(^+S9NTe$`1yA2My z5f9)HuE1cXdkB+f!0qJ1mobX{~pR2;09mS@22mN85BQOfnu?CxQ5U219 zi^utlxlY4PS{NV`f^^D8k{AeQ5EY=Ki_75C#LjN&!pMWjoha&U_ez$o@0U=aZA;<*>WWws5Pi)(^qB z*@kggf@N3*+p!J~!c+UafOjcw(Lz*073c3wE?nt741uHc2_|ALmckVy`{h?h=>#sY zV$?#O3@N!u0~?$fFCjPbA|EV$Wi){2whc_9JHkEqV99NAU$_GsJs#6A8;kHQcEj>t z2W5{GD8{1bpTm=!7kqN$fKkn_CM~^-p{H*K^+{7PXC;xr& ziMgae7H&O2?!yi?Mk_cPmTw@!_!yHh6~>*5`B(r)VJG&$Sqop`!z~!^A(_YV2kDq~ z5GfDW)-ylMxIH?+S~|+Xs2I($HcLmw47b9>4#S51O#ps|&W``yDyMh9nUNLFjCqwr z8I*+wsTQnrOSFU0eIEGqnSzC|o5x@ieeygZQoQA)62(mlq=%`Lz-w?A-}3ysVsG?; ztD46;Y{w7y5srwfS}a$N`#Go5g1E)1aC? z)Eb}#oTj#(|4v-kv%zqfgItZe6ko#!hIt;wPcX;da1*zP9%ps*_lYy{LID`D2rOh% zv_cQ`!a#T~Jt^T;d{~QZ*oFN#fpf5m|FC+ZHGB$9#!W^PMLn29M|8n^uuU^zYu3PV zTMxH>6fSrHZ1?$t^GhCavBTV@g)3)+RdfGV%kis)+Hk2X*a|CUgabH;Bk%}a#a;Z4e{IKl-Yym3rVz}f zHtL{08lx3DpfimAK8C;|O@WPH4t5caeD*iLZ{TsVPfyHi1BW#MH#R;wa-kHez_Btv zp9&5^Hw=b3j)QH8GKF!b){b9pL zV*(~&7J?JAkZaShi2HF8*Kh~-z$`}!7~`wxZ`398{H5VldzTyTpfKD;36zEtW6p1& z0o;|jyCW;@0Cj~m=m&RcpFe?hm=AZh4AE7Od*W3z264={2Ok9B1Jy^KBZVW zH|1#(c~}+X#gZt4%5WFfrU!b$=hk}|0(-pzM%e(numk7eF#UmN_Wy4uYBLY77kDM; zL=LY1Zyh|69>=<<2YcTRo!}07V<_y9(Z}O6xQjIicH%4?!cRDF{ug1s57|k!ucN>0 zF?v~8eWTV!Q@n#-@I(!V6E_jlF&9?ZJdJP|9-<2{$Q1-dzQ^?=^MA~RRgSZTPZ9CB zNrplwiW)Ggxwb@mc(VGy9A{x3g8n*vmtYI2ZYbqe9&)L;Neu@rGqS@0Gre$KKDc^o z^v5s+d5z=RDO!n**aC;;2kgTET*m{Di)lon#``AvnLNHip1M_;Mo={X%*8Zj$iJD?XhF{e>tOnO;m~t{t32z{O?9` zFf5=EKgA4u0T09Xu!xbre{+(H%eX~uF?R4@TNoidvLFxgB0n66;s`3~aMZz@Xa;k4 zINrw)xPw`+h)b~ytFadAuo2iMKh3iU8o`x&!l4+ADOd?BcmzMg zBgIfWe~Nt1H-0Qyut-_1+n^oVqc<#$Lt%kvO*qn<+1ywS_h|u6!+k!2BNuNc?{^b$ z>r{(gIfTbTL$G&2{zdy zQx`UL8Z57;!qT3_RoF9EzKf@Bc^4-?iks9(hhTC_b6p-4QO)z$jEm-Qbb6sL-h=sk zgh{Zm(=i91VIEdv6Sl$WIgZDmV3BuiiFfmrX%cQsD?6N={ulty<3xmAeJad@>Vy*P z;fFA0;3gLeqXO!~(`=b-qFeKK?}Wp99lwDi6gjZ*_C}42gigu}Dexj3Vz*HU4sUfd zp#G5+NARmF&c-_UAhmIp_%NKclW;Q5<06bovZ2sEzBQko8zW>x5tPNNuy4%q4+=YPBINQFThB-;j|Y+DKtV`SfuG#fVFVA zci||0!4=$R!I*XD~x)FNO2BQ zprqVb7*i?B3?xuyaDrUgRba~ez3r!VRX|CTj^PFCavxYtb{$@f^YC0?C~C)g%!Vnn{YfI z!am3TDNpIhXu2b7Pz0~R9W_8Z^uhbE1|OOKa4zimSWH0Bduy^B?#8M65?f)7_QIMl zVWAX9c(-9atbSpVYI1Rt8--9B zMrs0cu$rA<9=%}H4`7cMU_CY>7^+iTpTl`v#Vv%5Y!8VT>0zqlRP#k{G9nYqu?U>y zYN!rR(;IjPR%p_w zVBOFg28;at+r?bCvV*z}R_!1h)DsADd(8DyqQyH;L!-EHYEt0^1Pyiv`QY4EL}k=~ zQxxQ0hwDb@W&Xps_!#Cr0akPo*1%lX!F=7#X!g36TT^Q3ghL zMx8Kc{UaFgGb})OB_FJ$Q*sJc^cL>1YNm_4hb_#FeJckC_Z2u4?*C0V5FOANj^JpF z!yLHnZ*U05Suo)x-tGMF_Fi>Q_NWRR>V{~H;8fVBJ{X9>7=x);3J1dNuZNL{5P6?? zmS3-e6e16`heYOw@!X62fl7K_bR6>{pXV<>7goz@v0qhTpX%W)v_N}U!EWda$8$2= z$#ks1x3GviaRBCg4i`bYLdkyN?YM=sEp^Zgt<68k&8kg5vN*P#v|=1HE7i zJeN~26VB>fEP|`Ag4^B>3$h>AU@LydBMb2>4`0h)6yX|ts0qs*L>R@j<#pe4Fb@{Q zy|2RtxcY98LnH+o{)E+&UgL|oBHR>*i-vx~@Q74yA= zM|i@{;@sme_S>d#20mC-C&X>pCv&fX+Ng_$um;W00xi)4eb5*0!(F<=k(h=B*n(~N z87FZLS8)sfxQqLF$UiZ6Nstt7sR)Xq1U$NfVE)5kFF%15pAPe0jiB;AGmgQ$ui#hQ z#_xEDzm58UclZgoNr0JQyFs8jQje*!$102tI5!z+HU> zd%q2*aS72?52gBp_bI7)!QG@or2jd&D2SQ}b~1!(t33{rFb%U|M31WxcVHj>#1rxj z{mHz)$c+o;L4K5g3)ekL?`pN!cNd21i2Z(N-u`}{SsU8J$}GZnAxh5GUY)e*%tS+~hz>R7PDt|Mcg=qh;l++60)- zA{a5qCs^5Btl|Y+gHfK6SG;HBm5`g%NQ=U#fJ&$a4}dLfh7K5tkIdi5V=x}}%)B?j z3T}sy9lPT=i(hdI4~QD~Z}PHTwkkcWYIfvAemL~*#GyCms;CKf!clzw@81vLW*E%f zLofr2@g?kKu$!%1AHqf4!+lukzt~BPe;Ayk+@ypx$N(#z4ep{e>cRZ`U@Rt>|76UD z(_=*Y_!F++F8*}&e|faT<|Y}eZaTPnkZ*3TjZzHuw<2nx5scUc{ou$Nc_!wV|2!_7 zs2wokRoK^?xRW@3{3J0#NwyacMFz(J-O&ryYzRKVrF8f#$9j^Yf?;R3AR zFSzabCrG52q!~Gh|B!CXn0!5*h!;{I4NNaDO29(e!dfu3x9~RJ!Mhj@vswao;tsyY z5g7dj?3{HCCyT}BsN~$4TT#3Qhod7pqc;ZQf6vHB?k(b6xbh*G<0%;75^mv{or}%6 z@L^&QyX6eH-8SeN=7ZInfn`{Sudx^V;7XTaSDgFDtQafASFs^(;=`4l2@B=wPMaxI zhP|Eyhid^A!L8Z`7kf(oL-FG9A4U2*^B_OUz~Ajjse=ZvtXHmzg;!z1Z{SV1fWvRz!~FGQK1_uLSPDnxI8NXs92>{+9!NfN)Dp*w{u9Gg zypS3NQ5qFc5k6|%x>4J~t@nVDJp}zR5EGrh$z05WRpLZM4*Ujw{SNza8CJ_3{7a67 z;`3RqFgL}}7OwgMEQ°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

    3vSm1m-Xd6 zf5QiwX69U;-}8K*D2AO7u(QFp zzvt4OQYxb$tHIqO>s;ou^jx_!mg-he)#z^V4QG?@K+p9%$c?0xj@lEGS-@%@n zcTT4!6mm7%EFN(-`{@{+~6DQQO(p5OddHG+#|Z2dY_}GW~PyF=TURfJ>px= zjlM%Ybp1>d5yf;lU=-hWZo*#X#+eo(ktfeZM)9a~v+qbx%S)h`1_H@jQ5$=4dmPYr9?>Tq)PV{unj1y5zwFBG4_nkX^r+T_(P7{fIxfX2` zKXC5yo$l$LnUqEpkn=#BC^~ohq#oN$MVh97nupp%=rrMprG2J4%}~J31KUN9bC2(A z&*V&Pnz=xphqjAe=U(4A{4VLzm;!P>xL^Fx`G_w@_Z*vPOmi1d^U?j{N6vk|^F88B zQ(6?$^uP}BW9MVOZ+cG7w4@~pi6E|eFbo#H9y0pGQrOEaZ3rjRD< zzysp%oX`5Ed#=okrMU~KI`n|}sq>)kM$h$`@w6z$_<>#GXU-RVw|Z{QoK8y=%5`X$ zc-l$(ZuiWXm6T2>$$HQ(o^ih9OR}cSQlx8?R6S}JeNL+{*_u5|oo-OF^fN4rJIIY9fetg2bMbVf-o1P_V<=b%qvt(j#^cPpud=s_{)9P$-f>t~tL zqZl6uOk&76g6-^$vn=TerMwWC#ISSBS8i>YWlblF$VK2G5jn?wYAcxKNY@lmi_k-2 z#Od%=TU%!d>4qY95!fR}ov-+6t!=Zs>1Mh}UWE3DXPt+9b=LM-QaV#aY5^|pcE0A* zT03UN(%nUr7U7O&=V4!iwR2WHJ&Lh~02lH)-|#hAyJk(NCyHb(+AE%O9`Q9>yJsb3 z5XIzT&>>DaIiJpIo2AIm6jO^4E>(02c#3VGrOq%Evx@;P&~wsn`8HZ7XK6Fc#qwf= z>(ZP@eVeV$S-K3Sm|OyIGnVrmpV4}3mNCO!Of5mU2FZEcx6LZfGG#`VLxe&YI3hl*kPT6GWY-eYAB(a#AKil8pejh88Ju7G1S?2((3zT2YB|E`duPmd)Y_UXWEx7@r!y0!audQi80ST-6LlviWf5iM3eY9e*PY+_B&#i1k)WMh`Q zj9Q7X9nE>wcit){o3f&qh6%9s$oV42v3HbH+dcIok}dy661WcguP+c{(dm zE;l0@YdOx_zT4IrDM{IcifjS+-p<|OPwGucQDkdWR14}B@8FXB$-UVr>TH9GZ2|Z^ z&dv0v^(s@e*=Cj8g7D#sOZI2=s#0{>jEYFo-WG7VeYJ`7XT$aDQw<@nXTAjOfbsi4-N zUNMzZ_^W$cQ-o|o1-l0Hi3FGLukCG1@n)MVIOydgub-nE=QZ`dT>OjAk&K3E! zy&WmBYPE^P`G$3Yi<^Ja0?v$h) zqLN$-Y+^Q7;n(%rQWQCwN@^{#i8-7ayIt%l>KsEQyA}+Jx!i33#@@*kZH~E8UW*1r z1y}9g-0Muy3l|++4r0_gIQC$6ZOSLyVZu)%v&5_*0s4q8N7yhQtDHJ`VMq zOtIu7D&=)(NG#;){JVP3q*!wZHMt%Pi%M>x-_(mz961^_wH^(NMV!{Zw|6Q<$T6td z^cIers<^ zsv=iYMFC_ND>$8hpf@{JoolFK0T>r6xpn@bUS+B_*IXq7G%l*S4gRrSRjMwRsUr1Y zLagHSe%jGnlWNR$S5bO2AWMYnaU%z$>DL+v-2w+m`Ch zHP4m}=oPV++lD8L?Ws~OGn*zif>*_P+;+dWw<9%{>z++*M6ZhTxgGu!y`8D?+$hG% zfs4zGS#9;%#k;t!(s!s-+!_9OsZ8u zRFiiDR&3;+@W*>;l!~nse-~#&E5^(5SMdL`>*z1NcAdcbG3Xo zdP8jD4*0M2UP_e|Of|U~yeY2Wp7l@nUP+B9+||@(^rpCyJLtdBdp$L-h*qbL=aR-cN{$Xk#gZs5lJ<$W!LHIJA}-UD1B;Ku#x zK0r9~G;^tYkW18a4u5rDDz2dL!Ya_gQ=DG4c=q+(0cgSDY*G@=z z%v{n4-WKoTUh`}FI*3@FdoE=}Z;P9_!~TZ8P9mNc#n@nQRJ@ye!{5}`MNH=<=E_EN zRNTxR@i+H%6G{1mhP)RX6I(gXuj{iBihPZRx)&W2=`EaqU2%3ooo~>v_kwrCd$_m! z8~Y{+ZN6C}-;3T6joeZH<~}E(%V#v?R^S%z<=*id`;HODe7A<$irnH>?zn#&UJOn7 zQH(1F$Hn`&_xwBhP7;>3xqe{Tr1y)-V=9lC;a>SE)h~bQ%i0G?~4@o ziQm$9g^1<5YpHGMeQ_su%738mIuXy0VoWmlKzxAv)PJz=CNZ6#sFk;&55!&EX+PaJ zBQ2?bm`An&krvxIpWoV-lBOuo%%j?nDDLJY|3F`Mn!3O+k8J}`e2@$Jhx(Lh+5+=D zxeY4m{#RT*U9_t4T8!xaU#Zkw@Iao%J8;t4}i(L@}Njc*Tdg zFZ_r58q+KViFxvNA1VCIuMz{ldF+}D0@Uq@Q3 zz&)SZfj$-=g!6IE=bImcOd$NxSzY|Ki$`zmQ+YA zASrNC?Bp;?xzCoSDAX*VD0EVMg2P1AK6{$F(6E4|z$fC993~s~O{QrJ%?o4-eIi=8 z%l>ot)~_pM7LYr^Z^frL3>xY?mS!w;FQ9g!--=Ijm=}WgM^j;R0lO2N5})C4?7xpb znPw?WERc7iQ{n;cn*U-SeJ0IXNYs%JfZvH-91h|2p)^OKrjB|5{Z4$A!(p1fsWhR` zP{%$1J{6ziuqVFnLYlYGTqi$(J{1pg*xTB7DNQP5>d0N-Gx2#2Th#ilq{Rx|b<{5O znfL;SohE(P)8d8EI+orAPKz&ccx2pnGi|ysQ77+0r$w5>lb^mB=}AhWo@@ta#BL5N zxcw>V3Z#s>SD&6(eZsZsHxHO3_?5|HZDWmo5ZXk*MTn3J|Hl|yYiF$cAlEeWn zODgYgNw+GAh2(=EAlkSbN!<_99ZJnY>Om9`2RVgQ-QSunC=CnQ2SHF|xO}O$zb)OX zG%u7NL_u+gE0pT`+tVc_vye1_kT}d0N!tF7^qA7Ukfuy1B#v+;QbT`ddR!S@$eKV{ z9OX)-rv9$FOfGBK9E=5hu9W(#HPDbZwD&k^B&fhz_n=+T8C<*A+2~$UPt`zRb;~C1d}wbYqcw z5w!KC^Bf-hrt)(>)aA)U;l-4Z;@FmKa9Q*4|5ID z{{BnpQV~OI$-UtBBFin4Ed5u~V?}N)wHN(fe1mI}4)kA7j~7L?>|StAe3M%#9qhlE zK3$a1%6ri{@d(!}(fuJmk=EZUc`cf1)dV@69ugcIBGmA-F7%#dwz2xYx$uJhX7gLX*KZtK} z8>K`2^%R>M_zq{3j`p`^2*rjaEba*w-P~5`cz;`lx0p6Bk#SG1c%0jYy-e*HQZciH z#5J+vyWDok+uxB9D|RoTa7U{69=Ag}(chU7FODu@aYd;3KDSdk)!&sdU7T1VL_#yX*6ze~hVJvYkrEoKv_z|~HI*-rMrjqDV z_A&5{_%ZhwPIuEMGb|;Er7|wY5>IgZrHlP%GOQ&;1BrW~#FN|;QoJ8!I7&1P6mCTl zKjAFW<^HJ*S|~9zu(%aS{4MvibhZCNhPTArAmdIP@f3GJy4HUQzmZG>i7R2m-*L}M z)BRU6VkPbd3Kyb?pK=GK8~xWa;w8}r7WaXOpK&ipxB72pOqV1YWL$?Kp5|!jcK?jb zB$8+(aT|nqhI>g$8c4}hkeWsccOlTCkF!e21KF8s($L7_Dge>X^+{<1%1kY3Zj>Qp25K^mq`Q%N0{vACazj$#Kz*i(jADL1h>Ia^1n1iu zGc9DIQN|E#G0crg~N+h$4#Q0b7bM7@sJJ69CBi+j=3_lgW;0{X- z1D%<1GP;b#>`(Fc+#6EUKv(88nOG)c^rd)?J0dj?bY~`&63fY_0DVQA;y6h+V9QjL zYL-)&dnkU%3D{$A&s3Khma`c9C;owZOWHUvnW-%`FPAa(PK%Cmoe{3JkNa~ z?HZuZWLis!CKBVG#0wmhOamy>QL1U8FzrbEn)6C~2c|NGQbQAqVL#%ZxsRlM0~a#A zrRF9Xvu?z1xD(R;flHZEDbqw^(u*i_pGcO0E19uUcN2v{C*rr(+v80W&$*nlcaSH`R$akyLj8yArr12tL3 zGWQA!N1Mg(xwF!tf%+^{S#$-9lfB~Kxi6%{^gv^lr7W>R#>rOkGItIems+x{WyDGn z=Q_nJ+?SFt0J0oqnw1oeHHtrQG3n?)YnD)ESjpm4pP1mjl8z6wWqHfYD`gyN6R&dT zu?Mm}ODbblk~q;N{)78k@(y%l#md|(DI91Lf8@TwwLP6#@v`Vjmd1e|@t@qc(y4*2 ztm(4EN*U)_#B1C|?4Ie)N-8H-kvPpEUgy5UzX4m8qFl3z!eIvSCoV392kcqua>FVX zd-=tGaopl~cCw4p+-2z;9y935nN=kAaf|=vevo1V$Fhv&?o|}FF^fNQ zS0(!V04-*j%A>1T?Bf;x!~KXE4=1xM<%v}?wy}ygxNFiyJUF$M6U`(xaf&y&pQQKz z%5s!znknpI6o28SrON|TSwgv?nZ*u1@xR>9($#?rS>AGUvy2UF;w|ombZy`g-pQF} z65F@L|8c)a(*swsV&!hSnZouZ@mKDabYtLpR=hmg%wqSB_Gr^k>?9S@LSpL%oWb7_NV275D^!{m3L6*T9eh$C*_NHHRvB7YJhz9x;b#WY zY|3n{%G@I3u{BKMlLJ{cRklvWw2*jc3-9FV)PTZPlWkPFTPQrVgfscHK%uQZ+oX!N zuy|$%XYm;ra?zM=Q6*YrJhFnxd{&^`){<>i5vxf&uYoCiPC#t~*$$OvHHF6&FqKyX zs%@>=g37R(#cDky`20Yvtu5QDGOw1gSPj$o!a$v^JzG-I%xV&AwJ@D83TSN|*)f%S zHHD>0n8B9>8f=}}aaD9RiEs;>r^m{FAp@^y0eoih&3cuX<#;A z5zyIe*@_Cy8VZXPFo##;D2_c_U13q0UA8mX)(S#L;IRG*t$uA37Y*(^l6>c4cS0z}=Hw6yZu4l(9qB<78 zl(39n88~RWnLS;R(8>6bgynp5fVR!ZNvb5)lK2~eDt>jqYD>vcRBF~z_y>X&ye=?c z%g#|(8rHHlkOS#TeqCV5rp(b+n%BxUlmpfLhQOFjm7}X<){=uD7gq85fWuakW2|(q zr3O(hoXu|x9J1Btm@1=d*+HOybNEex!?wm8OJ!oMJctyqn%^8aVr$8&{716YI%gpoI1O?to;o5$FiJB z9bM0kfD*Wre++|OPUcwDiS_abDuE6B{=h}snH;N{*g%c~5;pQr1mZRt?kOO%lW4RS8W$^ylV3Xc@&kxCjLO+n(Y$40x%oMF;E6q@XrRO zZC7$)YWD_e43)u^{K3Et+x48dI=X=!1LbfP|3cuF?PkujIL*=lUrvtZbGjfxv z2te9tpn@&@OM#@plw3uX22ggSf~$FJAbBu5S6yWQtQ}OqHGE$nZBUu3tuh1Ijw+yz z9|&X(s&aKz3?RorC0xr71{8xexyC9tpvF-pT*nUu3J2?RO;u6AjsrDZ&yQfxO=GU5 zDgoqiq=p;#u|PRJ*ph3lBJ|`0sDgkW52*1Y=cv-?sR>jC^}HicJ=mHnR2lT_1egsC z{40Ul!M0p)m02%OpxJOEe<)Bl*q$p@F?!Mg=D@r7*8uh2p`6`$P+jtl-;djn4TeFdR70rX&d2e9v;8dPX1Kjz~J@V`0VIL znmq*S-~;@pfrEoLbEjt~Hp+)k9o)sA4$y-$6iIW4yU0mU58HWPz&e?BwSALN69p+TiWJI8#NJc$-U6CVzY4XPBnIm}(;YhV$4h>rvu zgEb1{9QR$+YiJSN!=I%ChX(5vra4jEPz1E_Vg3uuI%-r{<|OWtUqf2Bmp_NC(=7_? z9AXpsI#>)l_%8zjUUVFDG@Gc`(PH=r9}65EY*h$z44c^3!4hcZzX}{5Y*TpWm^aC< zqa|=3e;$V}+7;3qW)pcBEQOEqUkAK{9g5f-H@%5EjF!U3_-_Iy20In;IZ<4U1RCJu z{I`KqgI$X0If+g3VblQk^A`iB2fGzX)x_N-3mRc3|6M>Dv?&zTn!70$HNq$OI1X{z z73ylk-7E{1!6*6e17`;(720a^-7<@oK?{F5aBh%xDsHF(%lD@0C@y3IP4F51M@)Me=Bff@VX*i9o@_x0nPA5{@1{* z!JCTd>cnRG2x^8je>-q{a7JEI4be(EK@05W?+7L_DS3(-O)KR@E$}5iDVWS;=c#K9 zt*jHQhCTeuU>c*$)7F?CHN+N@2Wz2?&k3sWzT>FT zY@v9x77p@?U^Ua4C)60Wusm1?89qN)%e3Xu-Wu~3nMdp35MLOqW7_ki8fFVAfc0>g zFA8dzj=WfndkZC?^>BnQ2{tgDdGVSkF1`XA;3!`jY+}0drfU*gWC3k}V|;nAnd#0; znoHb6x&VN7z9Oh&YcZS7W5!Mt8y2cx`YmGezeK za}7rJZLkTx&Myh>V=m-*=bDZ3+h`L!%r^x0GnewDxr~uK3hst1zbt5BuH?n$x{cIP zbT@p1Zwek@uII()Msd*>*bLv~R|XF6`Zn}aknBR@$)+)EwaU#&6R%N_$;AkVK04l&Ant;T$>d<<=Y0>2?R#;Edj z8s=W|9dHkH@%o^HsmV8L-1k!NpnKq3{KnuRras@KiQ zjPNMGIe3I=$+v2Vt)v^=3y<+zf&xQ>e1}G}m2#td;XAxBc$8_)7c_>gtQ%~FZhmX< zIMbHz)tI-+ZnPC1=eOaoR(rmrVYZUT!F}*uetXc%bmYf0?yb~ubRT?=-w`~)bmqr3 zQQT_=w!!!LoxxK~SN^mnu~j~fw!shhUBS~#cYabWaUc0E4cef{?+!|gEniWqxsQ4m zwL!?6f?>v0+`{Z}gcIf5z2G3zbl&+S!k9-f@4?pA| z3C5UX`NmrJebjsCe)ti;FL)kL`AoG@T&MoRIg5NMF^DVWB`{eh~4tRp!AEYlb zXY#GJ#5VGMK*5vz6Tvt>dpT+~+o<;u1wY{}!OP54zEEq}#=Z}B!r$^w2d^?0^1Zd@ zZSwnQCp^U;2wr0@Va<`*Mt%SufWPCP4Nfyx@?*8`ZPW+o0r)9@FnEKxo*%D`;vzS& z3x3AG5WL0Q%%84JY@_85&@OnIr-Qed83jr6h&ECL?eGl$QZQ*Kr9d%H(?*G?9r}1{ zFnK7uKt0dU#)@D!^z(hev>|1IcAmLS7SV1f@dLrEAyt8H9@9ob@E{EEgF(emO@VQq zyN!bAK^WwRf`vo%1*UmXTp$NbFvO40n0eP&V40U_lOZy}Fh3S7A8IME&Lg&y9`F!E z{CH4}51)>Cn(dSaJp?1XBUnAuS|H3bY-c@S4~+7!1Z#)d3cT~o+hq^h1JCk@f^|df z1=2ibJLv@v!_WEGg4&^ug4jIwcFKz$hF|c9gAGHS1@U=N8aLO0z3}(^8^NZbu7c@# ziS4o%?S<#~Bf;jO?t-NG#Qo%lpaV|vTu?V;D^SeW+)sUoI^dVQfB^vZ0`+{u{p^R} z5%>rGt>DI?$pYj|MjnISX|2nfu9)fEoUgejm-oQQXuA_QSvMp9T*O-7J`% zpV%RvK>OiE{&bKYno*dvfS|~epcCTO(4ciFrBJazLs2JDC&U$z!GWRdLiGXz#hwID zKwJkH92!yyJ zp`rRh(}E~&2m}_03w$v3u(8mxAVJBWAPcFX8Hl;bxXie-Fuov)iwVI2h!MFMNZVC7y&$nuK7|gzYy3qV zDe5jvsv{mCe+RnYb^bdn3)u=4b(#mL-=QvuDThJaF=8)N*BKsQe+Qn0m}nO~J2Y9S ztusF${|-G%L(DG=p2JQ`T^;iP`6+k~Vpdf!Hgv4eSm%C#`V>6}F_$QK9-9G7by3`i z2o6Hbpuyb7lZBSL!~^oD=pe+vk>Ew_9k3U!8E>}TKwh(qJSt3wy)LT{aUm;4!e0pf^o@Y>KNJgi`Lk*C3n5T`+d(?eGZ zV|DIb)M@l0#L>UtjiKv>@wzB(VgxkAF|XjQp__%%b%|Z_X+%Su=?UH*nxRapC)&v~ zpc~@&Mkr}GMX9LQv{PqLH@rhg3MCI`E7kRecJ>UQUxL38W`@#+l}c^Bxm`YkUV_+! z8_F71DRuQsJLv;G5F0K-is2fivEJQI`A`qU?z&LnaJ|x0AH@xjzzVUG3WF~jm6rNM zyX-?&h)px0^5GVxwVv2b`av(m4vCN&-#{Jpn%$Hi^+G%i4^r=0PezBOAmQ zP7DgME7c1P53&I;2=VPAv~hS+sa&p1TC~n#WW3WtE89F$8Q#rjbVUojW z43-PcA$oX5QPLvfA(BSG4pqYHkaakvNU=!s5QUH(RtUP#z;JevdXeEF7J+eCDXa?( z4J(VZi_8zn2#rIvupu-ytSZtiVjdzRU;6j>J$d&nqw8P*6}LITzx9E&u2s3>|F z&J~QIqrSHVR&W8ewbb_;6d1caeFI97V6dT45Vbhqo6=i$J?ndiY9F zOzYlDokMTJmBPW$jp6G>aV;I)%bo*A;40yT(5>N{Mbp~EUiln40-FUobbEM4anfR< zgPa0R*dn|XN*YNiRxH+ZP*cbWR}0oq@; z41}^qRK>c*Ob7WT;Nep-|ySeX(hAw1fQ;2yneHg6X%7 z#g@g14*5$YzzxD!sC=ZQ*t(c_g!}_=K_HBW)L4dcEY>_i{QPFg&rNzu6WDL9w?-E`MX-7JWWAtM8BUB8% z4L1pgLk%OH#qq^aTpbIJ!n=hxLQNxG#nX!ukH|4}6mAxdgqlaXi<6cRX7Z2V7;F`| zkZ#0QtXQHkQ-4Iq;1)r^I3atndWpfz{t>(b?-AY#Z5){_)-Exd3fBDLdKC}#l|IWGxZg6!>z*c&^GKNGcAeY%35$7-Y2|=@xLdFElUz+ z`73lBZWBHT?HV~#Y+XX^BmV^6g>3>1nXnA!SfbfS{RzDbw+r6T-jON1d>Hnze**8p z`-P7}`$jGldzYB^$$vuc!5zYh(EgE2#k919*+-rS??X!XBxD)6QXE_2-bbBB@57zK zsnCIu>&5XUQCyV^K7bDhpN0;O+$^46lGrDoM<2jl!s!q_GNUAEDe)+I0f?|&@P(`+ zDJ6=fnn$S%NQAouDKs#WU7}uUc$B>WAbd~=hK5FzCEBItN979$($FM?Lt`VV65Uef zQSxixfe#6hkYl8##JJS`DD^e+z&*m*(4mp~64TNsZs-MG_^|K=<{vkfSe7OpmA^(_ zxK}ub)8j2A)}_Q_OTrM!HI-mnI&Qzd=eEWNh7ur zMT6#XN=7H)6G9v#rtBr^2E*g5OoLD0lfw6*vm=uw+6MFEvWz}~7U6Q}9FA`28kon) zZ^3WjQ^F6S*vPRGV}tu~>Ra?%__S~}bRK&PO%2h<*>Axq_>Ax)CP1Gou{0zem%l}) z-~r)U=;Fwk5^DpopZp8>9qbZ*3dOM!>uAvIr~ZO|2cH$DLzn51DZHl`_OpKhpTg&a zpF>wiE|hp1%=_iPpikjJ;YR4%$R%u!VD^(2!DsM!;g`_#$d!^4wC9`64d`F9}KE_*bknCO(hLlPVivclz~ zEu^)Pc!K;Z2tb>V6Qo}m7U0&q}JgsVqeNukm31p8MIgp80Mt{rV7y^ZE4 zLhi`m?z2aK@`3$%nchykCDb@?kB15 zQ53!+)P}c>ilk{-6jx4zv+z}6K4yTQBrVGlPs-n;v+$5mM~8Qfo*}Kv2n+dl@Hw0m z7KTluh;%H|Sg60F&*5u=HoSLq3Li5J7WVJp3;4RQB)o6*0_k05w#a`+U%58n`)!UsmLlksIy+;k1j!8e7K;e(?$$?0VY z+9F>@=im{cIZThvC{0>UJVjmsQ_v}_4qHc4N)^jBPf=IU6yyY5cwjWURK48r6nh1H z33*{%cxY5vs$Fh=O1^@=go3akJT|H-)h%b9B7XpXfG$BFc8u1P8kf7DqJBVsfNu#K z!-q!eOHIq8xM3T_;M)Sd2~*G;OD)S2Psu-^7(6O$4j&n9DYY&qo+cCEkMNkVB`n}! zgk!npX)1yK2;UKm;iIFirNVN<(`*8K1>M5d@bS^MQtxu}({ciR1&<5cFpj3ZR9enF zOa2~!d>ALwi7750YD;mDV+iFticR5Ere7<9Hn7 zXwn>@{)uFWYfi(LN2l=7({O*CCi4OLpXghN8$QC0!lKO__0pyNmh>{T1T7Y`Ac&zRa{D ziaXRn9O9h>bMPC>EGrUS@=quZ!@^j&e5|F+x`KF?{1^BeM8bGjjptF06`E(Mf1$s@ zh~NlUkF}NwD-6%F{{r8`sPIa-cC4+;yTbge{4ex9JS!Xu*NwH)Wzq`fS#lcu9eysn z7S@h+l*LxKpQWbJ-{BX+;c&xPXIXqj6nD3S%kcNY8{ww0uCnPBiD%_$bQzu#j)a@X zy33MQ63>zU23O#ez=d^Vwlc*^&2!Yh(G~cmAYeM7y-dB*@ErSZ@B{pV@K$)^*kqY@ zrTIDe--!MJ#)PBc&123o-Ad*;@@J5Me-z#c8^?~78CSZWqkcvS_?2)xybZh3O)I0g zGag)pe-hrqMF1zuEGrYw$v>m3@VxLrc-PpOGV4m>Ao(Bg4|qX8QvX5! zfL{yV@ZPa0d>b(wWd8$xgnt%33hx`EFO+##nh(nVK|jK8gcITYW0%ULmCQl%2KXnG zg-^nku`6Y`_6Jy!s>Q#p4*_$-@3I0{UBEgul zT)WErynGY=1mi+DJT|5(*R5inCw~F|f`1btVaHfaxp9^IdFmJRFZjK1HhgHTzTC7b z`aJs!n1+8Bz6c*4Yb>{{N<1(Bf~MhR;T-1Iw3J&{5igMc1^#D{V(_#CWNoT$H&^ry{pVG$p1w@!>hu1%&}@OmsT+^khj2p z;6H?~!``uu^4Kc(3)C(2ANZs2P58tZ-B})A6@7ud1#ZB93g3oLjdhhzuS&ci-$FOw zHQ^!#t#p?sH4`tA{{uJSb>X|PG-fMTG;3a@ssEvy@FyXTKe4@B-E4S~{U7)R{!92i ze0FTIT-$7ZQT`wL1x^c>!{=~RRM*VBNd5}`3;!+r5RQ!pW~U!;CT|AjvbSHtIV zQo+<5eUbeY+=BlRe#Bi6C(A9(i5KNx(JgpGxE8)RcBb6gOwi>2f&amq!cTNKj)$_2 zW(`gKANn8sMVJm>9-G2fR0GZaANUpiSNJ)6b?id9x7kd~|A&5sw}czvYh#znrDldE zZ-f7X{}X-*Pmf(Gk2Sk#>Nfg6_^WU$d}Hi-dAvDFv$w%*_=;oD;~R7oua-A&HW&+yD}VNQrWMWtxbbW<}TGdy>=Ft5X&tx~rby4e}}J3PN} zVQz+9snWKXyX6^?J3L7)%&)MkRJs7&G2X!5qO!ISFOk2|-|0zlVa$LXs2nYt zm#E)F?)0R(aNOVCsuEfZFR{PT&-4&39J{x-sk|-bm*n3>W_r?GIR0*LS4l0*OJtIM zmM7hXW9aq{RjkGR5|tF0<;ig2IJmu26>o{Y#3t#JJ((^X%eHr^rd#O5OL9^q*^}kM z@o0OuDrq&*L*A)R@npMjOxbQzDOPKGs5>Jmo*WmB3)}4~^=d;8d#66tlk38%UHha; zyV~3%-x*2uC|o!_Yj>)2tC=2hrk?QRxp0creoSRt?e3vwMhH*73#UnOc*V3j+QZJ& zr+Er!7mjt>PpT}d6Fu_GNSde6h0~SxGb-z9!b;B4r+btxoN~lddBdrO6N4bevu`aDmK3x_PQEy1xy(?=1JJkMMg4m;ReD}*(MK91Co8l%bHAJ(De`Dt*gT9Q<~kkIPiE-p zV$Wh1cJbPeRTy>dekvnU>{;T%Zd#mZGU=lIY=*wXv($x6t@e`@7G0uW&WMzF8eG_1 zYClt9)e!?^rk?aPy0FO;8#5d_%>b1dAwA1n*lcN^!a|l|fX&pGdX~Ge>Ct|n!mBe6 z$eEE+Pm>E*Y}x5c6_Sn_AhYyko)s=^0<>SLi0Rw|R92+Sv(kmlc=qcRab0wP&C-{9 zR=Kbz&VI9ET9+7*vm)i5W*7FR*=JNHttD(^wqE6Fabb_xcuJ*Wt;R-WM^v8GF6`AB z&#qLjHQ3l}eT8R@3wx%}m6o*$o17C-dp5Z6GCJN;XpS@a%NlS*cscFl4@7k0z44QkmURh6&X3f3wz=?RZTw87bsaH87U<`B+FW?Tg{?V` zb($fnATrOh-Q`8}-tj3cZW@Nz0{wi?{VqK68NX2JU1uJW3nKG9J6w45GJdI2TE`5L zh57{^%7sTD<5wzU>)b3nO)& zT`sK5kIzsittW;_rM}+N?!pTBc#2xFUNcNn%1FIuw+l%*7L9n3yR~7YRme>uv`?;diJ`ous7bKwyq~e$YT9sPlxME8XsMO+Ob|ULKR0A zdmeFNrE9!ZEvz?;u*Lc%9*Cu`1X&(*bm1%O_@r99!8|IH zk!2o>3*Q{aood|%W|S<|FZVpNqxN#;CH$3eU4He9|7D z!h*M9j4jiz^gQRnC*JW3YVQW~m|PZF={e}aC(rRqYH0&AMwaVWd7gLS6X5t2b!>xs zj4F?;^1R@}2eI+%>iCA}7+bDy_PprA2cq$t>S=mIVoWZNG<#?lKADWqs7eBaomA;t zJl!sQLYPRYQUHyeQbk%kFS+nWJ&|3d1_nE;(y#XPxbTKKp{&vZvt3q2R(q^2ym3va zs&s&{lNI_ko?aK;KqhLcjKFQDDk5t{iN-1mNZ93y zh|V+M!VB9(OO+K6<7B0Nt;goV3kZN*!768FAs~V4|~%j)Ukp ztJZJujJog_GSO8v4HDzBI4C@Y!av`HtxBQSOi)!3;2C$} zzc*p8QtJ&9Y?WT`nQ+aHY@C>^((26R5k-ZaBcm`r{uygdAJg>W!MD|TwsPgK~4tY*w zljpFjA+mqsQkA4<9AvfrZV&5P7O_lRp{rtgw}YyV-0gY8)f71}alI<8k2=_D{btXb zu9cC46E~}-^$CZJKZoc4DS8+Gn6CZ*KRQ)0+Dbd0emEaHU(P2V5)&j05`u)$qief` zL4q9#;}YW*1_{9qgTy#J)Z{Wr_9T;J_Qj~Gy+%b-B7OWFq=R%y0#%tR#{^wrF=uN2U|8!&RiZl1f6^Vv|FQ%1^`% zPaw%kCJ8JMn;q|>qbCLr*N}!vISDNgTO6~{u@l3FYe{n@F%r-VMTY|*%Za4nI?`E5 zjYJDY)-fB^oJbw6C#6beB+!YRV=m^Rr4KifkxCiAeDnbnwiGpJR zYQY9Y3#qQ6)M$}-(xF5AiR|GmBw59%!D7+rSd31cpmT>q(oiL<(PHtGBL|(KPZSJy zljbTS87vV$bSy>iMB(rd>8zrX(Gu~rV>vp1qG))Sl&Y9ykRyKN$U_%TlnjrOkt!K~ zZsHk7KDvCOY`9{!vYHqLa>b7wE0Oy|#cD9OmsQcqtFRqxNf$yni`FkiRT;}&<&iA z*3XuznbBam_=#f^x^<#;xN&x*TE^cO@w{UTx_zQ;xM{Ysh8P1VvDL8^g|S7`GFx3k zjX{)n!C^%AP6Y8@jI3eCfIRV2#|}h4IMFd2&NkG@V^E%W(NT;Zo#-0wo^7rnQosuF zGsi9zJ<&ZpG}~E2rJxn!B}XZGdZK4|c(zo-q=0Y7OY8{M9JQ57MFrv&hY9tw#EnRpLt1Gj6|5A$a2!GdEQ3dA z<`}GUDq1PJ9pz}CW!MPq9J7@e3s#9=I*uTfC253ij?+qwMXSWCj-zOhC3S>;j$~!V z0=@W^<9&?AOCMpJ6S2zp_aR<$9797bStCqyl(ob-uv+}u@c~M}9#zX6buBdxtrn5P zLZd`W_K21_WGyoetPv$g6-u_`j(~FvwemQ$M)WvpP>Q8sgnN#;me7E;qSsN2G?u~< zp*hZ4N`uylK1V%DvlNX8&yi{w4Ol1o9X6C&0&zEShbxj?m0C)XC$~dNJhS z(R_=2gm$jEj+g)p;s0qj*UU!^AIXE(}pDWcd6Tk-XJI86v25cQ+ zoExc=@p&NLaGXK;mbMY5xypKCBG@Q)IOwxTk6pT!x$1gqBHAe4bU?Ju62!YwvYwd; zHi_Rm&Y=yKjuCLKp!~!fS?qLN zM8%e#5#hN~J(C8uh(9A<{vS*yXr_OqSS0 z)jTyrrK2M8j>C=0Epdqn^GJqC2V2D-9aqs&%iu)KJOd-Aqpf1taSa`_3`^9`Gc&{_ zuuc5QfsnVaa>2IEV+qr zp1~$hMmxj@jvKhCyCBg$&uk+yz)tZO2S%z}3KK)~oHi;0?Gzt6FhAQ;lo*~T*_aGa zEdJ`itYk|`A|0IF16tqi>I_{x>#h$30Z*Cx_g5Bcp4vZ|b2#LD+ z&IW2K+AThDU_KSDQP9tq8knh|lotPRU>K35HPJXf(jemlUwrDo;2BF>qG`Uek(dVd zh`kOB8NtK5Wxl$Rnuhj>&m5R2VF}{>IoZfe1AE0k9T*;9=}3h04UO_Nv{!uYz)kU% zu0;2Ib0d)n_KANva4Wc_J25oh*+^xgec}rTu7I}m(23#sQX`WIXz_0cuKTt0CPwE+ z8fE;T5nnoRwW}p2Ns+Cz6Iq~4jA8poiptm|RkqqrWuY>$537*+RmLSHWRrF#3+xwP zVf#u0DhDTNvJG}Q3+)#bY(HsW<*+1ew%JZh2M5Gg+5VEMGAT)y?X*+V5q&`H%i@xy z%G4x%wq$3f1C#g~iyL(+)02$Z5xa~ZaAH3ex2IHQC7H67O~edvP>f~Yk`k~{-IA?t zqGq6jVt*F5B2;E4wPce`%nWcyRI)e%UzwW(vkgu140K2wz~Z=bWkHfV+uTHG!C~=r z7Drnv>B6K?wzG-SqQl}FEY2}j7A1wVr6xuT%EdQX99pX^Ns4Ainq>T76$i37pHx|v zq*$PACT4;PF^>po@dp6e+*5Ey=V%*+Tpa{97E%j+OM-sc%`JZlV5#{w@B4)ky0q zgV<3)wlMz!?~DJ#;yrF{9hJdl`031)GRbO@ct8hASSSQ zF0LFlQoGRXAOJWa{vV5Hpvt6?x`j>$1<(m`IE$Zmm8m233nd2wfJGd^;=`>neWY<= z#3AGPMNDMz_qZ}^q-mj&B}h;yCb9URuB6`^X<4XdDH2tRBUzoqS7wiFSxB-B393Xj zyO@?vRpyR_3k|GHqAD?&&A}D_1tZ-H%`7n+REwk7r4pkp&qn8M~umn+LgDs)PYm;C_xG z2U*3jtR7Q$j*m>xku=B50kz^dc8%nzw2sv144ga%)ruN+ofN3FkJReS95ENviR0Pz zQm9fGsna<*YA&i1C$Jl&8@O&ouah`tE~pnLvYRj?wsoXY7vW?)u!(8x7U_0n+enj6 z$rJMcBc`)kr7#X_SafQhnui#15=$GUdzC?KvmtqA9|$R=j6 z#nPk7u90q?nJ4Ch25}0zONv%@j|}OYJT)IRh*Q~8>1k!p$S{6)nfahmoW|~zo>%sc zjOrr1j0Z(AlclAXl`(3?BBelN1G|{T?w1r*v1-*KS}jo7$SzK2O;W$AICa7zQed({ zlQ@GtBn_wH5<0+% zbJ$u*Q&p%AEpncubchq@vh`A0RgpTpNIJ>r058sCZBj;6i8{I{a#F^Fu{fV?lrpQz z)CzjB(n%}=f|$)VN!qFkwQ8~2Ni9NxxPWcJB&Or)gvF$jSp-gs3t3j0U1e2k78{)M zB6L#JvAi_D%C6QfHam&Mz$q?bPfEHfL9JWtbW)3vQ(VlRl5%hZkAAV_WEO){;u7{W zrUbXDjf*2r84u(lox`4y@~hg^rp3xr#1inKn9H7(^f<3$S*$)qEkPfOOIawbs|sT0 z6?uwT0#1v|*mKf`stz?=Y&az^L8ry#?0IQRRhQbm*nEn}0UwDJdqFZ*b*n>*ou{ZA z^pTjyUX+Tfdeq^?(kUhfoDo;Bm!#6FUNs$E962T9i-4HVUY6*pm}JEg<%dKr_*g7p zuSlk<*ksib^@mh0`dD1ax~1}}xa5Q-SQwH$pSZenjq z=d0+V7dNw=(#5Kh2g(BvLZ+M5kY}gv537RxvMIY zRXOU9C}YRn}xpj^QJjLKj3Mdrt~f*^{+7=8uRx z@Ts_+y)T8Tgk)Wg^CK#cMxTm1*ay-LT+5`-kv?Mbz(sK<`w)|&Ta%4Bk&k42;S!74 zN7C)8wq#R|@(i&8d?uE#kEJk{4=p+BGt>(7nYfFMO82UQ*o{Y?VOD@k;%@ed^q{IE z8Ri(y$Scq#v6Ou(J*w(TcITMS5c%M9aS!`Uiqcix$)OzQ87d!rF79QYOHZqMlEe5A zX7a&haUc6adS2C=9L|34$99gsEs?SoZ(3j#7R^>^o&K}j0OP*y`fvcjKeaDkrojVHV z8qUhA&{gp$JIF()R2PhL=bFzFdhnI_Z}uM^O?Ba@P_FYVrAJ?h@3TWZY1Kue!nx8} zMh~uu|6$`j8Pz4DqPdZ?GQQY~$Jn8s%<8gHils`CSPi}wkF)>uXsatmsg|lmYBl;= z{D4isz_#O~5|)x8vl<}r1UuX_yV^QRv(zBc@@j-c3!CVfUu_?yU1}DIH9!(8*^wSy zwJ=Jz)G1PHkR(>I$(|fs)TLi4iOd?{5v$qJ7!}?+%D6Nl%J@Pp*03p_{OYz*rlm?q ztOZ`t%8vEuac0l5R1K-M$Sc;e8qd1wAU0@{kXZ|SVjVky_H3x`7zLLapu86O#CkT( zv!%LglzXWe66=6pWY|d_V|Dka&{8L))*-)WV>3L()jgxa__@ri0|Bvto$4vA?j03f z8i6vt$BT_@riZSM8Le2RbPciz-Axv5D1s%B$l>CoCgr7gGq@ z#b)+h&(Z3^qczJ6F1Zl3i!JOd&#~%ZqqWP-E@D0SMs%>iW2sIWty|`FQR~q+BFoP9 z)KsUA)-RJ>%z6+KId(2)rPJx7jmsh~84Cy^&(8NWR%eYiEmNK&4B%T)U>A5=aB9)A zOnr_rpl`*KG^_LQ)!Cz4mXYTe1Gp|a*~Oky)w!eLGQ&C9fUb+D*c{9hDj4lvWy|q|p*ErK#dGWi&kbDO zre7|7!fXP!#822wm=@nU+PFOOiHrpk@jSc5bGy22v}w8WJh2(bBHhYv^@MS5)3RKB zp4yCL@d9h~+^Y^^*DiUU*$g_xPuU%w2h|;;;c~-yc{A!1FS5m+N7Y@U-OJ7Ai7ns< z@iTUpCtBS-I<(w*p4x(b5HGQ%o~PA4qr-SsW43_X;^*vM&-3cu(b46R^D-7{#LF!0 zd08DZhE`C@R-y=WiEZqDkD?}ajEYjXQbnjsyuzA1{c7UIBv524Qv~jaU$BQf18N43 z(NKm~xd`16-E6sMV9l^GTFTr?Yz04xU$RF$s+y!RI?CBfZACwdSJ|VUK{csk^pw=f zYz1NQEB1ZQkec){Mk>-OV}Xbkud&BGLu<0em?-51VjK8L{F?p1lYoP(7D|1A+J=4- z5o_@z)?|-qp~wr&HgH#z*eXwQP3{;-87|1%&|T5P)_78C3dXo8^98~PeiprKtw&Q+ zI3`3nFHlDGv*=^%J!v&XW5SelfiZ%6qMx;SGHOcbF;OaVLB`6I7+@PcnKfl&6nV-| ziS3|U46;ogZB4}(Ri64&YCGx{+u0Tjc04{NA&>l&*$(cD->|G_c8zt6CeQGxydB*a zLoDx^Ut=Gm%`<;W>;Mt*TlS?(VD?2niYo6q>YV0Z6eDmit zu@_)~BzxZzsu5Cj`OeR&y$JIY*$18*xa3ivFMZDJ1sEU5KJ?tGX-zTaM?ROa;we65 zA9-%qw56Exm6wTq0HfpB$DT0WUt03jm#KXSlhfF!=Uz<^d;7`D%szm@VeAvngPM*M zm~Xf&??afI#XhAyk7~M7-1+9q1Pw4YihbsZ)^w+Y@|~9{8ewV@``q)irY9wg?{o|e zFf@pL;dx%un-a~BT$ZuYD!yc2dS2GVq$&!OZA2M}fiYYkufiIeswz;oQDrCw_Td!X ze%83ugaWdSDFc1rD_mdi0PEmXO@V=Klgm&asNni}2U>@vY75M5#D4G!e3k3(Raui# zbp_5gYCn1f_T>h62U$~7^#xKJvmYqnYup>&A=dO%V?m@%#tJX&#|`ujwPvN73Y1rf z1K?E{%f01Iz~OaEf%*z{0KE$Pb1HA5H9NJXfV{#S0DYm7qu=o+TXR!kf#HgL0QH3f zxIx|&YeA~Jz%-uYI0s&=LM3*r#Ky^!2Uug)r@>Q*|xpbjBi zi^wH=b8zpcex>vUa|qy8KyI{mxwSRbxH9sEj0J5th)eP2Tia4iE0u2IFu;{?+*q$3 zr}r%@)o$uA!i{J&r}3_{265hlbTfwmZUo~dcsE!(QsGL2TRx0%9Tu17-D2%Zb+0tL ziE@D3ptwn1qqRFVw9@IO$`LL@;xfF&)}GWbzUDLK0Cxd#Q@y3u-qh&Ih+D=&IvmPn zdTDFSSj8&kmqZ1?MKIiSugMxaRzn*p&jZIiZe#uk-Tm!pf~6 zJXW*H@TFXVa0v!C%X`c^Y^-*b`Agymz#R}A@LH^N(pcRp=aRA0M z=}YDaz!d=8TyMQKeXMa+Ih6Q8YtISu4qX0)gxusrc zEgTzK<-AHAML7A$E%%@>|pw*kdBHjl$@WHM3hOEL^o!!q)l_W^eMbDO-k ztgT~>`p8%E`w090)3`0(+t#+RCcW|+@gIP_-rQDi7&kar^y+KWe-O4hb4KqyYjA9f zp1j8V2Vkc!x5N9u+A$XD4cFxVAnbGHioK7lU1QyP^EKiaz&1~Amp5wd9vjj-uTjSk zHaT*o-lx`{v0*IzFvkG)_;Gu^&#iRt*r+~oO~$Jdn90%Jm)4kZiq*=miQ@n}ytw^d zMQ!Xj)oS(E)NzCjPMpcxuQqO6!fNts<~YFq9`2BLK<(ghn$?D{<>LsuTex!Xz}jKs zw5!cu6CVKV?ck1hRkcaubgP|TQy(B~ZQzc22i2yI)327kWVOgz4)Cq*wnw-U(SererWi^SI696yu zxGHaQZSFX@+JNK}2(Prb8gEK%!8rG7Ga@ViZ*;g?uco$eTxhiuQ5J+38eF|Mjjk;k z7hWwP#saXO&)K{gwI$=Ct0PFZAS`Edjo!@KvT=$vN{OfhSk2{{yxQ7|ajG?HiK;|c z%;Z`yCi?iegf*nZR06EzajbWCt#zDcjX{zt5f-vI-aEh6K2E#FED==z>p0v=udY@Y zr(5HcD7p$^9fLdN&B6V^`ZbcoQ~`X8=T3W<*S3x`u8Bx8-ble5?u<9Twr!kgjnYF@ z1AK?$&U*E@!^5&h?V+j>zQJ(NyRJ4ku4N7BVX6V1-??+%4YeKP;2MKRu10u#<<5Jz z)OL+?uQ7Xw8i1!a?t+&#)^?8zt#Nv&8ic18?xMH2wr5-ztAR`nz|U^(lDD+BcU*K$ z#3SQP7|iD`d+FL3jbg3ROIQIuxVbA{Q*Eq9wN~w=tO%c5oZDMo8>dNFOL`eAz`t7V zs`qH^V2x(2!7E!4{?c;SyvJ(kVH)jPGwmg60shoD@CyUaA)1f12}nYid(9 z`n8gmsRbIimh*Y*YtuExwGpq3S8#A07r-pVERAWc(nr*R@vx9<#}?-IG?uk$A619O z!}VOq%hzUWTGo<2rVdPi2JX7|RBbN)V+NmGhbF)c9DM`BPYX2ewPqht4<^Em+)Xd6 zE!2e8I(<|x4h?Ti!|Z2l8>neX>c>w>AhH6qKU4J_+-5LgIl=U-pjRR8pS%L zpI|^bEaL8X-L(}O)jGAGVo*BV%7rmH{J17z9qDHnFbQts?s`47R*hyIZSczsngos9 zJ#V1auFI?veL)ZJWllP8lE?z!X@*J@$rczt&jRsRL94ngVxmQSZIlAWjOB0j2>= zg}Z6)iT6Qm2Yx#Z0l5K9g{9n6@1xo-jeDIrKs17Ba1Zy)8?Eiugw{C&R3n-O_j1p@ zPiuQLVXP1{jUW^5<6d~5*Y;|n>mmUeuR0;kz4X4UjTx^fR0at<$bw~DAD^NwcD$-k z9i;3i3-0F>zJ7Ia;}hsYGRWA$ba;U4>l;uvc)X_25R~m`Iy7o@w!51kZM9R;2~~+Z%|$8czvN1WSW2$9_HTg4XH~XZ!C-iWxQgA<=jBu z(7LSgrb1;q(F|t73hpgm0v%)u`YXjOCj0LG=q1cnR~~VT$hW# zPlk568NCaSa)W#+bp_+yh30mm1^f&CoBM}PQ&%`XROoD{TF}4X``i#;T3yljaG})B zw18RgKU};oqpoCpv@p^xpQapRk_%hH(G@PjJJ1v+JzmHR}!E$PNUcg-i6!ud|QWt~Y-}uz-Y>+(@6U zP8hFS@BD^h5ecifWM2+$5!bJmzF}A}8&-3peaq`w#~as2zLD`p8P;$qzWlnj@uv04 z5W#^tG_-PKeR^EvV_B~bQ5>2BYdMW?U0o2TN68Swfw{1bo8a3}*MWafhLFsmxv-u~ z^KGf?8t-0j4iP+<2N`aX&sf(zKD6E$qIfh9+PDl~ab3^&FkTukJeUs~xT(I#Z>f`LA!NDP zzM8t!33`L{Eprm+Aji%1)z_s@Fd8D?$|q^0gFH9i*I1V|!DLWgC!Amr6u1Sx7F=ay zF{rOoPP7P~Dj7a9wty#qboDgQ3X<6Wj*#b>b9Q z0zc%I`e0q*gpk2`ojQe4SG9hY+T$l0g9-iUy zeV6OXCMY&2zau^bx$t9drO#bgF+sIK{T=lo%7te+z3*Dx@d*hV$nTgB!BQx4YkZzM z>jcdP!*}wBXeor;I$xm9K0&*|{2g%`EQ2m?y)RTJOwes`en*`~%iuX~gYO1zme+5P zzGLXqU^)DR+vK}d*E+$tA@ZG!Jp=GOx5an6u5E&8gYpLP5ujizx78QMT~3w_>KoKY zh=Lb5qwii_5GRVs8_Y)_4}Qw+@I9#Oz-OxAhWruAgBQ7C-=n&&3GNN%8^jr~0)EEr z@qCxkXQZ%}8@3V4Yt_0do3dM1SNCW$!%^5N&)Uf=V&-U-nSksC7hD!|Je?R!}l zGf}Zo*+F~^3Sb+z->0aLov7NV?w~$K1@H=I^7X5ao0zbX>|j0yE8!R1A>V-d!4owb z4IT2wXeD%W<-URS!zOAsnmdTIU={q5JK|H-Cr#9Cbav3xS+ojX<&OFW)u&F>Z1pogpRrPLQpbZ<1@Bp_G|y<9Er)6^GE z3~hAYq##-geO$dSt-fetc%yWafnXih<>TQgvQYxHH-mrYb`Qhrak zKp_lrO+IaX#YEL6_4kwu6~cC|#W$<|_{4-wFqO(G$oDd~guolz8DD;V+eFhQ$>*o8T>uKJVL7-!;*_$$X1A4>m)YyWlg{cTWs$a^9lO zqs_3ByXY&f@0l3J%SGlq*aCmxF8NC9dnZOWMQ+L1iUMzQmwj}7Oqyb|QYKnK5$xiw z_)PV&X{ya?nQBEv@DAtpmDkg8X$hN2nP~-E;g8%^-_iQPX&QR7L6%$5Rv6~4`Hs~O zOVe&P%ftn+4gSO-pQS!2O}E)8Qy0)Sc$f3|YU)$d^qVD_xd4ptXU^xVuTM`iZjQ+E z1!RQxxB!MZXQi1oD?5o#!FJfqwc`-gduf)<>Q3rYv>o2(LO#AeJFR6i*~xqgc0fA9 zUH6@;&&6|vp;P`8?SK!s8<@6UkmlZO?j$aPo$wd#rVrK^riC^;JE@CkCw$1=@|~|Q zN(*n6I+=^082-w2`YzU&q(wJJI%Vv=fseS`m{VMqrr4tVf%puRz#i_7&s|@UrrM(Z zf%*)Uz{gw|2ZoNP(Ft3~ADGX;F8CXF7mGgDG|d*n5AtVd7mRZEe1Upv%AG~<@Y5Ar2c3ZHV1 ze7Eb{(o9>Fw~5ce9@xu0_J!-ePP1%L-=;oCduaHKi~8=>2XXNLd7Jqh?1g`FPkayR zJMds-xGjH<_QL1fQ{SWdt~B=+^KIfX*a!dOp82Bn-D#mM&fC;wv=6@Ep8KBG_oRjK z!kM`YX!tkx!uPzsH!Zp)a$CNPX!w$Q>3dlplddRIb`fo$494(%{0b(PPFEGFyQnr) z2K(>|e?KNJJ)wx~V%ord_zK_GKY$sWt|>Bf$!%yqRPg=$1DRpz+9GooaRnTJuk!u< zDkdpiSLE!XuAl?3FF(LPh)GS?7fD^r6<~s|@o)HtFzM;WqDYr~1({$!exQFSla+2N zQr;oH0Q5l^%fIDMz>Rj6BJ~~W3v>|n=T-hhCOf^Qh`hsm0S-YW|BgSI$;FeU;g0+T zIs^ysgZwE>LAtxhe1~v@!|-+fAASu}m>w!}-l5#+Fnog_;!k6W(!)j49mWmH;hTKC zKZ7Yrj}}Gl$Zk{)2l7Mxxa+noU9na9Bk?7ufN}gk{aU6XUA0yHBlRV!fN${${#nfN z^n|VCkIa|g2z;9#?w`$A(=}TSKgwUCBT&UB`sXwDbnRC2kHl4AhX2Kn^y?TQUANWw zBXt#-;X8b?KLu~dZrmFAQNBu}qi_(P;?HN=(oI{HVd5+B zZ#bAA>(}E-Kg(8inEDF+8~%gW_}4K(+(ki#nXkb6@PGIT{tZkA9<2>w`78839Kxsh zw=iAl?ycr9aSi+j68t2;k?BqkZFPpJYv?~Pp3m?XGd=0ytx}k|29Cl1$4~W_(oAo9 zbZaCmUqi>>P(IU7Gcl7C+mt^MUxVXt7(d-_V(8dOs%`3@sISp+_)lKzFK6N=C2S*q zV!j3+!2jjn^&e#hPtt5N{3L&kK7a}QEdMcP*d*;X^G^fgt&Cz?UP0!Q$3{q;=xB;&ToPclLln8?rfH!@k1Oxu)q2?!@}O!snqN-)&of1n!rP>~j0e=fF?^o?B2zLcx-D{7_MjS= z!sq)hGi8$$M&-|h7g%8`ztZn!DkiCn>Yphuvcj>v-hYibJ}JRS{>*qmEgZ+M@p~BS zB#qJVv+PB+P{XhD2N?S#t5 z9uvgA;sO!#&xLY%qf__CI2}Cb^B~dqe;x@(-{Lo~+q!=$3=132OOr|3KTY z$=dC-xtnMQ&2T1v#ILd?P1bF9c2n)B8NSOO^$)V8PS$Uix|w#+0{_Lo?;m1IpKRP7 z>6Y733!KFt^AELUO*U;;-Y32R4)`AbfjaT+_Ig#&wK+| zNb*(wWLqx2T^jDo-yjywruiCwimhO>d%O8Q5ds{X!`J#Xw!+Dw?aupD2yt*OU++(| z6-^Frm+mtmz{7dG&7WZ_nH=37xi5zh59jlZ{!ClhWW^3;g!mQ+Fq?1kYi$*iRXfxX z>RTkh1$>KtmhJfDgdJpr`4*gn3whQ*+h(1tp?4S}^0(+D)bYH3zRf;ayTcqIt^+4r z#Gmx*Y{F#S4rheAj+}5Yf6AYO*+u#tQiQnty4ONJPGlPQe`hj6dJj zHrcd8`GEKid=8A5b^YM=+1S=r6YQOb+jm9xyk+ z8MuPKj{R`EBK87oK zx4+yLM`tALB!6K#z*)G8zv@3~8=RrpY4}C%Kxd(zzve$?8M}CVf zDMPo@`3rRuiEs_?@z>Z=GxR&9UznQ!!nM55UvEp#Fz$@}BHu(1uHys#Mq5^fX{Yib z@jY{LIbzDKkRuIEF3-jmqbo90#p+)v8MVT#eAs`@c041Y znEaKI!3DUDzw7tdtQneO!>_W8Ex)r7xC#Wjet{xRZbAzh!I9FcwFCl{?WzSj<22-?p`7n2ME;h#zS187$!+ z`@^=cGc3jGN7N7KGq{V7`tR9-xW|Zm#QXp*!QK25{{veGmRJmr3KeBaY zxQoq?h}+&ROWGDQMNy*cA-X^tEaUqG6b-RcR3+*jstdKj{k$U3uOV(qLJ8T!bb%}I z0N*z-pkeS7O^KmL?m}0fiSHK}*f4C0w#3{++yR(k#`h1X8j_~yN}N5^9rOh}#19Az zYDk@;FOhnfJHQPO^KS%(G^9^4mPC4F`VMl#a(-Z7XhYT%Q;G61@gw*WR`72H5^%Mx zr9}Oh`Vrx>US1VQY{;I{QbImvegs#cnSUpc+>nbkCc|U-M}({M_(6e`hJq>X67yps z3~&V&|BryCp>Rs5#QB&CBiv-e4+*3-6io@2NROE?z>O4qe1OhqD47y1i9D9W2q(+= zp@GbXvMGvP%HN2e08WVV{|smwDyFD*sehw>LOAEeCj@3S9G{Y~i~NoG3E;Q}KRhtI z!8%2=%kZ206T-G@J~1%A!9GR1%lsR07hv}!KQf?e5T@vMIe(+>BJ6_VlLI-JaHiiS z{YEo)0d_O+qXWwuTBjIyMShd-A`h(LQv&%7ZBtCUlu_bmfR_vW*nl2)`&xFXqtwp` zYlOTeu&yCErDYcxWqthY-s4fBAX#9|BUd+&Zh;oG;~dI?=nY;djLOr`AGp| zL-&->E@zawhwv|m&!7Xv4LwuByQC;{4+LNXKQ&O=K=)3G?uta^dnf=K`OE;_5HnS= zTlqWD4T8|lPY;+HVyCKhtAD4uQ4luq+CX_j+|-2KjHrW`&2DmYW{6detjU+AWYSjI{%;^qVM53ena2}#@^{mr9YU5;1>LZ-xRpj z&^pyv8u>$hh;G62{FcD&hPJ7uQsqzys7>ZjDNNQM`9W8hvxaB52_ z`IPw;biz;h9f1c89av^HJe7Y%oshoB7Y80SbWL@anx7Jnzz^^U>H) zLO;Mud}-imL(kN3sq~b21a8C6`MrVX4ZTyNrIDxdBXk>H=IOx8hL~xJJ<4992Xw(U zet$sG7&}e1N8L;Hpe}fYHwF4N#!XAuL-sN~;12wPKNJ|yICvVZ*<eVaDEJv-5kH`5ESwhF<9tR%(a#WH zp#y1+MbpB2q-RVN+=KY}7075TnHJp>c_v5EJs98{1DTCw(-eD^e-gigZW!d70@}uk zX{x>IKdIkQH*Duy0<#*A)6)|6l7BM4gZuCso(;@yv`*9PHT)_6j_$({&j;o=+NWvv zn*Su8fC&7SKN-+93e$9ZoqtkKPy}A*PX%%?2~odS`jdGA9>DMT(}CrUt<#KqBY(@0lZSzIjlpRxd&%d_AK)SU zoU!pu90IGhrY37t;$K!yoypfuoIsGd24Rf62Y*F%0w90>>JMWoq}C z|014&-{4O?3RoJGGIjf$e^JlSZ}2Yf3Dh*EX6pAze=*NM6#mR(6`?Ub)3`74m;4Mx z;XOVOXl%^NH0@KqAm~5A@35P1547NlbIU&U3+hkwJG{?_@F$p^*|Lv(!TbrHzzBam zaH=sE?-~p*E364K|BY4z+d>A_^>R@4DEBipq`^Y;6wga;Cy3I zW_X|Uf_V;}!e9B$z{SRr%;>(z3;8*E3Lo*e1N7y_vP=c7{G0d-^uiwgPQcw*k*T89 ze^Y;~;~JIYnF%!cH}e;G27lx420V?{Obu=LTmB0@gHiq-emV9`Ep7grcme)| zzw`G4p++H7M?3$fUZ6kW6aGQq2Bu@`Y3Xm~1$Yks;2#EVHMV9N>B!%-`~p3PPx(iI z+l_6RCR+KD_#6BMd-=zKaO2mR7Fzw1`WyWPpYhSay~bc>3r)Uc{su4LpZt@+gT@ZL zY%#o)|3)w1bN*@IQDax8n>N2BUV^{jU;MK`w6QxgL_1$nFVWxd1^+zow6P~MOiM4B zm*6G*n}0zEo;UVpM(M~)`6YS@U-B;lFB@aB6lKbo_!u(A6(jTsD(taYsxoyLVzE{p@jB31wuAEr#sldPV3P9AF=ur71JSbjC=1TneFIaG-rymbT0s6W@n?#r3Mt zKd7=NW$DVCF?oHYS6qFC0l`7`)GU3OM90|rkP6pp!W+RM_Vg@cStO>jkEC$*69xu{ z+Ox7uWy(JBuaK|0VuiPY3Ap6mQl{>c_loqYtG}QMCfc*JTFS^iwpYl$E~W5JFxj4q zw@rpVov%oJT?2$c!4!Kzmb=W{Ctg9m=6YTDM^Ixg%nFq``{XI4*IaK1^pIehy(lYO zCiSr?$bPOjh4^5Gy(BAI7U|Qekovg>3PXdL_OdL+e&s9iuadE@IN_f`t-T^kwO{>8 z-m6lq>n$N6ILm%KD`7wRitSahzw2#bcyPAenx)xqc%}1IslQ7lBnIc(?OEFW=2znT zl1kTq2_u6#yO5>ZPdi`9>nkZ;?+D4k9865r@0VV&^(6P1oQ1}S*HC;Mf_{z>#o7V*q|P_{9E>`6?v~oue<&sXoBnP!K{}3q{8+Z`G)I% zgbBe7_71#mGblP=liqL*5z>NN>|I&z{bogcKk`i%K?{?DMmyb|725AqR0n(r8w6=1#Ph09ydMV0QssdmVC?gzrwr0qxQkmH3tl@cE(C?xe|m~!DIGe z(`oGi^Q-aw$+unqCxD>Eo-|!|!1-!kf9Y-4aA9_^#-2J|e?WTG)}K_lMhJ6*_4f4X z#siU8JNrv2SE4XK*l5q1ZaSds8?Pk)%atT72)1C(f#ra@Z=O>6FV{#x7v$~P(_0RZ zeQiqe9hX{I96V*u#rsA>-%h3U4(&=7a)M{<1=HOJ%zfhrkpJx(B`n2LR^jx}0cYR5 z0n&fFMhnY>=j}z)!w00kwgKcI*BBu$c+p-mJ$fM0w{w6r$dw}G2QS;prYlU!*WzC% z2fI>*l|i??V!Fztel72HX|QXopbuWNAD^CJB44w;PX5C+PFNH4*sb(*jmhv@Cx+U) zG{U-Iz;2(eHJM+F$Ao&0*SGuq@7{;Ini%H!t?@fttO%ja3d-mY; z78BXe_9jWkyCw@ef)DH+c;jm5*NMsLt_-0#_{iQh-EA`Wi^mjn*A!t_Flz6f9x^%m z(w-DhW4O2HXf6 zFdmG=cD^MgxMm5s&Z#MDhUuWPe>`SWyWSIUnF0n~SPrWD=e` z%@weO-BdIqd{F9d!CI-6}2`7WPCSiu|kW-n5@xQLc!l_^m1}p0iNlF_=`MQ<}r-RFzT4xv!MU zwW`DF*Yhxy)wNP^2g{q{vRKgS4IXV8tkoPgyxxg%sV=>6EqJVHm{xn( z{CYfQpSo5HC}?R)(&`R7U(drFQ`Z{76Rc@U)#?vRuiG$`)U{Ud1?!vAwZ_8{`t{C# zNE+8VArNeA%F>z+E8mF6xKLN2&>n2TuoKH+^&5E@{pngSgzyZRt!+6>zG1^0PnSWs z9z4~Qi(LnXH##ws)3rgk5j@jWpmiTMzY&iCo34$*O?*2m)P@c_-^jzTOxGsiR`7gN zkv4o-dc%gfm#)nM-5I>tRHBU@j=a%1L`rjQ5pD-BH<;pkXF_F?$B-{zQn<})b za`l^e7%%DCDujdAnvQD|%E>ov7!~Q-Cfp5rnygw)x#7)D%zbnjg?qt3lU=JVH@_K= z8IG>)!u?>VNzm%bop0u0Afs!C@E~{tv$pl+wDhJ8(-mDig@?ggO|4pEdF0K`cqzkG zEIbO{Zfet-%9R7-G4{|^B0LU;o4(ds%GCq&FvHNbONa*V;jeH@IXTdVd4#Ur!js^G zrVeboFbwR(a6wn8@HF_SsY~lFHxG=*pg`9i;aM=+)U6GbI|t@r=AUaXEj$lCZR*j6 z%cX%fOz?B<6J7+LH}z_x<&lA%L#0d?ExZiAY>Jtws8GhmW3-;DOz6|DXpWt!s!+$} zVN9NDzo2OE*Bm!9p@NLFVdkCdfY7&nK=a_4nhHZ)C+63=OhUi*fz88aYAeif@fb$u z!ie>DRddoz9bMs!%fnn5jCVemf8I zzFfG3rhQiP@tFxn$hU2n-Q~hv6792_tur-83~zU05SI&Q!rSLJ+h@|+Bj&f`F;&Zj zvz_g_W?`o8i1Y0{jL34~j8=ON=CA9INN?LP?#hLu7VXQMTW1=NMBeTkF3omf$8>vs zbK6YQ5v3{~bEsU{`Pi<yPamU8_;s9;b*qf*D*RilC_&_aL~@uW0ubHCE0?ekoV1zU_rx#%Fd{OZ^Z zT;{+q1(!K+%(3qu{)aDUdb#KOe7>L0`;(Ecacb`*pzH|2u^Do7P0rUj4R=ydT!i59 z4{h(7malh`cQVjIgu2-LP)iq`nQwI3?o^>t2)WsUP-|CKzRBsllYo98)Xf%!TwU4u z7AJov1zkU=hc$=VyK?faPWes-dV5eWTO2ynm78yOrtVbd%NFEeOG1ac^70){?Q{YP zbr8#zh1}41FOQ_zlsIMx#Kbd~12o#b@JK$8`SXDdQNS5^L?(>7g&-WnvZl_6hO zeSW~{oK8Ro4HDUEkaafZD^7ko1${Ee%hrU3y0+veo$_=Bx?xZsONBOw`MMUvT@*C1pnldGIz@N2yBMfbK?7`K zDA?7JZ)~yMr9LQEqd|5<=uB5+be15@ZVJV_{Q1@v z`7Q0PmG;h6?=~XoTGwy3%zaKhWZwK|q%VI>x>k zN_Sn#S6cWP6!c=C6X+Cb&*_$Mp-&^vnyk{ zW~Vljfc6PA#=ae*HSWpFbvq526jVu|6RaaN$vthkekYm9KrICNjD0UO#htm_xYL%Y zLdOFNu-ijZ-C4^`JDr&X^fjQ**$+ZGclL72PCk=@@&$B~Z3)eA=PbAGlrtG9Qb1p@ zyF#^w*@{lFt)bcOyycFa+L<%~6$faX-4oJ7=ap-xVI~EA1?V*E3e9tu zE_d%FXEM+|fMj-mXo0&5%xAWlDijHzAln{VXk0E|95 z%N_}t+&h-*b{X!b0Ev%6tUFZTZdH*9 zxoMa4ZsJkWh9WE%vbfphmR&3%1&dRJ+>;A*yAAhH z0QW{;vw_fd_p}22Zt@-mK;7uC?8#7zJF~#J+jfr%)NPbxPla0DSp}xu&U*+TXrsTe zr$a7xc7bI#e-8yXZ1fEq47Iy+3as>Q`5p$?*68o-SD{1h+yeXV)II9svK?Jy&x8)U z^9mfhwFCjsX>^GVh1^hk=Gtu_C?H6qZ&?LYtkMGaZjxYt28~i|G$gpIz<+2X)FZkb?!pNzg|)zFB$ zsUW>OMW{>Vt>_ASJ~ZlXF3_}U?$1-e$ly%a!-(GP4A*s^T}`d0E@ z28hGxpX@iGpu3~M*lN311$r<_vll_)=`1j{I`1U_1&sd1ej8HYg-csn`Fkng`l27% z%b~d2Utn#O?_~hei~h}i7dq!2F0i+z?p2?Xx1nq7mC$+jSb?KeJDUJ{F1pVC5K6ko z3tX*+*%Xj)(NAnTbP;A~cPlxY0je$f5Bp>2vO56=OxtV~2({=2do6UueW4)G>YPmg zZI(v=Wq%5#-IofKR(>`G>{#?Odn0tseYGIjD$izs1B?F0{v5jDzFv@SP0d!9$uzpj z-VEJzXB2AMv{?iIT2TgfOIXuAxlq?;$fAI@if-XF;Yr=o3iWMd76ar|^b79R@RaV% zLSvgPO9c!n(r}Z)Q@gY1LQ|VFivXr6`XzT;Sl69hXldiKC;*hATe&IW8QnRB);2kd z0oW+|6?c1hR(Ecpy)BicJ|jEOByMVWc6VN(qfI-9017CY%-s>zL-C!f%`k@oq9?kI z(}m}CmlnF)$TB`iJ_@Lj=nhUFF6eG6)bAnhV*mk(e#^}bo4e_bLgOCWeJb!A zk&c@eF6r(pH0^QTN92=EbSF1IZ0TkTEqnO;C;%;@>D+>FWw*c3x<|f`0caw+i(443 z=^ie$?@8UK=F2T;2Dd0&*F9F~*rU}GKr=*{+~Tmc8){};dklIC*o0^%XAE!XK3nMC zL+TkCK!fOR?$Pk3?gV&nZF&`;foK-DB)qx%LSbN!Q%?W@5Z%K)9=3O1DpdCHdJ1TM zh~Sonw{~AGOzx5O43PQIz1&mbZQa)k(|b~SwLoq~v$t zbWbkQ?KRv_0sjuo;Y?wAd-t>={a*5Z24HsRJ}y7p(w$jk+-tjE1uz}ba|Pkn?yMry zUg!M;Q0CD6Tv6E7on2(v%im7{F%He;%;EO#oFeO9`F;lQZ|DK8IDDu(x5&OXb-!99 zyU;wYBz(9#ugI}iJC^`18_MR&!fxn3bnP|Fr73`{q4}I8?CCBoa_=SQGC)j22CgD3 zbXS21*)~@N_!(NjRfc`t^+kcb&bb7T%+P~eHSCc#7AbrAxfD>z&_b>zJk-6VD7jaj z%K%~wJ;YJrk?y9V^xo85)hxH8MOXIK|0Aqz7<6a7%>mDw$yHXFR#quGvgxefG-#u33aB1mz z#7gobl*_#mPD1&k%Vn5H0WAtW&e_8kyU!N6UF19lz)$E2?)C8H?gY57ZSz#1IH9H7 z*6@|?3q=8!a~=UiCiEotW;oq_sYr40^C-Y8p{KZQ;cMMji;^yR9s{T(^fdQY_(u2j zqO>bDPc4xTqh%aThi`UgkeYqkYyu!gD35zPtm&Cd>h>A3DF70oXE;ZAQqMF}zmLpj zfG&id<=zWV>B%IG`)t`Nkb;nj+a8|UlSP{LIkO4C{-Ec$55l^hY|^ri&!zz3gYvnS z@Qj`u(z;L1W`M_omUFwpvwCt#`#w6At(M7dRKT@{XZPfhj(yts1dwu2A-5;2?5voDi<;@sn11zieOtEP_^Z-f&IN zFlpbPGN=`@fGRm(xUPpDBOUv-3kX1dpen9EY=!<$*M7qS3iutUni~vn=s8Qe_mc}4 zKyjco91d^lNq`aGwm=1}2CCtP!kc?8kb(Wq1q3iM&|2Hv8SP4|mod`R6CYyB! z3=dL(h(HZoAiTY2npuBjC*e1`rA8dG4$5p`Ki`{XptL6>tY=19v8T zxF^r-IG|lftRWHF$c4ggC_r@`Ff62iLx5i36j-B`n%xJ;g$y7Ckd2Fmg`O%%BG?wH zzz0B^xOmvtQ*RC&a4sZjNLoTKaucwB-e^`1@CzwO?xUBubK#+$E#~9_c_9NSeDpG> zhDUmu%;^KEg=&pFgf?^M!=pXTW=*^HAp+v@XbbmsIMB1htZO$sL_yXay}~8Kr+V7V z`gZam26F4@RqmT`u&2XpY_~n6LI@q%xr^a5J#?qp)b4zUfJ8ZZjr%sNz!lHZ&Oby! zJRH5wT@J^4{AO#r{15|CZ}bNDUHDwju-V?8dPt?@5ww-N5SVOylu((-Y%jk^}U(sRKa zXm>6mAhnEs&;1lm_gpe7?ffDN63FN+?nd}p&sB4>U0%dMoEZIq`#F50=ejxFo?4{V z$)kwoZia96WUSD1Xmbe2`J!g-7DdxLd4;aSkV8Rc7ro7Clu5nQR_Hs(90mfo=pF7> zWeVM!xx(0C%TXasiyYh}WomEM3R8zOhiD)_L+^68DZ1Y56_yS@hk}?ZdXJl;%;?Qo zVeOD}7>KN*_qp4ZS-rU{>>a5b74oNOJ2zFC-J7?<(V<;TK$aBk;ObcMTvT+GlA@)p6Q>EIVr5T!)BIOqWC-LfLtAunbi7KwIqgtD}^X+^ptwOECWBWmRU$=}<&LUU02 zFadc*)W!i>yLZP5-9f{{6oe1a9!{^&1-)%6^asg@8AuYMy&RA(dplMb58579Ar**R z91!bzJ6D(vIv*w)Ng3_q<|~$7c7^32|1bq{J+z+#eoU`_h4rBPFay~;bbtd6L@zzO z!hSIIunIvs)XqVkyLW7byU2UA8B!dmDs2g|_TjAG4)+D8ZoUZGBo22sCvaL zsL&A(#JS#S#rhA)M;M4ip)L;Y*u9y>#t&_esE}_$ZVpD}-mGHNht5X`$SR?34vxIu z>|)D@{38?uk5CT>Pi}8cvGqgw5e7m;sFy2N4)x|1+doV_qP`$2$itN=hkNsi9Us!# zM+u1cAeJjr+|YvT`q1zw1yLQuaTdkXTUzY?kbIPZ*bU;j3PtFxf;f`xQ57;YNZ=|J zUvGVJ;6vx51mt0m$W?=HWn;1OA^#`^;TGiOYLubgEyc+XA66oDgtUF|QjDk1_>gTM=sou6?{UP!(2C^M! zfNNBOy&c8IL$=3M$Z4QKZi8~Bx3k!E$oUunp$mk#7Ze4gAg1c(1?M zdPshZfiwh?xR;c3y~D+J`cUdI6`~Djh}*23?;R_49MUc!Af|wZxmT1V)Ihrq8J18G zIY37_yK=GjY_aE285>GMk{FzKV?+&1M}@73buA$bV{hI>SR%DtuB=)GQ?K9pLbf_)y1auEb}z4)G*p72=Mfxv)mEI zl}5()gbK!4q;MXk#M8Ob#5kWI zUMEv1!f}el!_q4)4F3cLmR1zy1f|kL`&U{S`3VLLswl>Jl^W0RN;{K!LItxaigP}t z&NH^s!DyEf;2T8=u3xc26S#{pETzB%iYB;0WrOGJN;g9;Wx&vh{={KrlP9rqkg+XQ z!JUcDaYM>x&xMr%#<`T(N|WECKXXSFyXVqMh2fV{;G0A$H==CyTwR%D(Ik5f;oV46c0IWSvz@=6>ZYo8*(0EaGd zpesNXy6a=ZQxurl(6^idMxN3V_s8T@3^>zJii;|OrwTHOwx?7YY-Z>(7gv0q`jWuM z&Zh|QjG=#U6JU7TSfYH)KShE63w_6(Q-(ZSN|GPTPcdNTLf><$GU90}Nq?MrN(EyU zy271TMm^0Xn#0`&;Q+&2mx z^mLRM58Iwr!OMiw+(j_Hbe5P7JD(=NmxTVseGC73w#0Inf0_c55&Dt4ti(P366<04 zX$A~K=-=FT$~n()iT!ZuX%);r=o)uLIqw-OaU9kzBf!Xmu5&*qNzZtR>#$)N1+EH}IBz-uwOa+Gty2;&CZhA6GHJ#c# z0^A}vgTE!BVJDaBIt_VLvz&o%;Wcz*5<9I_-$~{%;N!r*;BSpgVKYmOowhs`JQ-NS zPl`-svr0{!&O8DP7WkL^Z4n)tU25s%^C&P&;9L1Akr`}GskKwiW5D@JUu63Vt174 zju@V$V26$G;PsILwyjiugnX8PeKh_pKR04#J4%g5Y|pB&T*f+nUZjNWEHxc*K1;ku zYVn=?{D_66*;309{#gpvzIZynAX3TtORY!bXBk-G;=A~Tks5Zm)P5xOtP1N`JcC~p zsbj}V9rO{ciGbZI&g2(Itn7HH>xjWb!J-t; z%Rd#_#$GQ?A4!>1SovXkHoq)Fvl(TYF70y!Ebwp^|4hWePA=1R8J?qH8HeZarpR`7 zTA99!e2#(58orOukF>CvWyUVsb1H1fu%0i7w6a-crY`4m1gyO9{d`fx#b%dTy7=cP zSYP3}ygAa&=9F2xaO3w~V%TrJhq^uY~9EC6U8yUYVmyn@_-!2xs$U z5jR^{=IS!!Q?T&C^Lb0e!IRhI4{4n1b39=n!Mz?Lb z3UWV&qTR?DwzJISb}lDCy2p?3FGLjBMOobZatd^K3@xjXIP0g&tZsQZ1DZO9meI&L zcDT&$PAykKAjiA}+Bs*T_avKUL5Uw#aEJiM}XUp7fvVZ{< z8biTgADSt6sV&Z zdX*xRxM{2O-DDvHQYVH|p~w_2bCt2%R;Yq(iJ?;`GL_3(W$Jbo5}-k1sFaE5I68Zk zrJFCLKv2X`sS=sN<*c%H%Y_VxgBS`$BD1*MRrc;wp$bADhCYqRY%Xt=qgz`@>9!&jq%jO6{m3G&epR5` zSwy&K@&ODa`G}F*xJv2fizpDSFo4t}OSmnolHGC<0|FFY$up6qT+^y_cdAGQH3bS90jvlR<0Qms}Ix=GA##gy|3}yrS$M-3U1#RsA-X{+|^ad z9@)&mRT={_EV7NezAD|5GOKVc#z4%9&|HQ^)2m%Uz#SI@Fe>8UCR=p9h7}atS26IC zBHOuX7JVgFkXgQHqF3V!-b*>=bR)_%>6LE3b7E3R` zf`Tg^22@I_KarA173AjdKz(hpc zT%pC)Ybd7RPK00J6|fSQTHL)PUCh7*2LmJ^B5+lf!CqUj3bz#u8Tp8htG5Jtoy7#) zJTN50!C}AAqV)2`6kH=P1f(NF+!jl+S1xAYN`PPH)yN3fWJ&j?idC5JF{EQ7qg=B^ z9+L9WAM^w?IaFcD)2 z#zoF>ofebFxsrhK7DFy9qQDZ{;^9|PFsWjQMMdJA-(vO1D;XF&F@%C5=eS{u-IH3W z!U%~W6B9YljaeKXZ3zMMAcjatB*~3iTprp`Lcwr{ArcX}$ep#gJ!A<3lNyFRK;$x) zunc-^B`Qo^80_$oE8GQ3z~d|-V1&Zp29Kneq(?4cV79?v z1&-X{u3OTcREY|63I-=^0EZ!2}nb%4e0ESZ65#$20~HSX9Snms?oAl!7A{g99o$ zgU>0qvT`W{$0r5@P;?fbTW)7lr7E0-82m5M*?eBPgJ!j51RQJ_>>p7*Us^P_LZ zQW(q+(RqAnxtk@+7&vh-?Ea$*_^R?j)>fv%@quCW9bLrNmj_s9839KDhRtu($ZsrH zSiX#c*E)v1XLJd_r98>XWemKd@ot`oF6Eob(`>3th4(F{Ve1uL#y6L1IPEF|-kuni zK2a0Dqg=-sR#EUK#IW*+7VvH5dX8Mhz-tYI;vY5hbVs?7v#nC$9fd*hj+XG9wj8^jgaw{jVV&Fx9LF|jx@WXVuolC7!;aiPC?26X$ zW91G`Ya!q(ib3m%TKVyE7iX|g@O8tWbVN7sXUp9jX<>TFVhk7k=q5f5( z_-02B@wpXtK2@&5KM%u$9X-tFRXBKU1p$8*hTm({%@z#pXqT3(I4d`)zS z-%^o;KhFqcCGO*?=m_6bk>*nssvuWlA72+8<(n%sf_60_l2zExH$(&cjtZS%SWSs? z74GM)(Nla|g&zJ2MkK580N)r5@*NdM!M0izlI5Cv~K zTVWCS)s$CWgE7A;8t45LRzY6Pc*z9Odm<%Px#lPm-z%BT5OeSpG@Hqerxm! zf1x5EI4cR-N7mwF{F~7r5JED_>X{+_{c`<&n0e{B7 z7o8$xt~QFcD%CGH-~hipN>3HCR+~g;712+w!=LjXM0G;;YKzEMQT_5de3Ea8&Jc1| zTj4Wi`bjJPg5MRLCFHKQi>WHLU$){?d~0;Jkhj_)YO9F>ay=gB_eAwV;cAy?sHO(w z_4qXJip~>CSG(cY!VHj&SmyUf7YJ3rsIgVk>VVvcgM52*kx;)nAUdmwLGpS0C4Vq# z6gI9_;Ax=-<>&EN{GsR)Vaw_y{3@A2as&P&&qS9BO{>#ls#+bCH{dh;;pj4@ZnuU(lMz3v+isTot z!h516Lg#9e*SUtkqzy-SE@~0j)fO+mhQhK9M|mMyDfm}g;fY}|xe3R3Z?r}jUTycL z)~HzCgyXy~S|^OHc6hZlghalG6MTQvDvYmoc?~s`B)^C!_`&D~;p}R+mnLf%iF^tF ziO11RLIN;7wi;EEU&813q3CAe!s>w6SwjqwFXKP+N27M((rN|1F4U0xGFJJK=vLwC z>Lfgv%n-R5|Ajvu-6mXLo%W_`)FF8@KF^OvX(6Lh)2Cfa43k^%1^z_TAxy5+^%>Su z!}1pVHO&X2+l6VBdU%+bVe%FHSN>$QMaZl)_Sx2|!}2RQ$)Ae03R#t=KIdBEDETV> z8-F_L60$2Tef(PLsQfDah7U&Dg`7$&Jpas5(vJVme-%9>BW zqa#97Wx6j#sUz}Me1$(B9Tl1@H9l=Eag1!j^i}@rXh7Iesq-0Xsbg{z{((MtE3%1Z5{C``Fnhw z{~?+b#w%SuLml<0{CoTppN?J>&Q`kN1;BhtzJ>q8{}{b2B!JUot5ZLf-@-TeYtbvh zh01`>Sx1bLf589ce~PAsOQ1{hb=0W*2mCXCBYI7^TA74*1~W?1_<#J*(Hp|`%Cs+4 zr;f@rjc@Wdqc??&Dve)TPmGbxI77H4rV%Gs>HLOzYD{j%w+NcpByn1m9^Ny|82L8- zg>Y+ZikMkt^xNvyG5Kw*5hlf^idj`Azq6h=LB4~3Dcly*iP=>aKVMIskl(?#3R7Y; z#GEQCyqcI3qyzs-xIH#Y%%!XB{#3nsLU!Ou!qnJoF|W$u*ESHJk?-Qk!W}WaSXkxq z8ycw3x}t~d=G1d>9GZ36@aR24eDp|dw7a4BeqDauL}5`4Mc!^ zAOBjI88eC-s}wjfsDS)FzFn9VTOw|$O2QkE36S)5{2PIYEft%p(*9I~8j!c+slx2o zGO@Wz)304ed`|Ab(}X!OlSuEV()AnGQJ>2@@Ew9aRv@-j>EW%(d`^CVe=E$5nZ=GO zW4~>k`nmi8)(P`sC1Pilso%MdI7vG3ox=Q>MP#ci{ro!Wr0m4gg$1!nTJ%?0;Z4h& zBwO%Z!opaMI9z4#Ppwl=$}M(z0257r9> zu~spw+BD!?Pn;(A;`@c780`|Xt1Sckdg`>i7ta;Uv34=1+6w0ebDDJF2ZZ9-Au+ew zK9E|ko|avBo=_4yEap`^2DFWYOzy+kLRri$7FN3k42_g5@5A#2OUxsdR=eS-VPtYY zHV73lL97B+nXOTk<^6bpP#N=y_0@p^XCqAn$piR7p&GKl8>Li>_Opt8H4+&IkL~N=~52PB^pxllZ33ahivAJ3^sC}OJlI*}aLPIPd?x@xc8lI=V zlsoWZ!5TXywpHulKx4in58{V~##m77s5TDTo>#w=4`QRRfsUOKJF88D&gY4*$Pe)& z!V574+_siM{(0&v`9u7uuqhT7{nb`D1eveML-;Y_rPw)fxY|CLdS3lXK7^MDn`7t2 zv1-Slb_4N8@*|upyb?=_#@sX0$^=6 zdV~5$nZZkit+6ZOh3deda|3aP{1`teyctW2mtdjAZ=lY|ALFNlZLw?O)#@aiwagjv zFn(HiD|SP?UY#CHZBWn1hw(Cjj@=Y9)@YD+BXO4O#CgKoF^zZf8XYohq|VBn_!+?w zo8+CgMi0j`bCx`UpB3o$VpF`CYmCUYQ9Uak!6spQY^pbFjR`q75+Sk+KPP+;(|NPk zSP;LF3dvnKUucQV@aC+s!jaB|NH<lfwSk0&f-I>TEBlVYvsJh4$DY zZ~dA8a=t()WG`MJ9E=&g8`mf>H&Tk+i;IOru_fLuYmzWGFbe6xD+MOD)Z4TsjZ!bD zitNE9!r|C5FWtOGgS9pyLbAA2I1)2?cdXH2gN=&FET+o@cdWqMwnh)b1`{DUyh`Ya znY|rrjM!#VBQl3Af+tqu?ObERP8$&=d0Z}VF^iX7W5K+Qipo5$5QJEz*T2RJ^9d6r z1-x4D#%jF7YwS2>Q=_tgD+OPy&O5fofwh~67%Ac^p+9Ezj<2Cz*szI;$s(>624fq% zXVg49-+s z?!%NY65Hy%x+V!@5ECbTxK=nG+vdH#CXG{@)VS=!b;4+j_GZ**B<+htg7nk4UN{kR zcqiBBB*TkTLiXbZArRZ{omQiV(TPcr{dk>lGS=eFtT9Tq7uAH^kFCO~SgSXy#w0mk zBqqoKyk0mRb9u9CEE4}BH6ah+Mj;q$_vX}CVcKFQ$U*$P@Kx-PH@C(vrCwAgKuVng07HA$H1m~-S1 zepygsBi^Q(w3K>DJtxycc(ZUmHtKDz(F|!{CjLwg<1ND1v4D3+jc&;BGWBP97{4MU zW2d}rHF}r>nLm?9@vFi&v7oo3#yDhqS^cwo6x)T1u`}Mz8q<*TWkMxC!LJG5#uRYr zTZZ_TDOLUizb;&k#l8L-D~yheN{-++gzsYKy!3F5eJJ&^s>&mHt8gWD-aA&~7}9Pg z{z4wZO~Mbcq<6f=HDuUK{Y5^8-xSiZi{7&}ZWuS2zmUiA?}Q&?m%RxfHrh6;f02*l zZNjzK74Lsq@ai07X|6cehmiAtPML55iIxl~U-x6-bu6eK4Bw<2j&eP;5{)6yy z?1uMxO?oJ`Sv@b0Vp_NvyXnnXs~OgAAuf<(xLLR*uIZb+RySM3Vdh?-XXnjeQ%}DsXqC=%oAw-X+Y6FX`K|HVN}KlO#{!-2xF` z+DA97O%JDDQIqm1+$zkDFY9Ywt2wHDmG~Puj@yJeaZ}%pwYsB*SE;|r<9Lstj~Dc{ zt<}Sf&isu$jrR(3(Sa>SF zt?&BU^wE@Ey(pi-hlOQvx-Wy$e4>4gxI~`Cox(G5N8e;h_le;(>XLjG9}!IP?S0cI zJ={2$OJoRl3HkAszD&yaiS0G@k{rTrfi8%*_GM9~Pn@q2-;!b6EfmFFec6=d6aF>o zTRDt-1arK-FNdK}3f_Y2neslGN!57#H=ALIlcpoPYGu&;wM zj@aH%{~=G{L19DuOkXEu8gafsd`JEXBjJU((#KMk5&jM8JNZu-3!CEcK0jrJD;M(} zc@9g$OYw7k!<2m_^@jSLd=3u@o8#yE#wf>#b}R8c`DZ*Vyb@3LjZ>}>!&d5h`Oo;M zV2@wyJ4?A~xTZ1RlPdm1cs+i(F9FQ{yDAX1CFZj5yEq<-l@5QJ1GHZ>;Y)$G_ z`D+{yw#TRXvT9AooK3_JvUtulnI%as2`ltLid|GhD z=lM!&-Eik*{z-m=Wnq7Ofv>7|@R;pQ^`G)L80t*oi+uI9fn&}$i8T3l3^4Jy(YLWy z0Rf3h%YVl}@{BL>(OYVha8G5@>iJ%DCCrQENPI`fiD|@PsfJ-{3o2>xL^d z^KbGy{3ij&H~A8P?zL@G|1E!q&j~~E&Atn@f#c3?#5MAJ{Ab~4-0r(ntAKbqK-gj+Xrjl6>YA{>uz^Ifk^A5U#luhH@qd|nuh)4q&4&8OPm6W7VB_=0dE z?(j{n(|v0AJ#}5aioX^D@$J58b$Ym{GuO!<@Lz?K@fKfZo$*uK@73$_4>&2Dinsc* z>P(+He^2~G{uBRAI30KSvg<6L^1r8klK+Xn5rXk{UrwDB?)J=2WE%fn_$q#g_T|>u zKTZ8!{Yg&ai^7@sVP9UI<5TTh#DBEtHRgu zfNw{gZq)Dx>c8@J{DY8;pYpZU=|Og2{!9LZ|0#SE5BfUljH9+csQ;CJ!fD|mAW}N( zOry>}5I>Xu!T%DzjVnI3&N9mXf%;kg5B^cO9H-+xf1MSi3g&0>2L8A3UHqJHxXwPB z`h)tjd;?z-uEfv##_AlSTAKJD`Coip_#vM3jn}zG4K(#X`M>xlAsxTyJ6q=lb%XgI z`7{2H@MHY4F9Gak8?F9N{u$p8uEnqTF4P4^oiuTi{2%_W@KZePyHuxuh)Pp8<^SQI zg&Xl}zN>XfP(+xU>bJA}U8uPEDUyCynMnAo=UI87M(gc4c z-7d~bEb(utPlCR~Xv~wO--twFslTZ{J(hY~)dVL=Q^nbdW&Y-R%?a&0#4pX0rD@`v zgvr07UU$Oq4)x36Wa$o3pD6IR)$2hLVt#49P5P}kH(~a7)EiIO-cf%UyiL;4;=DwO zzq8(S!ubwyt63}EDb7z={A|7D1pf|oYfvjq7Z)Td{r-9@$Vkks<|)!$;=)9Yf4JU$ zBK3}XYjBD*LtK=o^N-a#PG}v(ugt%eGR4IStAD)Sb;97Feii(+G*dJtHu%rhyFqzk zer3L0x?6lSvB{sPAEZy%9O|!vw@b6cC5g@c3-y5$P6si`{2S>W@$rP+f2m#pA)T5O z{EbA2OA}lDSL>4?Rxy*zQ>A;wrxM%z*Xz?KQVw-eaH=$0T$Z5y84a4xwC@s=&C{eT z@tK6fKe<8onc-b(a&Ve7M>Hk2`=>SNLEmB~o9~e5`^5Z2i$Al$_?hipb#m|yNiP;8 zTK!oKrq7)361SOuE8Q;^C0zdO2FqvsyVPyL-%4{ubE4g!(_jTnjJeIMlO7O@6Nmh{ z4ffAc@2a;2b<#YsByrfE*Wma}`yQb+-zjB_WeK;xu)+12;XO(lyi=MlS`r?AX#?#B z9gWeNr%ML0A|d#z0AOx=Pt^veOAExxgwJ2!5ctgb9x=sym-L`m4Y0F~4GL@$s42m_ zq=jNlV#vRxAqmnOGsQeZdPt-aBmSm_^k=E})G5Ik(ju`gG3sw_&;+#a6TdcRN;zUf zBH-WApbHq@r+yvGq@~58HF3({)}RNuj`_8Dru4Abm~+U>+|%=bvS;wy=yf1GY`1q|D%-vsZG9vAJ2i~h3>?f|)+ z`Hh*7o)BM8T=pk`;BMQl{w7FBOU12;EB*@&fq-*6G1Yvp^rZM^BJID_puj4Hni{-U zdP>}uxaPmwkOUo(nQERbJuSYKxZ%IvkPf7_t5busrDYr++n^?dQSWxq3h3HXZf7pLERC&Ps$ft5;OX9)>%QVWbQEQrRCzT#H{|@ zb@tCwJJdUZdZ|EcP0a46^VT^&*M30!)_lKIDDFw<`wQ2(J~w+_#$2#3fgOj>5m@Sow5TfjFTc-ylmATVAUs@$XgrUDd z4=#`@ML0P6$JRMcYFmiA%nwRcVt>NgKfca&($GTP6?{;t76%g>`p>R&gI>$rWnL() z5piNue*zf(wiflS;6kZJ97=5NzpyTF(%C}HFh3-%6^|zD{g>7$uuP+71Rs(paU`*| z|LVFVNW3&N!@NkU6^|#j^e7(?$5AlzR>O@GR-+sy?7$w=$~xW zePP&1Wd?Jk1~HJ>-apN%2U(cOG%uFci6;{+{h3zd7q*>hW^l1&6;CBv`?IX3FPuAx zndXP3_2TJ-t3TUn`GVg`%?v&)HHtwx(cYh9wStt)%rqON=f$rQhx&7^_AgR9)tNz~ zv_U+RINYCSb$p@SMci$EMA|5Z67K#&tLqEHF6!>!Bhm|^0!+D5s~gm3=5F(&l1+@l zBv%C`2DV-5-N8qtO=3LZ>#w&4zHsg$W|<$8UKA$)lDN^Te8JPZs9C|sq?g2ViJ|^2 z)+8v_%q;T~>19z(jPy5I(_f@^sk4Ghq|M^_#AtuBRdY(ao4CiED{T?KP6YaQSaqii zyQzDExza0QGI6TE&8i2Ho4LpQxb&*{O(NLeVKttz?N;vzJ}%kCi-|M+omSH+=Wc>9 zKOwy)(%&YOe%5L^#qXww;1km8;^joV-*2^oF3u35 zR}$y@$E=Q1+E(IT^OI7O_(LMuKW=rMGPF|n2A`DP6w`@|{b#LikkXlZ%}+_c6Msxx zh6iczl&w|0H~5saO}v)4(tp7kI7K^KiP`3-rQeG`CDQ$utP1Q?soBA&rMJWziEI5= ztx1sInc3!L(jUa16F2&=Thpgft?KOHGKm&%CT{j;tk;Zd+lVZ4p42SfGNBomyk0kM zXrr=%dD7dWW@6I7wDo#W?3pa{GtxWatrJrQGS?f&ZEb2+@EOTLi<2g%4rHx2jXT?j zIp$}jcg5Q#bOYJzE#rI}H7EG2^qx3nV#YwudMl{>%p9{xdSASKV%9+Jdi!{)O`Q`o zN!!J#6SD{M);q?vdx-nY&q+JPJ0|o4h3j48hCS4M!RMq8MBT)^fztJESPU@tne!#5 zIDKNl0A0179vrvrQSS@pOD*DziA4kT>jUG?J%rx8T-qtloG=b-T(7`JnbHTBOS{Bb z6H5lRtWUx=fzg`_q}?Jhv2>tmeR@2#N7V-lq*ihE#Ik|r^_tV#y~O?ILa9xhGhrIo zv0iuDu$Q_&SSalg^%DgHZR_>0fMD)77tzvQaqfh9pkux9v~90?f3Qe$iSs5(20GW9 zPCNG!bIqi*Pnr&D{? zxk0nkE-sp=8yH*fIIVRN513a-9pd5%>%jPW*J*=`dLXz$Iw%?^HVmAl*SlfQ!8~9t zmOd08o!B&xfF=){OMM_%EFBV;Ol%&wus(3w=_2NtS4tm=k5AYKF0EH!rB2NYu9O&Y z>BQE7tLu}n8e!&{OQes*rzW-yTwk9)opP!3f+f;naoGetkkP1-wfl%{bE(uRJ~QDM znB1t74g09H7EQPYvKuWjzmJ+9TqX60=85)!oJK2bV3_%4i_|L?PaGP^ZM4g&ed_$6 zMe>Lx6Nd-#8XdBBKVdMJORQKn;U1t18(p$tKV=A(OPpw#@C=kTx?yX>7|azCFIG$l z167TKvTeU=2v$gfSUKSvsBa9&&i%v!^J+;HtAVb%u~Cuv{nUcsYRN0sObiWdX-vYR zhgo2*l=?(!Vq~DHF)gR|s|$jal25Fg7#(PC)C9E$hzDtNmE;#2CISOH8g)U#0qVhE zmDDdNh9Lci7Nva8UsORJF&=ID;*QxoJbE`YE-~eK`jc_O2@@*6W0c=HYQuP23o`-k1)i+Esc{uud8k>4}>I8P99J)OHX#=6Y#Ne0xGOIQe6W^PdGMM?i@k?8WniFi00^;_Gse@V1o4#~*5R1+0q|e0< zCUk?@&s)CaJE+CMb<#<(Wn#u)&hu7SjxmePR_P0I*97zr=00!#GS#6j4*s8^^ABjM z`ujLK6&#t^GA+Akt`XAoC*#VbSfw+&-sr(2W-3NeBQ6u`;!6>)a>Y*ZeO_C>{jlf zo&ul1_L{G|)b_=zt!~X8`YHSgJXmAxnrUa2uC|dxjeQDy3jeM7t}DsDoNTi(?vbCu zpF&)-t82D>)oPd9vWL=w)zDqDr%P*3TkRoK39ZGe;h~znU32Z(tHbVpnLVr)q{72B zY}b5y{_3bZvPah9RCuIjU)KVA@oL2(J*aovCn`E_+JgzwZbl~HXVxmAU}gM;K>@HYo*<}+I&d4 zmwFbgft@vfbfwtaS6dHh_R`PdHL$D3-j!tbtPYb%k(~>&V4$YC ztI$5QI(jIwSDuTrV6eu~#n@v~6^E5SQu9DI4Ar!DneB0@s>7Ne>3KLCcGtMNw%HR> z)g*;v=Ybq}s^;&mGW*n2?P24O@;saa!!-xGcGzd6>JD3eq@Dxo;Ay7jV3*ZCE7fqg z>PPxHybhkJ!CkxTb5c`Ca>+giOz>>Yp{~95d8wwukssyfunG3m9O>F;Uzln>tYoR@ z!Ft$RbF|B5Uz}<^tYPWr@p^c!#zRVNm!{fC*vUQ*a$%(A1eql*PqiO5vhwpd7xvYh z>=Nv&QeDhp3ro!h8{qkxE>g>!mg*s35j`JofEQ|fUC5rD8YcNDJ0Il1i#2jrqdh-0 zdN{($^Kl;RuL*WJ?8T{yBg%5>e;^+Y)O2^b?AudSM>OU1|8PFMR1@wxVBeXlCXp)p zKTrTK*PQ9X_T8!4BgS(1f4BfL(V8Ao99xm9J7OuPUH}{6m6~&19(!e~;Yd|E{Q}+y zuh#UD367YWLSk6<1yBgD)m-TE*`-v|kx04x0xpDuHT_*dyED~%M7fW85p04(HJ7@= z_V!fk5zRjOMZ5`KuZec`*gH~fB)Mf@1V!*h&DE|xa+GE4M~wUA7jY3Bt{Lp=w}(<) zM=blO1z?o;-q_lNG&Ko`*@d8lfup&x z-uT+7Y1$5Bg}e}#Km`};ome{~P1j+mpk4x7;23VaS5-SJ&CpR*LBE8zz_DDscS`M? zv=kC5vo8TN9LG)YPOF`lX6lGk$S+|tjO8YJr`Ik_Gj}L|qFx4DVH`KftFC1hr&&8R zKhZDat#CZ2^3JSfmZsTA63xC0N}-aQ>`kg&o@Vbb{v^MQOJO`W#XGxpRhp~A@)M;4 zpTRr0d%fD)v@{Q4%V-_`3{K#tdFR$|BhQEZ55~@UnpiV*a>HFFL}+iap|gKnqTO}cqe>-(_IO_=-pPEkgg^HKD!uv4IkuQ^_JC6 zP1hbX{vt2NUqdyw$h)I(~lsGTajHzS@Q9=3~lVsW-s4a2EHr*H*hY-Fi&( zEByxk7Cy=uy!&gHrrQW6z`g;#gBtEVZ*}eRbo(*muksuCJD9{R^9r@A(p|?azfu5v z47HX%ztRAI4UC zM{RMs!lV3+(u3V_4)?LwRl7Z1<+x>*B$whnP`fi-O=tvG5B9*PxKF*fc6Ykg zWBg6l<2_KzrFxIlR;24Zmfxs1!4L3hF5T;?txPv~s(z#2#6Q4ixD4;fS}{F^01WJ# zU@v5z}T$VRj>r6L$l>4c-z>jbqm*WlBwx?S?n*H=!_(%90 zXY%&ccBI<~^uWFaSol1b>+P%UOt*WC`{lPV3+Hor-u~K9y31qPPb~rE@PAx^H(J}9 z?jd|7y#$xT7q~+2VC_IU6DFVpy9DfmFLFiR;o70}s3)>tUV`^QLQZ%`YGaIwI zb@Pm-}FZES;!xEK*V4T+Ds#Ro5*xT90dfr{BT9z}GpecV^vE zqm2+8>^tCB_y+f#H>qy9(SF?cyZjFR6#{OTcXr(>qwBckcgg^MgL-a{S6j!V89f9s zr49Hu_$Ig4JGU;|7$(#QYXJM5o6tJ`i=ozPU#@8U}MHfQrLs@rK)6HtVG7yJ(2;ePdky4^3A9s{c2yWH~4{ z5vh{j!_{yZCwN!ZIgREM%4+I;Py?59e|S^s+Ktu|nrixeTmwJg?B3M64x^3mDD3-y zgCBBr-i*3Vqy2=jT7DmMa0Q3FSxjBX=sIDkrj`L7e#F&#O?ACS4`FQSWtfLF*XYfw z8!(0m!@@2D0!-$by@ho{#^{MiwY&@qa3$yPGIcQ-ivN@~)N&xgRa~prTo;$2`cG3s zFUKPMm~(lz)g@%83HHJ+2YrQq5IELLwx}L zgr9H+z1F%}8HWF=YUmH}pYT%-dw12%$w(oj4Eq7F!`0j&@7}t38K(atHS!184pX@! z-hFioGtB=fIqE}D3)8rxUR&Mb4C{Xyj{XqW!gS6-)?aI%W0 zY1{yFxjyg7Ix!=Ka6c>!8sP@+g4b6kWtdJzc$vnHFpul^2J4&|=95Z+N(N0ZpS$D@ z*R^L@Pih1@88^WKF3Na&>N+xPgcV|wK{MRQUG?^nftvlKQIL~yGc4o=z5R8e4A)7E zK&=EVa1(dk8?Ecj@DR$HUWr>^5jX4|tQ*J(6TFCB2^?@Ucgs6mHMbu zokme!gzUgq`8gr-e59;lE)SH^ny_u3F>jwERJ(fPdf@+`T?6 zOk3k2oH?C>|AAj}(|mJb_L?w(rPvg30Di?$zWFeJO|&!ehn#{Bz#ZIl-vU^?M!|F` z|D-+v?QkdefKLavuTgbr{-i&_?eJ?(?OOzQu2B=fiv0u}gx_!v`vBa%M%!ilQ~m@W zgjQ~*ZwaheqwBK#Nqq|bh2L_I`V6pgjiIaRPx@2*FZ_;6@-2hnniRrhv7Z7AzvmwJ zt$@-RQ&;3q`BRJ`vx}SUTM3{w&# zdc)4H28ZAe+%vum*ty2uWwgty@gcaEo9oMhp*5~9i=9dZhvARhb3PO7UE?93J)MdV zLzbKG%Yy@J!UX+dQ^65f&b{C(ghOkXXjjB8r{W`UAGg5Az?e*hS6NG?feu)~z2q~) zxJ;E-Q%k4e4)_zN^KF9(nQB6dv1#Ba{F!^zR|cnMYQ4rG}?9tQr#z3JNv=Vh9_ky<$&d*FU< ziEkfVm}&MZ>nI~Q4lB90eKxo_)9TgK(MEh6{>~YE`{B||8-dbTBRB!8xc7Y3aCxTP zYpj!v_ynxxmiYv@D%0h))KMAWKUl+kKsLyvWqOEcKxg3pAjhrnA(+i%h6%{VW`L8B z=V)Ie%+HK^BXx2HJ_!YGrOyG2GZj81q}G5=C~_bBTyT4)%BO+!8r%v0;8J`C;Lc1n zVc*y_pbP%Ved@z-cc#{7gz_5P1?^m_?+C2O)cGus$^>3m%cc7~urkx&tAcbUX1uVD z%kZ6qVrB~A<=9N%gOJPg`Jj|(@kGx>U8N2ZM+cI;Xp!v-$b*9SYvidQ3&*J2qqa(TXf7|L|{EQrbi0ocS9_@a>M z&GZn}g3iJL*vu9B2H`+v*!M4Dvp^8Ga7DghIFuRnMUb3@gV4b-z7ZI+R^eAlR5l1f zCs*QApt!Xvzeb|7aR|0@W?w8ySgR%=ADa!jVH;QKi$_z}YW+q@&c@x)#clIVL^Iav z{1%DIVZbT)7x%eOg=Vca_^Tv32cLp}b7j6Mh?%oCh0uR&4hX}4xG#Ov(7d%Ke?*dV za2OuocKD{Fg=@`zWj(bHoQCb(*FH5`yw>X1)YI$mX?T#c`eve~Yi$G=WY>W+@L%pb zUlLkQcHA24<#qTB#M~|)GaId1>+)ObDHAvg-P|6Z7NxEA5ZQz_;j{1%x7RlpWv>kr z$dEOG9(b5zee+TN+NeKLFPm@=Ji_hsEkMO<6|%B{S`T_*2ltathqkX($(jawJ?@1^ zIh$`0+PPLuxI}h6I0uh$zxn{$y;dt58yI;#J_kMAe%}&Qu~sKr8mL?lfycSueFjvy z)*x3k(78AQPjJ<~Wk_6`LRdyN7xcmZIL@~MNo!4Vq(RQbeefhF_*Nq4TC=Qdq&9%_ zu#@}4mx9{YT4hZmy#b$xU7X#QiaOTX2>!@!02iQ_t7Ci_sB^7dHa5x|@CE4OkS_~` z*1BX%Bb5g(LO)mUGojwK9%9?jdH5ofxkg_e8dw`9#3Y*s`eA@;_7$R`wNW|JDCgmR z7~~v22E}A40?H;T9}K_{*XlE)xGYsb(?sXv0ocvCeA`e$mOAhT)5PY3OYju;x33IM z&C&*pO>#cI1jF0`-wre*OBb*-Q3c>KJk1^SS<$R4L!hdOF2I-J84mk)p*dM81k7X$ zKop+k4*B+?d0D1Fq)9HoQP{&B@$Ewkv&;cyGqn+1fxX;OpA9X}vIaEG^hSIIp5qt~ zS?;qm%SK>Mb|bh7BisqX)GQ}!j*ZRoMtl|aaVLEOT9xGrSemIqa1Ea4$nXKBWqF8h zL>J;~@B-)aA(WjJCj2K`2nOLrPWCmT{H$mo(kvI^LDV#SQxg(Lh$1z^p6-M&NDk zmTwphWkrJ#hs@v+IKqwiMo>()f(a>|R56G_G5jdMLW;{)g)~mO7{{Pdyuu$VC1k4! z0LvDGQD`(j)*mlT&DMsDPPrJ5LJB_CKT(>ItqWP4R0$Z3#_;3)Dv6nuZ3tC4=@L8| zjpgJ0Q=~cBDFm8jOMn86<0ts1N%OKzp@>s1!3qY&@)P~jrG?q%kg}E90>+>?ev)4; zEzY)vG_CX&JO+*DRsNaM(rg<6ZP_hgEK>55{Ylbtvgz8`DsRDKQ9M7zKU-Rr?Fw01 zDKi*{?%?nBYo)Yo4>8VYGaiQ~@YDQrrR?l5VRKnCh(&kulz+aI&tykKkyhD^W6?x@ zx_^OGoUQ0qwozL_97^CH@av@Q*{W_$8@(0Bp-H^jzew7dttLD#yA_N_ckvJVfwVhY z+ih%xC@&yqsfu5OEq+6L}K_w&#BO;T^R zr@P8UZ^L&Yil6V#lbC_*Fd>cEZD1lwpGAl;&^Rg6~F;@&^BYX=#p) zFwm?8Ohy|1J%6>doUA%G{w-VZWR%1&^9$0d9M>t!-&7g62R+7r;I}hUT8@V}hjbaf z2R+WO@FOWZCrr3$whT-`Pw=$AQOeJWo{Ib}m*FXBHowyEkcx8@VdX#67ho!y!+-2| zN!xQ&Va-4E7kDaql27p;kap&%32M!L0q#Xl@t^v!v^z%|HvS`jf$v3HKGlCjs>soW zE&ou=m*771G@tJGNR>H;aMeHbm-s&P44>gYDTz5LgwAHa1k=#7e5T(gNjau)>Me}ySDpU?9%{Zc5$6}B9pc7R0mKfb^pm3nhLM7pGR;6(HSU+5o{26DoL z0cUrB>F7ni$UiI%jCH!xmUilE@F04H z|J<*tpS8|#x~iT28b63$<;(n2>gTLWA*?z3HBh71_%Hp_>gTO9osP82Ut={|#P9G= zuV1*%d|G*s`UX6N7V}^G)%AAwZh}=KF^C#6W zC)@6g2jy?@!wB%Z{IlypVm|rLFi8^d`U8Kes-6U6>&4 ztQE{eZ}F^uetrJB=;_Eo*@|bPCHy}Bg8JfhiZjZ8sc*q7w3PqJudCm_PIX4}Fa0f^ zh2G|E{zdgW*Qw7iZ~V)C3m!%9@W1*&{qA+zGsb`AZ}FqZ!0-1jsjpb4J7f8m`VMH& zyZrBdLw)5s!F=-xy~kJkm(`2wQV2NDeg~4!`#k4gQ7^4Cor(M_e}|LMGG6en ztaq+6pHX7!d+-=q&i~<0sc&CrJ)^<&_xLgN0mIwTE(~e&Gm666?0bOrg!5x=wsgH z-&UVsQWK`1-3^{Z|HuFBFRPzw(w;TC<=yy6l)@kI@2H<)(w()qsXgE+^a+2^Z>^tY zGMue)(|hn!=u;m1ch%1^r4S8(-2=2}HGjyzw|<_qx32mB1m z;7|I6`c)>^S<4}6FL)NM;k*3y`ZSY=h{yC^{4C1keSTD*Z3+|HfZYq`qP4v2Z>-NZ zMbAbK$$Rl!l*I@Aj{0H~qv%l{rhWwTP&VJ~chzq}|4;}=jNKj`nT51Cv&mLt?Y z@FLp8U-w7rdrclQbn_7Bz%n8HMzVE2IqXfuDyKU_b=n4&$ABl14H05SZC zf22NUy`opyK~;c-sF)umD;na~t9msZbOm0BN_d4F+mNtcO>_&k0=$H_@MGop24?Dd zZLhIIuD~xLGaoBYY?!fL*K6sZegZF}t^9ad)i7(lp|`4o{t3T~O8IzsO2eG>DMZm= ze`0_Rea26ar!~x5Z|aS7$Uk8n+Qv_mr#CEIZ|+qdrG5slpzZu5S>3RBy|q_!l>QmN zfup5qV1EX$A`3rRPHI@b-rj3GD*udMMP>XHd3M99^{!saQOX8hLtpUs z%G!ps^&aA$(>DAX`jVd}&t)32*N2G;!rH(h^c7FZ^BeNlM|&ejWgA|EcJR~X1r5dP z73Y-4s9(Thw3B~8)-`NjuR5nWM*o5rqpx|jyr^O4dNq+p*k8cw=o|iF88qx(uRUix zCjWw8M^=8OyriLGz3!al81*Z71AWUsDjOOq*Bj1N9iy3F@f+wnK1p8IAg)g#!U_8; z0O))Ead}09wBB?sa!mde1GI~uEw5~Ft~Z}kdZ^!k9_{9zlv5ho*IUnNJoIl^kM{6d zIkllJ`slfcN8XQ@pnd!TnQ4g0RYa7> zsYW62FaX z{33Zr!;D;A#B!XWeh2TMU-;K$Ys0KuL!|0B{X2dK{mKJ*SHqm#6r#_tzXJpMjek?# z+b}QJ6p0*{f5!&2pI;*HYgm|Tjwnx1Rp4Dz$-gbz8W!hTBbpO*6@C}}&KuNKIMN@4Oosu{$ttI zusv7Rr}>Yr!OPJfe2RRaVP~$Ics*bFF=vlQfS%LiM~!?rG@AwGn-YgmPVdmXnkKl2H?1AV(W|b3J`kCuspEqh`KP9&8xM4HM;v6~Ic= z!WYTI4MVxnzQ{>gz$=l1XXKHFm<@{a%1%lItB{i~krj<`8&u~towSHop;q23$2Kwv z8`KQ(lvojbjN158Ilgh~2JLxcr!3-+k&E9ZPi&mAL3iHLN&Nx-5BZJd`|A+qO%j7AIb2g+9wTb-$q@aKJFXd^C^EQ~yM>^#{a0)uW?~tcAF5F-~uk51! z1fQUG{%cv?xOjv0yrzr(6Mur3gS=Iq*|>Crjp$J9pWsvUFaMpK)VO?u{k*YD{u6(S zFuzNl-MDIl>%66lvV+yg&F_)5jcFS^=c~GCJ6??r@q6XDjoBN*M4)2rAQc_v2_ev! zzae@)(k0t*DmucGfV{DIgW`hHOVxrj)WMT@xN-XiMs-2srE75-I?9uHv~lMKHIc5^ zT9A&8@gx~++`U12!RVE1aXRwwBp7R~*r2;$@ltibh>r6l7HX{AV7O4_rR%T}o#06- z(kO07A)Xdn2QtuqJSVScls1?yM7(kx&Oj%5G81ofZZKa^`X~t2FsPF!BjLvO4b}@9 z9}V#u)Wws5Xk*6)8*#f>2r`kEC-cC@&JFepMxP9ECi3xQ9M%}x;JRS(Q3$L>ex3}2 z8hbZ*E>!twgx4aOC$o^ofem4zgRux?p#V=t0gXc&q8B1Q8R0AxoH?OJv@2-H7?9EUsTFe16YrGdGhVwxH!*xQ6tk0cs)ADlP|xA);p?*FnI~t4g6#dEo)dcd<0N*XU8n@@E`ZWQ%3Fo6r zd{{ovxHC^pd^olV6rjue85uY3&eQfA19B5CKvBMjY#FY|)Ad^dR5RF!uJGq%Ph(}C zp}#6XH{*@yD&I$JA2Bb5D0FNy0}9bK{sI};NO`9INI-7Jg=moPmxGPYJafM?NVR}X zXo$Zgha21Tto@oG-GVov>wHx1Y3#_e5$%p`0Y&Hre^u^l?98+G8-sESE<(fnpxoaW z%5(Kwf|LVnMmPEEa0SKvL84eEWd0TW-UpC|;NnnBBB0-!)+Ard;4Nbcb*+ z6VNuL<$DIIx@i~w3{4QG1?Dzo=ZA@S$hyEbbf-WC<~QZ%M+YM0y@0o&iNf^2f~Mkp z#UMyVzB?u1$bWPjyRhKlU=)drGG)Yhg7B%h6R})u}{R@1K?h+mjfTrE~+Dpb$ z@?ZFKq!MNZmNZr5>n>TCQ`FzUg61(r35`6nLtKUXTJTCF)aUszeLjnW^N#>DU|QJWC>FTz*p#g;kkgR zsW;zqsVYn#z+WLsm> zr>Sd4s!rK8`)8Yc_Wz8A-U;Hh4R4@eg zH!Ur&5xABqpaYFf`32F-5%O(-ccIzB%7CM(xIhtAo~7Ji zH<}}S9B?&lFHl7_XK6Ryjh+-z0tcFQ7N{BGk+N>E2R$Wx8o*7v3$#(=S=o*EAgz!Z zIMP&6po?10Qis3~=xHH6;AyHXFhr})(ueR5=ouj+aI#4(NFnMedkE}B&kC6VUz1c| zibl@LhwxrBSI7zko16vasIrGT41PrOgq%RQslC7&)%4JZ@sEgkPA~;}nmP(>#8zbw z0~S3m0ovuM7M7wB&a6}Y079_k1vNB{QG3PME0YzcNGEIyOl+R9QFq1C zOObt+=oR7ffU0@cM#Gh=UYe{fM6U{Efho;%Hl`4dmOTn==r!TXz_jLh8%2S+UcS+O#duC8TSO2Lb_HfPuiEIkVmU{VjS)yM>8jpRGp*Ab^!FIus1Nb zIeTN6=(;Saf=6!&Y+!zK{>JE)2zemj{b-4>FR-AQDc-2Ks*F&_K_yx${1nhNZ{Mi8 zs)^8~&lkNd*aC~1cWzV@#g`@Jt>_)$*8phVy-|DB7?DX&Co%~81527KHtMcgA`~fQ zMDGf}2Mo=X8x2>hA~Y%BL+=UIfo09&#uQ=&v!rVcy)STq70uE{)73~sKEdE>v`i2J zE1R7g%~zFu6lqaH%Y{DzDb4L0tyeXDG^xx%9|-n9YIDa%8!?Gl(vE^Y6zT#Q&7B+V zSB-r#slq@j1Qf_>4sCQ@we(S>_5gh()CWw>y&FAOtNLi7xFcF<4CFNrYz!0mm?b(h zN*0;}g-r9%#^}`uc_d;1trQ#qra7iiaZP!iBBCN%CA0?2&2fdQYnt;kkQwz1%jOS%yo1hfoKwwAnj6&Tt%Xx~31?UsuV8GfutI%+* z>O4&-a`dTy1G}2%6s8cxnPs|w9jz7)1@<=2D>Pk;oR5d$dOA3fP;|3O(1VF3=>UMVW#xz@X;r!Z1;(SrW;iwSpXIY|bx?UWoFH{X`F4APKigJW-;6U@vLN&3kSu#RH>x44_ z+`PL`J7~NplX(d;2|a-$%@u{ZLCZyo+>OzC;atGeTv=!sth&h1`orU&6W4}yZ5-Jo11O3gRLf4?Bp9+E&v`M(m1ftEo zg`UBxemaO-P?0bk7;GLW3=jU>&jx`5Z5D0?hMSq8!suXx9Ez|5F~Ue-q&a4jVn{ha zg@6+k3!{RHmbgu-ASm52IE_%Zqg1J2jmcLMP?y3 zII(5MCfyKY8KAmB8`>(252{*bZ88j14ba`V4V4Psav`v^8oZhl|_Xf2sX`4JlRhQ^6 z{s(<2ObgC!$=(zunmZc?2hdjn6`bFazbQHtA*Vuo0PPT_2N$#yZ&F-WUZzficC=G? zAgF8EzDadmbD2Jk+tJs8I=HB1=O#5VrE-(udevq64E`5=CnN=zwTPQih)vI)0T_KRJRV%pB5g8V zk6f0|V2pMNvx6&JoSV$ol~L*}aHHMAlfjgh_D$C7nkao1yU`v&8%%BK*krr@MwC4Z z4k6|T;hA7YOXnv0bz@XMiw~i_!rWk1OK6kpx+O~WfWzoV;klrxrFWC(dR3I}!G{qm z%n#M^L%&La?x9XjAlhgdB_U5wuTO5M)|niWE1LSEydlfhvTTg65XE zBGnDe6}lIbE!=`GxUD6jh*1;IpX~)?o38L`u&iZjk@kl1irkCIQcPh{a7W9GBHazk z73v%y%k6~MgVvT=MTQ$ySLkz??5Gkza97Kmq7+gMz@7tS*NpIHaBs`JBGZk?75N+{ zDBI^y!RXT!?Gw6505ZvFgw8%#41lR~TfvSY} zg4Hd{i|jXySLFyMjf%pupwP0a$aTYVmFfee7)|&fXm3d?@{mSCx(}0rBVk1lwPY8C zNdp1f2S`teKnELJ@{6K3BII6xN#B65GU#Y2E>a9DuTkd#(T0VOgRYkCOp$6>bB#Wa ziT)>~1P`?AEK-x!0`@#08jtWP`AqIE(heK1$>%Yl@rBgjk(P=g-LT~vbpa5hR!9$e zS}KbS!&TSl3z(2`LPqdpi&&IGiVoNdfDkT1X3*Cn6`6)3*W?SB1l2-TFxcWOG7l>U zsf&Oifs>FE47aowS%)=)^hHbt$AT%?)6!97Bi#t>ML_01LT<3HrL)LBY#fv?VseiY z@`C*>p(59?WsvFzU&{^sb-2)P^L z9&|+57hK>d-mJK#yg^+7y{JR@DX4R7->kZ&xj|pSz38Z53odf(+^i;z66_Ul4jmJI zCEwG#H*0ShZ^&2hIph)c2bVZ1HtTL#ZctZ21RWQC4;mbmn+>n+VN zeGQ*SL>~#JIyyGnNN)vu4O~D3+ze(oIyc*I8HeR-_yQu>L@>({+U&Yz8KwroMMOf2 zpvlp@*>kIEm>$Fz5g8dU!92&n<}m5HUmZ8G3WtJw z9rGB|?Z{2}I*y_q;Ye_wVjO8|U z3*10ggmXcUqmnUKinV;YIvmT%!=MfN35;?pq*!rcXu5M@u{kDw zRN`p;7%5Ji6jD1E7h7YJMkSASkCDcUs?bd5(qbEFNGTt!AInHeadIfhxxCmOlQAkV z+C5f^7pH_~J69FEV#-D(D)i%|JH&fKT4!3ZC#HH-vcf%1njlUK&2?rMhe@kSxk4W+ z-6>L``Of^}XiOiO54mHdiQ@Fo0%vitVpRO-#4-9fDM5T7q;qaBR*gy;ojk@JCruL7 zp+(M}OtG3Yv6PR|kC*NeA124S-No8b8KVPZ+~XycI5V`wSy8MTRW>?ttX?VIEj}7D zI4g?{qpC+Ik98}h$zoDynNuuIA>A$IWA*XUJ>uh`6;7$xG^%fOV5~b{nj+2)t#mqz z&7jH*^7$GY#7C~;}R ziLZyO&RHdf(bZ#;$Gh*69u`4pmvc@@3TdJ#AFo$QkBD!E_B!X4m`3-F35<8Eq?zK9 z&_3tF67%Tzv587Xf44MCd^==wE-tZ-P8yr6bl)vKDjGujol8q>q`jtGsh=!q#P>qg z&gCWc(HUa{O7~8iL$03(a_e=A{oKV==USd@w#U|hBzF&GyG=+Mc9VIr>#8ZB!o|2vy zb3=X3&Jw#KBQ|iSo08^>d7*wM6Dn~j%3>2I>Jz2^i3Opkv$w>fsE$pZ=uVVg5DPAlHVdqduRMAIfr0(g`0+9)gIAgXb#>B@ZCg^8K3&oO@&x?@(#v9LD86;-7VVgfxIlvY0ZAur3r%dDu|+qg zEG}`9{z2&#@$-l-4<0QpR8=u6&YSExjgw8JgBQZ;NS6 zUtD04TP-aTcZ8<5F5F@s6F)xjF8xE&V)5&cx^?ju>zJhR$#=OQl3o|Bp_#2qx7bLr zQ2AZ@hov{f??Oqf%eUCaWQ-5o<$hQK;;zu_)>T_vW6H)Ss`QUYdT~!k+nTn;Gp2fc zvdaC4^rpz{4b5%M-V!EdMCB^|OzAC=4b5-O-x3|uM~1}inbHz*UuZ#V@fO9{cxB?< z`dQLa@u!fkb^8|8*d%50-R@b^+alTL-nw&(n$#DS->rXCdPgM7R9km%(T>ef2JUu0 zDj7tw%B;0wi*9V0GI6qABfTq}+pOpSj{5w?EI@PQlmvKj6 zs{2VPMLZDN(K^GdW5$);k$A8EDd`jOV944!%WN1|eMj=W?x&($s3Y^OC z)oZ2I;-S#q)_G>rxV}3A_qw%Gs(2){uXUl>JT87h;(hw3r8Mzq$kw{pY#o<0A^AS{ z(^9(V3GHuPYPONir}F#s&qzk`M5wxTx!FE0V?y9Q_cIccA)X{hs#Rv!xUva})AY|u zYs9XQy*1738CN|ad7ArKDO2>3lX$i{OlqRar|IWPYehNK*qU#Sj_V^SfqSl$B?d!| z)?%|FHvZ1U`}OmrY_U7!YTa&D#U|aEe7}31lp}^i2U>TU)udUf{C@p&(mL@B83gP$ zGuqgUI|KK-pOZ{tPv}T%g;^I{c4s1`e_mQIo(p+eE6s-3>N}Gu_w!P&*cUq4DwNQ^iV z8flH$s)&nENSvWxC>4vNx)p74TUBvM3CT0u3#AfK(H+~yBy3farmXTA`j@0F;@Ix^ zwy9gSaTy7L8Sa-Pvl!bwv2DgyU0hj0;sg4ZrLE%lZdKc?t%kVjgyaX@FH5CjeD{>L zIa^amxmNiDdY$x{IH7x5+q|u&xW0tI18$wPO`O<0y=~!Eb6otS#0T}SNZZ9p-Ric* zTdi?Plae1~+^mIKZA-V>NFi7GgZft`i#WMEscrdIdtAn(z=Q5rr803!_w2S+ zTU~KwlM>bX*Q77Rd%Lx5X0-Ie&T{tf9{@zHKWTjf^6 z`0BfoA9lYXeJ3V$FKZLGrjVwv@`v?6`d)mzdqtbH)il2EuE4`?Ang)ocdu-7ZZ(gO zS0yr!==IWW@yYI#w)U;o@ky%WN8Ea8kErcVZR^--8xK_FkLcf&eh{DO&S>l0Y9F7W z3OwR|Q`#%e?apcoZFP+=Qzg#Sza{-BKG$t(>)q-ZU#&`>>3&OM#rfTNZ3A1wq>!w9 zrhbW3F22xR*fz8^I=+u2W$q=?K5;=e!?eYeDwOeeC(hC@l`6!Sy3K8Ir7C68-O01u zOQoMgUH7)Ogi?e_Q%le6_o*ZEC4jnQ?bumiukVCNApU(Ke%0r!2cW@lpLd z(l6rc-PX2Qr3Pj7-N}!--;sV5LHDk zbyv47FSRQ(CI>X`_oQlZS+~%(s??<{o1B=We_tZ4?cMgav{H|f+1p zNqk)Yp+tP&ZckffsUg1lp5({fA4){q>ps~gmZrpG=AQD$^(!Qz-*o%hq*7CS-#vlH z-76%5(RT;ioTcXY_$i4`=s%JO4ci@VYcI9NCrwFy!u^p%sJ8B&wr4s@ZKV0F{0TiR z5jv&2udTDx9-lEK@PwO|NXp#Z-xex$#g|P}+E$1H7)D_3^ z_TDQ6Ta<^CTf|xmUO3XNEl_#rfZLX*1zJE+|EQK{0Z|htPThjb#_fFU!Bmb<5FgV; zgV${A-s#MU7sW@#*FV#k%2l(Nxe*u5<}xBXmze0HxW9Ii@99bJIluG$oqlq1d)u67 zx6$wBPq(t`#XrwHYP*L{i|aHxmhkA|jrjMOr)`gw57Dos{v|y64knJCkukVRNoq}w zr98Tq5^*7ziBu(#Zj*m0kG4cnA%rn;=zzISlf%QK)I_B~GAXJiGGOw1c!BkalLZ}P zQ*9=-W=9p@&u$bWg+!*jRdtkfoBdV%S$4A+Etr^UbSPb?*-_1(V?PzA3hB%$)k891 z_E+-*?C0WiA&2=$rPOGX9X0%Uwq1-93Ye{`B#k@SU&CKuw~7gZlR1EnvFl8B)bbbE z?P8L!koiW{qzNSZYxzqo6pg}CMo?|mXj2?@e5;?`DW(Ws=7#F1#+~A?<1e$j#WZ0h za}OPT*O}s|=Lgxn;vC^U=CSIbCXnK<=dZ9`Vz#h>!9$fX+Ej;^zsh!tHsKQ{GBhd1 zo$B}U*VqGMzVHPThfd4uOm#Hy*V#kp8S)M$CA29fkm_&XZ?K2OQi0l1dT?HB6rr)m zg2FW9#QDpYdzx!&GIgdXOx?FjrT*jUdiBQ#=TZ9(o2lSfGFWS!ERzZu95nVSlc{Bi zFTV?y_G8mNRJ1ANy$Vdxk3Z@4!0>*IQuLfFrtTh^w>7)K;PdulNH`LKGyy3HNr4oM z6oNF7^Y$yrTH^MlV{-U@Du`DMUu>nWa~@w0P$7jPO+uQC6owRz6oC|pG==K{Q750^ zJzXQPNvnjz!yA#dT-63xd5`n-D4BoZ?L&*7&O&Ha401XVE4Km>7mZ@srK#vCf)hMQL zfY|WtD-4#-2Bwgq-8(U=e`p8hD{h&}6}QCh9U#8l+l#^Bccz&`ww*eRQBOxv=jClv z4Ze!3X<)Bw=#9$Td#+vqQ@&E&e>RNgN{&xJM|J}gMk1wXj?J4WsA9)?93 zAe$>IOt@qqc0FToIHM&&A9Cwb8%{B(g6)L~F}}K%1g@?n@$4evyPw-}XuO&jul%yj zhf~)_863GVXQG4*nIMVVb2YKuL!2DmhC_2Q(1qN8(2i5PPz4t!1FJUNA|r!VReNij zJyAMY6fqNfnNsfSWZ;pPg;87n2aIC~>UH!&L~q0d>J>5}A~T;rpV;fDv;PNcv&JJV z^L0o;gjCi9YCN1E!U;KiGfK0@0Vs2PY#_o05Y#KkK!i;81nTvuWEuk*w9>P@#G+lmZmr8^mPrj%W9TL zo18vVr+;w`&d5PP_R(N2cXtlBteDsrXOxPmz65@61MlGZ^+oV68_-X((l!@OTWM76 zxkVhXgGzbmf~sbVx2keMQ)vUe2A-G)$jJ*TEvpw*nwKrMuc$A!6~bTbfP}hIkPVGR zARHda1yS7gT#z#{)>@BZ6O7N1347kw+ ziZQDl{^SC7c`lq*1~MY-jYdw8uwv`%aA7&fim)}J z#d&Fh{B`h1ImnPV!@K1myLBycX+){euEMeT3ndfuSaYl; _.random(min, max)); +} + +function genIntSeq(len:number) { + const a = new Array(len); + for(var i =0; i < len; i++){ + a[i] = i; + } + return a; +} + +function genString(items: number, minLen: number, maxLen: number): string[] { + const a = new Array(items); + const randStrings = _.map(a, () => { + const strLen = _.random(minLen, maxLen); + const b = new Array(strLen); + const randLenStr = _.map(b, () => { + return String.fromCharCode(_.random(65, 90)); + }).join(''); + return randLenStr; + }); + return randStrings; +} + +const dictOfListsToListOfDicts = (a: Record): Record[] => { + const firstKey = _.keys(a)[0]; + const data: Record[] = _.map(a[firstKey], (_val, idx): Record => { + const pairs: [string, any][] = _.map(a, (arr, key) => { + return [key, arr[idx]]; + }); + const row: Record = _.fromPairs(pairs); + return row; + }); + return data; +}; + +export default function DFViewerExString() { + const [activeCol, setActiveCol] = useState('tripduration'); + const samples = 300; + const data = dictOfListsToListOfDicts({ + index: genIntSeq(samples), + a: genInt(samples, 2, 30), + b: genInt(samples, 10, 8), + c: genString(samples, 3, 10), + d: genInt(samples, 100, 999), + e: genInt(samples, -30_000, 55_123_123), + f: genString(samples, 3, 70), + g: genInt(samples, -3, 55) + }); + //const current: {'df':DFData, 'df_viewer_config':DFViewerConfig, 'summary_stats_data':DFData} = { + const current: {df: any; df_viewer_config: any; summary_stats_data: any} = { + df: data, + df_viewer_config: { + pinned_rows: [ + { + primary_key_val: 'dtype', + displayer_args: { + displayer: 'obj' + }, + + + }, + { + primary_key_val: 'histogram', + displayer_args: { + displayer: 'histogram' + }, + } + ], + component_config: {height_fraction: 1.15}, + + column_config: [ + { + col_name: 'index', + displayer_args: { + displayer: 'obj' + } + }, + { + col_name: 'a', + displayer_args: { + displayer: 'obj' + } + }, + { + col_name: 'b', + displayer_args: { + displayer: 'obj' + }, + "tooltip_config": { + "tooltip_type": "simple", + "val_column": "b"} + }, + { + col_name: 'c', + displayer_args: { + displayer: 'obj' + } + }, + { + col_name: 'd', + displayer_args: { + displayer: 'obj' + } + }, + { + col_name: 'e', + displayer_args: { + displayer: 'obj' + } + }, + { + col_name: 'f', + displayer_args: { + displayer: 'obj' + } + }, + { + col_name: 'g', + displayer_args: { + displayer: 'obj' + } + } + ] + }, + summary_stats_data: summary_stats_data + }; + + return ( + + ); +} diff --git a/docs/examples/ex/InfiniteEx.tsx b/docs/examples/ex/InfiniteEx.tsx new file mode 100644 index 00000000..363d6e0a --- /dev/null +++ b/docs/examples/ex/InfiniteEx.tsx @@ -0,0 +1,23 @@ +import React, {useState} from 'react'; +import {BuckarooState, extraComponents } from 'buckaroo'; + +export default function StatusBarEx() { + console.clear(); + + const [bState, setBState] = useState({ + auto_clean: 'conservative', + sampled: false, + df_display: 'main', + post_processing: 'asdf', + show_commands: false, + quick_command_args: {} + }); + + return ( +

    + +
     {JSON.stringify(bState, null, 2)}
    +
    + ); +} diff --git a/js/baked_data/olympic-winners.ts b/js/baked_data/olympic-winners.ts new file mode 100644 index 00000000..15b0b371 --- /dev/null +++ b/js/baked_data/olympic-winners.ts @@ -0,0 +1,9998 @@ +export const winners = [ + { + athlete: 'Michael Phelps', + age: 23, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 8, + silver: 0, + bronze: 0, + total: 8, + }, + { + athlete: 'Michael Phelps', + age: 19, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 6, + silver: 0, + bronze: 2, + total: 8, + }, + { + athlete: 'Michael Phelps', + age: 27, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 4, + silver: 2, + bronze: 0, + total: 6, + }, + { + athlete: 'Natalie Coughlin', + age: 25, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 3, + total: 6, + }, + { + athlete: 'Aleksey Nemov', + age: 24, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 2, + silver: 1, + bronze: 3, + total: 6, + }, + { + athlete: 'Alicia Coutts', + age: 24, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 3, + bronze: 1, + total: 5, + }, + { + athlete: 'Missy Franklin', + age: 17, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 4, + silver: 0, + bronze: 1, + total: 5, + }, + { + athlete: 'Ryan Lochte', + age: 27, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 2, + bronze: 1, + total: 5, + }, + { + athlete: 'Allison Schmitt', + age: 22, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 3, + silver: 1, + bronze: 1, + total: 5, + }, + { + athlete: 'Natalie Coughlin', + age: 21, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 2, + silver: 2, + bronze: 1, + total: 5, + }, + { + athlete: 'Ian Thorpe', + age: 17, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 3, + silver: 2, + bronze: 0, + total: 5, + }, + { + athlete: 'Dara Torres', + age: 33, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 3, + total: 5, + }, + { + athlete: 'Cindy Klassen', + age: 26, + country: 'Canada', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 2, + bronze: 2, + total: 5, + }, + { + athlete: 'Nastia Liukin', + age: 18, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 1, + silver: 3, + bronze: 1, + total: 5, + }, + { + athlete: 'Marit Bjørgen', + age: 29, + country: 'Norway', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 3, + silver: 1, + bronze: 1, + total: 5, + }, + { + athlete: 'Sun Yang', + age: 20, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 1, + total: 4, + }, + { + athlete: 'Kirsty Coventry', + age: 24, + country: 'Zimbabwe', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 3, + bronze: 0, + total: 4, + }, + { + athlete: 'Libby Lenton-Trickett', + age: 23, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 1, + total: 4, + }, + { + athlete: 'Ryan Lochte', + age: 24, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 2, + total: 4, + }, + { + athlete: 'Inge de Bruijn', + age: 30, + country: 'Netherlands', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 2, + total: 4, + }, + { + athlete: 'Petria Thomas', + age: 28, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 3, + silver: 1, + bronze: 0, + total: 4, + }, + { + athlete: 'Ian Thorpe', + age: 21, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 1, + total: 4, + }, + { + athlete: 'Inge de Bruijn', + age: 27, + country: 'Netherlands', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 3, + silver: 1, + bronze: 0, + total: 4, + }, + { + athlete: 'Gary Hall Jr.', + age: 25, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 1, + total: 4, + }, + { + athlete: 'Michael Klim', + age: 23, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 2, + bronze: 0, + total: 4, + }, + { + athlete: "Susie O'Neill", + age: 27, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 3, + bronze: 0, + total: 4, + }, + { + athlete: 'Jenny Thompson', + age: 27, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 3, + silver: 0, + bronze: 1, + total: 4, + }, + { + athlete: 'Pieter van den Hoogenband', + age: 22, + country: 'Netherlands', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 2, + total: 4, + }, + { + athlete: 'An Hyeon-Su', + age: 20, + country: 'South Korea', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 3, + silver: 0, + bronze: 1, + total: 4, + }, + { + athlete: 'Aliya Mustafina', + age: 17, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 2, + total: 4, + }, + { + athlete: 'Shawn Johnson', + age: 16, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 1, + silver: 3, + bronze: 0, + total: 4, + }, + { + athlete: 'Dmitry Sautin', + age: 26, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 2, + total: 4, + }, + { + athlete: 'Leontien Zijlaard-van Moorsel', + age: 30, + country: 'Netherlands', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 3, + silver: 1, + bronze: 0, + total: 4, + }, + { + athlete: 'Petter Northug Jr.', + age: 24, + country: 'Norway', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 2, + silver: 1, + bronze: 1, + total: 4, + }, + { + athlete: 'Ole Einar Bjørndalen', + age: 28, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 4, + silver: 0, + bronze: 0, + total: 4, + }, + { + athlete: 'Janica Kostelic', + age: 20, + country: 'Croatia', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 3, + silver: 1, + bronze: 0, + total: 4, + }, + { + athlete: 'Nathan Adrian', + age: 23, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Yannick Agnel', + age: 20, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Brittany Elmslie', + age: 18, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Matt Grevers', + age: 27, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Ryosuke Irie', + age: 22, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Cullen Jones', + age: 28, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Ranomi Kromowidjojo', + age: 21, + country: 'Netherlands', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Camille Muffat', + age: 22, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Mel Schlanger', + age: 25, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Emily Seebohm', + age: 20, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Rebecca Soni', + age: 25, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Satomi Suzuki', + age: 21, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 2, + total: 3, + }, + { + athlete: 'Dana Vollmer', + age: 24, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Alain Bernard', + age: 25, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'LĂ¡szlĂ³ Cseh Jr.', + age: 22, + country: 'Hungary', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 3, + bronze: 0, + total: 3, + }, + { + athlete: 'Matt Grevers', + age: 23, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Margaret Hoelzer', + age: 25, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Katie Hoff', + age: 19, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 2, + total: 3, + }, + { + athlete: 'Leisel Jones', + age: 22, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Kosuke Kitajima', + age: 25, + country: 'Japan', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Andrew Lauterstein', + age: 21, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 2, + total: 3, + }, + { + athlete: 'Jason Lezak', + age: 32, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Pang Jiaying', + age: 23, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 2, + total: 3, + }, + { + athlete: 'Aaron Peirsol', + age: 25, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Steph Rice', + age: 20, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Jess Schipper', + age: 21, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Rebecca Soni', + age: 21, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Eamon Sullivan', + age: 22, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Dara Torres', + age: 41, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 3, + bronze: 0, + total: 3, + }, + { + athlete: 'Amanda Beard', + age: 22, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Antje Buschschulte', + age: 25, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 3, + total: 3, + }, + { + athlete: 'Kirsty Coventry', + age: 20, + country: 'Zimbabwe', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Ian Crocker', + age: 21, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Grant Hackett', + age: 24, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Brendan Hansen', + age: 22, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Jodie Henry', + age: 20, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Otylia Jedrzejczak', + age: 20, + country: 'Poland', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Leisel Jones', + age: 18, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Kosuke Kitajima', + age: 21, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Laure Manaudou', + age: 17, + country: 'France', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Aaron Peirsol', + age: 21, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Kaitlin Sandeno', + age: 21, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Roland Schoeman', + age: 24, + country: 'South Africa', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Pieter van den Hoogenband', + age: 26, + country: 'Netherlands', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Therese Alshammar', + age: 23, + country: 'Sweden', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Yana Klochkova', + age: 18, + country: 'Ukraine', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Lenny Krayzelburg', + age: 24, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Massimiliano Rosolino', + age: 22, + country: 'Italy', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Petria Thomas', + age: 25, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Matt Welsh', + age: 23, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Lee Jeong-Su', + age: 20, + country: 'South Korea', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Apolo Anton Ohno', + age: 27, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 2, + total: 3, + }, + { + athlete: 'Wang Meng', + age: 24, + country: 'China', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Jin Seon-Yu', + age: 17, + country: 'South Korea', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Lee Ho-Seok', + age: 19, + country: 'South Korea', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Apolo Anton Ohno', + age: 23, + country: 'United States', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Wang Meng', + age: 20, + country: 'China', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Marc Gagnon', + age: 26, + country: 'Canada', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Yang Yang (A)', + age: 25, + country: 'China', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Stephanie Beckert', + age: 21, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Martina SĂ¡blĂ­kovĂ¡', + age: 22, + country: 'Czech Republic', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Enrico Fabris', + age: 24, + country: 'Italy', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Chad Hedrick', + age: 28, + country: 'United States', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Jochem Uytdehaage', + age: 25, + country: 'Netherlands', + year: 2002, + date: '24/02/2002', + sport: 'Speed Skating', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Sabine Völker', + age: 28, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Speed Skating', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Gregor Schlierenzauer', + age: 20, + country: 'Austria', + year: 2010, + date: '28/02/2010', + sport: 'Ski Jumping', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Lars Bystøl', + age: 27, + country: 'Norway', + year: 2006, + date: '26/02/2006', + sport: 'Ski Jumping', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Johnny Spillane', + age: 29, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Nordic Combined', + gold: 0, + silver: 3, + bronze: 0, + total: 3, + }, + { + athlete: 'Felix Gottwald', + age: 30, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Nordic Combined', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Georg Hettich', + age: 27, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Nordic Combined', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Felix Gottwald', + age: 26, + country: 'Austria', + year: 2002, + date: '24/02/2002', + sport: 'Nordic Combined', + gold: 0, + silver: 0, + bronze: 3, + total: 3, + }, + { + athlete: 'Samppa Lajunen', + age: 22, + country: 'Finland', + year: 2002, + date: '24/02/2002', + sport: 'Nordic Combined', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Aly Raisman', + age: 18, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Kohei Uchimura', + age: 23, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Zou Kai', + age: 24, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Cheng Fei', + age: 20, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Yang Wei', + age: 28, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Yang Yilin', + age: 15, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Zou Kai', + age: 20, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Marian Dragulescu', + age: 23, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 2, + total: 3, + }, + { + athlete: 'Paul Hamm', + age: 21, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Carly Patterson', + age: 16, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Catalina Ponor', + age: 16, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Simona AmĂ¢nar', + age: 20, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Svetlana Khorkina', + age: 21, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Yekaterina Lobaznyuk', + age: 17, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Yelena Zamolodchikova', + age: 17, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Guo Shuang', + age: 26, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Chris Hoy', + age: 32, + country: 'Great Britain', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Bradley Wiggins', + age: 24, + country: 'Great Britain', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Florian Rousseau', + age: 26, + country: 'France', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Justyna Kowalczyk', + age: 27, + country: 'Poland', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Johan Olsson', + age: 29, + country: 'Sweden', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Stefania Belmondo', + age: 33, + country: 'Italy', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Yuliya Chepalova', + age: 25, + country: 'Russia', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Frode Estil', + age: 29, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Bente Skari-Martinsen', + age: 29, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Magdalena Neuner', + age: 23, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Emil Hegle Svendsen', + age: 24, + country: 'Norway', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Albina Akhatova', + age: 29, + country: 'Russia', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Ole Einar Bjørndalen', + age: 32, + country: 'Norway', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 0, + silver: 2, + bronze: 1, + total: 3, + }, + { + athlete: 'Sven Fischer', + age: 34, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Martina Glagow-Beck', + age: 26, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 0, + silver: 3, + bronze: 0, + total: 3, + }, + { + athlete: 'Michael Greis', + age: 29, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Kati Wilhelm', + age: 29, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Kati Wilhelm', + age: 25, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 2, + silver: 1, + bronze: 0, + total: 3, + }, + { + athlete: 'Yohan Blake', + age: 22, + country: 'Jamaica', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Usain Bolt', + age: 25, + country: 'Jamaica', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Allyson Felix', + age: 26, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Shelly-Ann Fraser-Pryce', + age: 25, + country: 'Jamaica', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 1, + silver: 2, + bronze: 0, + total: 3, + }, + { + athlete: 'Carmelita Jeter', + age: 32, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Usain Bolt', + age: 21, + country: 'Jamaica', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 3, + silver: 0, + bronze: 0, + total: 3, + }, + { + athlete: 'Veronica Campbell-Brown', + age: 22, + country: 'Jamaica', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 1, + total: 3, + }, + { + athlete: 'Justin Gatlin', + age: 22, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Bode Miller', + age: 32, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Aksel Lund Svindal', + age: 27, + country: 'Norway', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Anja Pärson', + age: 24, + country: 'Sweden', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 1, + silver: 0, + bronze: 2, + total: 3, + }, + { + athlete: 'Stephan Eberharter', + age: 32, + country: 'Austria', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 1, + silver: 1, + bronze: 1, + total: 3, + }, + { + athlete: 'Ding Ning', + age: 22, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Table Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Feng Tian Wei', + age: 25, + country: 'Singapore', + year: 2012, + date: '12/08/2012', + sport: 'Table Tennis', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Li Xiaoxia', + age: 24, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Table Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Dmitrij Ovtcharov', + age: 23, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Table Tennis', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Wang Hao', + age: 28, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Table Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Zhang Jike', + age: 24, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Table Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Guo Yue', + age: 20, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Table Tennis', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Ma Lin', + age: 28, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Table Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Wang Hao', + age: 24, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Table Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Wang Liqin', + age: 30, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Table Tennis', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Wang Nan', + age: 29, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Table Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Zhang Yining', + age: 26, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Table Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Zhang Yining', + age: 22, + country: 'China', + year: 2004, + date: '29/08/2004', + sport: 'Table Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Kong Linghui', + age: 24, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Table Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Li Ju', + age: 24, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Table Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Liu Guoliang', + age: 24, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Table Tennis', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Wang Nan', + age: 21, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Table Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Viktoriya Azarenko', + age: 22, + country: 'Belarus', + year: 2012, + date: '12/08/2012', + sport: 'Tennis', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Mike Bryan', + age: 34, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Tennis', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Andy Murray', + age: 25, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Tennis', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Serena Williams', + age: 30, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Fernando GonzĂ¡lez', + age: 24, + country: 'Chile', + year: 2004, + date: '29/08/2004', + sport: 'Tennis', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'NicolĂ¡s MassĂº', + age: 26, + country: 'Chile', + year: 2004, + date: '29/08/2004', + sport: 'Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Venus Williams', + age: 20, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Tennis', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Ona Carbonell', + age: 22, + country: 'Spain', + year: 2012, + date: '12/08/2012', + sport: 'Synchronized Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Andrea Fuentes', + age: 29, + country: 'Spain', + year: 2012, + date: '12/08/2012', + sport: 'Synchronized Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Huang Xuechen', + age: 22, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Synchronized Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Nataliya Ishchenko', + age: 26, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Liu Ou', + age: 25, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Synchronized Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Svetlana Romashina', + age: 22, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Anastasiya Davydova', + age: 25, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Andrea Fuentes', + age: 25, + country: 'Spain', + year: 2008, + date: '24/08/2008', + sport: 'Synchronized Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Gemma Mengual', + age: 31, + country: 'Spain', + year: 2008, + date: '24/08/2008', + sport: 'Synchronized Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Anastasiya Yermakova', + age: 25, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Alison Bartosik', + age: 21, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Synchronized Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Anastasiya Davydova', + age: 21, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Anna Kozlova', + age: 31, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Synchronized Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Miya Tachibana', + age: 29, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Synchronized Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Miho Takeda', + age: 27, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Synchronized Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Anastasiya Yermakova', + age: 21, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Olga Brusnikina', + age: 21, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Mariya Kiselyova', + age: 25, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Synchronized Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Miya Tachibana', + age: 25, + country: 'Japan', + year: 2000, + date: '01/10/2000', + sport: 'Synchronized Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Miho Takeda', + age: 24, + country: 'Japan', + year: 2000, + date: '01/10/2000', + sport: 'Synchronized Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Becky Adlington', + age: 23, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Bronte Barratt', + age: 23, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Elizabeth Beisel', + age: 19, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Mireia Belmonte', + age: 21, + country: 'Spain', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Ricky Berens', + age: 24, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Aleksandra Gerasimenya', + age: 26, + country: 'Belarus', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Brendan Hansen', + age: 30, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Jessica Hardy', + age: 25, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Chad le Clos', + age: 20, + country: 'South Africa', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'ClĂ©ment Lefert', + age: 24, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Amaury Leveaux', + age: 26, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'James Magnussen', + age: 21, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Takeshi Matsuda', + age: 28, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Oussama Mellouli', + age: 28, + country: 'Tunisia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Park Tae-Hwan', + age: 22, + country: 'South Korea', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Christian Sprenger', + age: 26, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Jeremy Stravius', + age: 24, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Aya Terakawa', + age: 27, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Nick Thoman', + age: 26, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Marleen Veldhuis', + age: 33, + country: 'Netherlands', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Ye Shiwen', + age: 16, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Becky Adlington', + age: 19, + country: 'Great Britain', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Leith Brodie', + age: 22, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Cate Campbell', + age: 16, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'CĂ©sar Cielo Filho', + age: 21, + country: 'Brazil', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Hugues Duboscq', + age: 26, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Felicity Galvez', + age: 23, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Grant Hackett', + age: 28, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Kara Lynn Joyce', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Amaury Leveaux', + age: 22, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Christine Magnuson', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Patrick Murphy', + age: 24, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Park Tae-Hwan', + age: 18, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Shayne Reese', + age: 25, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Brenton Rickard', + age: 24, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Mel Schlanger', + age: 21, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Julia Smit', + age: 20, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Britta Steffen', + age: 24, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Hayden Stoeckel', + age: 24, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Matt Targett', + age: 22, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Peter Vanderkaay', + age: 24, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Arkady Vyachanin', + age: 24, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Garrett Weber-Gale', + age: 23, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Lindsay Benko', + age: 27, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Gary Hall Jr.', + age: 29, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Brooke Hanson', + age: 26, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kara Lynn Joyce', + age: 18, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Klete Keller', + age: 22, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Yana Klochkova', + age: 22, + country: 'Ukraine', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Rachel Komisarz', + age: 27, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Libby Lenton-Trickett', + age: 19, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Jason Lezak', + age: 28, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Ryan Lochte', + age: 20, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Alice Mills', + age: 18, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Tomomi Morita', + age: 19, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Markus Rogan', + age: 22, + country: 'Austria', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Jenny Thompson', + age: 31, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Franziska van Almsick', + age: 26, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Neil Walker', + age: 28, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Amanda Weir', + age: 18, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Takashi Yamamoto', + age: 26, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Brooke Bennett', + age: 20, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Beatrice Coada-Caslaru', + age: 25, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Josh Davis', + age: 28, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Tom Dolan', + age: 25, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Anthony Ervin', + age: 19, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Domenico Fioravanti', + age: 23, + country: 'Italy', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Grant Hackett', + age: 20, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Geoff Huegill', + age: 21, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Leisel Jones', + age: 15, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Klete Keller', + age: 18, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Jason Lezak', + age: 24, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Diana Mocanu', + age: 16, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Martina MoravcovĂ¡', + age: 24, + country: 'Slovakia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Ed Moses', + age: 20, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Diana Munz', + age: 18, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Mai Nakamura', + age: 21, + country: 'Japan', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Todd Pearson', + age: 22, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Adam Pine', + age: 24, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Claudia Poll', + age: 27, + country: 'Costa Rica', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Megan Quann-Jendrick', + age: 16, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Giaan Rooney', + age: 17, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Courtney Shealy', + age: 22, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Ashley Tappin', + age: 25, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Stev Theloke', + age: 22, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Amy Van Dyken', + age: 27, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Neil Walker', + age: 24, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Swimming', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'J. R. Celski', + age: 19, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Charles Hamelin', + age: 25, + country: 'Canada', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Lee Ho-Seok', + age: 23, + country: 'South Korea', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Park Seung-Hui', + age: 17, + country: 'South Korea', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Katherine Reutter', + age: 21, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Seong Si-Baek', + age: 22, + country: 'South Korea', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Marianne St-Gelais', + age: 19, + country: 'Canada', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'François-Louis Tremblay', + age: 29, + country: 'Canada', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Zhou Yang', + age: 18, + country: 'China', + year: 2010, + date: '28/02/2010', + sport: 'Short-Track Speed Skating', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Choi Eun-Gyeong', + age: 21, + country: 'South Korea', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Anouk Leblanc-Boucher', + age: 21, + country: 'Canada', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'François-Louis Tremblay', + age: 25, + country: 'Canada', + year: 2006, + date: '26/02/2006', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Choi Eun-Gyeong', + age: 17, + country: 'South Korea', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Go Gi-Hyeon', + age: 15, + country: 'South Korea', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Jonathan Guilmette', + age: 23, + country: 'Canada', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Li Jiajun', + age: 26, + country: 'China', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Apolo Anton Ohno', + age: 19, + country: 'United States', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Evgeniya Radanova', + age: 24, + country: 'Bulgaria', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Mathieu Turcotte', + age: 25, + country: 'Canada', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Wang Chunlu', + age: 23, + country: 'China', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Yang Yang (S)', + age: 24, + country: 'China', + year: 2002, + date: '24/02/2002', + sport: 'Short-Track Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Shani Davis', + age: 27, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kristina Groves', + age: 33, + country: 'Canada', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Chad Hedrick', + age: 32, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Sven Kramer', + age: 23, + country: 'Netherlands', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Lee Seung-Hun', + age: 21, + country: 'South Korea', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Mo Tae-Beom', + age: 21, + country: 'South Korea', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Ivan Skobrev', + age: 27, + country: 'Russia', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Mark Tuitert', + age: 29, + country: 'Netherlands', + year: 2010, + date: '28/02/2010', + sport: 'Speed Skating', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Joey Cheek', + age: 26, + country: 'United States', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Shani Davis', + age: 23, + country: 'United States', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Anni Friesinger-Postma', + age: 29, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Kristina Groves', + age: 29, + country: 'Canada', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Clara Hughes', + age: 33, + country: 'Canada', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Sven Kramer', + age: 19, + country: 'Netherlands', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Claudia Pechstein', + age: 33, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Carl Verheijen', + age: 30, + country: 'Netherlands', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Erben Wennemars', + age: 30, + country: 'Netherlands', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Ireen WĂ¼st', + age: 19, + country: 'Netherlands', + year: 2006, + date: '26/02/2006', + sport: 'Speed Skating', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Derek Parra', + age: 31, + country: 'United States', + year: 2002, + date: '24/02/2002', + sport: 'Speed Skating', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Claudia Pechstein', + age: 29, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Speed Skating', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Jennifer Rodriguez', + age: 25, + country: 'United States', + year: 2002, + date: '24/02/2002', + sport: 'Speed Skating', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Simon Ammann', + age: 28, + country: 'Switzerland', + year: 2010, + date: '28/02/2010', + sport: 'Ski Jumping', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Adam Malysz', + age: 32, + country: 'Poland', + year: 2010, + date: '28/02/2010', + sport: 'Ski Jumping', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Matti Hautamäki', + age: 24, + country: 'Finland', + year: 2006, + date: '26/02/2006', + sport: 'Ski Jumping', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Andreas Kofler', + age: 21, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Ski Jumping', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Roar Ljøkelsøy', + age: 29, + country: 'Norway', + year: 2006, + date: '26/02/2006', + sport: 'Ski Jumping', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Thomas Morgenstern', + age: 19, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Ski Jumping', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Simon Ammann', + age: 20, + country: 'Switzerland', + year: 2002, + date: '24/02/2002', + sport: 'Ski Jumping', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Sven Hannawald', + age: 27, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Ski Jumping', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Matti Hautamäki', + age: 20, + country: 'Finland', + year: 2002, + date: '24/02/2002', + sport: 'Ski Jumping', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Adam Malysz', + age: 24, + country: 'Poland', + year: 2002, + date: '24/02/2002', + sport: 'Ski Jumping', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'NiccolĂ² Campriani', + age: 24, + country: 'Italy', + year: 2012, + date: '12/08/2012', + sport: 'Shooting', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Jin Jong-O', + age: 32, + country: 'South Korea', + year: 2012, + date: '12/08/2012', + sport: 'Shooting', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Olena Kostevych', + age: 27, + country: 'Ukraine', + year: 2012, + date: '12/08/2012', + sport: 'Shooting', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Jin Jong-O', + age: 28, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Shooting', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Katerina KurkovĂ¡-Emmons', + age: 24, + country: 'Czech Republic', + year: 2008, + date: '24/08/2008', + sport: 'Shooting', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Lyubov Galkina', + age: 31, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Shooting', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Mariya Grozdeva', + age: 32, + country: 'Bulgaria', + year: 2004, + date: '29/08/2004', + sport: 'Shooting', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Lee Bo-Na', + age: 23, + country: 'South Korea', + year: 2004, + date: '29/08/2004', + sport: 'Shooting', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Mikhail Nestruyev', + age: 35, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Shooting', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Igor Basinsky', + age: 37, + country: 'Belarus', + year: 2000, + date: '01/10/2000', + sport: 'Shooting', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Tao Luna', + age: 26, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Shooting', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kim Crow', + age: 26, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Rowing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Georgeta Damian-Andrunache', + age: 32, + country: 'Romania', + year: 2008, + date: '24/08/2008', + sport: 'Rowing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Viorica Susanu', + age: 32, + country: 'Romania', + year: 2008, + date: '24/08/2008', + sport: 'Rowing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Georgeta Damian-Andrunache', + age: 28, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Rowing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Viorica Susanu', + age: 28, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Rowing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Georgeta Damian-Andrunache', + age: 24, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Rowing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Doina Ignat', + age: 31, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Rowing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Pieta van Dishoeck', + age: 28, + country: 'Netherlands', + year: 2000, + date: '01/10/2000', + sport: 'Rowing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Eeke van Nes', + age: 31, + country: 'Netherlands', + year: 2000, + date: '01/10/2000', + sport: 'Rowing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Bill Demong', + age: 29, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Nordic Combined', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Bernhard Gruber', + age: 27, + country: 'Austria', + year: 2010, + date: '28/02/2010', + sport: 'Nordic Combined', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Magnus Moan', + age: 22, + country: 'Norway', + year: 2006, + date: '26/02/2006', + sport: 'Nordic Combined', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Ronny Ackermann', + age: 24, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Nordic Combined', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Jaakko Tallus', + age: 20, + country: 'Finland', + year: 2002, + date: '24/02/2002', + sport: 'Nordic Combined', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Denis Ablyazin', + age: 19, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Chen Yibing', + age: 27, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Gabby Douglas', + age: 16, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Feng Zhe', + age: 24, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Sandra Izbasa', + age: 22, + country: 'Romania', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Viktoriya Komova', + age: 17, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'McKayla Maroney', + age: 16, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Marcel Nguyen', + age: 24, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Mariya Paseka', + age: 17, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Catalina Ponor', + age: 24, + country: 'Romania', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Louis Smith', + age: 23, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Max Whitlock', + age: 19, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Gymnastics', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Chen Yibing', + age: 23, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Anton Golotsutskov', + age: 23, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'He Kexin', + age: 16, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Jonathan Horton', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Sandra Izbasa', + age: 18, + country: 'Romania', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Li Xiaopeng', + age: 27, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Kohei Uchimura', + age: 19, + country: 'Japan', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Xiao Qin', + age: 23, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Alexandra Eremia', + age: 17, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Annia Hatch', + age: 26, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Terin Humphrey', + age: 18, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Takehiro Kashima', + age: 24, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Svetlana Khorkina', + age: 25, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Courtney Kupets', + age: 18, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Anna Pavlova', + age: 16, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Monica Rosu', + age: 17, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Dana Sofronie', + age: 16, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Hiroyuki Tomita', + age: 23, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Marius Urzica', + age: 28, + country: 'Romania', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Isao Yoneda', + age: 26, + country: 'Japan', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Yordan Yovchev', + age: 31, + country: 'Bulgaria', + year: 2004, + date: '29/08/2004', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Oleksandr Beresh', + age: 22, + country: 'Ukraine', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Aleksey Bondarenko', + age: 22, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Lee Ju-Hyeong', + age: 27, + country: 'South Korea', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Li Xiaopeng', + age: 19, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Liu Xuan', + age: 21, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Maria Olaru', + age: 18, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yelena Produnova', + age: 20, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Andreea Raducan', + age: 16, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yang Wei', + age: 20, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yordan Yovchev', + age: 27, + country: 'Bulgaria', + year: 2000, + date: '01/10/2000', + sport: 'Gymnastics', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Elisa Di Francisca', + age: 29, + country: 'Italy', + year: 2012, + date: '12/08/2012', + sport: 'Fencing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Arianna Errigo', + age: 24, + country: 'Italy', + year: 2012, + date: '12/08/2012', + sport: 'Fencing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Diego Occhiuzzi', + age: 31, + country: 'Italy', + year: 2012, + date: '12/08/2012', + sport: 'Fencing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Sun Yujie', + age: 19, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Valentina Vezzali', + age: 38, + country: 'Italy', + year: 2012, + date: '12/08/2012', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Stefano Carozzo', + age: 29, + country: 'Italy', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Margherita Granbassi', + age: 28, + country: 'Italy', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Sada Jacobson', + age: 25, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Fabrice Jeannet', + age: 27, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Nicolas Lopez', + age: 27, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Matteo Tagliariol', + age: 25, + country: 'Italy', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Valentina Vezzali', + age: 34, + country: 'Italy', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Becca Ward', + age: 18, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Mariel Zagunis', + age: 23, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Andrea CassarĂ ', + age: 20, + country: 'Italy', + year: 2004, + date: '29/08/2004', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Laura Flessel-Colovic', + age: 32, + country: 'France', + year: 2004, + date: '29/08/2004', + sport: 'Fencing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Aldo Montano', + age: 25, + country: 'Italy', + year: 2004, + date: '29/08/2004', + sport: 'Fencing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Maureen Nisima', + age: 23, + country: 'France', + year: 2004, + date: '29/08/2004', + sport: 'Fencing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Salvatore Sanzo', + age: 28, + country: 'Italy', + year: 2004, + date: '29/08/2004', + sport: 'Fencing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Mathieu Gourdain', + age: 26, + country: 'France', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Gianna HablĂ¼tzel-BĂ¼rki', + age: 30, + country: 'Switzerland', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Rita König', + age: 23, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Wiradech Kothny', + age: 21, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Hugues Obry', + age: 27, + country: 'France', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Giovanna Trillini', + age: 30, + country: 'Italy', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Valentina Vezzali', + age: 26, + country: 'Italy', + year: 2000, + date: '01/10/2000', + sport: 'Fencing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Sandra Auffarth', + age: 25, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Equestrian', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Laura Bechtolsheimer', + age: 27, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Equestrian', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Adelinde Cornelissen', + age: 33, + country: 'Netherlands', + year: 2012, + date: '12/08/2012', + sport: 'Equestrian', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Charlotte Dujardin', + age: 27, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Equestrian', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Michael Jung', + age: 29, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Equestrian', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Gerco Schröder', + age: 34, + country: 'Netherlands', + year: 2012, + date: '12/08/2012', + sport: 'Equestrian', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Tina Cook', + age: 37, + country: 'Great Britain', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Heike Kemmer', + age: 46, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Eric Lamaze', + age: 40, + country: 'Canada', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Beezie Madden', + age: 44, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Hinrich Romeike', + age: 45, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Anky van Grunsven', + age: 40, + country: 'Netherlands', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Isabell Werth', + age: 39, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Beatriz Ferrer-Salat', + age: 38, + country: 'Spain', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Pippa Funnell', + age: 35, + country: 'Great Britain', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Chris Kappler', + age: 37, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Marco Kutscher', + age: 29, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Leslie Law', + age: 39, + country: 'Great Britain', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Ulla Salzgeber', + age: 46, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kim Severson', + age: 30, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Equestrian', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Andrew Hoy', + age: 41, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: "David O'Connor", + age: 38, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Equestrian', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Ulla Salzgeber', + age: 42, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Equestrian', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Anky van Grunsven', + age: 32, + country: 'Netherlands', + year: 2000, + date: '01/10/2000', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Isabell Werth', + age: 31, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Equestrian', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'David Boudia', + age: 23, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Diving', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Chen Ruolin', + age: 19, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Diving', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'He Zi', + age: 21, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Qin Kai', + age: 26, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Wu Minxia', + age: 26, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Diving', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Ilya Zakharov', + age: 21, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Chen Ruolin', + age: 15, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Gleb Galperin', + age: 25, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Guo Jingjing', + age: 26, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Yuliya Pakhalina', + age: 30, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Qin Kai', + age: 22, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Wang Xin', + age: 16, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Wu Minxia', + age: 22, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Diving', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Guo Jingjing', + age: 22, + country: 'China', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Mathew Helm', + age: 23, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Lao Lishi', + age: 16, + country: 'China', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Chantelle Michell-Newbery', + age: 27, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Robert Newbery', + age: 25, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Yuliya Pakhalina', + age: 26, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Tian Liang', + age: 24, + country: 'China', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Wu Minxia', + age: 18, + country: 'China', + year: 2004, + date: '29/08/2004', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Fu Mingxia', + age: 22, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Guo Jingjing', + age: 18, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Hu Jia', + age: 17, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Li Na', + age: 16, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Anne Montminy', + age: 25, + country: 'Canada', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Tian Liang', + age: 21, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Xiong Ni', + age: 26, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Diving', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'GrĂ©gory BaugĂ©', + age: 27, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Ed Clancy', + age: 27, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Sarah Hammer', + age: 28, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Chris Hoy', + age: 36, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Jason Kenny', + age: 24, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Maximilian Levy', + age: 25, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Anna Meares', + age: 28, + country: 'Australia', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Vicki Pendleton', + age: 31, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Laura Trott', + age: 20, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Olga Zabelinskaya', + age: 32, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Cycling', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'MickaĂ«l Bourgain', + age: 28, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Fabian Cancellara', + age: 27, + country: 'Switzerland', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Jason Kenny', + age: 20, + country: 'Great Britain', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Joan Llaneras', + age: 39, + country: 'Spain', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Hayden Roulston', + age: 27, + country: 'New Zealand', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Bradley Wiggins', + age: 28, + country: 'Great Britain', + year: 2008, + date: '24/08/2008', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Ryan Bayley', + age: 22, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Graeme Brown', + age: 25, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Sergi Escobar', + age: 29, + country: 'Spain', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Rob Hayles', + age: 31, + country: 'Great Britain', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Brad McGee', + age: 28, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Anna Meares', + age: 20, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Stefan Nimke', + age: 26, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Olga Slyusareva', + age: 35, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Arnaud Tournant', + age: 26, + country: 'France', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'RenĂ© Wolff', + age: 26, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Leontien Zijlaard-van Moorsel', + age: 34, + country: 'Netherlands', + year: 2004, + date: '29/08/2004', + sport: 'Cycling', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'FĂ©licia Ballanger', + age: 29, + country: 'France', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Robert Bartko', + age: 24, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Jens Fiedler', + age: 30, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Jens Lehmann', + age: 32, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Gary Neiwand', + age: 34, + country: 'Australia', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Jason Queally', + age: 30, + country: 'Great Britain', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Jan Ullrich', + age: 26, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Cycling', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'LukĂ¡Å¡ Bauer', + age: 32, + country: 'Czech Republic', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Anna Haag', + age: 23, + country: 'Sweden', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Marcus Hellner', + age: 24, + country: 'Sweden', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Charlotte Kalla', + age: 22, + country: 'Sweden', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Claudia KĂ¼nzel-Nystad', + age: 32, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Aino-Kaisa Saarinen', + age: 31, + country: 'Finland', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Evi Sachenbacher-Stehle', + age: 29, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Axel Teichmann', + age: 30, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Cross Country Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Tobias Angerer', + age: 28, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Yuliya Chepalova', + age: 29, + country: 'Russia', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yevgeny Dementyev', + age: 23, + country: 'Russia', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Giorgio Di Centa', + age: 33, + country: 'Italy', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Thobias Fredriksson', + age: 30, + country: 'Sweden', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Claudia KĂ¼nzel-Nystad', + age: 28, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Björn Lind', + age: 27, + country: 'Sweden', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Yevgeniya Medvedeva', + age: 29, + country: 'Russia', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Katerina NeumannovĂ¡', + age: 32, + country: 'Czech Republic', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Pietro Piller Cottrer', + age: 31, + country: 'Italy', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Kristina Å migun-Vähi', + age: 28, + country: 'Estonia', + year: 2006, + date: '26/02/2006', + sport: 'Cross Country Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Thomas Alsgaard', + age: 30, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Viola Bauer', + age: 25, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Anita Moen-Guidon', + age: 34, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Katerina NeumannovĂ¡', + age: 28, + country: 'Czech Republic', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Evi Sachenbacher-Stehle', + age: 21, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kristen Skjeldal', + age: 34, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Andrus Veerpalu', + age: 31, + country: 'Estonia', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Cristian Zorzi', + age: 29, + country: 'Italy', + year: 2002, + date: '24/02/2002', + sport: 'Cross Country Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Tina Dietze', + age: 24, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Natasa Douchev-Janics', + age: 30, + country: 'Hungary', + year: 2012, + date: '12/08/2012', + sport: 'Canoeing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Katalin KovĂ¡cs', + age: 36, + country: 'Hungary', + year: 2012, + date: '12/08/2012', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Danuta KozĂ¡k', + age: 25, + country: 'Hungary', + year: 2012, + date: '12/08/2012', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Inna Osypenko-Radomska', + age: 29, + country: 'Ukraine', + year: 2012, + date: '12/08/2012', + sport: 'Canoeing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Franziska Weber', + age: 23, + country: 'Germany', + year: 2012, + date: '12/08/2012', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Tim Brabants', + age: 31, + country: 'Great Britain', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'David Cal', + age: 25, + country: 'Spain', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Natasa Douchev-Janics', + age: 26, + country: 'Hungary', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Christian Gille', + age: 32, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Katalin KovĂ¡cs', + age: 32, + country: 'Hungary', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Vadim Makhnyov', + age: 28, + country: 'Belarus', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Roman Petrushenko', + age: 27, + country: 'Belarus', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Katrin Wagner-Augustin', + age: 30, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Ken Wallace', + age: 25, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Tomasz Wylenzek', + age: 25, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Canoeing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Nathan Baggaley', + age: 28, + country: 'Australia', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'David Cal', + age: 21, + country: 'Spain', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Andreas Dittmer', + age: 32, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Natasa Douchev-Janics', + age: 22, + country: 'Hungary', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Birgit Fischer-Schmidt', + age: 42, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Aleksandr Kostoglod', + age: 30, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Katalin KovĂ¡cs', + age: 28, + country: 'Hungary', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Aleksandr Kovalyov', + age: 29, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Eirik VerĂ¥s Larsen', + age: 28, + country: 'Norway', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Carolin Leonhardt', + age: 19, + country: 'Germany', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Adam Van Koeverden', + age: 22, + country: 'Canada', + year: 2004, + date: '29/08/2004', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Andreas Dittmer', + age: 28, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Birgit Fischer-Schmidt', + age: 38, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Knut Holmann', + age: 32, + country: 'Norway', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'ZoltĂ¡n Kammerer', + age: 22, + country: 'Hungary', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Katalin KovĂ¡cs', + age: 24, + country: 'Hungary', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Petar Merkov', + age: 23, + country: 'Bulgaria', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Florin Popescu', + age: 26, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Mitica Pricop', + age: 22, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Botond Storcz', + age: 25, + country: 'Hungary', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Szilvia SzabĂ³', + age: 21, + country: 'Hungary', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Katrin Wagner-Augustin', + age: 22, + country: 'Germany', + year: 2000, + date: '01/10/2000', + sport: 'Canoeing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Kevin Kuske', + age: 31, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Bobsleigh', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'AndrĂ© Lange', + age: 36, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Bobsleigh', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Martin Annen', + age: 32, + country: 'Switzerland', + year: 2006, + date: '26/02/2006', + sport: 'Bobsleigh', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Beat Hefti', + age: 28, + country: 'Switzerland', + year: 2006, + date: '26/02/2006', + sport: 'Bobsleigh', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Kevin Kuske', + age: 27, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Bobsleigh', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'AndrĂ© Lange', + age: 32, + country: 'Germany', + year: 2006, + date: '26/02/2006', + sport: 'Bobsleigh', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Ole Einar Bjørndalen', + age: 36, + country: 'Norway', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Marie Laure Brunet', + age: 21, + country: 'France', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Marie Dorin', + age: 23, + country: 'France', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Simone Hauswald', + age: 30, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Vincent Jay', + age: 24, + country: 'France', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Anastasia Kuzmina', + age: 25, + country: 'Slovakia', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Christoph Sumann', + age: 34, + country: 'Austria', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Yevgeny Ustyugov', + age: 24, + country: 'Russia', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Olga Zaytseva', + age: 31, + country: 'Russia', + year: 2010, + date: '28/02/2010', + sport: 'Biathlon', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Florence Baverel-Robert', + age: 31, + country: 'France', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Vincent Defrasne', + age: 28, + country: 'France', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Halvard Hanevold', + age: 36, + country: 'Norway', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Svetlana Ishmuratova', + age: 33, + country: 'Russia', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Anna-Carin Olofsson-Zidek', + age: 32, + country: 'Sweden', + year: 2006, + date: '26/02/2006', + sport: 'Biathlon', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Uschi Disl', + age: 31, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Sven Fischer', + age: 30, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Ricco GroĂŸ', + age: 31, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Andrea Henkel', + age: 24, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Frank Luck', + age: 34, + country: 'Germany', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'RaphaĂ«l PoirĂ©e', + age: 27, + country: 'France', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Olga Pylyova-Medvedtseva', + age: 26, + country: 'Russia', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Liv Grete Skjelbreid-PoirĂ©e', + age: 27, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Magdalena Wallin-Forsberg', + age: 34, + country: 'Sweden', + year: 2002, + date: '24/02/2002', + sport: 'Biathlon', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Zhao Yunlei', + age: 25, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Badminton', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Lee Hyo-Jeong', + age: 27, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Badminton', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yu Yang', + age: 22, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Badminton', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Gao Ling', + age: 25, + country: 'China', + year: 2004, + date: '29/08/2004', + sport: 'Badminton', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Gao Ling', + age: 21, + country: 'China', + year: 2000, + date: '01/10/2000', + sport: 'Badminton', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Nataliya Antyukh', + age: 31, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Veronica Campbell-Brown', + age: 30, + country: 'Jamaica', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Vivian Cheruiyot', + age: 28, + country: 'Kenya', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Will Claye', + age: 21, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Tirunesh Dibaba', + age: 27, + country: 'Ethiopia', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Mo Farah', + age: 29, + country: 'Great Britain', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Justin Gatlin', + age: 30, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Lalonde Gordon', + age: 23, + country: 'Trinidad and Tobago', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Sanya Richards-Ross', + age: 27, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'DeeDee Trotter', + age: 29, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Elvan Abeylegesse', + age: 25, + country: 'Turkey', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Kenenisa Bekele', + age: 26, + country: 'Ethiopia', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Kerron Clement', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Tirunesh Dibaba', + age: 23, + country: 'Ethiopia', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Walter Dix', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Allyson Felix', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yuliya Gushchina', + age: 25, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Tatyana Lebedeva', + age: 32, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'LaShawn Merritt', + age: 22, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'David Neville', + age: 24, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Sanya Richards-Ross', + age: 23, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Kerron Stewart', + age: 24, + country: 'Jamaica', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Jared Tallent', + age: 23, + country: 'Australia', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Angelo Taylor', + age: 29, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Richard Thompson', + age: 23, + country: 'Trinidad and Tobago', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Jeremy Wariner', + age: 24, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Shericka Williams', + age: 22, + country: 'Jamaica', + year: 2008, + date: '24/08/2008', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Nataliya Antyukh', + age: 23, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Kenenisa Bekele', + age: 22, + country: 'Ethiopia', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Derrick Brew', + age: 26, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Shawn Crawford', + age: 26, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Hicham El Guerrouj', + age: 29, + country: 'Morocco', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Maurice Greene', + age: 30, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Otis Harris', + age: 22, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kelly Holmes', + age: 34, + country: 'Great Britain', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Tatyana Lebedeva', + age: 28, + country: 'Russia', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Jeremy Wariner', + age: 20, + country: 'United States', + year: 2004, + date: '29/08/2004', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Ato Boldon', + age: 26, + country: 'Trinidad and Tobago', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Pauline Davis-Thompson', + age: 34, + country: 'Bahamas', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Lorraine Graham', + age: 27, + country: 'Jamaica', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Maurice Greene', + age: 26, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Greg Haughton', + age: 26, + country: 'Jamaica', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Deon Hemmings', + age: 31, + country: 'Jamaica', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Robert Korzeniowski', + age: 32, + country: 'Poland', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Tayna Lawrence', + age: 25, + country: 'Jamaica', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Beverly McDonald', + age: 30, + country: 'Jamaica', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Merlene Ottey-Page', + age: 40, + country: 'Jamaica', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Irina Privalova', + age: 31, + country: 'Russia', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Gabriela Szabo', + age: 24, + country: 'Romania', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Gete Wami', + age: 25, + country: 'Ethiopia', + year: 2000, + date: '01/10/2000', + sport: 'Athletics', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Elisabeth Görgl', + age: 28, + country: 'Austria', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Lindsey Kildow-Vonn', + age: 25, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Ivica Kostelic', + age: 30, + country: 'Croatia', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Julia Mancuso', + age: 25, + country: 'United States', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Tina Maze', + age: 26, + country: 'Slovenia', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Maria Riesch', + age: 25, + country: 'Germany', + year: 2010, + date: '28/02/2010', + sport: 'Alpine Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Michaela Dorfmeister', + age: 32, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Janica Kostelic', + age: 24, + country: 'Croatia', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Hermann Maier', + age: 33, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Benjamin Raich', + age: 27, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Marlies Schild', + age: 24, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Rainer Schönfelder', + age: 28, + country: 'Austria', + year: 2006, + date: '26/02/2006', + sport: 'Alpine Skiing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Kjetil AndrĂ© Aamodt', + age: 30, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Renate Götschl', + age: 26, + country: 'Austria', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Lasse Kjus', + age: 31, + country: 'Norway', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Bode Miller', + age: 24, + country: 'United States', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 0, + silver: 2, + bronze: 0, + total: 2, + }, + { + athlete: 'Anja Pärson', + age: 20, + country: 'Sweden', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Benjamin Raich', + age: 23, + country: 'Austria', + year: 2002, + date: '24/02/2002', + sport: 'Alpine Skiing', + gold: 0, + silver: 0, + bronze: 2, + total: 2, + }, + { + athlete: 'Ki Bo-Bae', + age: 24, + country: 'South Korea', + year: 2012, + date: '12/08/2012', + sport: 'Archery', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Oh Jin-Hyek', + age: 30, + country: 'South Korea', + year: 2012, + date: '12/08/2012', + sport: 'Archery', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Park Gyeong-Mo', + age: 32, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Archery', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Park Seong-Hyeon', + age: 25, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Archery', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Yun Ok-Hui', + age: 23, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Archery', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Zhang Juanjuan', + age: 27, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Archery', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Lee Seong-Jin', + age: 19, + country: 'South Korea', + year: 2004, + date: '29/08/2004', + sport: 'Archery', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Park Seong-Hyeon', + age: 21, + country: 'South Korea', + year: 2004, + date: '29/08/2004', + sport: 'Archery', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Kim Nam-Sun', + age: 20, + country: 'South Korea', + year: 2000, + date: '01/10/2000', + sport: 'Archery', + gold: 1, + silver: 1, + bronze: 0, + total: 2, + }, + { + athlete: 'Kim Su-Nyeong', + age: 29, + country: 'South Korea', + year: 2000, + date: '01/10/2000', + sport: 'Archery', + gold: 1, + silver: 0, + bronze: 1, + total: 2, + }, + { + athlete: 'Vic Wunderle', + age: 24, + country: 'United States', + year: 2000, + date: '01/10/2000', + sport: 'Archery', + gold: 0, + silver: 1, + bronze: 1, + total: 2, + }, + { + athlete: 'Yun Mi-Jin', + age: 17, + country: 'South Korea', + year: 2000, + date: '01/10/2000', + sport: 'Archery', + gold: 2, + silver: 0, + bronze: 0, + total: 2, + }, + { + athlete: 'Artur Aleksanyan', + age: 20, + country: 'Armenia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Valeriy Andriitsev', + age: 25, + country: 'Ukraine', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Rövs?n Bayramov', + age: 25, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Jordan Burroughs', + age: 24, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Clarissa Chun', + age: 30, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Yogeshwar Dutt', + age: 29, + country: 'India', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Jaime Espinal', + age: 27, + country: 'Puerto Rico', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Johan EurĂ©n', + age: 27, + country: 'Sweden', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Karam Gaber', + age: 32, + country: 'Egypt', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Daniyal Gadzhiyev', + age: 26, + country: 'Kazakhstan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Komeil Ghasemi', + age: 24, + country: 'Iran', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Giorgi Gogshelidze', + age: 32, + country: 'Georgia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Sadegh Goudarzi', + age: 24, + country: 'Iran', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Steeve GuĂ©not', + age: 26, + country: 'France', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Carol Huynh', + age: 31, + country: 'Canada', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Kaori Icho', + age: 28, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Damian Janikowski', + age: 23, + country: 'Poland', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Jing Ruixue', + age: 24, + country: 'China', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Arsen Julfalakyan', + age: 25, + country: 'Armenia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Riza Kayaalp', + age: 22, + country: 'Turkey', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Aleksandras Kazakevicius', + age: 26, + country: 'Lithuania', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Vladimer Khinchegashvili', + age: 21, + country: 'Georgia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Alan Khugayev', + age: 23, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Kim Hyeon-Wu', + age: 23, + country: 'South Korea', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Besik Kudukhov', + age: 25, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Sushil Kumar', + age: 29, + country: 'India', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Zaur Kuramagomedov', + age: 24, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Ehsan Naser Lashgari', + age: 26, + country: 'Iran', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Revaz Lashkhi', + age: 24, + country: 'Georgia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Jimmy Lidberg', + age: 30, + country: 'Sweden', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'LivĂ¡n LĂ³pez', + age: 30, + country: 'Cuba', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'MijaĂ­n LĂ³pez', + age: 29, + country: 'Cuba', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'TamĂ¡s Lorincz', + age: 25, + country: 'Hungary', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Bilyal Makhov', + age: 24, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Gyuzel Manyurova', + age: 34, + country: 'Kazakhstan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Dato Marsagishvili', + age: 21, + country: 'Georgia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Ryutaro Matsumoto', + age: 26, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'PĂ©ter MĂ³dos', + age: 24, + country: 'Hungary', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Davit Modzmanashvili', + age: 25, + country: 'Georgia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Heiki Nabi', + age: 27, + country: 'Estonia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Omid Noroozi', + age: 26, + country: 'Iran', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Hitomi Obara', + age: 31, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Dzhamal Otarsultanov', + age: 25, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Xetaq Qazyumov', + age: 29, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Yuliya Ratkeviç', + age: 27, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Jackeline RenterĂ­a', + age: 26, + country: 'Colombia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Ghasem Rezaei', + age: 26, + country: 'Iran', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Coleman Scott', + age: 26, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Mingiyan Semyonov', + age: 22, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Soronzonboldyn Battsetseg', + age: 22, + country: 'Mongolia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Hamid Soryan', + age: 26, + country: 'Iran', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Mariya Stadnik', + age: 24, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'S?rif S?rifov', + age: 23, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Akzhurek Tanatarov', + age: 25, + country: 'Kazakhstan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Artur Taymazov', + age: 33, + country: 'Uzbekistan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Soslan Tigiyev', + age: 28, + country: 'Uzbekistan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Rustam Totrov', + age: 28, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Denis Tsargush', + age: 24, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Manuchar Tskhadaia', + age: 27, + country: 'Georgia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Maider Unda', + age: 35, + country: 'Spain', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Jake Varner', + age: 26, + country: 'United States', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Tonya Verbeek', + age: 34, + country: 'Canada', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Roman Vlasov', + age: 21, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Lyubov Volosova', + age: 29, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Nataliya Vorobyova', + age: 21, + country: 'Russia', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Yang Kyong-Il', + age: 23, + country: 'North Korea', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Tatsuhiro Yonemitsu', + age: 26, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Saori Yoshida', + age: 29, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Shinichi Yumoto', + age: 27, + country: 'Japan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Stanka Zlateva', + age: 29, + country: 'Bulgaria', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Emin ?hm?dov', + age: 25, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Togrul ?sg?rov', + age: 19, + country: 'Azerbaijan', + year: 2012, + date: '12/08/2012', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Yusuf Abdusalomov', + age: 30, + country: 'Tajikistan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Bakhtiyar Akhmedov', + age: 21, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Islam-Beka Albiyev', + age: 19, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Roman Amoyan', + age: 24, + country: 'Armenia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Nazmi Avluca', + age: 31, + country: 'Turkey', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Khasan Baroyev', + age: 25, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Mavlet Batyrov', + age: 24, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Rövs?n Bayramov', + age: 21, + country: 'Azerbaijan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Kanat Begaliyev', + age: 24, + country: 'Kyrgyzstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Henry Cejudo', + age: 21, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Chang Yongxiang', + age: 24, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Taras Danko', + age: 28, + country: 'Ukraine', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Mirko Englich', + age: 29, + country: 'Germany', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Vasyl Fedoryshyn', + age: 27, + country: 'Ukraine', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'ZoltĂ¡n Fodor', + age: 23, + country: 'Hungary', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Murad Gaydarov', + age: 28, + country: 'Belarus', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Giorgi Gogshelidze', + age: 28, + country: 'Georgia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Christophe GuĂ©not', + age: 29, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Steeve GuĂ©not', + age: 22, + country: 'France', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Kyoko Hamaguchi', + age: 30, + country: 'Japan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Carol Huynh', + age: 27, + country: 'Canada', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Chiharu Icho', + age: 26, + country: 'Japan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Kaori Icho', + age: 24, + country: 'Japan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: "Manuchar K'virk'elia", + age: 29, + country: 'Georgia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Alyona Kartashova', + age: 26, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Georgy Ketoyev', + age: 22, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Aslanbek Khushtov', + age: 28, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Besik Kudukhov', + age: 22, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Sushil Kumar', + age: 25, + country: 'India', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'MijaĂ­n LĂ³pez', + age: 25, + country: 'Cuba', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Aset Mambetov', + age: 26, + country: 'Kazakhstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Nazyr Mankiyev', + age: 23, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Tomohiro Matsunaga', + age: 28, + country: 'Japan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Iryna Merleni-Mykulchyn', + age: 26, + country: 'Ukraine', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Randi Miller', + age: 24, + country: 'United States', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Revaz Mindorashvili', + age: 32, + country: 'Georgia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Andrea Minguzzi', + age: 26, + country: 'Italy', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Mindaugas Mizgaitis', + age: 28, + country: 'Lithuania', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Seyed Mohammadi', + age: 28, + country: 'Iran', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Sharvani Muradov', + age: 23, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'David Musulbes', + age: 36, + country: 'Slovakia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Marid Mutalimov', + age: 28, + country: 'Kazakhstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Park Eun-Chul', + age: 27, + country: 'South Korea', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Yury Patrikeyev', + age: 28, + country: 'Armenia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Xetaq Qazyumov', + age: 25, + country: 'Azerbaijan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Jackeline RenterĂ­a', + age: 22, + country: 'Colombia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Vitaliy R?himov', + age: 23, + country: 'Azerbaijan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Ramazan Sahin', + age: 25, + country: 'Turkey', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Buvaisa Saytiyev', + age: 33, + country: 'Russia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Mikhail Semyonov', + age: 24, + country: 'Belarus', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Yelena Shalygina', + age: 21, + country: 'Kazakhstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Andriy Stadnik', + age: 26, + country: 'Ukraine', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Mariya Stadnik', + age: 20, + country: 'Azerbaijan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Artur Taymazov', + age: 29, + country: 'Uzbekistan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, + { + athlete: 'Nurbakyt Tengizbayev', + age: 25, + country: 'Kazakhstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Kiril Terziev', + age: 24, + country: 'Bulgaria', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Soslan Tigiyev', + age: 24, + country: 'Uzbekistan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Taymuraz Tigiyev', + age: 26, + country: 'Kazakhstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 1, + bronze: 0, + total: 1, + }, + { + athlete: 'Otar Tushishvili', + age: 30, + country: 'Georgia', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Ruslan Tyumenbayev', + age: 22, + country: 'Kyrgyzstan', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Armen Vardanian', + age: 25, + country: 'Ukraine', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Radoslav Velikov', + age: 24, + country: 'Bulgaria', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Tonya Verbeek', + age: 31, + country: 'Canada', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 0, + silver: 0, + bronze: 1, + total: 1, + }, + { + athlete: 'Wang Jiao', + age: 20, + country: 'China', + year: 2008, + date: '24/08/2008', + sport: 'Wrestling', + gold: 1, + silver: 0, + bronze: 0, + total: 1, + }, +]; diff --git a/js/components/BuckarooWidgetInfinite.tsx b/js/components/BuckarooWidgetInfinite.tsx new file mode 100644 index 00000000..b578af88 --- /dev/null +++ b/js/components/BuckarooWidgetInfinite.tsx @@ -0,0 +1,153 @@ +import React, { useMemo, useState } from 'react'; +import _ from 'lodash'; +import { OperationResult } from './DependentTabs'; +import { ColumnsEditor } from './ColumnsEditor'; + +import { DFData } from './DFViewerParts/DFWhole'; +import { StatusBar } from './StatusBar'; +import { BuckarooState } from './WidgetTypes'; +import { BuckarooOptions } from './WidgetTypes'; +import { DFMeta } from './WidgetTypes'; +import { CommandConfigT } from './CommandUtils'; +import { Operation } from './OperationUtils'; +import { + getDs, + getPayloadKey, + IDisplayArgs, + LruCache, + PayloadArgs, + PayloadResponse, +} from './DFViewerParts/gridUtils'; +import { + DatasourceOrRaw, + DFViewerInfinite, +} from './DFViewerParts/DFViewerInfinite'; +import { IDatasource } from '@ag-grid-community/core'; + +export const getDataWrapper = ( + data_key: string, + df_data_dict: Record, + ds: IDatasource +): DatasourceOrRaw => { + if (data_key === 'main') { + return { + data_type: 'DataSource', + datasource: ds, + length: 50, //hack + }; + } else { + return { + data_type: 'Raw', + data: df_data_dict[data_key], + length: df_data_dict[data_key].length, + }; + } +}; + +export function BuckarooInfiniteWidget({ + payload_args, + on_payload_args, + payload_response, + df_data_dict, + df_display_args, + df_meta, + operations, + on_operations, + operation_results, + commandConfig, + buckaroo_state, + on_buckaroo_state, + buckaroo_options, +}: { + payload_args: PayloadArgs; + on_payload_args: (pa: PayloadArgs) => void; + payload_response: PayloadResponse; + df_meta: DFMeta; + df_data_dict: Record; + df_display_args: Record; + operations: Operation[]; + on_operations: (ops: Operation[]) => void; + operation_results: OperationResult; + commandConfig: CommandConfigT; + buckaroo_state: BuckarooState; + on_buckaroo_state: React.Dispatch>; + buckaroo_options: BuckarooOptions; +}) { + // We wonly want to create respCache once, there are some swapover + // recreation of datasource where the old respCache gets incoming response + // only to be destroyed + const respCache = useMemo(() => new LruCache(), []); + const mainDs = useMemo(() => { + const t = new Date(); + console.log('recreating data source because operations changed', t); + return getDs(on_payload_args, respCache); + // getting a new datasource when operations or post-processing changes - necessary for forcing ag-grid complete updated + // updating via post-processing changes appropriately. + // forces re-render and dataload when not completely necessary if other + // buckaroo_state props change + // + // putting buckaroo_state.post_processing doesn't work properly + }, [operations, buckaroo_state]); + const cacheKey = getPayloadKey(payload_response.key, operations); + console.log('setting respCache', cacheKey, payload_response); + respCache.put( + getPayloadKey(payload_response.key, operations), + payload_response + ); + + const [activeCol, setActiveCol] = useState('stoptime'); + + const cDisp = df_display_args[buckaroo_state.df_display]; + + const [data_wrapper, summaryStatsData] = useMemo( + () => [ + getDataWrapper(cDisp.data_key, df_data_dict, mainDs), + df_data_dict[cDisp.summary_stats_key], + ], + [cDisp, operations, buckaroo_state] + ); + + const outsideDFParams = [operations, buckaroo_state.post_processing]; + return ( +
    +
    + + +
    + {buckaroo_state.show_commands ? ( + + ) : ( + + )} +
    + ); +} diff --git a/js/components/DCFCell.tsx b/js/components/DCFCell.tsx index af74ac98..9d238c59 100644 --- a/js/components/DCFCell.tsx +++ b/js/components/DCFCell.tsx @@ -1,9 +1,9 @@ -import React, { useState, Dispatch, SetStateAction } from 'react'; +import React, { useState } from 'react'; import _ from 'lodash'; import { OperationResult } from './DependentTabs'; import { ColumnsEditor } from './ColumnsEditor'; -import { DFData, DFViewerConfig } from './DFViewerParts/DFWhole'; +import { DFData } from './DFViewerParts/DFWhole'; import { DFViewer } from './DFViewerParts/DFViewer'; import { StatusBar } from './StatusBar'; import { BuckarooState } from './WidgetTypes'; @@ -11,21 +11,8 @@ import { BuckarooOptions } from './WidgetTypes'; import { DFMeta } from './WidgetTypes'; import { CommandConfigT } from './CommandUtils'; import { Operation } from './OperationUtils'; +import { IDisplayArgs } from './DFViewerParts/gridUtils'; -export type CommandConfigSetterT = ( - setter: Dispatch> -) => void; - -/* - Widget DCFCell is meant to be used with callback functions and passed values, not explicit http calls - - TODO:add height settings to dfConfig rather than hardcoded. - */ -export interface IDisplayArgs { - data_key: string; - df_viewer_config: DFViewerConfig; - summary_stats_key: string; -} export function WidgetDCFCell({ df_data_dict, df_display_args, diff --git a/js/components/DFViewerParts/DFViewer.tsx b/js/components/DFViewerParts/DFViewer.tsx index 5ec54630..4e26c465 100644 --- a/js/components/DFViewerParts/DFViewer.tsx +++ b/js/components/DFViewerParts/DFViewer.tsx @@ -4,54 +4,33 @@ import { ComponentConfig, DFData, DFViewerConfig } from './DFWhole'; import { dfToAgrid, extractPinnedRows } from './gridUtils'; import { replaceAtMatch } from '../utils'; -import { AgGridReact } from 'ag-grid-react'; // the AG Grid React Component +import { AgGridReact } from '@ag-grid-community/react'; // the AG Grid React Component import { + ColDef, DomLayoutType, GridOptions, SizeColumnsToContentStrategy, SizeColumnsToFitProvidedWidthStrategy, -} from 'ag-grid-community'; +} from '@ag-grid-community/core'; import { getCellRendererSelector } from './gridUtils'; -export type setColumFunc = (newCol: string) => void; - -export function DFViewer({ - df_data: df, - df_viewer_config, - summary_stats_data, - style, - activeCol, - setActiveCol, -}: { - df_data: DFData; - df_viewer_config: DFViewerConfig; - summary_stats_data?: DFData; - style?: CSSProperties; - activeCol?: string; - setActiveCol?: setColumFunc; -}) { - const [agColsPure, agData] = dfToAgrid( - df, - df_viewer_config, - summary_stats_data || [] - ); - const selectBackground = - df_viewer_config?.component_config?.selectionBackground || - 'var(--ag-range-selection-background-color-3)'; - const styledColumns = replaceAtMatch( - _.clone(agColsPure), - activeCol || '___never', - { - cellStyle: { background: selectBackground }, - } - ); - - const defaultColDef = { - sortable: true, - type: 'rightAligned', - cellRendererSelector: getCellRendererSelector(df_viewer_config.pinned_rows), - }; - +import { ModuleRegistry } from '@ag-grid-community/core'; +import { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model'; + +ModuleRegistry.registerModules([ClientSideRowModelModule]); +export type SetColumFunc = (newCol: string) => void; +export type PossibleAutosizeStrategy = + | SizeColumnsToFitProvidedWidthStrategy + | SizeColumnsToContentStrategy; + +export const getGridOptions = ( + setActiveCol: SetColumFunc, + df_viewer_config: DFViewerConfig, + defaultColDef: ColDef, + columnDefs: ColDef[], + domLayout: DomLayoutType, + autoSizeStrategy: PossibleAutosizeStrategy +): GridOptions => { const gridOptions: GridOptions = { rowSelection: 'single', @@ -81,46 +60,77 @@ export function DFViewer({ onCellClicked: (event) => { const colName = event.column.getColId(); + console.log('onCellClicked', event); if (setActiveCol === undefined || colName === undefined) { + console.log('returning because setActiveCol is undefined'); return; } else { + console.log('calling setActiveCol with', colName); setActiveCol(colName); } }, + defaultColDef, + columnDefs, + domLayout, + autoSizeStrategy, + ...(df_viewer_config.extra_grid_config ? df_viewer_config.extra_grid_config : {}), }; + return gridOptions; +}; + +export function DFViewer({ + df_data: df, + df_viewer_config, + summary_stats_data, + style, + activeCol, + setActiveCol, +}: { + df_data: DFData; + df_viewer_config: DFViewerConfig; + summary_stats_data?: DFData; + style?: CSSProperties; + activeCol?: string; + setActiveCol?: SetColumFunc; +}) { + const agColsPure = dfToAgrid(df_viewer_config, summary_stats_data || []); + const selectBackground = + df_viewer_config?.component_config?.selectionBackground || + 'var(--ag-range-selection-background-color-3)'; + const styledColumns = replaceAtMatch( + _.clone(agColsPure), + activeCol || '___never', + { + cellStyle: { background: selectBackground }, + } + ); + + const defaultColDef = { + sortable: true, + type: 'rightAligned', + cellRendererSelector: getCellRendererSelector(df_viewer_config.pinned_rows), + }; + const gridRef = useRef>(null); const pinned_rows = df_viewer_config.pinned_rows; const topRowData = summary_stats_data ? extractPinnedRows(summary_stats_data, pinned_rows ? pinned_rows : []) : []; - const getAutoSize = (): - | SizeColumnsToFitProvidedWidthStrategy - | SizeColumnsToContentStrategy => { - if (styledColumns.length < 1) { - return { - type: 'fitProvidedWidth', - width: window.innerWidth - 100, - }; - } - return { - type: 'fitCellContents', - }; - }; - - const hs = heightStyle({ - numRows: agData.length, - pinnedRowLen: df_viewer_config.pinned_rows.length, - location: window.location, - compC: df_viewer_config?.component_config, - rowHeight: df_viewer_config?.extra_grid_config?.rowHeight, - }); - const divClass = df_viewer_config?.component_config?.className || 'ag-theme-alpine-dark'; + const hs = getHeightStyle(df_viewer_config, df.length); + const gridOptions = getGridOptions( + setActiveCol as SetColumFunc, + df_viewer_config, + defaultColDef, + _.cloneDeep(styledColumns), + hs.domLayout, + getAutoSize(styledColumns.length) + ); return (
    @@ -130,10 +140,10 @@ export function DFViewer({ domLayout={hs.domLayout} defaultColDef={defaultColDef} gridOptions={gridOptions} - rowData={agData} + rowData={df} pinnedTopRowData={topRowData} columnDefs={_.cloneDeep(styledColumns)} - autoSizeStrategy={getAutoSize()} + autoSizeStrategy={getAutoSize(styledColumns.length)} >
    @@ -147,13 +157,26 @@ interface HeightStyleArgs { rowHeight?: number; compC?: ComponentConfig; } -interface HeightStyleI { +export interface HeightStyleI { domLayout: DomLayoutType; inIframe: string; classMode: 'short-mode' | 'regular-mode'; applicableStyle: CSSProperties; } +export const getHeightStyle = ( + df_viewer_config: DFViewerConfig, + numRows: number +): HeightStyleI => { + const hs = heightStyle({ + numRows: numRows, + pinnedRowLen: df_viewer_config.pinned_rows.length, + location: window.location, + compC: df_viewer_config?.component_config, + rowHeight: df_viewer_config?.extra_grid_config?.rowHeight, + }); + return hs; +}; export const heightStyle = (hArgs: HeightStyleArgs): HeightStyleI => { const { numRows, pinnedRowLen, location, rowHeight, compC } = hArgs; const isGoogleColab = @@ -169,6 +192,7 @@ export const heightStyle = (hArgs: HeightStyleArgs): HeightStyleI => { const shortMode = compC?.shortMode || (belowMinRows && rowHeight === undefined); + /* console.log( 'shortMode', shortMode, @@ -179,6 +203,7 @@ export const heightStyle = (hArgs: HeightStyleArgs): HeightStyleI => { 'inIframe', inIframe ); + */ const inIframeClass = inIframe ? 'inIframe' : ''; if (isGoogleColab || inIframe) { return { @@ -199,3 +224,16 @@ export const heightStyle = (hArgs: HeightStyleArgs): HeightStyleI => { inIframe: inIframeClass, }; }; +export const getAutoSize = ( + numColumns: number +): SizeColumnsToFitProvidedWidthStrategy | SizeColumnsToContentStrategy => { + if (numColumns < 1) { + return { + type: 'fitProvidedWidth', + width: window.innerWidth - 100, + }; + } + return { + type: 'fitCellContents', + }; +}; diff --git a/js/components/DFViewerParts/DFViewerInfinite.tsx b/js/components/DFViewerParts/DFViewerInfinite.tsx new file mode 100644 index 00000000..40709d6a --- /dev/null +++ b/js/components/DFViewerParts/DFViewerInfinite.tsx @@ -0,0 +1,260 @@ +import React, { + // useRef, + CSSProperties, + useState, + useCallback, + useMemo, +} from 'react'; +import _ from 'lodash'; +import { DFData, DFDataRow, DFViewerConfig } from './DFWhole'; + +import { dfToAgrid, extractPinnedRows } from './gridUtils'; +import { replaceAtMatch } from '../utils'; +import { AgGridReact } from '@ag-grid-community/react'; // the AG Grid React Component + +import { getCellRendererSelector } from './gridUtils'; + +import { + GetRowIdParams, + GridApi, + GridOptions, + IDatasource, + IGetRowsParams, + ModuleRegistry, + SortChangedEvent, + // ViewportChangedEvent, +} from '@ag-grid-community/core'; +import { ClientSideRowModelModule } from '@ag-grid-community/client-side-row-model'; +import { + getAutoSize, + getGridOptions, + getHeightStyle, + HeightStyleI, + SetColumFunc, +} from './DFViewer'; +import { InfiniteRowModelModule } from '@ag-grid-community/infinite-row-model'; + +ModuleRegistry.registerModules([ClientSideRowModelModule]); +ModuleRegistry.registerModules([InfiniteRowModelModule]); + +export interface DatasourceWrapper { + datasource: IDatasource; + data_type: 'DataSource'; + length: number; // length of full dataset, not most recent slice + // maybe include the extra grid settings +} +export interface RawDataWrapper { + data: DFData; + length: number; // length of full dataset, not most recent slice + data_type: 'Raw'; +} + +export type DatasourceOrRaw = DatasourceWrapper | RawDataWrapper; + +export function DFViewerInfinite({ + data_wrapper, + df_viewer_config, + summary_stats_data, + activeCol, + setActiveCol, + outside_df_params, + error_info, +}: { + data_wrapper: DatasourceOrRaw; + df_viewer_config: DFViewerConfig; + summary_stats_data?: DFData; + activeCol?: string; + setActiveCol?: SetColumFunc; + // these are the parameters that could affect the table, + // dfviewer doesn't need to understand them, but it does need to use + // them as keys to get updated data + outside_df_params?: any; + error_info?: string; +}) { + const styledColumns = useMemo(() => { + const agColsPure = dfToAgrid(df_viewer_config, summary_stats_data || []); + const selectBackground = + df_viewer_config?.component_config?.selectionBackground || + 'var(--ag-range-selection-background-color-3)'; + const styledColumns = replaceAtMatch( + _.clone(agColsPure), + activeCol || '___never', + { + cellStyle: { background: selectBackground }, + } + ); + return styledColumns; + }, [df_viewer_config, summary_stats_data, activeCol]); + const defaultColDef = { + sortable: true, + type: 'rightAligned', + enableCellChangeFlash: false, + cellRendererSelector: getCellRendererSelector(df_viewer_config.pinned_rows), + }; + + //const gridRef = useRef>(null); + const pinned_rows = df_viewer_config.pinned_rows; + const topRowData = ( + summary_stats_data + ? extractPinnedRows(summary_stats_data, pinned_rows ? pinned_rows : []) + : [] + ) as DFDataRow[]; + + const hs = getHeightStyle(df_viewer_config, data_wrapper.length); + + const divClass = + df_viewer_config?.component_config?.className || 'ag-theme-alpine-dark'; + const getRowId = useCallback( + (params: GetRowIdParams) => { + const retVal = + String(params?.data?.index) + params.context?.outside_df_params; + return retVal; + }, + [outside_df_params] + ); + + const gridOptions: GridOptions = { + ...getGridOptions( + setActiveCol as SetColumFunc, + df_viewer_config, + defaultColDef, + _.cloneDeep(styledColumns), + hs.domLayout, + getAutoSize(styledColumns.length) + ), + getRowId, + rowModelType: 'clientSide', + }; + console.log('error_info', error_info); + if (data_wrapper.data_type === 'Raw') { + const rdGridOptions: GridOptions = { + ...gridOptions, + rowData: data_wrapper.data, + suppressNoRowsOverlay: true, + }; + + return ( + + ); + } else if (data_wrapper.data_type === 'DataSource') { + const dsGridOptions = getDsGridOptions(gridOptions); + return ( +
    +
    {error_info ? error_info : ''}
    +
    + +
    +
    + ); + } else { + return
    Error
    ; + } +} +// used to make sure there is a different element returned when +// Raw is used, so the component properly swaps over. +// Otherwise pinnedRows appear above the last scrolled position +// of the InfiniteRowSource vs having an empty data set. + +const RowDataViewer = ({ + hs, + divClass, + rdGridOptions, + topRowData, +}: { + hs: HeightStyleI; + divClass: string; + rdGridOptions: GridOptions; + topRowData: DFData; +}): React.JSX.Element => { + console.log('gridRef'); + return ( +
    +
    + +
    +
    + ); +}; + +const getDsGridOptions = (origGridOptions: GridOptions): GridOptions => { + const dsGridOptions: GridOptions = { + ...origGridOptions, + onSortChanged: (event: SortChangedEvent) => { + const api: GridApi = event.api; + console.log( + 'sortChanged', + api.getFirstDisplayedRowIndex(), + api.getLastDisplayedRowIndex(), + event + ); + // every time the sort is changed, scroll back to the top row. + // Setting a sort and being in the middle of it makes no sense + api.ensureIndexVisible(0); + }, + rowBuffer: 5, + rowModelType: 'infinite', + cacheBlockSize: 49, + cacheOverflowSize: 2, + maxConcurrentDatasourceRequests: 1, + maxBlocksInCache: 5, + infiniteInitialRowCount: 49, + }; + return dsGridOptions; +}; + +export const StaticWrapDFViewerInfinite = ({ + df_data, + df_viewer_config, + summary_stats_data, +}: { + df_data: DFData; + df_viewer_config: DFViewerConfig; + summary_stats_data?: DFData; + style?: CSSProperties; +}) => { + // used for demos to exercise DFViewerInfinite + + const data_wrapper: DatasourceWrapper = { + length: df_data.length, + + data_type: 'DataSource', + datasource: { + getRows: (params: IGetRowsParams) => { + console.log('StaticWrapDFViewerInfinite', params); + params.successCallback( + df_data.slice(params.startRow, params.endRow), + df_data.length + ); + }, + }, + }; + + const [activeCol, setActiveCol] = useState('stoptime'); + + return ( +
    + +
    + ); +}; diff --git a/js/components/DFViewerParts/DFWhole.ts b/js/components/DFViewerParts/DFWhole.ts index 3890da26..025d0082 100644 --- a/js/components/DFViewerParts/DFWhole.ts +++ b/js/components/DFViewerParts/DFWhole.ts @@ -1,6 +1,6 @@ // I'm not sure about adding underlying types too -import { ColDef, GridOptions } from 'ag-grid-community'; +import { ColDef, GridOptions } from '@ag-grid-community/core'; import _ from 'lodash'; type AGGrid_ColDef = ColDef; diff --git a/js/components/DFViewerParts/Displayer.ts b/js/components/DFViewerParts/Displayer.ts index c0dd6c67..e7bc6d80 100644 --- a/js/components/DFViewerParts/Displayer.ts +++ b/js/components/DFViewerParts/Displayer.ts @@ -1,4 +1,7 @@ -import { ValueFormatterFunc, ValueFormatterParams } from 'ag-grid-community'; +import { + ValueFormatterFunc, + ValueFormatterParams, +} from '@ag-grid-community/core'; import { DisplayerArgs, cellRendererDisplayers, @@ -31,8 +34,13 @@ export const basicIntFormatter = new Intl.NumberFormat('en-US', { export const getStringFormatter = (args: StringDisplayerA) => { const stringFormatter = (params: ValueFormatterParams): string => { const val = params.value; - if (val && args.max_length) { - return val.slice(0, args.max_length); + if (val && args.max_length && typeof val === 'string') { + try { + return val.slice(0, args.max_length); + } catch (e) { + console.log('e', e, 'val', val); + return ''; + } } return val; }; diff --git a/js/components/DFViewerParts/HistogramCell.tsx b/js/components/DFViewerParts/HistogramCell.tsx index 7e768f00..c880d484 100644 --- a/js/components/DFViewerParts/HistogramCell.tsx +++ b/js/components/DFViewerParts/HistogramCell.tsx @@ -4,8 +4,6 @@ import { createPortal } from 'react-dom'; import { Bar, BarChart, Tooltip } from 'recharts'; -import {} from 'recharts'; - export interface HistogramNode { name: string; population: number; @@ -179,20 +177,68 @@ export const HistogramCell = (props: any) => { - - - - - + + + + + + + + - - - { + const columnDefs: ColDef[] = [ + // this row shows the row index, doesn't use any data from the row + { + headerName: 'ID', + maxWidth: 100, + // it is important to have node.id here, so that when the id changes (which happens + // when the row is loaded) then the cell is refreshed. + valueGetter: 'node.id', + }, + { field: 'agIdx' }, + { + field: 'athlete', + minWidth: 150, + }, + { field: 'sport' }, + { + field: 'age', + }, + { + field: 'total', + }, + ]; + const gridRef = useRef>(null); + + const gridOptions: GridOptions = { + datasource: dataSource, + /* + onModelUpdated: (event:ModelUpdatedEvent) => { + console.log("modelUpdated"); + console.log(event); + } + */ + + onSortChanged: (event: SortChangedEvent) => { + const api: GridApi = event.api; + console.log( + 'sortChanged', + api.getFirstDisplayedRowIndex(), + api.getLastDisplayedRowIndex(), + event + ); + // every time the sort is changed, scroll back to the top row. + // Setting a sort and being in the middle of it makes no sense + api.ensureIndexVisible(0); + }, + rowBuffer: 0, + rowModelType: 'infinite', + cacheBlockSize: 20, + cacheOverflowSize: 2, + maxConcurrentDatasourceRequests: 1, + maxBlocksInCache: 10, + infiniteInitialRowCount: 10, + getRowId: (params: GetRowIdParams) => { + return String(params?.data?.agIdx); + }, + }; + + return ( +
    +
    {JSON.stringify(operations)}
    +
    + + ; +
    +
    + ); +}; diff --git a/js/components/DFViewerParts/OtherRenderers.tsx b/js/components/DFViewerParts/OtherRenderers.tsx index f9ed43bd..3598ebdb 100644 --- a/js/components/DFViewerParts/OtherRenderers.tsx +++ b/js/components/DFViewerParts/OtherRenderers.tsx @@ -1,6 +1,6 @@ import _ from 'lodash'; import React from 'react'; -import { ValueFormatterFunc } from 'ag-grid-community'; +import { ValueFormatterFunc } from '@ag-grid-community/core'; export const getTextCellRenderer = (formatter: ValueFormatterFunc) => { const TextCellRenderer = (props: any) => { diff --git a/js/components/DFViewerParts/SeriesSummaryTooltip.tsx b/js/components/DFViewerParts/SeriesSummaryTooltip.tsx index b72b2a31..aa4018f0 100644 --- a/js/components/DFViewerParts/SeriesSummaryTooltip.tsx +++ b/js/components/DFViewerParts/SeriesSummaryTooltip.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { DFViewer } from './DFViewer'; import { DFWhole } from './DFWhole'; -import { ITooltipParams } from 'ag-grid-community'; +import { ITooltipParams } from '@ag-grid-community/core'; export function getBakedDFViewer(seriesDf: DFWhole) { const retFunc = (props: ITooltipParams) => { diff --git a/js/components/DFViewerParts/TableInfinite.tsx b/js/components/DFViewerParts/TableInfinite.tsx new file mode 100644 index 00000000..4c5751a4 --- /dev/null +++ b/js/components/DFViewerParts/TableInfinite.tsx @@ -0,0 +1,154 @@ +'use strict'; +import React, { useMemo, useState } from 'react'; + +import { winners } from '../../baked_data/olympic-winners'; +import { + getDs, + getPayloadKey, + LruCache, + PayloadArgs, + PayloadResponse, + // sourceName, +} from './gridUtils'; +import { InfiniteViewer } from './InfiniteViewerImpl'; +import { Operation } from '../OperationUtils'; +import _ from 'lodash'; + +const data: [string, Operation[]][] = [ + ['Swimming', [[{ symbol: 'foo' }, { symbol: 'df' }, 'green']]], + ['Gymnastics', [[{ symbol: 'bar' }, { symbol: 'df' }, 'green', 'purple']]], + ['Tennis', []], + ['Speed Skating', []], +]; + +const MySelect = ({ + selectedCategory, + setSelectedCategory, + setOperations, +}: { + selectedCategory: string; + setSelectedCategory: any; + setOperations: any; +}) => { + const handleCategoryChange = ( + event: React.ChangeEvent + ) => { + setSelectedCategory(event.target.value); + setOperations([ + [{ symbol: 'sport' }, { symbol: 'df' }, event.target.value], + ]); + }; + return ( +
    + +
    + ); +}; + +function addSequentialIndex(list: Record[]) { + return _.map(list, (item, index) => ({ + ...item, + idx: index + 1, // Adding 1 to start the index from 1 + })); +} + +function addUniqueIndex(list: Record[]) { + return _.map(list, (item, index) => ({ + ...item, + agIdx: `${item.idx}-${item.sport}`, + })); +} + +function filterBySport(list: any[], sport: string): any[] { + return _.filter(list, { sport: sport }); +} + +const getDataset = (sportName: string) => { + const retVal = addUniqueIndex( + addSequentialIndex(filterBySport(winners, sportName)) + ); + console.log('dataset retval', retVal); + return retVal; +}; + +export const InfiniteWrapper = ({ + payloadArgs, + on_payloadArgs, + payloadResponse, + operations, +}: { + payloadArgs: PayloadArgs; + on_payloadArgs: (pa: PayloadArgs) => void; + payloadResponse: PayloadResponse; + operations: Operation[]; +}) => { + const key = getPayloadKey(payloadResponse.key, operations); + const respCache = useMemo(() => new LruCache(), []); + + const ds = useMemo(() => { + console.log('recreating ds'); + return getDs(on_payloadArgs, respCache); + }, [operations]); + respCache.put(key, payloadResponse); + console.log( + `tableinfinite 94 found ${payloadResponse.data.length} rows for `, + key + ); + return ( +
    +
    {JSON.stringify(operations)}
    + + +
    + ); +}; + +export const InfiniteEx = () => { + // this is supposed to simulate the IPYwidgets backend + const [selectedSport, setSelectedSport] = useState('Tennis'); + const initialPA: PayloadArgs = { sourceName: 'paddy', start: 0, end: 100 }; + const [paState, setPaState] = useState(initialPA); + + const paToResp = (pa: PayloadArgs): PayloadResponse => { + // this simulates what python does + + const dataResp = getDataset(selectedSport); + const dataSliced = dataResp.slice(pa.start, pa.end); + console.log('infinite ex', selectedSport, dataResp, pa.start, pa.end); + return { + data: dataSliced, + key: pa, + length: dataResp.length, + }; + }; + const [operations, setOperations] = useState([ + [{ symbol: 'sport' }, { symbol: 'df' }, selectedSport], + ]); + + const resp: PayloadResponse = paToResp(paState); + return ( +
    + + + +
    + ); +}; diff --git a/js/components/DFViewerParts/gridUtils.ts b/js/components/DFViewerParts/gridUtils.ts index feee1cef..7e465d5c 100644 --- a/js/components/DFViewerParts/gridUtils.ts +++ b/js/components/DFViewerParts/gridUtils.ts @@ -3,7 +3,9 @@ import { CellRendererSelectorResult, ColDef, ICellRendererParams, -} from 'ag-grid-community'; + IDatasource, + IGetRowsParams, +} from '@ag-grid-community/core'; import { BLUE_TO_YELLOW, DIVERGING_RED_WHITE_BLUE, @@ -33,6 +35,8 @@ import { objFormatter, getFormatter, } from './Displayer'; +import { Dispatch, SetStateAction } from 'react'; +import { CommandConfigT } from '../CommandUtils'; // for now colDef stuff with less than 3 implementantions should stay in this file // as implementations grow large or with many implmentations, they should move to separate files @@ -196,10 +200,9 @@ export function extractSingleSeriesSummary( } export function dfToAgrid( - tdf: DFData, dfviewer_config: DFViewerConfig, full_summary_stats_df: DFData -): [ColDef[], unknown[]] { +): ColDef[] { //more convienient df format for some formatters const hdf = extractSDFT(full_summary_stats_df || []); @@ -230,8 +233,7 @@ export function dfToAgrid( return colDef; } ); - console.log('retColumns', retColumns); - return [retColumns, tdf]; + return retColumns; } // this is very similar to the colDef parts of dfToAgrid @@ -298,3 +300,172 @@ export function extractSDFT(summaryStatsDf: DFData): SDFT { }); return zipObject(allColumns, vals) as SDFT; } +export interface PayloadArgs { + sourceName: string; + start: number; + end: number; + sort?: string; + sort_direction?: string; +} +export interface PayloadResponse { + key: PayloadArgs; + data: DFData; + length: number; + error_info?: string; +} +export const getPayloadKey = ( + payloadArgs: PayloadArgs, + outside_params: any +): string => { + return `${payloadArgs.sourceName}-${payloadArgs.start}-${payloadArgs.end}-${payloadArgs.sort}-${payloadArgs.sort_direction}`; //-${JSON.stringify(outside_params)}`; +}; +export type CommandConfigSetterT = ( + setter: Dispatch> +) => void; + +export interface IDisplayArgs { + data_key: string; + df_viewer_config: DFViewerConfig; + summary_stats_key: string; +} + +export class LruCache { + private values: Map = new Map(); + private maxEntries = 10; + + public get(key: string): T | undefined { + const hasKey = this.values.has(key); + if (hasKey) { + // peek the entry, re-insert for LRU strategy + const maybeEntry = this.values.get(key); + if (maybeEntry === undefined) { + throw new Error(`unexpected undefined for ${key}`); + } + const entry: T = maybeEntry; + this.values.delete(key); + this.values.set(key, entry); + return entry; + } + return undefined; + } + + public put(key: string, value: T) { + if (this.values.size >= this.maxEntries) { + // least-recently used cache eviction strategy + const keyToDelete = this.values.keys().next().value; + console.log(`deleting ${keyToDelete}`); + this.values.delete(String(keyToDelete)); + } + + this.values.set(key, value); + } +} +export type RespCache = LruCache; + +export interface TimedIDatasource extends IDatasource { + createTime: Date; +} + +export const getDs = ( + setPaState2: (pa: PayloadArgs) => void, + respCache: LruCache +): TimedIDatasource => { + const dsLoc: TimedIDatasource = { + createTime: new Date(), + rowCount: undefined, + getRows: (params: IGetRowsParams) => { + const sm = params.sortModel; + const outside_params_string = JSON.stringify( + params.context?.outside_df_params + ); + const dsPayloadArgs = { + sourceName: outside_params_string, + start: params.startRow, + end: params.endRow, + sort: sm.length === 1 ? sm[0].colId : undefined, + sort_direction: sm.length === 1 ? sm[0].sort : undefined, + }; + + const dsPayloadArgsNext = { + sourceName: outside_params_string, + start: params.endRow, + end: params.endRow + (params.endRow - params.startRow), + sort: sm.length === 1 ? sm[0].colId : undefined, + sort_direction: sm.length === 1 ? sm[0].sort : undefined, + }; + // console.log('dsPayloadArgs', dsPayloadArgs, getPayloadKey(dsPayloadArgs)); + console.log( + 'gridUtils context outside_df_params', + params.context?.outside_df_params + ); + const origKey = getPayloadKey( + dsPayloadArgs, + params.context?.outside_df_params + ); + const resp = respCache.get(origKey); + + if (resp === undefined) { + const tryFetching = (attempt: number) => { + //const retryWait = 30 * Math.pow(1.7, attempt); + //fetching is really cheap. I'm going to go every 10ms up until 400 ms + const retryWait = 15; + setTimeout(() => { + const toResp = respCache.get(origKey); + if (toResp === undefined && attempt < 30) { + console.log( + `Attempt ${ + attempt + 1 + }: Data not found in cache, retrying... in ${retryWait} tried`, + origKey + ); + tryFetching(attempt + 1); + } else if (toResp !== undefined) { + const expectedPayload = + getPayloadKey( + dsPayloadArgs, + params.context?.outside_df_params + ) === + getPayloadKey(toResp.key, params.context?.outside_df_params); + if (!expectedPayload) { + console.log('got back the wrong payload'); + } + console.log('found data for', origKey, toResp.data); + params.successCallback(toResp.data, toResp.length); + // after the first success, prepopulate the cache for the following request + setPaState2(dsPayloadArgsNext); + } else { + console.log('Failed to fetch data after 5 attempts'); + } + }, retryWait); // Increase timeout exponentially + }; + + console.log( + 'after setTimeout, about to call setPayloadArgs', + dsPayloadArgs + ); + tryFetching(0); + setPaState2(dsPayloadArgs); + } else { + const expectedPayload = + getPayloadKey(dsPayloadArgs, params.context?.outside_df_params) === + getPayloadKey(resp.key, params.context?.outside_df_params); + console.log( + 'data already in cache', + dsPayloadArgs.start, + dsPayloadArgs.end, + expectedPayload, + dsPayloadArgs, + resp.key + ); + if (!expectedPayload) { + console.log('got back the wrong payload'); + return; + } + params.successCallback(resp.data, resp.length); + // after the first success, prepopulate the cache for the following request + setPaState2(dsPayloadArgsNext); + } + }, + }; + return dsLoc; +}; diff --git a/js/components/Operations.tsx b/js/components/Operations.tsx index 39756aab..cebb7c44 100644 --- a/js/components/Operations.tsx +++ b/js/components/Operations.tsx @@ -10,13 +10,14 @@ import { CommandConfigT } from './CommandUtils'; import { replaceInArr } from './utils'; import { OperationDetail } from './OperationDetail'; -import { AgGridReact } from 'ag-grid-react'; // the AG Grid React Component -import { ColDef, GridOptions } from 'ag-grid-community'; +import { AgGridReact } from '@ag-grid-community/react'; // the AG Grid React Component +import { ColDef, GridOptions } from '@ag-grid-community/core'; //import { CustomCellRendererProps } from '@ag-grid-community/react'; import { updateAtMatch } from './utils'; -import 'ag-grid-community/styles/ag-grid.css'; -import 'ag-grid-community/styles/ag-theme-alpine.css'; + +import '@ag-grid-community/styles/ag-grid.css'; +import '@ag-grid-community/styles/ag-theme-alpine.css'; export const OperationsList = ({ operations, diff --git a/js/components/StatusBar.tsx b/js/components/StatusBar.tsx index 59710bb3..7fc90686 100644 --- a/js/components/StatusBar.tsx +++ b/js/components/StatusBar.tsx @@ -1,8 +1,8 @@ // https://plnkr.co/edit/QTNwBb2VEn81lf4t?open=index.tsx import React, { useRef, useCallback } from 'react'; import _ from 'lodash'; -import { AgGridReact } from 'ag-grid-react'; // the AG Grid React Component -import { ColDef, GridOptions } from 'ag-grid-community'; +import { AgGridReact } from '@ag-grid-community/react'; // the AG Grid React Component +import { ColDef, GridOptions } from '@ag-grid-community/core'; import { basicIntFormatter } from './DFViewerParts/Displayer'; import { DFMeta } from './WidgetTypes'; import { BuckarooOptions } from './WidgetTypes'; @@ -32,21 +32,8 @@ export function StatusBar({ setBuckarooState: React.Dispatch>; buckarooOptions: BuckarooOptions; }) { - /* - AgGridReact - rowData={rowData} - columnDefs={columns} - singleClickEdit={true} - stopEditingWhenCellsLoseFocus={true} -*/ - - //console.log('initial buckarooState', buckarooState); - // const optionCycles = _.fromPairs( - // // _.map(buckarooOptions, (v: any, k) => [k, ( k==='df_display' ? v : _.concat([false], v) ) ]) - // _.map(buckarooOptions, (v: any, k) => [k, ( k==='post_processing' ? v : _.concat([false], v) ) ]) - - // ) as Record; const optionCycles = buckarooOptions; + const idxs = _.fromPairs( _.map(_.keys(optionCycles), (k) => [ k, @@ -70,9 +57,11 @@ export function StatusBar({ newState[k] = newVal; return newState; }; + + const excludeKeys = ['quick_command_args', 'search', 'show_displayed_rows']; const updateDict = (event: any) => { const colName = event.column.getColId(); - if (colName === 'quick_command_args' || colName === 'search') { + if (_.includes(excludeKeys, colName)) { return; } if (_.includes(_.keys(buckarooState), colName)) { @@ -146,7 +135,12 @@ export function StatusBar({ }, { field: 'total_rows', width: 100 }, { field: 'filtered_rows', headerName: 'filtered', width: 85 }, - { field: 'rows_shown', headerName: 'displayed', width: 85 }, + { + field: 'rows_shown', + headerName: 'displayed', + width: 85, + hide: dfMeta.rows_shown === -1, + }, { field: 'columns', width: 75 }, ]; diff --git a/js/components/WidgetTypes.tsx b/js/components/WidgetTypes.tsx index 2133157d..9c8eca09 100644 --- a/js/components/WidgetTypes.tsx +++ b/js/components/WidgetTypes.tsx @@ -5,6 +5,7 @@ export interface DFMeta { filtered_rows: number; rows_shown: number; } + export interface BuckarooOptions { sampled: string[]; auto_clean: string[]; @@ -24,7 +25,7 @@ export interface BuckarooState { show_commands: string | false; } -export type BKeys = keyof BuckarooOptions; +export type BKeys = 'sampled' | 'auto_clean' | 'post_processing' | 'df_display'; // df_dict: Record; // df_meta: DFMeta; diff --git a/js/components/utils.ts b/js/components/utils.ts index 3e59f37c..37fee4c6 100644 --- a/js/components/utils.ts +++ b/js/components/utils.ts @@ -1,6 +1,6 @@ import _ from 'lodash'; import { DFWhole } from './DFViewerParts/DFWhole'; -import { ColDef } from 'ag-grid-community'; +import { ColDef } from '@ag-grid-community/core'; export type setDFFunc = (newDf: DFWhole) => void; diff --git a/js/dcefwidget.ts b/js/dcefwidget.ts index b995149b..5f0066ad 100644 --- a/js/dcefwidget.ts +++ b/js/dcefwidget.ts @@ -5,6 +5,8 @@ import { DOMWidgetModel, DOMWidgetView, ISerializers, + WidgetModel, + WidgetView, } from '@jupyter-widgets/base'; import { WidgetDCFCell } from './components/DCFCell'; @@ -16,118 +18,98 @@ import * as ReactDOMClient from 'react-dom/client'; import { MODULE_NAME, MODULE_VERSION } from './version'; // Import the CSS +import '@ag-grid-community/styles/ag-grid.css'; +import '@ag-grid-community/styles/ag-theme-alpine.css'; -import 'ag-grid-community/styles/ag-grid.css'; -import 'ag-grid-community/styles/ag-theme-alpine.css'; import '../js/style/dcf-npm.css'; import { DFViewer } from './components/DFViewerParts/DFViewer'; - -export class DCEFWidgetModel extends DOMWidgetModel { - defaults(): Backbone.ObjectHash { - return { - ...super.defaults(), - _model_name: DCEFWidgetModel.model_name, - _model_module: DCEFWidgetModel.model_module, - _model_module_version: DCEFWidgetModel.model_module_version, - _view_name: DCEFWidgetModel.view_name, - _view_module: DCEFWidgetModel.view_module, - _view_module_version: DCEFWidgetModel.view_module_version, - }; - } - - static serializers: ISerializers = { - ...DOMWidgetModel.serializers, - // Add any extra serializers here - }; - - static model_name = 'DCEFWidgetModel'; - static model_module = MODULE_NAME; - static model_module_version = MODULE_VERSION; - static view_name = 'ExampleView'; // Set to null if no view - static view_module = MODULE_NAME; // Set to null if no view - static view_module_version = MODULE_VERSION; -} -export class DCEFWidgetView extends DOMWidgetView { - render(): void { - this.el.classList.add('custom-widget'); - - const Component = () => { - const [_, setCounter] = useState(0); - const forceRerender = () => { - setCounter((x: number) => x + 1); +import { InfiniteWrapper } from './components/DFViewerParts/TableInfinite'; +import { BuckarooInfiniteWidget } from './components/BuckarooWidgetInfinite'; + +function createModelAndView( + model_name: string, + widget_name: string, + WrappedComponent: (arg0: any) => React.JSX.Element +): [typeof WidgetModel, typeof WidgetView] { + class CustomModel extends DOMWidgetModel { + defaults(): Backbone.ObjectHash { + return { + ...super.defaults(), + _model_name: model_name, + _model_module: CustomModel.model_module, + _model_module_version: CustomModel.model_module_version, + _view_name: widget_name, + _view_module: CustomModel.view_module, + _view_module_version: CustomModel.view_module_version, }; - useEffect(() => { - this.listenTo(this.model, 'change', forceRerender); - }, []); - - const props: any = {}; - for (const key of Object.keys(this.model.attributes)) { - props[key] = this.model.get(key); - props['on_' + key] = (value: any) => { - this.model.set(key, value); - this.touch(); - }; - } - return React.createElement(WidgetDCFCell, props); - }; + } - const root = ReactDOMClient.createRoot(this.el); - const componentEl = React.createElement(Component, {}); - root.render(componentEl); - } -} -export class DFViewerModel extends DOMWidgetModel { - defaults(): Backbone.ObjectHash { - return { - ...super.defaults(), - _model_name: DFViewerModel.model_name, - _model_module: DFViewerModel.model_module, - _model_module_version: DFViewerModel.model_module_version, - _view_name: DFViewerModel.view_name, - _view_module: DFViewerModel.view_module, - _view_module_version: DFViewerModel.view_module_version, + static serializers: ISerializers = { + ...DOMWidgetModel.serializers, }; + + static model_name = model_name; + static model_module = MODULE_NAME; + static model_module_version = MODULE_VERSION; + static view_name = widget_name; + static view_module = MODULE_NAME; + static view_module_version = MODULE_VERSION; } - static serializers: ISerializers = { - ...DOMWidgetModel.serializers, - // Add any extra serializers here - }; - - static model_name = 'DFViewerModel'; - static model_module = MODULE_NAME; - static model_module_version = MODULE_VERSION; - static view_name = 'DFViewerView'; // Set to null if no view - static view_module = MODULE_NAME; // Set to null if no view - static view_module_version = MODULE_VERSION; -} -export class DFViewerView extends DOMWidgetView { - render(): void { - this.el.classList.add('dfviewer-widget'); - - const Component = () => { - const [_, setCounter] = useState(0); - const forceRerender = () => { - setCounter((x: number) => x + 1); - }; - useEffect(() => { - this.listenTo(this.model, 'change', forceRerender); - }, []); - - const props: any = {}; - for (const key of Object.keys(this.model.attributes)) { - props[key] = this.model.get(key); - props['on_' + key] = (value: any) => { - this.model.set(key, value); - this.touch(); + class CustomView extends DOMWidgetView { + render(): void { + this.el.classList.add('custom-widget'); + + const Component = () => { + // this is taken from the AnyWidget implementation + const [_, setCounter] = useState(0); + const forceRerender = () => { + setCounter((x: number) => x + 1); }; - } - return React.createElement(DFViewer, props); - //return React.createElement(WidgetDCFCell, props); - }; + useEffect(() => { + this.listenTo(this.model, 'change', forceRerender); + }, []); + + const props: any = {}; + for (const key of Object.keys(this.model.attributes)) { + props[key] = this.model.get(key); + props['on_' + key] = (value: any) => { + this.model.set(key, value); + this.touch(); + }; + } + return React.createElement(WrappedComponent, props); + }; - const root = ReactDOMClient.createRoot(this.el); - const componentEl = React.createElement(Component, {}); - root.render(componentEl); + const root = ReactDOMClient.createRoot(this.el); + const componentEl = React.createElement(Component, {}); + root.render(componentEl); + } } + return [CustomModel, CustomView]; } + +export const [DCEFWidgetModel, DCEFWidgetView] = createModelAndView( + 'DCEFWidgetModel', + 'DCEFWidgetView', + WidgetDCFCell +); + +export const [BuckarooInfiniteWidgetModel, BuckarooInfiniteWidgetView] = + createModelAndView( + 'BuckarooInfiniteWidgetModel', + 'BuckarooInfiniteWidgetView', + BuckarooInfiniteWidget + ); + +export const [InfiniteViewerModel, InfiniteViewerView] = createModelAndView( + 'InfiniteViewerModel', + 'InfiniteViewerView', + InfiniteWrapper +); + +export const [DFViewerModel, DFViewerView] = createModelAndView( + 'DFViewerModel', + 'DFViewerView', + DFViewer +); diff --git a/js/index.ts b/js/index.ts index c388fb15..430a9f53 100644 --- a/js/index.ts +++ b/js/index.ts @@ -3,9 +3,19 @@ import { ColumnsEditor } from './components/ColumnsEditor'; import { DFViewer } from './components/DFViewerParts/DFViewer'; +import { + DFViewerInfinite, + StaticWrapDFViewerInfinite, +} from './components/DFViewerParts/DFViewerInfinite'; + import { WidgetDCFCell } from './components/DCFCell'; +import { BuckarooInfiniteWidget } from './components/BuckarooWidgetInfinite'; + import { HistogramCell } from './components/DFViewerParts/HistogramCell'; +import { InfiniteEx } from './components/DFViewerParts/TableInfinite'; + import { DependentTabs } from './components/DependentTabs'; + import { OperationViewer } from './components/Operations'; import * as CommandUtils from './components/CommandUtils'; import * as utils from './components/utils'; @@ -21,8 +31,12 @@ export const extraComponents = { OperationViewer, WidgetDCFCell, DFViewer, + DFViewerInfinite, + StaticWrapDFViewerInfinite, StatusBar, HistogramCell, CommandUtils, utils, + InfiniteWidgetDCFCell: BuckarooInfiniteWidget, + InfiniteEx, }; diff --git a/package.json b/package.json index e954a340..8964d8cd 100644 --- a/package.json +++ b/package.json @@ -61,8 +61,11 @@ "@lumino/widgets": "2.3.2", "@types/backbone": "^1.4.19", "@types/lodash": "^4.17.0", - "ag-grid-community": "^31.0.3", - "ag-grid-react": "^31.0.3", + "@ag-grid-community/core": "^32.3.2", + "@ag-grid-community/styles": "^32.3.2", + "@ag-grid-community/client-side-row-model": "^32.3.2", + "@ag-grid-community/infinite-row-model": "^32.3.2", + "@ag-grid-community/react": "^32.3.2", "lodash": "^4.17.21", "react": "^18.0.0", "react-dom": "^18.0.0", diff --git a/tests/ts/gridUtils.test.ts b/tests/ts/gridUtils.test.ts index 8be2ef2e..7b7b3454 100644 --- a/tests/ts/gridUtils.test.ts +++ b/tests/ts/gridUtils.test.ts @@ -3,7 +3,7 @@ import { extractSDFT, getHistoIndex, } from '../../js/components/DFViewerParts/gridUtils'; import { DFData } from "../../js/components/DFViewerParts/DFWhole"; import { getFloatFormatter } from '../../js/components/DFViewerParts/Displayer'; -import { ValueFormatterParams } from 'ag-grid-community'; +import { ValueFormatterParams } from '@ag-grid-community/core'; describe("testing utility functions in gridUtils ", () => { // mostly sanity checks to help develop gridUtils diff --git a/yarn.lock b/yarn.lock index ab6ca96e..3debfe3e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7,6 +7,42 @@ resolved "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz" integrity sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA== +"@ag-grid-community/client-side-row-model@^32.3.2": + version "32.3.2" + resolved "https://registry.yarnpkg.com/@ag-grid-community/client-side-row-model/-/client-side-row-model-32.3.2.tgz#79b4ddee0dd4ff0ddeb94e921173a741317d379d" + integrity sha512-ulDslHzoZ3nkBcSEiEXYoULLzhZ6lVnTTL/J7xeFV8esBaDkP4+heesG+0oAG2qKKWSRorsJyTTCJMrNodxerQ== + dependencies: + "@ag-grid-community/core" "32.3.2" + tslib "^2.3.0" + +"@ag-grid-community/core@32.3.2", "@ag-grid-community/core@^32.3.2": + version "32.3.2" + resolved "https://registry.yarnpkg.com/@ag-grid-community/core/-/core-32.3.2.tgz#6e5dacea83a3f59a0e7d8d7110691f02a0524510" + integrity sha512-m9+x9y1hFoXGklaXxN474pxYc7B/M/hH6pcBtBl+mQpCC4TwUAy516rDsFRH6WqpYiakfBdx1A3mhQbavNEDAQ== + dependencies: + ag-charts-types "10.3.1" + tslib "^2.3.0" + +"@ag-grid-community/infinite-row-model@^32.3.2": + version "32.3.2" + resolved "https://registry.yarnpkg.com/@ag-grid-community/infinite-row-model/-/infinite-row-model-32.3.2.tgz#528504cbb2597118a1e3d22a46879e23a0270870" + integrity sha512-2f0x1ZqyLiyPt4A76WsYSfUQLw4oIpP9VcFr/3qa52AmOK30gL36a9+T9oJ8pxwLo3L5A4i6Lthbhn0TncrDyA== + dependencies: + "@ag-grid-community/core" "32.3.2" + tslib "^2.3.0" + +"@ag-grid-community/react@^32.3.2": + version "32.3.2" + resolved "https://registry.yarnpkg.com/@ag-grid-community/react/-/react-32.3.2.tgz#21161c03b13146c719d336f53114c18464d32bba" + integrity sha512-ItPrOOfXgPEtzEH0BVuB9LigH5AAejsdDgASfe17Js4zkvRxvAwekg8evIpk1EEnmwfr0CWQ6wZjOPnzd4nDcg== + dependencies: + prop-types "^15.8.1" + +"@ag-grid-community/styles@^32.3.2": + version "32.3.2" + resolved "https://registry.yarnpkg.com/@ag-grid-community/styles/-/styles-32.3.2.tgz#75f65fc3b65c5df992f316bfc00f1e5a821936ad" + integrity sha512-zAimgm2bORRNDegPnhopYx0s3017j12m9h6Fv3KKW+CSpjHh4U+5ykacrsp8vN6f2vecRxXbrDl8gJC8hCJdcg== + "@ampproject/remapping@^2.2.0": version "2.3.0" resolved "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz" @@ -2698,18 +2734,10 @@ acorn@^8.7.1, acorn@^8.8.2, acorn@^8.9.0: resolved "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz" integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== -ag-grid-community@31.2.1, ag-grid-community@^31.0.3: - version "31.2.1" - resolved "https://registry.npmjs.org/ag-grid-community/-/ag-grid-community-31.2.1.tgz" - integrity sha512-D+gnUQ4dHZ/EQJmupQnDqcEKiCEeuK5ZxlsIpdPKgHg/23dmW+aEdivtB9nLpSc2IEK0RUpchcSxeUT37Boo5A== - -ag-grid-react@^31.0.3: - version "31.2.1" - resolved "https://registry.npmjs.org/ag-grid-react/-/ag-grid-react-31.2.1.tgz" - integrity sha512-9UH3xxXRwZfW97oz58KboyCJl4t+zdetopieeHVcttsXX1DvGFDUIEz7A1sQaG8e1DAXLMf3IxoIPrfWheH4XA== - dependencies: - ag-grid-community "31.2.1" - prop-types "^15.8.1" +ag-charts-types@10.3.1: + version "10.3.1" + resolved "https://registry.yarnpkg.com/ag-charts-types/-/ag-charts-types-10.3.1.tgz#b60163a5da5f27222db71d4fcc20c0aed1854c9c" + integrity sha512-oZvu9vJLk6lmzaYi0TmVVmHFZJpVNFziU0bnllx4wR3muXCmnxz5LouKIZ8CYnNiC7VO5HmHNlFu+0DmEO5zxg== aggregate-error@^3.0.0: version "3.1.0" @@ -8562,6 +8590,11 @@ tslib@^2.0.3, tslib@^2.1.0, tslib@^2.4.0: resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz" integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== +tslib@^2.3.0: + version "2.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" + integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== + tsutils@^3.21.0: version "3.21.0" resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz"