From 14ff1d77886b184322ef237584a06f2b88f7ea47 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Wed, 18 Sep 2019 14:29:40 -0400 Subject: [PATCH 01/60] Add first draft of FornaContainer component. --- src/lib/components/FornaContainer.react.js | 206 +++++++++++++++++++++ src/lib/index.js | 2 + 2 files changed, 208 insertions(+) create mode 100644 src/lib/components/FornaContainer.react.js diff --git a/src/lib/components/FornaContainer.react.js b/src/lib/components/FornaContainer.react.js new file mode 100644 index 000000000..51ee04f98 --- /dev/null +++ b/src/lib/components/FornaContainer.react.js @@ -0,0 +1,206 @@ +import React, {Component} from 'react'; +import PropTypes from 'prop-types'; +import {FornaContainer as PreFornaContainer} from 'fornac'; + +/** + * This is a FornaContainer component. + */ +export default class FornaContainer extends Component { + constructor(props) { + super(props); + this.renderNewSequences = this.renderNewSequences.bind(this); + } + + componentDidMount() { + const {id, height, width} = this.props; + + this._fornaContainer = new PreFornaContainer('#' + id, { + initialSize: [height, width], + }); + + this.renderNewSequences(); + } + + renderNewSequences() { + const {sequences} = this.props; + + if (this._fornaContainer) { + this._fornaContainer.clearNodes(); + + sequences.forEach(seq => { + const unpackedOptions = Object.assign( + seq.options ? seq.options : {}, + {sequence: seq.sequence, structure: seq.structure} + ); + console.warn(unpackedOptions); + this._fornaContainer.addRNA(seq.structure, unpackedOptions); + }); + } + } + + shouldComponentUpdate(nextProps) { + const {sequences, nodeFillColor, colorScheme} = this.props; + + // update the component if the actual sequences have changed + if ( + (sequences && !nextProps.sequences) || + (!sequences && nextProps.sequences) || + sequences.length !== nextProps.sequences.length || + sequences.some( + (seq, i) => + sequences[i].sequence !== nextProps.sequences[i].sequence || + sequences[i].structure !== + nextProps.sequences[i].structure || + (sequences[i].options && !nextProps.sequences[i].options) || + (!sequences[i].options && nextProps.sequences[i].options) || + (sequences[i].options && + nextProps.sequences[i].options && + Object.keys(seq.options).some( + optionName => + (sequences[i].options[optionName] && + !nextProps.sequences[i].options[ + optionName + ]) || + (!sequences[i].options[optionName] && + nextProps.sequences[i].options[ + optionName + ]) || + sequences[i].options[optionName] !== + nextProps.sequences[i].options[optionName] + )) + ) + ) { + return true; + } + + // only change node fill color/color scheme if these props have changed + if (nodeFillColor !== nextProps.nodeFillColor) { + this._fornaContainer.setOutlineColor(nextProps.nodeFillColor); + } + if (colorScheme !== nextProps.colorScheme) { + this._fornaContainer.changeColorScheme(nextProps.colorScheme); + } + + return false; + } + + render() { + this.renderNewSequences(); + return
; + } +} + +FornaContainer.propTypes = { + /** + * The ID of this component, used to identify dash components in + * callbacks. The ID needs to be unique across all of the + * components in an app. + */ + id: PropTypes.string.isRequired, + + /** + * The height (in px) of the container in which the molecules will + * be displayed. + */ + height: PropTypes.number, + + /** + * The width (in px) of the container in which the molecules will + * be displayed. + */ + width: PropTypes.number, + + /** + * The molecules that will be displayed. + */ + sequences: PropTypes.arrayOf( + PropTypes.shape({ + /** + * A string representing the RNA nucleotide sequence of + * the RNA molecule. + */ + sequence: PropTypes.string.isRequired, + + /** + * A dot-bracket string + * (https://software.broadinstitute.org/software/igv/RNAsecStructure) + * that specifies the secondary structure of the RNA + * molecule. + */ + structure: PropTypes.string.isRequired, + + /** + * Additional options to be applied to the rendering of + * the RNA molecule. + */ + options: PropTypes.shape({ + /** + * Indicate whether the force-directed layout will be + * applied to the displayed molecule. Enabling this + * option allows users to change the layout of the + * molecule by selecting and dragging the individual + * nucleotide nodes. True by default. + */ + applyForce: PropTypes.bool, + + /** + * This only makes sense in connection with the + * applyForce argument. If it's true, the external + * loops will be arranged in a nice circle. If false, + * they will be allowed to flop around as the force + * layout dictates. True by default. + */ + circularizeExternal: PropTypes.bool, + + /** + * Change how often nucleotide numbers are labelled + * with their number. 10 by default. + */ + labelInterval: PropTypes.number, + + /** + * The molecule name; this is used in custom color + * scales. + */ + name: PropTypes.string, + + /** + * Whether or not this molecule should "avoid" other + * molecules in the map. + */ + avoidOthers: PropTypes.bool, + }), + }) + ), + + /** + * The fill color for all of the nodes. This will override any + * color scheme defined in colorScheme. + */ + nodeFillColor: PropTypes.string, + + /** + * The color scheme that is used to color the nodes. + */ + colorScheme: PropTypes.oneOf(['sequence', 'structure', 'positions']), + + /** + * Allow users to zoom in and pan the display. If this is enabled, + * then pressing the 'c' key on the keyboard will center the view. + */ + allowPanningAndZooming: PropTypes.bool, + + /** + * Dash-assigned callback that gets fired when the value changes. + */ + setProps: PropTypes.func, +}; + +FornaContainer.defaultProps = { + height: 500, + width: 300, + sequences: [], + allowPanningandZooming: true, + labelInterval: 10, + colorScheme: 'sequence', +}; diff --git a/src/lib/index.js b/src/lib/index.js index 214ab56c6..66cfec21b 100644 --- a/src/lib/index.js +++ b/src/lib/index.js @@ -2,6 +2,7 @@ import AlignmentChart from './components/AlignmentChart.react'; import AlignmentViewer from './components/AlignmentViewer.react'; import Circos from './components/Circos.react'; +import FornaContainer from './components/FornaContainer.react'; import Ideogram from './components/Ideogram.react'; import Molecule2dViewer from './components/Molecule2dViewer.react'; import Molecule3dViewer from './components/Molecule3dViewer'; @@ -14,6 +15,7 @@ export { AlignmentChart, AlignmentViewer, Circos, + FornaContainer, Ideogram, Molecule2dViewer, Molecule3dViewer, From 7702d2e6d76ff760002ceae44c61d9c72af134a4 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Wed, 18 Sep 2019 16:20:40 -0400 Subject: [PATCH 02/60] Add first version of demo app. --- assets/forna-style.css | 72 ++++ tests/dashbio_demos/app_forna_container.py | 394 +++++++++++++++++++++ 2 files changed, 466 insertions(+) create mode 100644 assets/forna-style.css create mode 100644 tests/dashbio_demos/app_forna_container.py diff --git a/assets/forna-style.css b/assets/forna-style.css new file mode 100644 index 000000000..c87faf643 --- /dev/null +++ b/assets/forna-style.css @@ -0,0 +1,72 @@ +#forna-container { + display: inline-block; + padding: 20px; + margin-top: 50px; +} + +#forna-body ::-webkit-scrollbar-thumb { + background-color: #85002D !important; +} + +#forna-control-tabs .tab--selected { + color: #85002D !important; +} + +#forna-body .rc-slider-track { + background-color: #85002D !important; +} + +#forna-body .rc-slider-handle, #forna-body .rc-slider-dot-active { + border-color: #85002D !important; +} + +#forna-body input[type="text"] { + width: 100%; + margin-top: 15px; +} + +#forna-body #forna-bond-length { + display: inline-block; + width: 150px; + margin-top: 10px; +} + +#forna-control-tabs .app-controls-block { + margin-bottom: 20px; +} + +#forna-submit-sequence { + width: 100%; +} + +#forna-apply-force, #forna-circularize-external, +#forna-avoid-others, #forna-label-interval, #forna-color-scheme { + display: inline-block !important; + text-align: right; + position: relative; + top: 5px; + float: right; +} + +#forna-label-interval, #forna-color-scheme { + width: 150px; + position: relative; + text-align: left; +} + +#forna-sequence-info { + font-size: 10pt; +} + +#forna-color-scheme { + position: relative; + top: 0px; +} + +#forna-error-message { + text-align: center; +} + +#forna-color-scheme-desc { + margin-top: 20px; +} diff --git a/tests/dashbio_demos/app_forna_container.py b/tests/dashbio_demos/app_forna_container.py new file mode 100644 index 000000000..b8b61b051 --- /dev/null +++ b/tests/dashbio_demos/app_forna_container.py @@ -0,0 +1,394 @@ +import os + +from dash.dependencies import Input, Output, State +from dash.exceptions import PreventUpdate +import dash_html_components as html +import dash_core_components as dcc +import dash_daq as daq +import dash_bio + +# running directly with Python +if __name__ == '__main__': + from utils.app_standalone import run_standalone_app + +# running with gunicorn (on servers) +elif 'DASH_PATH_ROUTING' in os.environ: + from tests.dashbio_demos.utils.app_standalone import run_standalone_app + + +def header_colors(): + return { + 'bg_color': '#85002D', + 'font_color': 'white' + } + +initial_sequences = [ + {'sequence': 'GGUGCAUGCCGAGGGGCGGUUGGCCUCGUAAAAAGCCGCAAAAAAUAGCAUGUAGUACC', + 'structure': '((((((((((((((.[[[[[[..))))).....]]]]]]........)))))...))))', + 'options': { + 'applyForce': True, + 'circularizeExternal': True, + 'avoidOthers': True, + 'labelInterval': 5 + }} +] + + +def description(): + return 'RNA secondary structure analysis.' + +def layout(): + return html.Div( + id='forna-body', + className='app-body', + children=[ + html.Div( + id='forna-control-tabs', + className='control-tabs', + children=[ + dcc.Tabs(id='forna-tabs', value='what-is', + children=[ + dcc.Tab( + label='About', + value='what-is', + children=html.Div(className='control-tab', children=[ + html.H4(className='what-is', children='What is FornaContainer?'), + html.P('FornaContainer is an awesome new component.') + ]) + ), + + dcc.Tab( + label='Add Sequence', + value='add-sequence', + children=html.Div(className='control-tab', children=[ + html.Div( + title='Enter a dot-bracket string and a nucleotide sequence.', + className='app-controls-block', + children=[ + html.Div(className='fullwidth-app-controls-name', + children='Sequence'), + html.Div( + className='app-controls-desc', + children='Specify the nucleotide sequence as a string.' + ), + dcc.Input( + id='forna-sequence', + value='GGUGCAUGCCGAGGGGCGGUUGGCCUCGUAAAAAGCCGCAAAAAAUAGCAUGUAGUACC' + ), + + html.Br(), + html.Br(), + + html.Div(className='fullwidth-app-controls-name', + children='Structure'), + html.Div( + className='app-controls-desc', + children='Specify the RNA secondary structure with a dot-bracket string.' + ), + dcc.Input( + id='forna-structure', + value='((((((((((((((.[[[[[[..))))).....]]]]]]........)))))...))))' + ), + + html.Br(), + html.Br(), + + html.Div(className='fullwidth-app-controls-name', + children='ID'), + html.Div( + className='app-controls-desc', + children='Specify a unique ID for this sequence.' + ), + dcc.Input(id='forna-id', value='example') + + ] + ), + + html.Div( + title='Change some boolean properties.', + className='app-controls-block', + children=[ + html.Div(className='app-controls-name', + children='Apply force'), + daq.BooleanSwitch( + id='forna-apply-force', + on=True, + color='#85002D' + ), + html.Div( + className='app-controls-desc', + children='Indicate whether the force-directed layout ' + + 'will be applied to this molecule.' + ), + html.Br(), + html.Div(className='app-controls-name', + children='Circularize external'), + daq.BooleanSwitch( + id='forna-circularize-external', + on=True, + color='#85002D' + ), + html.Div( + className='app-controls-desc', + children='Indicate whether the external loops ' + + 'should be forced to be arranged in a circle.' + ), + html.Br(), + html.Div(className='app-controls-name', + children='Avoid others'), + daq.BooleanSwitch( + id='forna-avoid-others', + on=True, + color='#85002D' + ), + html.Div( + className='app-controls-desc', + children='Indicate whether this molecule should ' + + '"avoid" being close to other molecules.' + ), + html.Br(), + html.Div(className='app-controls-name', + children='Label interval'), + dcc.Slider( + id='forna-label-interval', + min=1, + max=10, + value=5, + marks={i+1: str(i+1) for i in range(10)} + ), + html.Div( + className='app-controls-desc', + children='Indicate how often nucleotide numbers ' + + 'are labelled with their number.' + ) + + ] + ), + + html.Hr(), + html.Div(id='forna-error-message'), + html.Button(id='forna-submit-sequence', children='Submit sequence'), + ]) + ), + dcc.Tab( + label='Sequences', + value='show-sequences', + children=html.Div(className='control-tab', children=[ + html.Div( + className='app-controls-block', + children=[ + html.Div( + className='fullwidth-app-controls-name', + children='Sequences to display' + ), + html.Div( + className='app-controls-desc', + children='Choose the sequences to display by ID.' + ), + html.Br(), + dcc.Dropdown( + id='forna-sequences-display', + multi=True, + clearable=True, + value='example' + ) + ] + ), + html.Hr(), + html.Div( + className='app-controls-block', + children=[ + html.Div( + className='app-controls-name', + children='Color scheme' + ), + dcc.Dropdown( + id='forna-color-scheme', + options=[ + {'label': color_scheme, + 'value': color_scheme} + for color_scheme in [ + 'sequence', 'structure', 'positions' + ] + ], + value='sequence' + ), + html.Br(), + html.Div( + className='app-controls-desc', + id='forna-color-scheme-desc', + children='Choose the color scheme to use.' + ), + ] + ), + html.Hr(), + html.Div( + className='app-controls-block', + children=[ + html.Div( + className='fullwidth-app-controls-name', + children='Sequence information by ID' + ), + html.Div( + className='app-controls-desc', + children='Search for a sequence by ID ' + + 'to get more information.' + ), + html.Br(), + dcc.Dropdown( + id='forna-sequences-info-search', + clearable=True + ), + html.Br(), + html.Div(id='forna-sequence-info') + ] + ), + ]) + ) + ]) + ] + ), + html.Div(id='forna-container', children=[ + dash_bio.FornaContainer( + id='forna', + height=700, + width=500, + sequences=initial_sequences + ) + ]), + + dcc.Store(id='forna-sequences') + ] + ) + + +def callbacks(app): + + @app.callback( + [Output('forna-sequences', 'data'), + Output('forna-error-message', 'children')], + [Input('forna-submit-sequence', 'n_clicks')], + [State('forna-sequence', 'value'), + State('forna-structure', 'value'), + State('forna-apply-force', 'on'), + State('forna-circularize-external', 'on'), + State('forna-avoid-others', 'on'), + State('forna-label-interval', 'value'), + State('forna-id', 'value'), + State('forna-sequences', 'data')] + ) + def add_sequence(nclicks, sequence, structure, apply_force, + circularize_ext, avoid_others, label_interval, + seqid, current): + + error_msg = html.P( + 'You already have a sequence with this ID. ' + \ + 'Please choose a different ID, or check the next tab ' + \ + 'to see which IDs have already been taken.', + style={'color': 'red'} + ) + + if sequence is None or structure is None: + raise PreventUpdate + + if current is None: + current = {} + + if seqid not in current.keys(): + error_msg = html.P( + 'Successfully added {}!'.format(seqid), + style={'color': 'green'} + ) + current[seqid] = { + 'sequence': sequence, + 'structure': structure, + 'options': { + 'applyForce': apply_force, + 'circularizeExternal': circularize_ext, + 'avoidOthers': avoid_others, + 'labelInterval': label_interval + } + } + + return current, error_msg + + @app.callback( + Output('forna', 'colorScheme'), + [Input('forna-color-scheme', 'value')] + ) + def update_color_scheme(color_scheme): + return color_scheme + + @app.callback( + [Output('forna-sequences-display', 'options'), + Output('forna-sequences-info-search', 'options')], + [Input('forna-sequences', 'data')] + ) + def update_sequences(data): + + if data is None: + raise PreventUpdate + + new_options = [ + {'label': sequence_id, + 'value': sequence_id} + for sequence_id in data.keys() + ] + + + return new_options, new_options + + + @app.callback( + Output('forna-sequence-info', 'children'), + [Input('forna-sequences-info-search', 'value')], + [State('forna-sequences', 'data')] + ) + def update_sequence_info(sequence_id, data): + if data is None: + raise PreventUpdate + + return html.Div( + [ + 'Sequence: {}'.format(data[sequence_id]['sequence']), + html.Br(), + 'Structure: {}'.format(data[sequence_id]['structure']) + ] + [ + html.Div([ + '{}: {}'.format( + option, data[sequence_id]['options'][option] + ), + html.Br() + ]) + for option in data[sequence_id]['options'].keys() + ] + ) + + + @app.callback( + Output('forna', 'sequences'), + [Input('forna-sequences-display', 'value')], + [State('forna-sequences', 'data')] + ) + def update_shown_sequences(selected_sequence_ids, stored_sequences): + + if selected_sequence_ids is None or stored_sequences is None: + raise PreventUpdate + + sequences = [] + + for sequence_id in selected_sequence_ids: + sequences.append( + stored_sequences[sequence_id] + ) + + return sequences + + +# only declare app/server if the file is being run directly +if 'DASH_PATH_ROUTING' in os.environ or __name__ == '__main__': + app = run_standalone_app(layout, callbacks, header_colors, __file__) + server = app.server + +if __name__ == '__main__': + app.run_server(debug=True, port=8050) From 71e872dbada3bc51a2291f9ab220265553b83524 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Fri, 2 Aug 2019 12:27:21 -0400 Subject: [PATCH 03/60] Fix Speck demo application argument names. Change checklist 'values' to 'value'. --- tests/dashbio_demos/app_speck.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/dashbio_demos/app_speck.py b/tests/dashbio_demos/app_speck.py index 9b4c7017b..443e84cc8 100644 --- a/tests/dashbio_demos/app_speck.py +++ b/tests/dashbio_demos/app_speck.py @@ -96,7 +96,7 @@ {'label': 'Show bonds', 'value': 'True'} ], - values=[] + value=[] ), html.Div(className='app-controls-block', children=[ html.Div( @@ -226,7 +226,7 @@ def layout(): dcc.Checklist( id='speck-enable-presets', options=[{'label': 'Use presets', 'value': 'True'}], - values=[] + value=[] ), html.Hr(), html.Div(id='speck-controls-detailed', children=default_sliders), @@ -286,7 +286,7 @@ def callbacks(app): # pylint: disable=redefined-outer-name @app.callback( Output('speck-controls-detailed', 'style'), - [Input('speck-enable-presets', 'values')] + [Input('speck-enable-presets', 'value')] ) def show_hide_detailed_controls(presets_enable): if len(presets_enable) > 0: @@ -295,7 +295,7 @@ def show_hide_detailed_controls(presets_enable): @app.callback( Output('speck-controls-preset', 'style'), - [Input('speck-enable-presets', 'values')] + [Input('speck-enable-presets', 'value')] ) def show_hide_preset_controls(presets_enable): if len(presets_enable) == 0: @@ -345,10 +345,10 @@ def update_molecule(molecule_fname, upload_contents): @app.callback( Output('speck', 'view'), - [Input('speck-enable-presets', 'values'), + [Input('speck-enable-presets', 'value'), Input('speck-atom-radius', 'value'), Input('speck-relative-atom-radius', 'value'), - Input('speck-show-hide-bonds', 'values'), + Input('speck-show-hide-bonds', 'value'), Input('speck-bond-scale', 'value'), Input('speck-ao', 'value'), Input('speck-brightness', 'value'), From f4829e361578655d77ccfe44f90e7dd92b35e9d8 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Wed, 18 Sep 2019 17:07:04 -0400 Subject: [PATCH 04/60] Change parameter names in demo apps. Ensure that there is compatibility with the latest version of Dash. --- tests/dashbio_demos/app_circos.py | 6 ++---- tests/dashbio_demos/app_needle_plot.py | 2 +- tests/dashbio_demos/app_sequence_viewer.py | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/tests/dashbio_demos/app_circos.py b/tests/dashbio_demos/app_circos.py index 11784358a..900e22ccb 100644 --- a/tests/dashbio_demos/app_circos.py +++ b/tests/dashbio_demos/app_circos.py @@ -1101,8 +1101,6 @@ def layout(): html.Div(id='circos-table-container', children=[dt.DataTable( id="data-table", row_selectable='multi', - sorting=True, - filtering=True, css=[{ "selector": ".dash-cell div.dash-cell-value", "rule": "display: inline; " @@ -1130,8 +1128,8 @@ def layout(): 'marginTop': '5px', 'marginBottom': '10px', }, - n_fixed_rows=1, - n_fixed_columns=1 + fixed_rows=1, + fixed_columns=1 )]), html.Div( id="expected-index"), diff --git a/tests/dashbio_demos/app_needle_plot.py b/tests/dashbio_demos/app_needle_plot.py index e082c6d1e..b08abd697 100644 --- a/tests/dashbio_demos/app_needle_plot.py +++ b/tests/dashbio_demos/app_needle_plot.py @@ -231,7 +231,7 @@ def layout(): 'value': UNIPROT_DOMS_KEY } ], - values=[] + value=[] ) ] ), diff --git a/tests/dashbio_demos/app_sequence_viewer.py b/tests/dashbio_demos/app_sequence_viewer.py index 76c4d1307..a36e07349 100644 --- a/tests/dashbio_demos/app_sequence_viewer.py +++ b/tests/dashbio_demos/app_sequence_viewer.py @@ -367,7 +367,7 @@ def layout(): {'label': '', 'value': 'underscore'} ], - values=[] + value=[] ) ]), html.Div(className='app-controls-block', children=[ From 112ec280cfeb7950f1a6cead2716778bef765368 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Wed, 18 Sep 2019 17:07:22 -0400 Subject: [PATCH 05/60] Add image for Forna Container. --- .../images/pic_forna_container.png | Bin 0 -> 109114 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 tests/dashbio_demos/images/pic_forna_container.png diff --git a/tests/dashbio_demos/images/pic_forna_container.png b/tests/dashbio_demos/images/pic_forna_container.png new file mode 100644 index 0000000000000000000000000000000000000000..3d1c43d380401da7a64265db59a1cbd4cd2d50d3 GIT binary patch literal 109114 zcmeFZ1y>!*)&+_NN$?OHHg3V)-QC@SySoJm8rYBCC7uaY3uaU&A2yeD4(8oAI1WB~UML22-M6`)lyfD>?CCVake-aAx)27rx_ z4sy^7%;1;^Ke&LfD(lV{q@X0GDk@7vmkhKa`jfakr8sY`y%(RMoROPwurDF4zdS1E zb@Z*n=bxWGQDLC-Zo+Ebnz|a3O z*4b%1-f1J738*4NIs@sq{@Q2SFO0~1@AToryy^S9H@vZ~?t+2tgZu0I`}*?x`+Lhz zAD_oB;5|OpAeE+CxpR%swn=>ls*oGo*I0v;q1X1ccLt9r)GK z&_NI2VrgMz&+fuS@YfaW!0*2g(+~juy2Qbpi$GOM79e14X9!@TW~8Pi;D!YN0GxIP zM(px}!vAd!{ELgg#KFOaorcEQ*_qmzf!f;6n1+sxjg5wuo`#;D3U~#Ty{najo(q+g zJ>h>k`MV!MLwkKYQyT|UYb(I-e)YatJ34R?5d6N;KR^Gm)6m8A&z-F7|2r(;0BL@o zp`oLurTM3CU{lWDN7-dfT?{Q$1x+mtt?YsK;AUo~=ltvX|Ie8}cl=jNwSTpwrTcfw zf1UYnOHP{K1Nhf~{^PB`jso4q4a-UMkL$T%D+vr2KtOmw#02>iT|iGfp*%j%-M#;c z#zls1yN9PxF4eWpTy*zzs^ZLeE0vLR4SAX^mXr8b|KHYhe7r%1lDe^C|GpI> zgum*r^*?w1t8V}aG<4NZn4k2)|Gv5JcSMOtxPNTn_W`1_(Tfhyt{zA3`|k|K*gRyq6FEYxp;yMI(uwWHJA1 z6LeMV`u}*%msb)I@f!vTx*_r(7ylk8(3x2O=gj{+sQ+{3|IN(*uJ-?1=6@pT|4+

Sp?`{A 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

r#UkuLIH__Rr^t*IK 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 literal 0 HcmV?d00001 From ea1451cd55e80061ed39b44025e204c788ec7f86 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Wed, 18 Sep 2019 17:07:31 -0400 Subject: [PATCH 06/60] Update version in package. --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index a077a764c..aafcabc00 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "dash-bio", - "version": "0.1.3", + "version": "0.1.5-rc7", "description": "Dash components for bioinformatics", "repository": { "type": "git", From e25d12fe93430fa7266aa81c91ace020a62116d0 Mon Sep 17 00:00:00 2001 From: Shammamah Hossain Date: Wed, 18 Sep 2019 17:07:40 -0400 Subject: [PATCH 07/60] Update auto-generated files. --- dash_bio/AlignmentChart.py | 38 ++++---- dash_bio/AlignmentViewer.py | 38 ++++---- dash_bio/Circos.py | 70 +++++++++++++-- dash_bio/FornaContainer.py | 68 +++++++++++++++ dash_bio/Ideogram.py | 65 +++++++------- dash_bio/Molecule2dViewer.py | 25 ++++-- dash_bio/Molecule3dViewer.py | 15 ++-- dash_bio/NeedlePlot.py | 65 ++++++++++++-- dash_bio/OncoPrint.py | 14 +-- dash_bio/SequenceViewer.py | 56 ++++++++---- dash_bio/Speck.py | 17 ++-- dash_bio/_imports_.py | 2 + dash_bio/bundle.js | 26 +++--- dash_bio/metadata.json | 162 +++++++++++++++++++++++++++++++++++ dash_bio/package-info.json | 2 +- 15 files changed, 528 insertions(+), 135 deletions(-) create mode 100644 dash_bio/FornaContainer.py diff --git a/dash_bio/AlignmentChart.py b/dash_bio/AlignmentChart.py index 01a7339a7..ac55a5fa0 100644 --- a/dash_bio/AlignmentChart.py +++ b/dash_bio/AlignmentChart.py @@ -4,7 +4,7 @@ class AlignmentChart(Component): - """A AlignmentChart component. + """An AlignmentChart component. The Alignment Viewer (MSA) component is used to align multiple genomic or proteomic sequences from a FASTA or Clustal file. Among its extensive set of features, the multiple sequence alignment viewer @@ -26,57 +26,57 @@ class AlignmentChart(Component): components in an app. - eventDatum (dict; optional): A Dash prop that returns data on clicking, hovering or resizing the viewer. - data (string; optional): Input data, either in FASTA or Clustal format. -- extension (string; optional): Format type of the input data, either in FASTA or Clustal. -- colorscale (string | dict; optional): Colorscale in 'buried', 'cinema', 'clustal', 'clustal2', 'helix', 'hydrophobicity' +- extension (string; default 'fasta'): Format type of the input data, either in FASTA or Clustal. +- colorscale (string | dict; default 'clustal2'): Colorscale in 'buried', 'cinema', 'clustal', 'clustal2', 'helix', 'hydrophobicity' 'lesk', 'mae', 'nucleotide', 'purine', 'strand', 'taylor', 'turn', 'zappo', or your own colorscale as a {'nucleotide': COLOR} dict. Note that this is NOT a standard plotly colorscale. - opacity (number | string; optional): Opacity of the main plot as a value between 0 and 1. - textcolor (string; optional): Color of the nucleotide labels, in common name, hex, rgb or rgba format. If left blank, handled by the colorscale automatically. -- textsize (number | string; optional): Size of the nucleotide labels, as a number. -- showlabel (boolean; optional): Toggles displaying sequence labels at left of alignment -- showid (boolean; optional): Toggles displaying sequence IDs at left of alignment. -- showconservation (boolean; optional): Enables the display of conservation secondary barplot where the most conserved +- textsize (number | string; default 10): Size of the nucleotide labels, as a number. +- showlabel (boolean; default True): Toggles displaying sequence labels at left of alignment +- showid (boolean; default True): Toggles displaying sequence IDs at left of alignment. +- showconservation (boolean; default True): Enables the display of conservation secondary barplot where the most conserved nucleotides or amino acids get greater bars. - conservationcolor (string; optional): Color of the conservation secondary barplot, in common name, hex, rgb or rgba format. -- conservationcolorscale (string | list; optional): Colorscale of the conservation barplot, in Plotly colorscales (e.g. 'Viridis') +- conservationcolorscale (string | list; default 'Viridis'): Colorscale of the conservation barplot, in Plotly colorscales (e.g. 'Viridis') or as custom Plotly colorscale under a list format. Note that this conservationcolorscale argument does NOT follow the same format as the colorscale argument. - conservationopacity (number | string; optional): Opacity of the conservation secondary barplot as a value between 0 and 1. -- conservationmethod (a value equal to: 'conservation', 'entropy'; optional): Whether to use most conserved ratio (MLE) 'conservation' +- conservationmethod (a value equal to: 'conservation', 'entropy'; default 'entropy'): Whether to use most conserved ratio (MLE) 'conservation' or normalized entropy 'entropy' to determine conservation, which is a value between 0 and 1 where 1 is most conserved. -- correctgap (boolean; optional): Whether to normalize the conservation barchart +- correctgap (boolean; default True): Whether to normalize the conservation barchart By multiplying it elementwise with the gap barchart, as to lower the conservation values across sequences regions with many gaps. -- showgap (boolean; optional): Enables the display of gap secondary barplot where the sequence regions +- showgap (boolean; default True): Enables the display of gap secondary barplot where the sequence regions with the fewest gaps get the greatest bars. -- gapcolor (string; optional): Color of the gap secondary barplot, in common name, hex, rgb or rgba format. +- gapcolor (string; default 'grey'): Color of the gap secondary barplot, in common name, hex, rgb or rgba format. - gapcolorscale (string | list; optional): Colorscale of the gap barplot, in Plotly colorscales (e.g. 'Viridis') or as custom Plotly colorscale under a list format. Note that this conservationcolorscale argument does NOT follow the same format as the colorscale argument. - gapopacity (number | string; optional): Opacity of the gap secondary barplot as a value between 0 and 1. -- groupbars (boolean; optional): If both conservation and gap are enabled, +- groupbars (boolean; default False): If both conservation and gap are enabled, toggles whether to group bars or to stack them as separate subplots. No effect if not both gap and conservation are shown. -- showconsensus (boolean; optional): Displays toggling the consensus sequence, where each nucleotide in the +- showconsensus (boolean; default True): Displays toggling the consensus sequence, where each nucleotide in the consensus sequence is the argmax of its distribution at a set nucleotide. -- tilewidth (number; optional): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer +- tilewidth (number; default 16): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer takes up horizontally. The total number of tiles (numtiles) seen horizontally is automatically determined by rounding the Viewer width divided by the tile width. the Viewwer width divided by the tile witdth. -- tileheight (number; optional): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer +- tileheight (number; default 16): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer takes up vertically. If enabled, set height dynamically. -- overview (a value equal to: 'heatmap', 'slider', 'none'; optional): Toggles whether the overview should be a heatmap, a slider, or none. +- overview (a value equal to: 'heatmap', 'slider', 'none'; default 'heatmap'): Toggles whether the overview should be a heatmap, a slider, or none. - numtiles (number; optional): Sets how many tiles to display across horitontally. If enabled, overrides tilewidth and sets the amount of tiles directly based off that value. -- scrollskip (number; optional): If overview is set to 'scroll', determines how many tiles to skip +- scrollskip (number; default 10): If overview is set to 'scroll', determines how many tiles to skip with each slider movement. Has no effect if scroll is not enabled (such as with overview or none). - tickstart (number | string; optional): Determines where to start annotating the first tile. @@ -90,7 +90,7 @@ class AlignmentChart(Component): - width (number | string; optional): Width of the Viewer. Property takes precedence over tileswidth and numtiles if either of them is set. -- height (number | string; optional): Width of the Viewer. +- height (number | string; default 900): Width of the Viewer. Property takes precedence over tilesheight if both are set.""" @_explicitize_args diff --git a/dash_bio/AlignmentViewer.py b/dash_bio/AlignmentViewer.py index 7d12a104f..3b6bd4e71 100644 --- a/dash_bio/AlignmentViewer.py +++ b/dash_bio/AlignmentViewer.py @@ -4,7 +4,7 @@ class AlignmentViewer(Component): - """A AlignmentViewer component. + """An AlignmentViewer component. The Alignment Viewer (MSA) component is used to align multiple genomic or proteomic sequences from a FASTA or Clustal file. Among its extensive set of features, the multiple sequence alignment viewer @@ -26,57 +26,57 @@ class AlignmentViewer(Component): components in an app. - eventDatum (dict; optional): A Dash prop that returns data on clicking, hovering or resizing the viewer. - data (string; optional): Input data, either in FASTA or Clustal format. -- extension (string; optional): Format type of the input data, either in FASTA or Clustal. -- colorscale (string | dict; optional): Colorscale in 'buried', 'cinema', 'clustal', 'clustal2', 'helix', 'hydrophobicity' +- extension (string; default 'fasta'): Format type of the input data, either in FASTA or Clustal. +- colorscale (string | dict; default 'clustal2'): Colorscale in 'buried', 'cinema', 'clustal', 'clustal2', 'helix', 'hydrophobicity' 'lesk', 'mae', 'nucleotide', 'purine', 'strand', 'taylor', 'turn', 'zappo', or your own colorscale as a {'nucleotide': COLOR} dict. Note that this is NOT a standard plotly colorscale. - opacity (number | string; optional): Opacity of the main plot as a value between 0 and 1. - textcolor (string; optional): Color of the nucleotide labels, in common name, hex, rgb or rgba format. If left blank, handled by the colorscale automatically. -- textsize (number | string; optional): Size of the nucleotide labels, as a number. -- showlabel (boolean; optional): Toggles displaying sequence labels at left of alignment -- showid (boolean; optional): Toggles displaying sequence IDs at left of alignment. -- showconservation (boolean; optional): Enables the display of conservation secondary barplot where the most conserved +- textsize (number | string; default 10): Size of the nucleotide labels, as a number. +- showlabel (boolean; default True): Toggles displaying sequence labels at left of alignment +- showid (boolean; default True): Toggles displaying sequence IDs at left of alignment. +- showconservation (boolean; default True): Enables the display of conservation secondary barplot where the most conserved nucleotides or amino acids get greater bars. - conservationcolor (string; optional): Color of the conservation secondary barplot, in common name, hex, rgb or rgba format. -- conservationcolorscale (string | list; optional): Colorscale of the conservation barplot, in Plotly colorscales (e.g. 'Viridis') +- conservationcolorscale (string | list; default 'Viridis'): Colorscale of the conservation barplot, in Plotly colorscales (e.g. 'Viridis') or as custom Plotly colorscale under a list format. Note that this conservationcolorscale argument does NOT follow the same format as the colorscale argument. - conservationopacity (number | string; optional): Opacity of the conservation secondary barplot as a value between 0 and 1. -- conservationmethod (a value equal to: 'conservation', 'entropy'; optional): Whether to use most conserved ratio (MLE) 'conservation' +- conservationmethod (a value equal to: 'conservation', 'entropy'; default 'entropy'): Whether to use most conserved ratio (MLE) 'conservation' or normalized entropy 'entropy' to determine conservation, which is a value between 0 and 1 where 1 is most conserved. -- correctgap (boolean; optional): Whether to normalize the conservation barchart +- correctgap (boolean; default True): Whether to normalize the conservation barchart By multiplying it elementwise with the gap barchart, as to lower the conservation values across sequences regions with many gaps. -- showgap (boolean; optional): Enables the display of gap secondary barplot where the sequence regions +- showgap (boolean; default True): Enables the display of gap secondary barplot where the sequence regions with the fewest gaps get the greatest bars. -- gapcolor (string; optional): Color of the gap secondary barplot, in common name, hex, rgb or rgba format. +- gapcolor (string; default 'grey'): Color of the gap secondary barplot, in common name, hex, rgb or rgba format. - gapcolorscale (string | list; optional): Colorscale of the gap barplot, in Plotly colorscales (e.g. 'Viridis') or as custom Plotly colorscale under a list format. Note that this conservationcolorscale argument does NOT follow the same format as the colorscale argument. - gapopacity (number | string; optional): Opacity of the gap secondary barplot as a value between 0 and 1. -- groupbars (boolean; optional): If both conservation and gap are enabled, +- groupbars (boolean; default False): If both conservation and gap are enabled, toggles whether to group bars or to stack them as separate subplots. No effect if not both gap and conservation are shown. -- showconsensus (boolean; optional): Displays toggling the consensus sequence, where each nucleotide in the +- showconsensus (boolean; default True): Displays toggling the consensus sequence, where each nucleotide in the consensus sequence is the argmax of its distribution at a set nucleotide. -- tilewidth (number; optional): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer +- tilewidth (number; default 16): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer takes up horizontally. The total number of tiles (numtiles) seen horizontally is automatically determined by rounding the Viewer width divided by the tile width. the Viewwer width divided by the tile witdth. -- tileheight (number; optional): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer +- tileheight (number; default 16): Sets how many pixels each nucleotide/amino acid on the Alignment Viewer takes up vertically. If enabled, set height dynamically. -- overview (a value equal to: 'heatmap', 'slider', 'none'; optional): Toggles whether the overview should be a heatmap, a slider, or none. +- overview (a value equal to: 'heatmap', 'slider', 'none'; default 'heatmap'): Toggles whether the overview should be a heatmap, a slider, or none. - numtiles (number; optional): Sets how many tiles to display across horitontally. If enabled, overrides tilewidth and sets the amount of tiles directly based off that value. -- scrollskip (number; optional): If overview is set to 'scroll', determines how many tiles to skip +- scrollskip (number; default 10): If overview is set to 'scroll', determines how many tiles to skip with each slider movement. Has no effect if scroll is not enabled (such as with overview or none). - tickstart (number | string; optional): Determines where to start annotating the first tile. @@ -90,7 +90,7 @@ class AlignmentViewer(Component): - width (number | string; optional): Width of the Viewer. Property takes precedence over tileswidth and numtiles if either of them is set. -- height (number | string; optional): Width of the Viewer. +- height (number | string; default 900): Width of the Viewer. Property takes precedence over tilesheight if both are set.""" @_explicitize_args diff --git a/dash_bio/Circos.py b/dash_bio/Circos.py index 47e3852b9..bad3ca26e 100644 --- a/dash_bio/Circos.py +++ b/dash_bio/Circos.py @@ -30,14 +30,74 @@ class Circos(Component): "1": "click", "2": "both" }, -- layout (list; required): The overall layout of the Circos graph, provided -as a list of dictionaries. +- layout (dict; required): The overall layout of the Circos graph, provided +as a list of dictionaries. layout has the following type: list of dicts containing keys 'len', 'color', 'label', 'id'. +Those keys have the following types: + - len (number; required): The length of the block. + - color (string; required): The color of the block. + - label (string; required): The labels of the block. + - id (string; required): The id of the block, where it will recieve +data from the specified "track" id. - config (dict; optional): Configuration of overall layout of the graph. -- size (number; optional): The overall size of the SVG container holding the +- size (number; default 800): The overall size of the SVG container holding the graph. Set on initilization and unchangeable thereafter. -- tracks (list; optional): Tracks that specify specific layouts. +- tracks (dict; optional): Tracks that specify specific layouts. For a complete list of tracks and usage, -please check the docs.""" +please check the docs. tracks has the following type: list of dicts containing keys 'id', 'data', 'config', 'type', 'tooltipContent', 'color'. +Those keys have the following types: + - id (string; optional): The id of a specific piece of track data. + - data (list; required): The data that makes up the track. It can +be a Json object. + - config (dict; optional): The layout of the tracks, where the user +can configure innerRadius, outterRadius, ticks, +labels, and more. + - type (optional): Specify the type of track this is. +Please check the docs for a list of tracks you can use, +and ensure the name is typed in all capitals. + - tooltipContent (dict; optional): Specify what data for tooltipContent is +displayed. + +The entry for the "name" key, is any of the keys used in the data loaded into tracks. +Ex: "tooltipContent": {"name": "block_id"}, + +To display all data in the dataset use "all" as the entry for the key "name". +Ex: "tooltipContent": {"name": "all"} + +Ex: This will return (source) + ' > ' + (target) + ': ' + (targetEnd)'. +"tooltipContent": { + "source": "block_id", + "target": "position", + "targetEnd": "value" + }, +Ex: This will return (source)(sourceID) + ' > ' + (target)(targetID) + ': ' (target)(targetEnd)'. +"tooltipContent": { + "source": "source", + "sourceID": "id", + "target": "target", + "targetID": "id", + "targetEnd": "end" + }. tooltipContent has the following type: a value equal to: PropTypes.string, PropTypes.shape({ + name: PropTypes.string.isRequired, +}), PropTypes.shape({ + source: PropTypes.string.isRequired, + sourceID: PropTypes.string, + target: PropTypes.string.isRequired, + targetEnd: PropTypes.string.isRequired, + targetID: PropTypes.string, +}) + - color (dict; optional): Specify which dictonary key to grab color values from, in the passed in dataset. +This can be a string or an object. + +If using a string, you can specify hex, +RGB, and colors from d3 scale chromatic (Ex: RdYlBu). + +The key "name" is required for this dictionary, +where the input for "name" points to some list of +dictionaries color values. + +Ex: "color": {"name": "some key that refers to color in a data set"}. color has the following type: a value equal to: PropTypes.string, PropTypes.shape({ + name: PropTypes.string.isRequired, +})""" @_explicitize_args def __init__(self, enableDownloadSVG=Component.UNDEFINED, enableZoomPan=Component.UNDEFINED, id=Component.UNDEFINED, style=Component.UNDEFINED, eventDatum=Component.UNDEFINED, selectEvent=Component.UNDEFINED, layout=Component.REQUIRED, config=Component.UNDEFINED, size=Component.UNDEFINED, tracks=Component.UNDEFINED, **kwargs): self._prop_names = ['enableDownloadSVG', 'enableZoomPan', 'id', 'style', 'eventDatum', 'selectEvent', 'layout', 'config', 'size', 'tracks'] diff --git a/dash_bio/FornaContainer.py b/dash_bio/FornaContainer.py new file mode 100644 index 000000000..357a4e18f --- /dev/null +++ b/dash_bio/FornaContainer.py @@ -0,0 +1,68 @@ +# AUTO GENERATED FILE - DO NOT EDIT + +from dash.development.base_component import Component, _explicitize_args + + +class FornaContainer(Component): + """A FornaContainer component. +This is a FornaContainer component. + +Keyword arguments: +- id (string; required): The ID of this component, used to identify dash components in +callbacks. The ID needs to be unique across all of the +components in an app. +- height (number; default 500): The height (in px) of the container in which the molecules will +be displayed. +- width (number; default 300): The width (in px) of the container in which the molecules will +be displayed. +- sequences (dict; optional): The molecules that will be displayed. sequences has the following type: list of dicts containing keys 'sequence', 'structure', 'options'. +Those keys have the following types: + - sequence (string; required): A string representing the RNA nucleotide sequence of +the RNA molecule. + - structure (string; required): A dot-bracket string +(https://software.broadinstitute.org/software/igv/RNAsecStructure) +that specifies the secondary structure of the RNA +molecule. + - options (dict; optional): Additional options to be applied to the rendering of +the RNA molecule. options has the following type: dict containing keys 'applyForce', 'circularizeExternal', 'labelInterval', 'name', 'avoidOthers'. +Those keys have the following types: + - applyForce (boolean; optional): Indicate whether the force-directed layout will be +applied to the displayed molecule. Enabling this +option allows users to change the layout of the +molecule by selecting and dragging the individual +nucleotide nodes. True by default. + - circularizeExternal (boolean; optional): This only makes sense in connection with the +applyForce argument. If it's true, the external +loops will be arranged in a nice circle. If false, +they will be allowed to flop around as the force +layout dictates. True by default. + - labelInterval (number; optional): Change how often nucleotide numbers are labelled +with their number. 10 by default. + - name (string; optional): The molecule name; this is used in custom color +scales. + - avoidOthers (boolean; optional): Whether or not this molecule should "avoid" other +molecules in the map. +- nodeFillColor (string; optional): The fill color for all of the nodes. This will override any +color scheme defined in colorScheme. +- colorScheme (a value equal to: 'sequence', 'structure', 'positions'; default 'sequence'): The color scheme that is used to color the nodes. +- allowPanningAndZooming (boolean; optional): Allow users to zoom in and pan the display. If this is enabled, +then pressing the 'c' key on the keyboard will center the view.""" + @_explicitize_args + def __init__(self, id=Component.REQUIRED, height=Component.UNDEFINED, width=Component.UNDEFINED, sequences=Component.UNDEFINED, nodeFillColor=Component.UNDEFINED, colorScheme=Component.UNDEFINED, allowPanningAndZooming=Component.UNDEFINED, allowPanningandZooming=Component.UNDEFINED, labelInterval=Component.UNDEFINED, **kwargs): + self._prop_names = ['id', 'height', 'width', 'sequences', 'nodeFillColor', 'colorScheme', 'allowPanningAndZooming'] + self._type = 'FornaContainer' + self._namespace = 'dash_bio' + self._valid_wildcard_attributes = [] + self.available_properties = ['id', 'height', 'width', 'sequences', 'nodeFillColor', 'colorScheme', 'allowPanningAndZooming'] + self.available_wildcard_properties = [] + + _explicit_args = kwargs.pop('_explicit_args') + _locals = locals() + _locals.update(kwargs) # For wildcard attrs + args = {k: _locals[k] for k in _explicit_args if k != 'children'} + + for k in ['id']: + if k not in args: + raise TypeError( + 'Required argument `' + k + '` was not specified.') + super(FornaContainer, self).__init__(**args) diff --git a/dash_bio/Ideogram.py b/dash_bio/Ideogram.py index c970f4c0b..526527a00 100644 --- a/dash_bio/Ideogram.py +++ b/dash_bio/Ideogram.py @@ -4,7 +4,7 @@ class Ideogram(Component): - """A Ideogram component. + """An Ideogram component. The Ideogram component is used to draw and animate genome-wide datasets for organisms such as human, mouse, and any other eukaryote. The Ideogram component can be used to compare @@ -20,7 +20,7 @@ class Ideogram(Component): instances. - style (dict; optional): The component's inline styles - className (string; optional): The CSS class of the component wrapper -- annotationsLayout (a value equal to: 'tracks', 'histogram', 'overlay'; optional): Layout of ideogram annotations. +- annotationsLayout (a value equal to: 'tracks', 'histogram', 'overlay'; default 'tracks'): Layout of ideogram annotations. One of "tracks", "histogram", or "overlay". "tracks": display annotations in tracks beside each chromosome. @@ -30,25 +30,30 @@ class Ideogram(Component): genomic range. "overlay": display annotations directly over chromosomes. -- annotations (list; optional): A list of annotation objects. Annotation objects can also have a name, color, shape, and -track index. At the moment there is more keys specified and the docs need updating. +- annotations (dict; optional): A list of annotation objects. Annotation objects can also have a name, color, shape, and +track index. At the moment there is more keys specified and the docs need updating. annotations has the following type: list of dicts containing keys 'name', 'chr', 'start', 'stop'. +Those keys have the following types: + - name (string; optional) + - chr (string; optional) + - start (number; optional) + - stop (number; optional) - annotationsPath (string; optional): An absolute or relative URL directing to a JSON file containing annotation objects (JSON). - annotationsData (string; optional): Use this prop in a dash callback to return annotationData when hovered. It is read-only, i.e., it cannot be used with dash.dependencies.Output but only with dash.dependencies.Input -- annotationTracks (list; optional): A list of objects with metadata for each track, e.g., id, display name, color, shape. +- annotationTracks (list of dicts; optional): A list of objects with metadata for each track, e.g., id, display name, color, shape. - annotationHeight (number; optional): Not used if annotationsLayout is set to "overlay". The height of histogram bars or the size of annotations tracks symbols -- annotationsColor (string; optional): Color of annotations. +- annotationsColor (string; default '#F00'): Color of annotations. - histogramScaling (a value equal to: 'absolute', 'relative'; optional): Scaling of histogram bars height Only used if annotationsLayout is set to "histogram". One of "absolute" or "relative". "absolute": sets bar height relative to tallest bar in all chromosomes. "relative": sets bar height relative to tallest bar in each chromosome. -- barWidth (number; optional): Pixel width of histogram bars. +- barWidth (number; default 3): Pixel width of histogram bars. Only used if annotationsLayout is set to "histogram". -- showAnnotTooltip (boolean; optional): Whether to show a tooltip upon mousing over an annotation. +- showAnnotTooltip (boolean; default True): Whether to show a tooltip upon mousing over an annotation. - assembly (string; optional): Default: latest RefSeq assembly for specified organism. The genome assembly to display. Takes assembly name (e.g., "GRCh37"), @@ -58,7 +63,7 @@ class Ideogram(Component): chromosome. Useful when ideogram consists of one chromosome and you want to be able to focus on a region within that chromosome, and create an interactive sliding window to other regions -- brushData (optional): A dash callback that is activated when the 'brush' prop is used in component. +- brushData (dict; optional): A dash callback that is activated when the 'brush' prop is used in component. It will return an dictionary like so: {'start': , 'end': , 'extent': } @@ -73,10 +78,10 @@ class Ideogram(Component): - extent (string; optional) - container (string; optional): CSS styling and the id of the container holding the Ideogram in react-ideogram.js, this is where all the d3 magic happens. -- chrHeight (number; optional): The pixel height of the tallest chromosome in the ideogram -- chrMargin (number; optional): The pixel space of margin between each chromosome. -- chrWidth (number; optional): The pixel width of each chromosome. -- chromosomes (list | dict; optional): A list of the names of chromosomes to display. Useful for depicting a subset of the +- chrHeight (number; default 400): The pixel height of the tallest chromosome in the ideogram +- chrMargin (number; default 10): The pixel space of margin between each chromosome. +- chrWidth (number; default 10): The pixel width of each chromosome. +- chromosomes (list of strings | dict; optional): A list of the names of chromosomes to display. Useful for depicting a subset of the chromosomes in the genome, e.g., a single chromosome. If Homology (between two different species): @@ -87,15 +92,15 @@ class Ideogram(Component): General case to specify specific chromosomes: Ex: chromosomes=['1', '2'] -- dataDir (string; optional): Absolute or relative URL of the directory containing data needed to draw banded chromosomes. +- dataDir (string; default 'https://unpkg.com/ideogram@1.5.0/dist/data/bands/native/'): Absolute or relative URL of the directory containing data needed to draw banded chromosomes. You will need to set up your own database to grab data from a custom database. -- organism (string | number; optional): Organism(s) to show chromosomes for. Supply organism's name as a string (e.g., "human") or +- organism (string | number; default 'human'): Organism(s) to show chromosomes for. Supply organism's name as a string (e.g., "human") or organism's NCBI Taxonomy ID (taxid, e.g., 9606) to display chromosomes from a single organism, or an array of organisms' names or taxids to display chromosomes from multiple species. - localOrganism (dict; optional): Provide local JSON organism into this prop from a local user JSON file. DataDir must not be initialized. -- homology (optional): Used to compare two chromosomes with each other. +- homology (dict; optional): Used to compare two chromosomes with each other. The keys "chrOne" and "chrTwo" represent one chromosome each. Organism is the taxID or name. Start is an array, containing start one and start two, in this order. Stop is an array, containing stop one, and stop two, in this order. @@ -112,16 +117,16 @@ class Ideogram(Component): } }. homology has the following type: dict containing keys 'chrOne', 'chrTwo'. Those keys have the following types: - - chrOne (optional): . chrOne has the following type: dict containing keys 'organism', 'start', 'stop'. + - chrOne (dict; optional): chrOne has the following type: dict containing keys 'organism', 'start', 'stop'. Those keys have the following types: - organism (string; required) - - start (list; optional) - - stop (list; optional) - - chrTwo (optional): . chrTwo has the following type: dict containing keys 'organism', 'start', 'stop'. + - start (list of numbers; optional) + - stop (list of numbers; optional) + - chrTwo (dict; optional): chrTwo has the following type: dict containing keys 'organism', 'start', 'stop'. Those keys have the following types: - organism (string; required) - - start (list; optional) - - stop (list; optional) + - start (list of numbers; optional) + - stop (list of numbers; optional) - perspective (a value equal to: 'comparative'; optional): Use perspective: 'comparative' to enable annotations between two chromosomes, either within the same organism or different organisms. Used for homology. - fullChromosomeLabels (boolean; optional): Whether to include abbreviation species name in chromosome label. Used for homology. @@ -130,21 +135,21 @@ class Ideogram(Component): One of 450, 550, or 850. - filterable (boolean; optional): Whether annotations should be filterable or not. - orientation (a value equal to: 'vertical', 'horizontal'; optional): The orientation of chromosomes on the page. -- ploidy (number; optional): The ploidy - number of chromosomes to depict for each chromosome set. -- ploidyDesc (list; optional): Description of ploidy in each chromosome set in terms of ancestry composition. +- ploidy (number; default 1): The ploidy - number of chromosomes to depict for each chromosome set. +- ploidyDesc (list of dicts; optional): Description of ploidy in each chromosome set in terms of ancestry composition. - ancestors (dict; optional): A map associating ancestor labels to colors. Used to color chromosomes from different ancestors in polyploid genomes. -- rangeSet (list; optional): List of objects describing segments of recombination among chromosomes in a chromosome set. -- rotatable (boolean; optional): Whether chromosomes are rotatable on click. +- rangeSet (list of dicts; optional): List of objects describing segments of recombination among chromosomes in a chromosome set. +- rotatable (boolean; default True): Whether chromosomes are rotatable on click. - rotated (boolean; optional): Dash callback that returns true if rotated, and false if not. - sex (a value equal to: 'male', 'female'; optional): Useful for omitting chromosome Y in female animals. Currently only supported for organisms that use XY sex-determination. -- showChromosomeLabels (boolean; optional): Whether to show chromosome labels, e.g., 1, 2, 3, X, Y. -- showBandLabels (boolean; optional): Whether to show cytogenetic band labels, e.g., 1q21 -- showFullyBanded (boolean; optional): Whether to show fully banded chromosomes for genomes that have sufficient data. Useful for +- showChromosomeLabels (boolean; default True): Whether to show chromosome labels, e.g., 1, 2, 3, X, Y. +- showBandLabels (boolean; default False): Whether to show cytogenetic band labels, e.g., 1q21 +- showFullyBanded (boolean; default True): Whether to show fully banded chromosomes for genomes that have sufficient data. Useful for showing simpler chromosomes of cytogenetically well-characterized organisms, e.g., human, beside chromosomes of less studied organisms, e.g., chimpanzee. -- showNonNuclearChromosomes (boolean; optional): Whether to show non-nuclear chromosomes, +- showNonNuclearChromosomes (boolean; default False): Whether to show non-nuclear chromosomes, e.g., for mitochondrial (MT) and chloroplast (CP) DNA.""" @_explicitize_args def __init__(self, id=Component.REQUIRED, style=Component.UNDEFINED, className=Component.UNDEFINED, annotationsLayout=Component.UNDEFINED, annotations=Component.UNDEFINED, annotationsPath=Component.UNDEFINED, annotationsData=Component.UNDEFINED, annotationTracks=Component.UNDEFINED, annotationHeight=Component.UNDEFINED, annotationsColor=Component.UNDEFINED, histogramScaling=Component.UNDEFINED, barWidth=Component.UNDEFINED, showAnnotTooltip=Component.UNDEFINED, assembly=Component.UNDEFINED, brush=Component.UNDEFINED, brushData=Component.UNDEFINED, container=Component.UNDEFINED, chrHeight=Component.UNDEFINED, chrMargin=Component.UNDEFINED, chrWidth=Component.UNDEFINED, chromosomes=Component.UNDEFINED, dataDir=Component.UNDEFINED, organism=Component.UNDEFINED, localOrganism=Component.UNDEFINED, homology=Component.UNDEFINED, perspective=Component.UNDEFINED, fullChromosomeLabels=Component.UNDEFINED, resolution=Component.UNDEFINED, filterable=Component.UNDEFINED, orientation=Component.UNDEFINED, ploidy=Component.UNDEFINED, ploidyDesc=Component.UNDEFINED, ancestors=Component.UNDEFINED, rangeSet=Component.UNDEFINED, rotatable=Component.UNDEFINED, rotated=Component.UNDEFINED, sex=Component.UNDEFINED, showChromosomeLabels=Component.UNDEFINED, showBandLabels=Component.UNDEFINED, showFullyBanded=Component.UNDEFINED, showNonNuclearChromosomes=Component.UNDEFINED, **kwargs): diff --git a/dash_bio/Molecule2dViewer.py b/dash_bio/Molecule2dViewer.py index 27975ed5e..458ae0218 100644 --- a/dash_bio/Molecule2dViewer.py +++ b/dash_bio/Molecule2dViewer.py @@ -12,13 +12,26 @@ class Molecule2dViewer(Component): Keyword arguments: - id (string; optional): The ID used to identify this component in callbacks. -- selectedAtomIds (list; optional): The selected atom IDs. -- width (number; optional): The width of the SVG element. -- height (number; optional): The height of the SVG element. -- modelData (optional): Description of the molecule to display.. modelData has the following type: dict containing keys 'nodes', 'links'. +- selectedAtomIds (list of numbers; optional): The selected atom IDs. +- width (number; default 500): The width of the SVG element. +- height (number; default 500): The height of the SVG element. +- modelData (dict; default { + nodes: [], + links: [], +}): Description of the molecule to display. modelData has the following type: dict containing keys 'nodes', 'links'. Those keys have the following types: - - nodes (list; optional) - - links (list; optional)""" + - nodes (dict; optional): nodes has the following type: list of dicts containing keys 'id', 'atom'. +Those keys have the following types: + - id (number; optional) + - atom (string; optional) + - links (dict; optional): links has the following type: list of dicts containing keys 'id', 'source', 'target', 'bond', 'strength', 'distance'. +Those keys have the following types: + - id (number; optional) + - source (number; optional) + - target (number; optional) + - bond (number; optional) + - strength (number; optional) + - distance (number; optional)""" @_explicitize_args def __init__(self, id=Component.UNDEFINED, selectedAtomIds=Component.UNDEFINED, width=Component.UNDEFINED, height=Component.UNDEFINED, modelData=Component.UNDEFINED, **kwargs): self._prop_names = ['id', 'selectedAtomIds', 'width', 'height', 'modelData'] diff --git a/dash_bio/Molecule3dViewer.py b/dash_bio/Molecule3dViewer.py index 2d5dd2213..1c10805b9 100644 --- a/dash_bio/Molecule3dViewer.py +++ b/dash_bio/Molecule3dViewer.py @@ -13,12 +13,15 @@ class Molecule3dViewer(Component): Keyword arguments: - id (string; optional): The ID used to identify this component in callbacks -- selectionType (a value equal to: 'atom', 'residue', 'chain'; optional): The selection type - may be atom, residue or chain -- backgroundColor (string; optional): Property to change the background color of the molecule viewer -- backgroundOpacity (number; optional): Property to change the backgroun opacity - ranges from 0 to 1 -- styles (list; optional): Property that can be used to change the representation of -the molecule. Options include sticks, cartoon and sphere -- modelData (optional): The data that will be used to display the molecule in 3D +- selectionType (a value equal to: 'atom', 'residue', 'chain'; default 'atom'): The selection type - may be atom, residue or chain +- backgroundColor (string; default '#FFFFFF'): Property to change the background color of the molecule viewer +- backgroundOpacity (number; default 0): Property to change the backgroun opacity - ranges from 0 to 1 +- styles (dict; optional): Property that can be used to change the representation of +the molecule. Options include sticks, cartoon and sphere. styles has the following type: list of dicts containing keys 'color', 'visualization_type'. +Those keys have the following types: + - color (string; optional) + - visualization_type (a value equal to: 'cartoon', 'sphere', 'stick'; optional) +- modelData (dict; optional): The data that will be used to display the molecule in 3D The data will be in JSON format and should have two main dictionaries - atoms, bonds. modelData has the following type: dict containing keys 'atoms', 'bonds'. Those keys have the following types: diff --git a/dash_bio/NeedlePlot.py b/dash_bio/NeedlePlot.py index 059d3646c..a8b6d6be8 100644 --- a/dash_bio/NeedlePlot.py +++ b/dash_bio/NeedlePlot.py @@ -13,16 +13,48 @@ class NeedlePlot(Component): - id (string; optional): The ID of this component, used to identify dash components in callbacks. The ID needs to be unique across all of the components in an app. -- mutationData (optional): The data that are displayed on the plot. mutationData has the following type: dict containing keys 'x', 'y', 'mutationGroups', 'domains'. +- mutationData (dict; default { + x: [], + y: [], + domains: [], + mutationGroups: [], +}): The data that are displayed on the plot. mutationData has the following type: dict containing keys 'x', 'y', 'mutationGroups', 'domains'. Those keys have the following types: - x (string | list; optional) - y (string | list; optional) - - mutationGroups (list; optional) + - mutationGroups (list of strings; optional) - domains (list; optional) - xlabel (string; optional): Title of the x-axis. - ylabel (string; optional): Title of the y-axis. -- rangeSlider (boolean; optional): If true, enables a rangeslider for the x-axis. -- needleStyle (optional): Options for the needle marking single site mutations. needleStyle has the following type: dict containing keys 'stemColor', 'stemThickness', 'stemConstHeight', 'headSize', 'headColor', 'headSymbol'. +- rangeSlider (boolean; default False): If true, enables a rangeslider for the x-axis. +- needleStyle (dict; default { + stemColor: '#444', + stemThickness: 0.5, + stemConstHeight: false, + headSize: 5, + headColor: [ + '#e41a1c', + '#377eb8', + '#4daf4a', + '#984ea3', + '#ff7f00', + '#ffff33', + '#a65628', + '#f781bf', + '#999999', + '#e41a1c', + '#377eb8', + '#4daf4a', + '#984ea3', + '#ff7f00', + '#ffff33', + '#a65628', + '#f781bf', + '#999999', + '#e41a1c', + ], + headSymbol: 'circle', +}): Options for the needle marking single site mutations. needleStyle has the following type: dict containing keys 'stemColor', 'stemThickness', 'stemConstHeight', 'headSize', 'headColor', 'headSymbol'. Those keys have the following types: - stemColor (string; optional) - stemThickness (number; optional) @@ -30,7 +62,30 @@ class NeedlePlot(Component): - headSize (number; optional) - headColor (list | string; optional) - headSymbol (list | string; optional) -- domainStyle (optional): Options for the protein domain coloring. domainStyle has the following type: dict containing keys 'domainColor', 'displayMinorDomains'. +- domainStyle (dict; default { + displayMinorDomains: false, + domainColor: [ + '#8dd3c7', + '#ffffb3', + '#bebada', + '#fb8072', + '#80b1d3', + '#fdb462', + '#b3de69', + '#fccde5', + '#d9d9d9', + '#bc80bd', + '#ccebc5', + '#ffed6f', + '#8dd3c7', + '#ffffb3', + '#bebada', + '#fb8072', + '#80b1d3', + '#fdb462', + '#b3de69', + ], +}): Options for the protein domain coloring. domainStyle has the following type: dict containing keys 'domainColor', 'displayMinorDomains'. Those keys have the following types: - domainColor (list; optional) - displayMinorDomains (boolean; optional)""" diff --git a/dash_bio/OncoPrint.py b/dash_bio/OncoPrint.py index bbceb8e08..8bbd47d06 100644 --- a/dash_bio/OncoPrint.py +++ b/dash_bio/OncoPrint.py @@ -4,7 +4,7 @@ class OncoPrint(Component): - """A OncoPrint component. + """An OncoPrint component. The OncoPrint component is used to view multiple genetic alteration events through an interactive and zoomable heatmap. It is a React/Dash port of the popular oncoPrint() function from the BioConductor R package. @@ -21,7 +21,7 @@ class OncoPrint(Component): - eventDatum (dict; optional): A Dash prop that returns data on clicking, hovering or resizing the viewer. - data (list; optional): Input data, in CBioPortal format where each list entry is a dict consisting of 'sample', 'gene', 'alteration', and 'type' -- padding (number; optional): Adjusts the padding (as a proportion of whitespace) between two tracks. +- padding (number; default 0.05): Adjusts the padding (as a proportion of whitespace) between two tracks. Value is a ratio between 0 and 1. Defaults to 0.05 (i.e., 5 percent). If set to 0, plot will look like a heatmap. - colorscale (boolean | dict; optional): If not null, will override the default OncoPrint colorscale. @@ -30,16 +30,16 @@ class OncoPrint(Component): Supported mutation keys are ['MISSENSE, 'INFRAME', 'FUSION', 'AMP', 'GAIN', 'HETLOSS', 'HMODEL', 'UP', 'DOWN'] Note that this is NOT a standard plotly colorscale. -- backgroundcolor (string; optional): Default color for the tracks, in common name, hex, rgb or rgba format. +- backgroundcolor (string; default 'rgb(190, 190, 190)'): Default color for the tracks, in common name, hex, rgb or rgba format. If left blank, will default to a light grey rgb(190, 190, 190). -- range (list; optional): .Toogles whether or not to show a legend on the right side of the plot, +- range (list; default [null, null]): .Toogles whether or not to show a legend on the right side of the plot, with mutation information. -- showlegend (boolean; optional): .Toogles whether or not to show a legend on the right side of the plot, +- showlegend (boolean; default True): .Toogles whether or not to show a legend on the right side of the plot, with mutation information. -- showoverview (boolean; optional): .Toogles whether or not to show a heatmap overview of the tracks. +- showoverview (boolean; default True): .Toogles whether or not to show a heatmap overview of the tracks. - width (number | string; optional): Width of the OncoPrint. Will disable auto-resizing of plots if set. -- height (number | string; optional): Height of the OncoPrint. +- height (number | string; default 500): Height of the OncoPrint. Will disable auto-resizing of plots if set.""" @_explicitize_args def __init__(self, id=Component.UNDEFINED, eventDatum=Component.UNDEFINED, data=Component.UNDEFINED, padding=Component.UNDEFINED, colorscale=Component.UNDEFINED, backgroundcolor=Component.UNDEFINED, range=Component.UNDEFINED, showlegend=Component.UNDEFINED, showoverview=Component.UNDEFINED, width=Component.UNDEFINED, height=Component.UNDEFINED, **kwargs): diff --git a/dash_bio/SequenceViewer.py b/dash_bio/SequenceViewer.py index c467d9010..faa9c4009 100644 --- a/dash_bio/SequenceViewer.py +++ b/dash_bio/SequenceViewer.py @@ -19,44 +19,64 @@ class SequenceViewer(Component): Keyword arguments: - id (string; optional): The ID used to identify this component in Dash callbacks. -- sequence (string; optional): The amino acid sequence that will be displayed. -- showLineNumbers (boolean; optional): The option of whether or not to display line numbers. -- wrapAminoAcids (boolean; optional): The option of whether or not to display the list of amino acids +- sequence (string; default '-'): The amino acid sequence that will be displayed. +- showLineNumbers (boolean; default True): The option of whether or not to display line numbers. +- wrapAminoAcids (boolean; default True): The option of whether or not to display the list of amino acids as broken up into separate lines of a fixed length set by charsPerLine. -- charsPerLine (number; optional): The number of amino acids that will display per line. -- toolbar (boolean; optional): The option of whether or not to display a toolbar at the top +- charsPerLine (number; default 40): The number of amino acids that will display per line. +- toolbar (boolean; default False): The option of whether or not to display a toolbar at the top that allows the user to choose the number of letters per line. -- search (boolean; optional): The option of whether or not to include a search bar in +- search (boolean; default True): The option of whether or not to include a search bar in the header. This supports regex. -- title (string; optional): A string that displays at the top of the component. -- sequenceMaxHeight (string; optional): The maximum height of the sequence. -- badge (boolean; optional): The option of whether or not to display a badge showing the +- title (string; default ''): A string that displays at the top of the component. +- sequenceMaxHeight (string; default '400px'): The maximum height of the sequence. +- badge (boolean; default True): The option of whether or not to display a badge showing the amino acid count at the top of the component beside the title. -- selection (list; optional): A highlighted section of the sequence; the color of the highlight +- selection (dict; optional): A highlighted section of the sequence; the color of the highlight can also be defined. Takes a list of format [min, max, color] where min is a number that represents the starting index of the selection, max is a number that represents the stopping index of the selection, and color is a string that defines the highlight color. -Cannot be used at the same time as coverage. -- coverage (list; optional): A coverage of the entire sequence; each section of the sequence +Cannot be used at the same time as coverage. selection has the following type: list of dicts containing keys 'low', 'high', 'color'. +Those keys have the following types: + - low (number; optional) + - high (number; optional) + - color (string; optional) +- coverage (dict; optional): A coverage of the entire sequence; each section of the sequence can have its own text color, background color, tooltip (on hover), and an optional underscore. The props start and end represent the beginning and terminating indices of the section in question. -Cannot be used at the same time as selection. -- legend (list; optional): A legend corresponding to the color codes above (optionally displayed). +Cannot be used at the same time as selection. coverage has the following type: list of dicts containing keys 'start', 'end', 'color', 'bgcolor', 'tooltip', 'underscore', 'onclick'. +Those keys have the following types: + - start (number; optional) + - end (number; optional) + - color (string; optional) + - bgcolor (string; optional) + - tooltip (string; optional) + - underscore (boolean; optional) + - onclick (optional) +- legend (dict; optional): A legend corresponding to the color codes above (optionally displayed). legend has the following type: list of dicts containing keys 'name', 'color', 'underscore'. +Those keys have the following types: + - name (string; optional) + - color (string; optional) + - underscore (boolean; optional) - coverageClicked (number; optional): Contains the index of the section that was clicked last in the coverage list supplied. -- mouseSelection (optional): Contains information about the subsequence selected +- mouseSelection (dict; optional): Contains information about the subsequence selected by the mouse. Start and end refer to the initial and final indices, respectively, of the subsequence, and -"selection" contains the string that is selected.. mouseSelection has the following type: dict containing keys 'start', 'end', 'selection'. +"selection" contains the string that is selected. mouseSelection has the following type: dict containing keys 'start', 'end', 'selection'. Those keys have the following types: - start (number; optional) - end (number; optional) - selection (string; optional) -- subpartSelected (list; optional): A list of the subparts selected using the -"search" function or the "selection" property.""" +- subpartSelected (dict; optional): A list of the subparts selected using the +"search" function or the "selection" property. subpartSelected has the following type: list of dicts containing keys 'start', 'end', 'sequence'. +Those keys have the following types: + - start (number; optional) + - end (number; optional) + - sequence (string; optional)""" @_explicitize_args def __init__(self, id=Component.UNDEFINED, sequence=Component.UNDEFINED, showLineNumbers=Component.UNDEFINED, wrapAminoAcids=Component.UNDEFINED, charsPerLine=Component.UNDEFINED, toolbar=Component.UNDEFINED, search=Component.UNDEFINED, title=Component.UNDEFINED, sequenceMaxHeight=Component.UNDEFINED, badge=Component.UNDEFINED, selection=Component.UNDEFINED, coverage=Component.UNDEFINED, legend=Component.UNDEFINED, coverageClicked=Component.UNDEFINED, mouseSelection=Component.UNDEFINED, subpartSelected=Component.UNDEFINED, **kwargs): self._prop_names = ['id', 'sequence', 'showLineNumbers', 'wrapAminoAcids', 'charsPerLine', 'toolbar', 'search', 'title', 'sequenceMaxHeight', 'badge', 'selection', 'coverage', 'legend', 'coverageClicked', 'mouseSelection', 'subpartSelected'] diff --git a/dash_bio/Speck.py b/dash_bio/Speck.py index c562614d9..0b42fcdcf 100644 --- a/dash_bio/Speck.py +++ b/dash_bio/Speck.py @@ -11,24 +11,29 @@ class Speck(Component): Keyword arguments: - id (string; optional): The ID used to identify this component in Dash callbacks. -- data (list; optional): The xyz file data; a list of atoms such that each atom +- data (dict; optional): The xyz file data; a list of atoms such that each atom has a dictionary defining the x, y, and z coordinates -along with the atom's symbol. +along with the atom's symbol. data has the following type: list of dicts containing keys 'symbol', 'x', 'y', 'z'. +Those keys have the following types: + - symbol (string; optional) + - x (number; optional) + - y (number; optional) + - z (number; optional) - scrollZoom (boolean; optional): The option of whether or not to allow scrolling to control the zoom. -- view (optional): An object that determines and controls various parameters -related to how the molecule is displayed.. view has the following type: dict containing keys 'aspect', 'zoom', 'translation', 'atomScale', 'relativeAtomScale', 'bondScale', 'rotation', 'ao', 'aoRes', 'brightness', 'outline', 'spf', 'bonds', 'bondThreshold', 'bondShade', 'atomShade', 'resolution', 'dofStrength', 'dofPosition', 'fxaa'. +- view (dict; default speckView.new()): An object that determines and controls various parameters +related to how the molecule is displayed. view has the following type: dict containing keys 'aspect', 'zoom', 'translation', 'atomScale', 'relativeAtomScale', 'bondScale', 'rotation', 'ao', 'aoRes', 'brightness', 'outline', 'spf', 'bonds', 'bondThreshold', 'bondShade', 'atomShade', 'resolution', 'dofStrength', 'dofPosition', 'fxaa'. Those keys have the following types: - aspect (number; optional) - zoom (number; optional) - - translation (optional): . translation has the following type: dict containing keys 'x', 'y'. + - translation (dict; optional): translation has the following type: dict containing keys 'x', 'y'. Those keys have the following types: - x (number; optional) - y (number; optional) - atomScale (number; optional) - relativeAtomScale (number; optional) - bondScale (number; optional) - - rotation (optional): . rotation has the following type: dict containing keys . + - rotation (dict; optional): rotation has the following type: dict containing keys . Those keys have the following types: - ao (number; optional) diff --git a/dash_bio/_imports_.py b/dash_bio/_imports_.py index be825c7b3..435ffe0e7 100644 --- a/dash_bio/_imports_.py +++ b/dash_bio/_imports_.py @@ -1,6 +1,7 @@ from .AlignmentChart import AlignmentChart from .AlignmentViewer import AlignmentViewer from .Circos import Circos +from .FornaContainer import FornaContainer from .Ideogram import Ideogram from .Molecule2dViewer import Molecule2dViewer from .Molecule3dViewer import Molecule3dViewer @@ -13,6 +14,7 @@ "AlignmentChart", "AlignmentViewer", "Circos", + "FornaContainer", "Ideogram", "Molecule2dViewer", "Molecule3dViewer", diff --git a/dash_bio/bundle.js b/dash_bio/bundle.js index ae95798b3..5c70ea76f 100644 --- a/dash_bio/bundle.js +++ b/dash_bio/bundle.js @@ -1,4 +1,4 @@ -window.dash_bio=function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=154)}([function(t,e,n){t.exports=n(66)()},function(t,e,n){"use strict";n.r(e);var r="http://www.w3.org/1999/xhtml",i={svg:"http://www.w3.org/2000/svg",xhtml:r,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"},o=function(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),i.hasOwnProperty(e)?{space:i[e],local:t}:t};var a=function(t){var e=o(t);return(e.local?function(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}:function(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===r&&e.documentElement.namespaceURI===r?e.createElement(t):e.createElementNS(n,t)}})(e)};function s(){}var l=function(t){return null==t?s:function(){return this.querySelector(t)}};function u(){return[]}var c=function(t){return null==t?u:function(){return this.querySelectorAll(t)}},f=function(t){return function(){return this.matches(t)}};if("undefined"!=typeof document){var h=document.documentElement;if(!h.matches){var p=h.webkitMatchesSelector||h.msMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector;f=function(t){return function(){return p.call(this,t)}}}}var d=f,v=function(t){return new Array(t.length)};function m(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}m.prototype={constructor:m,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var g="$";function y(t,e,n,r,i,o){for(var a,s=0,l=e.length,u=o.length;se?1:t>=e?0:NaN}var _=function(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView};function w(t,e){return t.style.getPropertyValue(e)||_(t).getComputedStyle(t,null).getPropertyValue(e)}function A(t){return t.trim().split(/^|\s+/)}function M(t){return t.classList||new k(t)}function k(t){this._node=t,this._names=A(t.getAttribute("class")||"")}function T(t,e){for(var n=M(t),r=-1,i=e.length;++r=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function C(){this.textContent=""}function E(){this.innerHTML=""}function O(){this.nextSibling&&this.parentNode.appendChild(this)}function D(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function L(){return null}function P(){var t=this.parentNode;t&&t.removeChild(this)}function z(){return this.parentNode.insertBefore(this.cloneNode(!1),this.nextSibling)}function I(){return this.parentNode.insertBefore(this.cloneNode(!0),this.nextSibling)}var R={},j=null;"undefined"!=typeof document&&("onmouseenter"in document.documentElement||(R={mouseenter:"mouseover",mouseleave:"mouseout"}));function F(t,e,n){return t=N(t,e,n),function(e){var n=e.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||t.call(this,e)}}function N(t,e,n){return function(r){var i=j;j=r;try{t.call(this,this.__data__,e,n)}finally{j=i}}}function B(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r=A&&(A=w+1);!(_=g[A])&&++A=0;)(r=i[o])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=x);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o1?this.each((null==e?function(t){return function(){this.style.removeProperty(t)}}:"function"==typeof e?function(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}:function(t,e,n){return function(){this.style.setProperty(t,e,n)}})(t,e,null==n?"":n)):w(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?function(t){return function(){delete this[t]}}:"function"==typeof e?function(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}:function(t,e){return function(){this[t]=e}})(t,e)):this.node()[t]},classed:function(t,e){var n=A(t+"");if(arguments.length<2){for(var r=M(this.node()),i=-1,o=n.length;++i=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}})}(t+""),a=o.length;if(!(arguments.length<2)){for(s=e?U:B,null==n&&(n=!1),r=0;r0))return a;do{a.push(o=new Date(+n)),e(n,i),t(n)}while(o=e)for(;t(e),!n(e);)e.setTime(e-1)},function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););})},n&&(s.count=function(e,o){return r.setTime(+e),i.setTime(+o),t(r),t(i),Math.floor(n(r,i))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(a?function(e){return a(e)%t==0}:function(e){return s.count(0,e)%t==0}):s:null}),s}var a=o(function(){},function(t,e){t.setTime(+t+e)},function(t,e){return e-t});a.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?o(function(e){e.setTime(Math.floor(e/t)*t)},function(e,n){e.setTime(+e+n*t)},function(e,n){return(n-e)/t}):a:null};var s=a,l=a.range,u=6e4,c=6048e5,f=o(function(t){t.setTime(1e3*Math.floor(t/1e3))},function(t,e){t.setTime(+t+1e3*e)},function(t,e){return(e-t)/1e3},function(t){return t.getUTCSeconds()}),h=f,p=f.range,d=o(function(t){t.setTime(Math.floor(t/u)*u)},function(t,e){t.setTime(+t+e*u)},function(t,e){return(e-t)/u},function(t){return t.getMinutes()}),v=d,m=d.range,g=o(function(t){var e=t.getTimezoneOffset()*u%36e5;e<0&&(e+=36e5),t.setTime(36e5*Math.floor((+t-e)/36e5)+e)},function(t,e){t.setTime(+t+36e5*e)},function(t,e){return(e-t)/36e5},function(t){return t.getHours()}),y=g,b=g.range,x=o(function(t){t.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+e)},function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*u)/864e5},function(t){return t.getDate()-1}),_=x,w=x.range;function A(t){return o(function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+7*e)},function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*u)/c})}var M=A(0),k=A(1),T=A(2),S=A(3),C=A(4),E=A(5),O=A(6),D=M.range,L=k.range,P=T.range,z=S.range,I=C.range,R=E.range,j=O.range,F=o(function(t){t.setDate(1),t.setHours(0,0,0,0)},function(t,e){t.setMonth(t.getMonth()+e)},function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())},function(t){return t.getMonth()}),N=F,B=F.range,U=o(function(t){t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t,e){return e.getFullYear()-t.getFullYear()},function(t){return t.getFullYear()});U.every=function(t){return isFinite(t=Math.floor(t))&&t>0?o(function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},function(e,n){e.setFullYear(e.getFullYear()+n*t)}):null};var V=U,q=U.range,$=o(function(t){t.setUTCSeconds(0,0)},function(t,e){t.setTime(+t+e*u)},function(t,e){return(e-t)/u},function(t){return t.getUTCMinutes()}),H=$,W=$.range,G=o(function(t){t.setUTCMinutes(0,0,0)},function(t,e){t.setTime(+t+36e5*e)},function(t,e){return(e-t)/36e5},function(t){return t.getUTCHours()}),Y=G,X=G.range,Z=o(function(t){t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+e)},function(t,e){return(e-t)/864e5},function(t){return t.getUTCDate()-1}),J=Z,K=Z.range;function Q(t){return o(function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+7*e)},function(t,e){return(e-t)/c})}var tt=Q(0),et=Q(1),nt=Q(2),rt=Q(3),it=Q(4),ot=Q(5),at=Q(6),st=tt.range,lt=et.range,ut=nt.range,ct=rt.range,ft=it.range,ht=ot.range,pt=at.range,dt=o(function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCMonth(t.getUTCMonth()+e)},function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())},function(t){return t.getUTCMonth()}),vt=dt,mt=dt.range,gt=o(function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)},function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()},function(t){return t.getUTCFullYear()});gt.every=function(t){return isFinite(t=Math.floor(t))&&t>0?o(function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)}):null};var yt=gt,bt=gt.range;n.d(e,"g",function(){return o}),n.d(e,"h",function(){return s}),n.d(e,"i",function(){return l}),n.d(e,"L",function(){return s}),n.d(e,"M",function(){return l}),n.d(e,"r",function(){return h}),n.d(e,"s",function(){return p}),n.d(e,"V",function(){return h}),n.d(e,"W",function(){return p}),n.d(e,"j",function(){return v}),n.d(e,"k",function(){return m}),n.d(e,"e",function(){return y}),n.d(e,"f",function(){return b}),n.d(e,"a",function(){return _}),n.d(e,"b",function(){return w}),n.d(e,"B",function(){return M}),n.d(e,"C",function(){return D}),n.d(e,"t",function(){return M}),n.d(e,"u",function(){return D}),n.d(e,"l",function(){return k}),n.d(e,"m",function(){return L}),n.d(e,"x",function(){return T}),n.d(e,"y",function(){return P}),n.d(e,"z",function(){return S}),n.d(e,"A",function(){return z}),n.d(e,"v",function(){return C}),n.d(e,"w",function(){return I}),n.d(e,"c",function(){return E}),n.d(e,"d",function(){return R}),n.d(e,"p",function(){return O}),n.d(e,"q",function(){return j}),n.d(e,"n",function(){return N}),n.d(e,"o",function(){return B}),n.d(e,"D",function(){return V}),n.d(e,"E",function(){return q}),n.d(e,"N",function(){return H}),n.d(e,"O",function(){return W}),n.d(e,"J",function(){return Y}),n.d(e,"K",function(){return X}),n.d(e,"F",function(){return J}),n.d(e,"G",function(){return K}),n.d(e,"fb",function(){return tt}),n.d(e,"gb",function(){return st}),n.d(e,"X",function(){return tt}),n.d(e,"Y",function(){return st}),n.d(e,"P",function(){return et}),n.d(e,"Q",function(){return lt}),n.d(e,"bb",function(){return nt}),n.d(e,"cb",function(){return ut}),n.d(e,"db",function(){return rt}),n.d(e,"eb",function(){return ct}),n.d(e,"Z",function(){return it}),n.d(e,"ab",function(){return ft}),n.d(e,"H",function(){return ot}),n.d(e,"I",function(){return ht}),n.d(e,"T",function(){return at}),n.d(e,"U",function(){return pt}),n.d(e,"R",function(){return vt}),n.d(e,"S",function(){return mt}),n.d(e,"hb",function(){return yt}),n.d(e,"ib",function(){return bt})},function(t,e,n){"use strict";var r=function(t,e){return te?1:t>=e?0:NaN},i=function(t){var e;return 1===t.length&&(e=t,t=function(t,n){return r(e(t),n)}),{left:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[o],n)<0?r=o+1:i=o}return r},right:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[o],n)>0?i=o:r=o+1}return r}}};var o=i(r),a=o.right,s=o.left,l=a,u=function(t,e){null==e&&(e=c);for(var n=0,r=t.length-1,i=t[0],o=new Array(r<0?0:r);nt?1:e>=t?0:NaN},p=function(t){return null===t?NaN:+t},d=function(t,e){var n,r,i=t.length,o=0,a=-1,s=0,l=0;if(null==e)for(;++a1)return l/(o-1)},v=function(t,e){var n=d(t,e);return n?Math.sqrt(n):n},m=function(t,e){var n,r,i,o=t.length,a=-1;if(null==e){for(;++a=n)for(r=i=n;++an&&(r=n),i=n)for(r=i=n;++an&&(r=n),i0)return[t];if((r=e0)for(t=Math.ceil(t/a),e=Math.floor(e/a),o=new Array(i=Math.ceil(e-t+1));++s=0?(o>=A?10:o>=M?5:o>=k?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(o>=A?10:o>=M?5:o>=k?2:1)}function C(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),o=r/i;return o>=A?i*=10:o>=M?i*=5:o>=k&&(i*=2),ef;)h.pop(),--p;var d,v=new Array(p+1);for(i=0;i<=p;++i)(d=v[i]=[]).x0=i>0?h[i-1]:c,d.x1=i=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,o=Math.floor(i),a=+n(t[o],o,t);return a+(+n(t[o+1],o+1,t)-a)*(i-o)}},L=function(t,e,n){return t=b.call(t,p).sort(r),Math.ceil((n-e)/(2*(D(t,.75)-D(t,.25))*Math.pow(t.length,-1/3)))},P=function(t,e,n){return Math.ceil((n-e)/(3.5*v(t)*Math.pow(t.length,-1/3)))},z=function(t,e){var n,r,i=t.length,o=-1;if(null==e){for(;++o=n)for(r=n;++or&&(r=n)}else for(;++o=n)for(r=n;++or&&(r=n);return r},I=function(t,e){var n,r=t.length,i=r,o=-1,a=0;if(null==e)for(;++o=0;)for(e=(r=t[i]).length;--e>=0;)n[--a]=r[e];return n},F=function(t,e){var n,r,i=t.length,o=-1;if(null==e){for(;++o=n)for(r=n;++on&&(r=n)}else for(;++o=n)for(r=n;++on&&(r=n);return r},N=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},B=function(t,e){if(n=t.length){var n,i,o=0,a=0,s=t[a];for(null==e&&(e=r);++o>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):(e=c.exec(t))?b(parseInt(e[1],16)):(e=f.exec(t))?new A(e[1],e[2],e[3],1):(e=h.exec(t))?new A(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=p.exec(t))?x(e[1],e[2],e[3],e[4]):(e=d.exec(t))?x(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=v.exec(t))?M(e[1],e[2]/100,e[3]/100,1):(e=m.exec(t))?M(e[1],e[2]/100,e[3]/100,e[4]):g.hasOwnProperty(t)?b(g[t]):"transparent"===t?new A(NaN,NaN,NaN,0):null}function b(t){return new A(t>>16&255,t>>8&255,255&t,1)}function x(t,e,n,r){return r<=0&&(t=e=n=NaN),new A(t,e,n,r)}function _(t){return t instanceof o||(t=y(t)),t?new A((t=t.rgb()).r,t.g,t.b,t.opacity):new A}function w(t,e,n,r){return 1===arguments.length?_(t):new A(t,e,n,null==r?1:r)}function A(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function M(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new T(t,e,n,r)}function k(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof T)return new T(t.h,t.s,t.l,t.opacity);if(t instanceof o||(t=y(t)),!t)return new T;if(t instanceof T)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),a=Math.max(e,n,r),s=NaN,l=a-i,u=(a+i)/2;return l?(s=e===a?(n-r)/l+6*(n0&&u<1?0:s,new T(s,l,u,t.opacity)}(t):new T(t,e,n,null==r?1:r)}function T(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function S(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}r(o,y,{displayable:function(){return this.rgb().displayable()},toString:function(){return this.rgb()+""}}),r(A,w,i(o,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new A(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new A(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&0<=this.g&&this.g<=255&&0<=this.b&&this.b<=255&&0<=this.opacity&&this.opacity<=1},toString:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}})),r(T,k,i(o,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new T(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new T(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new A(S(t>=240?t-240:t+120,i,r),S(t,i,r),S(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1}}));var C=Math.PI/180,E=180/Math.PI,O=.95047,D=1,L=1.08883,P=4/29,z=6/29,I=3*z*z,R=z*z*z;function j(t){if(t instanceof N)return new N(t.l,t.a,t.b,t.opacity);if(t instanceof H){var e=t.h*C;return new N(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}t instanceof A||(t=_(t));var n=q(t.r),r=q(t.g),i=q(t.b),o=B((.4124564*n+.3575761*r+.1804375*i)/O),a=B((.2126729*n+.7151522*r+.072175*i)/D);return new N(116*a-16,500*(o-a),200*(a-B((.0193339*n+.119192*r+.9503041*i)/L)),t.opacity)}function F(t,e,n,r){return 1===arguments.length?j(t):new N(t,e,n,null==r?1:r)}function N(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}function B(t){return t>R?Math.pow(t,1/3):t/I+P}function U(t){return t>z?t*t*t:I*(t-P)}function V(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function q(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function $(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof H)return new H(t.h,t.c,t.l,t.opacity);t instanceof N||(t=j(t));var e=Math.atan2(t.b,t.a)*E;return new H(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}(t):new H(t,e,n,null==r?1:r)}function H(t,e,n,r){this.h=+t,this.c=+e,this.l=+n,this.opacity=+r}r(N,F,i(o,{brighter:function(t){return new N(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new N(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return t=D*U(t),new A(V(3.2404542*(e=O*U(e))-1.5371385*t-.4985314*(n=L*U(n))),V(-.969266*e+1.8760108*t+.041556*n),V(.0556434*e-.2040259*t+1.0572252*n),this.opacity)}})),r(H,$,i(o,{brighter:function(t){return new H(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker:function(t){return new H(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return j(this).rgb()}}));var W=-.14861,G=1.78277,Y=-.29227,X=-.90649,Z=1.97294,J=Z*X,K=Z*G,Q=G*Y-X*W;function tt(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof et)return new et(t.h,t.s,t.l,t.opacity);t instanceof A||(t=_(t));var e=t.r/255,n=t.g/255,r=t.b/255,i=(Q*r+J*e-K*n)/(Q+J-K),o=r-i,a=(Z*(n-i)-Y*o)/X,s=Math.sqrt(a*a+o*o)/(Z*i*(1-i)),l=s?Math.atan2(a,o)*E-120:NaN;return new et(l<0?l+360:l,s,i,t.opacity)}(t):new et(t,e,n,null==r?1:r)}function et(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}r(et,tt,i(o,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new et(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new et(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*C,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new A(255*(e+n*(W*r+G*i)),255*(e+n*(Y*r+X*i)),255*(e+n*(Z*r)),this.opacity)}})),n.d(e,"a",function(){return y}),n.d(e,"f",function(){return w}),n.d(e,"d",function(){return k}),n.d(e,"e",function(){return F}),n.d(e,"c",function(){return $}),n.d(e,"b",function(){return tt})},function(t,e,n){"use strict";var r=n(6);function i(t,e,n,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*n+(1+3*t+3*o-3*a)*r+a*i)/6}var o=function(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),o=t[r],a=t[r+1],s=r>0?t[r-1]:2*o-a,l=r180||n<-180?n-360*Math.round(n/360):n):s(isNaN(t)?e:t)}function c(t){return 1==(t=+t)?f:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):s(isNaN(e)?n:e)}}function f(t,e){var n=e-t;return n?l(t,n):s(isNaN(t)?e:t)}var h=function t(e){var n=c(e);function i(t,e){var i=n((t=Object(r.f)(t)).r,(e=Object(r.f)(e)).r),o=n(t.g,e.g),a=n(t.b,e.b),s=f(t.opacity,e.opacity);return function(e){return t.r=i(e),t.g=o(e),t.b=a(e),t.opacity=s(e),t+""}}return i.gamma=t,i}(1);function p(t){return function(e){var n,i,o=e.length,a=new Array(o),s=new Array(o),l=new Array(o);for(n=0;no&&(i=e.slice(o,i),s[a]?s[a]+=i:s[++a]=i),(n=n[0])===(r=r[0])?s[a]?s[a]+=r:s[++a]=r:(s[++a]=null,l.push({i:a,x:y(n,r)})),o=_.lastIndex;return o180?e+=360:e-t>180&&(t+=360),o.push({i:n.push(i(n)+"rotate(",null,r)-2,x:y(t,e)})):e&&n.push(i(n)+"rotate("+e+r)}(o.rotate,a.rotate,s,l),function(t,e,n,o){t!==e?o.push({i:n.push(i(n)+"skewX(",null,r)-2,x:y(t,e)}):e&&n.push(i(n)+"skewX("+e+r)}(o.skewX,a.skewX,s,l),function(t,e,n,r,o,a){if(t!==n||e!==r){var s=o.push(i(o)+"scale(",null,",",null,")");a.push({i:s-4,x:y(t,n)},{i:s-2,x:y(e,r)})}else 1===n&&1===r||o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,l),o=a=null,function(t){for(var e,n=-1,r=l.length;++n=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}})),l=-1,u=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++l0)for(var n,r,i=new Array(n),o=0;ol)throw new Error("too late; already scheduled");return n}function g(t,e){var n=y(t,e);if(n.state>c)throw new Error("too late; already started");return n}function y(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}var b=function(t,e){var n,r,i,o=t.__transition,a=!0;if(o){for(i in e=null==e?null:e+"",o)(n=o[i]).name===e?(r=n.state>c&&n.state=0&&(t=t.slice(0,e)),!t||"start"===t})}(e)?m:g;return function(){var a=o(this,t),s=a.on;s!==r&&(i=(r=s).copy()).on(e,n),a.on=i}}(n,t,e))},attr:function(t,e){var n=Object(r.namespace)(t),i="transform"===n?x.u:A;return this.attrTween(t,"function"==typeof e?(n.local?function(t,e,n){var r,i,o;return function(){var a,s=n(this);if(null!=s)return(a=this.getAttributeNS(t.space,t.local))===s?null:a===r&&s===i?o:o=e(r=a,i=s);this.removeAttributeNS(t.space,t.local)}}:function(t,e,n){var r,i,o;return function(){var a,s=n(this);if(null!=s)return(a=this.getAttribute(t))===s?null:a===r&&s===i?o:o=e(r=a,i=s);this.removeAttribute(t)}})(n,i,_(this,"attr."+t,e)):null==e?(n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}})(n):(n.local?function(t,e,n){var r,i;return function(){var o=this.getAttributeNS(t.space,t.local);return o===n?null:o===r?i:i=e(r=o,n)}}:function(t,e,n){var r,i;return function(){var o=this.getAttribute(t);return o===n?null:o===r?i:i=e(r=o,n)}})(n,i,e+""))},attrTween:function(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw new Error;var i=Object(r.namespace)(t);return this.tween(n,(i.local?function(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttributeNS(t.space,t.local,r(e))}}return n._value=e,n}:function(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttribute(t,r(e))}}return n._value=e,n})(i,e))},style:function(t,e,n){var i="transform"==(t+="")?x.t:A;return null==e?this.styleTween(t,function(t,e){var n,i,o;return function(){var a=Object(r.style)(this,t),s=(this.style.removeProperty(t),Object(r.style)(this,t));return a===s?null:a===n&&s===i?o:o=e(n=a,i=s)}}(t,i)).on("end.style."+t,function(t){return function(){this.style.removeProperty(t)}}(t)):this.styleTween(t,"function"==typeof e?function(t,e,n){var i,o,a;return function(){var s=Object(r.style)(this,t),l=n(this);return null==l&&(this.style.removeProperty(t),l=Object(r.style)(this,t)),s===l?null:s===i&&l===o?a:a=e(i=s,o=l)}}(t,i,_(this,"style."+t,e)):function(t,e,n){var i,o;return function(){var a=Object(r.style)(this,t);return a===n?null:a===i?o:o=e(i=a,n)}}(t,i,e+""),n)},styleTween:function(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;return this.tween(r,function(t,e,n){function r(){var r=this,i=e.apply(r,arguments);return i&&function(e){r.style.setProperty(t,i(e),n)}}return r._value=e,r}(t,e,null==n?"":n))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(_(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},remove:function(){return this.on("end.remove",(t=this._id,function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}));var t},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,i=y(this.node(),n).tween,o=0,a=i.length;ou&&n.name===e)return new T([[t]],L,e,+r);return null};n.d(e,"c",function(){return S}),n.d(e,"a",function(){return P}),n.d(e,"b",function(){return b})},function(t,e,n){"use strict";function r(){}function i(t,e){var n=new r;if(t instanceof r)t.each(function(t,e){n.set(e,t)});else if(Array.isArray(t)){var i,o=-1,a=t.length;if(null==e)for(;++o=r.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var u,c,f,h=-1,p=n.length,d=r[i++],v=o(),m=s();++hr.length)return n;var a,s=i[o-1];return null!=e&&o>=r.length?a=n.entries():(a=[],n.each(function(e,n){a.push({key:n,values:t(e,o)})})),null!=s?a.sort(function(t,e){return s(t.key,e.key)}):a}(a(t,0,u,c),0)},key:function(t){return r.push(t),n},sortKeys:function(t){return i[r.length-1]=t,n},sortValues:function(e){return t=e,n},rollup:function(t){return e=t,n}}};function s(){return{}}function l(t,e,n){t[e]=n}function u(){return o()}function c(t,e,n){t.set(e,n)}function f(){}var h=o.prototype;function p(t,e){var n=new f;if(t instanceof f)t.each(function(t){n.add(t)});else if(t){var r=-1,i=t.length;if(null==e)for(;++rA}x.mouse("drag")}function S(){Object(i.select)(i.event.view).on("mousemove.drag mouseup.drag",null),l(i.event.view,n),a(),x.mouse("end")}function C(){if(m.apply(this,arguments)){var t,e,n=i.event.changedTouches,r=g.apply(this,arguments),a=n.length;for(t=0;t=0&&e._call.call(null,t),e=e._next;--o}function b(){c=(u=h.now())+f,o=a=0;try{y()}finally{o=0,function(){var t,e,n=r,o=1/0;for(;n;)n._call?(o>n._time&&(o=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:r=e);i=t,_(o)}(),c=0}}function x(){var t=h.now(),e=t-u;e>l&&(f-=e,u=t)}function _(t){o||(a&&(a=clearTimeout(a)),t-c>24?(t<1/0&&(a=setTimeout(b,t-h.now()-f)),s&&(s=clearInterval(s))):(s||(u=h.now(),s=setInterval(x,l)),o=1,p(b)))}m.prototype=g.prototype={constructor:m,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?d():+n)+(null==e?0:+e),this._next||i===this||(i?i._next=this:r=this,i=this),this._call=t,this._time=n,_()},stop:function(){this._call&&(this._call=null,this._time=1/0,_())}};var w=function(t,e,n){var r=new m;return e=null==e?0:+e,r.restart(function(n){r.stop(),t(n+e)},e,n),r},A=function(t,e,n){var r=new m,i=e;return null==e?(r.restart(t,e,n),r):(e=+e,n=null==n?d():+n,r.restart(function o(a){a+=i,r.restart(o,i+=e,n),t(a)},e,n),r)};n.d(e,"b",function(){return d}),n.d(e,"d",function(){return g}),n.d(e,"e",function(){return y}),n.d(e,"c",function(){return w}),n.d(e,"a",function(){return A})},function(t,e,n){"use strict";var r,i=function(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]},o=function(t){return(t=i(Math.abs(t)))?t[1]:NaN},a=function(t,e){var n=i(t,e);if(!n)return t+"";var r=n[0],o=n[1];return o<0?"0."+new Array(-o).join("0")+r:r.length>o+1?r.slice(0,o+1)+"."+r.slice(o+1):r+new Array(o-r.length+2).join("0")},s={"":function(t,e){t:for(var n,r=(t=t.toPrecision(e)).length,i=1,o=-1;i0&&(o=0)}return o>0?t.slice(0,o)+t.slice(n+1):t},"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return a(100*t,e)},r:a,s:function(t,e){var n=i(t,e);if(!n)return t+"";var o=n[0],a=n[1],s=a-(r=3*Math.max(-8,Math.min(8,Math.floor(a/3))))+1,l=o.length;return s===l?o:s>l?o+new Array(s-l+1).join("0"):s>0?o.slice(0,s)+"."+o.slice(s):"0."+new Array(1-s).join("0")+i(t,Math.max(0,e+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}},l=/^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i;function u(t){return new c(t)}function c(t){if(!(e=l.exec(t)))throw new Error("invalid format: "+t);var e,n=e[1]||" ",r=e[2]||">",i=e[3]||"-",o=e[4]||"",a=!!e[5],u=e[6]&&+e[6],c=!!e[7],f=e[8]&&+e[8].slice(1),h=e[9]||"";"n"===h?(c=!0,h="g"):s[h]||(h=""),(a||"0"===n&&"="===r)&&(a=!0,n="0",r="="),this.fill=n,this.align=r,this.sign=i,this.symbol=o,this.zero=a,this.width=u,this.comma=c,this.precision=f,this.type=h}u.prototype=c.prototype,c.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(null==this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(null==this.precision?"":"."+Math.max(0,0|this.precision))+this.type};var f,h,p,d=function(t){return t},v=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"],m=function(t){var e,n,i=t.grouping&&t.thousands?(e=t.grouping,n=t.thousands,function(t,r){for(var i=t.length,o=[],a=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>r&&(s=Math.max(1,r-l)),o.push(t.substring(i-=s,i+s)),!((l+=s+1)>r));)s=e[a=(a+1)%e.length];return o.reverse().join(n)}):d,a=t.currency,l=t.decimal,c=t.numerals?function(t){return function(e){return e.replace(/[0-9]/g,function(e){return t[+e]})}}(t.numerals):d,f=t.percent||"%";function h(t){var e=(t=u(t)).fill,n=t.align,o=t.sign,h=t.symbol,p=t.zero,d=t.width,m=t.comma,g=t.precision,y=t.type,b="$"===h?a[0]:"#"===h&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",x="$"===h?a[1]:/[%p]/.test(y)?f:"",_=s[y],w=!y||/[defgprs%]/.test(y);function A(t){var a,s,u,f=b,h=x;if("c"===y)h=_(t)+h,t="";else{var A=(t=+t)<0;if(t=_(Math.abs(t),g),A&&0==+t&&(A=!1),f=(A?"("===o?o:"-":"-"===o||"("===o?"":o)+f,h=("s"===y?v[8+r/3]:"")+h+(A&&"("===o?")":""),w)for(a=-1,s=t.length;++a(u=t.charCodeAt(a))||u>57){h=(46===u?l+t.slice(a+1):t.slice(a))+h,t=t.slice(0,a);break}}m&&!p&&(t=i(t,1/0));var M=f.length+t.length+h.length,k=M>1)+f+t+h+k.slice(M);break;default:t=k+f+t+h}return c(t)}return g=null==g?y?6:12:/[gprs]/.test(y)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g)),A.toString=function(){return t+""},A}return{format:h,formatPrefix:function(t,e){var n=h(((t=u(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(o(e)/3))),i=Math.pow(10,-r),a=v[8+r/3];return function(t){return n(i*t)+a}}}};function g(t){return f=m(t),h=f.format,p=f.formatPrefix,f}g({decimal:".",thousands:",",grouping:[3],currency:["$",""]});var y=function(t){return Math.max(0,-o(Math.abs(t)))},b=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(o(e)/3)))-o(Math.abs(t)))},x=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,o(e)-o(t))+1};n.d(e,"b",function(){return g}),n.d(e,"a",function(){return h}),n.d(e,"d",function(){return p}),n.d(e,"c",function(){return m}),n.d(e,"e",function(){return u}),n.d(e,"f",function(){return y}),n.d(e,"g",function(){return b}),n.d(e,"h",function(){return x})},function(t,e,n){"use strict";function r(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.blob()}n.r(e);var i=function(t,e){return fetch(t,e).then(r)};function o(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.arrayBuffer()}var a=function(t,e){return fetch(t,e).then(o)},s=n(16);function l(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}var u=function(t,e){return fetch(t,e).then(l)};function c(t){return function(e,n,r){return 2===arguments.length&&"function"==typeof n&&(r=n,n=void 0),u(e,n).then(function(e){return t(e,r)})}}function f(t,e,n,r){3===arguments.length&&"function"==typeof n&&(r=n,n=void 0);var i=Object(s.e)(t);return u(e,n).then(function(t){return i.parse(t,r)})}var h=c(s.c),p=c(s.h),d=function(t,e){return new Promise(function(n,r){var i=new Image;for(var o in e)i[o]=e[o];i.onerror=r,i.onload=function(){n(i)},i.src=t})};function v(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.json()}var m=function(t,e){return fetch(t,e).then(v)};function g(t){return function(e,n){return u(e,n).then(function(e){return(new DOMParser).parseFromString(e,t)})}}var y=g("application/xml"),b=g("text/html"),x=g("image/svg+xml");n.d(e,"blob",function(){return i}),n.d(e,"buffer",function(){return a}),n.d(e,"dsv",function(){return f}),n.d(e,"csv",function(){return h}),n.d(e,"tsv",function(){return p}),n.d(e,"image",function(){return d}),n.d(e,"json",function(){return m}),n.d(e,"text",function(){return u}),n.d(e,"xml",function(){return y}),n.d(e,"html",function(){return b}),n.d(e,"svg",function(){return x})},function(t,e,n){"use strict";var r={},i={},o=34,a=10,s=13;function l(t){return new Function("d","return {"+t.map(function(t,e){return JSON.stringify(t)+": d["+e+"]"}).join(",")+"}")}var u=function(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function u(t,e){var l,u=[],c=t.length,f=0,h=0,p=c<=0,d=!1;function v(){if(p)return i;if(d)return d=!1,r;var e,l,u=f;if(t.charCodeAt(u)===o){for(;f++=c?p=!0:(l=t.charCodeAt(f++))===a?d=!0:l===s&&(d=!0,t.charCodeAt(f)===a&&++f),t.slice(u+1,e-1).replace(/""/g,'"')}for(;f=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),i.hasOwnProperty(e)?{space:i[e],local:t}:t};var a=function(t){var e=o(t);return(e.local?function(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}:function(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===r&&e.documentElement.namespaceURI===r?e.createElement(t):e.createElementNS(n,t)}})(e)};function s(){}var l=function(t){return null==t?s:function(){return this.querySelector(t)}};function u(){return[]}var c=function(t){return null==t?u:function(){return this.querySelectorAll(t)}},f=function(t){return function(){return this.matches(t)}};if("undefined"!=typeof document){var h=document.documentElement;if(!h.matches){var p=h.webkitMatchesSelector||h.msMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector;f=function(t){return function(){return p.call(this,t)}}}}var d=f,v=function(t){return new Array(t.length)};function g(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}g.prototype={constructor:g,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};var m="$";function y(t,e,n,r,i,o){for(var a,s=0,l=e.length,u=o.length;se?1:t>=e?0:NaN}var _=function(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView};function w(t,e){return t.style.getPropertyValue(e)||_(t).getComputedStyle(t,null).getPropertyValue(e)}function A(t){return t.trim().split(/^|\s+/)}function M(t){return t.classList||new k(t)}function k(t){this._node=t,this._names=A(t.getAttribute("class")||"")}function T(t,e){for(var n=M(t),r=-1,i=e.length;++r=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function C(){this.textContent=""}function E(){this.innerHTML=""}function O(){this.nextSibling&&this.parentNode.appendChild(this)}function D(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function L(){return null}function P(){var t=this.parentNode;t&&t.removeChild(this)}function z(){return this.parentNode.insertBefore(this.cloneNode(!1),this.nextSibling)}function I(){return this.parentNode.insertBefore(this.cloneNode(!0),this.nextSibling)}var R={},j=null;"undefined"!=typeof document&&("onmouseenter"in document.documentElement||(R={mouseenter:"mouseover",mouseleave:"mouseout"}));function N(t,e,n){return t=F(t,e,n),function(e){var n=e.relatedTarget;n&&(n===this||8&n.compareDocumentPosition(this))||t.call(this,e)}}function F(t,e,n){return function(r){var i=j;j=r;try{t.call(this,this.__data__,e,n)}finally{j=i}}}function B(t){return function(){var e=this.__on;if(e){for(var n,r=0,i=-1,o=e.length;r=A&&(A=w+1);!(_=m[A])&&++A=0;)(r=i[o])&&(a&&a!==r.nextSibling&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=x);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o1?this.each((null==e?function(t){return function(){this.style.removeProperty(t)}}:"function"==typeof e?function(t,e,n){return function(){var r=e.apply(this,arguments);null==r?this.style.removeProperty(t):this.style.setProperty(t,r,n)}}:function(t,e,n){return function(){this.style.setProperty(t,e,n)}})(t,e,null==n?"":n)):w(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?function(t){return function(){delete this[t]}}:"function"==typeof e?function(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}:function(t,e){return function(){this[t]=e}})(t,e)):this.node()[t]},classed:function(t,e){var n=A(t+"");if(arguments.length<2){for(var r=M(this.node()),i=-1,o=n.length;++i=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}})}(t+""),a=o.length;if(!(arguments.length<2)){for(s=e?U:B,null==n&&(n=!1),r=0;r0))return a;do{a.push(o=new Date(+n)),e(n,i),t(n)}while(o=e)for(;t(e),!n(e);)e.setTime(e-1)},function(t,r){if(t>=t)if(r<0)for(;++r<=0;)for(;e(t,-1),!n(t););else for(;--r>=0;)for(;e(t,1),!n(t););})},n&&(s.count=function(e,o){return r.setTime(+e),i.setTime(+o),t(r),t(i),Math.floor(n(r,i))},s.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?s.filter(a?function(e){return a(e)%t==0}:function(e){return s.count(0,e)%t==0}):s:null}),s}var a=o(function(){},function(t,e){t.setTime(+t+e)},function(t,e){return e-t});a.every=function(t){return t=Math.floor(t),isFinite(t)&&t>0?t>1?o(function(e){e.setTime(Math.floor(e/t)*t)},function(e,n){e.setTime(+e+n*t)},function(e,n){return(n-e)/t}):a:null};var s=a,l=a.range,u=6e4,c=6048e5,f=o(function(t){t.setTime(1e3*Math.floor(t/1e3))},function(t,e){t.setTime(+t+1e3*e)},function(t,e){return(e-t)/1e3},function(t){return t.getUTCSeconds()}),h=f,p=f.range,d=o(function(t){t.setTime(Math.floor(t/u)*u)},function(t,e){t.setTime(+t+e*u)},function(t,e){return(e-t)/u},function(t){return t.getMinutes()}),v=d,g=d.range,m=o(function(t){var e=t.getTimezoneOffset()*u%36e5;e<0&&(e+=36e5),t.setTime(36e5*Math.floor((+t-e)/36e5)+e)},function(t,e){t.setTime(+t+36e5*e)},function(t,e){return(e-t)/36e5},function(t){return t.getHours()}),y=m,b=m.range,x=o(function(t){t.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+e)},function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*u)/864e5},function(t){return t.getDate()-1}),_=x,w=x.range;function A(t){return o(function(e){e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},function(t,e){t.setDate(t.getDate()+7*e)},function(t,e){return(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*u)/c})}var M=A(0),k=A(1),T=A(2),S=A(3),C=A(4),E=A(5),O=A(6),D=M.range,L=k.range,P=T.range,z=S.range,I=C.range,R=E.range,j=O.range,N=o(function(t){t.setDate(1),t.setHours(0,0,0,0)},function(t,e){t.setMonth(t.getMonth()+e)},function(t,e){return e.getMonth()-t.getMonth()+12*(e.getFullYear()-t.getFullYear())},function(t){return t.getMonth()}),F=N,B=N.range,U=o(function(t){t.setMonth(0,1),t.setHours(0,0,0,0)},function(t,e){t.setFullYear(t.getFullYear()+e)},function(t,e){return e.getFullYear()-t.getFullYear()},function(t){return t.getFullYear()});U.every=function(t){return isFinite(t=Math.floor(t))&&t>0?o(function(e){e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},function(e,n){e.setFullYear(e.getFullYear()+n*t)}):null};var V=U,q=U.range,$=o(function(t){t.setUTCSeconds(0,0)},function(t,e){t.setTime(+t+e*u)},function(t,e){return(e-t)/u},function(t){return t.getUTCMinutes()}),H=$,W=$.range,G=o(function(t){t.setUTCMinutes(0,0,0)},function(t,e){t.setTime(+t+36e5*e)},function(t,e){return(e-t)/36e5},function(t){return t.getUTCHours()}),Y=G,X=G.range,Z=o(function(t){t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+e)},function(t,e){return(e-t)/864e5},function(t){return t.getUTCDate()-1}),J=Z,K=Z.range;function Q(t){return o(function(e){e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},function(t,e){t.setUTCDate(t.getUTCDate()+7*e)},function(t,e){return(e-t)/c})}var tt=Q(0),et=Q(1),nt=Q(2),rt=Q(3),it=Q(4),ot=Q(5),at=Q(6),st=tt.range,lt=et.range,ut=nt.range,ct=rt.range,ft=it.range,ht=ot.range,pt=at.range,dt=o(function(t){t.setUTCDate(1),t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCMonth(t.getUTCMonth()+e)},function(t,e){return e.getUTCMonth()-t.getUTCMonth()+12*(e.getUTCFullYear()-t.getUTCFullYear())},function(t){return t.getUTCMonth()}),vt=dt,gt=dt.range,mt=o(function(t){t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},function(t,e){t.setUTCFullYear(t.getUTCFullYear()+e)},function(t,e){return e.getUTCFullYear()-t.getUTCFullYear()},function(t){return t.getUTCFullYear()});mt.every=function(t){return isFinite(t=Math.floor(t))&&t>0?o(function(e){e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},function(e,n){e.setUTCFullYear(e.getUTCFullYear()+n*t)}):null};var yt=mt,bt=mt.range;n.d(e,"g",function(){return o}),n.d(e,"h",function(){return s}),n.d(e,"i",function(){return l}),n.d(e,"L",function(){return s}),n.d(e,"M",function(){return l}),n.d(e,"r",function(){return h}),n.d(e,"s",function(){return p}),n.d(e,"V",function(){return h}),n.d(e,"W",function(){return p}),n.d(e,"j",function(){return v}),n.d(e,"k",function(){return g}),n.d(e,"e",function(){return y}),n.d(e,"f",function(){return b}),n.d(e,"a",function(){return _}),n.d(e,"b",function(){return w}),n.d(e,"B",function(){return M}),n.d(e,"C",function(){return D}),n.d(e,"t",function(){return M}),n.d(e,"u",function(){return D}),n.d(e,"l",function(){return k}),n.d(e,"m",function(){return L}),n.d(e,"x",function(){return T}),n.d(e,"y",function(){return P}),n.d(e,"z",function(){return S}),n.d(e,"A",function(){return z}),n.d(e,"v",function(){return C}),n.d(e,"w",function(){return I}),n.d(e,"c",function(){return E}),n.d(e,"d",function(){return R}),n.d(e,"p",function(){return O}),n.d(e,"q",function(){return j}),n.d(e,"n",function(){return F}),n.d(e,"o",function(){return B}),n.d(e,"D",function(){return V}),n.d(e,"E",function(){return q}),n.d(e,"N",function(){return H}),n.d(e,"O",function(){return W}),n.d(e,"J",function(){return Y}),n.d(e,"K",function(){return X}),n.d(e,"F",function(){return J}),n.d(e,"G",function(){return K}),n.d(e,"fb",function(){return tt}),n.d(e,"gb",function(){return st}),n.d(e,"X",function(){return tt}),n.d(e,"Y",function(){return st}),n.d(e,"P",function(){return et}),n.d(e,"Q",function(){return lt}),n.d(e,"bb",function(){return nt}),n.d(e,"cb",function(){return ut}),n.d(e,"db",function(){return rt}),n.d(e,"eb",function(){return ct}),n.d(e,"Z",function(){return it}),n.d(e,"ab",function(){return ft}),n.d(e,"H",function(){return ot}),n.d(e,"I",function(){return ht}),n.d(e,"T",function(){return at}),n.d(e,"U",function(){return pt}),n.d(e,"R",function(){return vt}),n.d(e,"S",function(){return gt}),n.d(e,"hb",function(){return yt}),n.d(e,"ib",function(){return bt})},function(t,e,n){"use strict";var r=function(t,e){return te?1:t>=e?0:NaN},i=function(t){var e;return 1===t.length&&(e=t,t=function(t,n){return r(e(t),n)}),{left:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[o],n)<0?r=o+1:i=o}return r},right:function(e,n,r,i){for(null==r&&(r=0),null==i&&(i=e.length);r>>1;t(e[o],n)>0?i=o:r=o+1}return r}}};var o=i(r),a=o.right,s=o.left,l=a,u=function(t,e){null==e&&(e=c);for(var n=0,r=t.length-1,i=t[0],o=new Array(r<0?0:r);nt?1:e>=t?0:NaN},p=function(t){return null===t?NaN:+t},d=function(t,e){var n,r,i=t.length,o=0,a=-1,s=0,l=0;if(null==e)for(;++a1)return l/(o-1)},v=function(t,e){var n=d(t,e);return n?Math.sqrt(n):n},g=function(t,e){var n,r,i,o=t.length,a=-1;if(null==e){for(;++a=n)for(r=i=n;++an&&(r=n),i=n)for(r=i=n;++an&&(r=n),i0)return[t];if((r=e0)for(t=Math.ceil(t/a),e=Math.floor(e/a),o=new Array(i=Math.ceil(e-t+1));++s=0?(o>=A?10:o>=M?5:o>=k?2:1)*Math.pow(10,i):-Math.pow(10,-i)/(o>=A?10:o>=M?5:o>=k?2:1)}function C(t,e,n){var r=Math.abs(e-t)/Math.max(0,n),i=Math.pow(10,Math.floor(Math.log(r)/Math.LN10)),o=r/i;return o>=A?i*=10:o>=M?i*=5:o>=k&&(i*=2),ef;)h.pop(),--p;var d,v=new Array(p+1);for(i=0;i<=p;++i)(d=v[i]=[]).x0=i>0?h[i-1]:c,d.x1=i=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,o=Math.floor(i),a=+n(t[o],o,t);return a+(+n(t[o+1],o+1,t)-a)*(i-o)}},L=function(t,e,n){return t=b.call(t,p).sort(r),Math.ceil((n-e)/(2*(D(t,.75)-D(t,.25))*Math.pow(t.length,-1/3)))},P=function(t,e,n){return Math.ceil((n-e)/(3.5*v(t)*Math.pow(t.length,-1/3)))},z=function(t,e){var n,r,i=t.length,o=-1;if(null==e){for(;++o=n)for(r=n;++or&&(r=n)}else for(;++o=n)for(r=n;++or&&(r=n);return r},I=function(t,e){var n,r=t.length,i=r,o=-1,a=0;if(null==e)for(;++o=0;)for(e=(r=t[i]).length;--e>=0;)n[--a]=r[e];return n},N=function(t,e){var n,r,i=t.length,o=-1;if(null==e){for(;++o=n)for(r=n;++on&&(r=n)}else for(;++o=n)for(r=n;++on&&(r=n);return r},F=function(t,e){for(var n=e.length,r=new Array(n);n--;)r[n]=t[e[n]];return r},B=function(t,e){if(n=t.length){var n,i,o=0,a=0,s=t[a];for(null==e&&(e=r);++o>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):(e=c.exec(t))?b(parseInt(e[1],16)):(e=f.exec(t))?new A(e[1],e[2],e[3],1):(e=h.exec(t))?new A(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=p.exec(t))?x(e[1],e[2],e[3],e[4]):(e=d.exec(t))?x(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=v.exec(t))?M(e[1],e[2]/100,e[3]/100,1):(e=g.exec(t))?M(e[1],e[2]/100,e[3]/100,e[4]):m.hasOwnProperty(t)?b(m[t]):"transparent"===t?new A(NaN,NaN,NaN,0):null}function b(t){return new A(t>>16&255,t>>8&255,255&t,1)}function x(t,e,n,r){return r<=0&&(t=e=n=NaN),new A(t,e,n,r)}function _(t){return t instanceof o||(t=y(t)),t?new A((t=t.rgb()).r,t.g,t.b,t.opacity):new A}function w(t,e,n,r){return 1===arguments.length?_(t):new A(t,e,n,null==r?1:r)}function A(t,e,n,r){this.r=+t,this.g=+e,this.b=+n,this.opacity=+r}function M(t,e,n,r){return r<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new T(t,e,n,r)}function k(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof T)return new T(t.h,t.s,t.l,t.opacity);if(t instanceof o||(t=y(t)),!t)return new T;if(t instanceof T)return t;var e=(t=t.rgb()).r/255,n=t.g/255,r=t.b/255,i=Math.min(e,n,r),a=Math.max(e,n,r),s=NaN,l=a-i,u=(a+i)/2;return l?(s=e===a?(n-r)/l+6*(n0&&u<1?0:s,new T(s,l,u,t.opacity)}(t):new T(t,e,n,null==r?1:r)}function T(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}function S(t,e,n){return 255*(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)}r(o,y,{displayable:function(){return this.rgb().displayable()},toString:function(){return this.rgb()+""}}),r(A,w,i(o,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new A(this.r*t,this.g*t,this.b*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new A(this.r*t,this.g*t,this.b*t,this.opacity)},rgb:function(){return this},displayable:function(){return 0<=this.r&&this.r<=255&&0<=this.g&&this.g<=255&&0<=this.b&&this.b<=255&&0<=this.opacity&&this.opacity<=1},toString:function(){var t=this.opacity;return(1===(t=isNaN(t)?1:Math.max(0,Math.min(1,t)))?"rgb(":"rgba(")+Math.max(0,Math.min(255,Math.round(this.r)||0))+", "+Math.max(0,Math.min(255,Math.round(this.g)||0))+", "+Math.max(0,Math.min(255,Math.round(this.b)||0))+(1===t?")":", "+t+")")}})),r(T,k,i(o,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new T(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new T(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=this.h%360+360*(this.h<0),e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*e,i=2*n-r;return new A(S(t>=240?t-240:t+120,i,r),S(t,i,r),S(t<120?t+240:t-120,i,r),this.opacity)},displayable:function(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1}}));var C=Math.PI/180,E=180/Math.PI,O=.95047,D=1,L=1.08883,P=4/29,z=6/29,I=3*z*z,R=z*z*z;function j(t){if(t instanceof F)return new F(t.l,t.a,t.b,t.opacity);if(t instanceof H){var e=t.h*C;return new F(t.l,Math.cos(e)*t.c,Math.sin(e)*t.c,t.opacity)}t instanceof A||(t=_(t));var n=q(t.r),r=q(t.g),i=q(t.b),o=B((.4124564*n+.3575761*r+.1804375*i)/O),a=B((.2126729*n+.7151522*r+.072175*i)/D);return new F(116*a-16,500*(o-a),200*(a-B((.0193339*n+.119192*r+.9503041*i)/L)),t.opacity)}function N(t,e,n,r){return 1===arguments.length?j(t):new F(t,e,n,null==r?1:r)}function F(t,e,n,r){this.l=+t,this.a=+e,this.b=+n,this.opacity=+r}function B(t){return t>R?Math.pow(t,1/3):t/I+P}function U(t){return t>z?t*t*t:I*(t-P)}function V(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function q(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function $(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof H)return new H(t.h,t.c,t.l,t.opacity);t instanceof F||(t=j(t));var e=Math.atan2(t.b,t.a)*E;return new H(e<0?e+360:e,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}(t):new H(t,e,n,null==r?1:r)}function H(t,e,n,r){this.h=+t,this.c=+e,this.l=+n,this.opacity=+r}r(F,N,i(o,{brighter:function(t){return new F(this.l+18*(null==t?1:t),this.a,this.b,this.opacity)},darker:function(t){return new F(this.l-18*(null==t?1:t),this.a,this.b,this.opacity)},rgb:function(){var t=(this.l+16)/116,e=isNaN(this.a)?t:t+this.a/500,n=isNaN(this.b)?t:t-this.b/200;return t=D*U(t),new A(V(3.2404542*(e=O*U(e))-1.5371385*t-.4985314*(n=L*U(n))),V(-.969266*e+1.8760108*t+.041556*n),V(.0556434*e-.2040259*t+1.0572252*n),this.opacity)}})),r(H,$,i(o,{brighter:function(t){return new H(this.h,this.c,this.l+18*(null==t?1:t),this.opacity)},darker:function(t){return new H(this.h,this.c,this.l-18*(null==t?1:t),this.opacity)},rgb:function(){return j(this).rgb()}}));var W=-.14861,G=1.78277,Y=-.29227,X=-.90649,Z=1.97294,J=Z*X,K=Z*G,Q=G*Y-X*W;function tt(t,e,n,r){return 1===arguments.length?function(t){if(t instanceof et)return new et(t.h,t.s,t.l,t.opacity);t instanceof A||(t=_(t));var e=t.r/255,n=t.g/255,r=t.b/255,i=(Q*r+J*e-K*n)/(Q+J-K),o=r-i,a=(Z*(n-i)-Y*o)/X,s=Math.sqrt(a*a+o*o)/(Z*i*(1-i)),l=s?Math.atan2(a,o)*E-120:NaN;return new et(l<0?l+360:l,s,i,t.opacity)}(t):new et(t,e,n,null==r?1:r)}function et(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}r(et,tt,i(o,{brighter:function(t){return t=null==t?1/.7:Math.pow(1/.7,t),new et(this.h,this.s,this.l*t,this.opacity)},darker:function(t){return t=null==t?.7:Math.pow(.7,t),new et(this.h,this.s,this.l*t,this.opacity)},rgb:function(){var t=isNaN(this.h)?0:(this.h+120)*C,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new A(255*(e+n*(W*r+G*i)),255*(e+n*(Y*r+X*i)),255*(e+n*(Z*r)),this.opacity)}})),n.d(e,"a",function(){return y}),n.d(e,"f",function(){return w}),n.d(e,"d",function(){return k}),n.d(e,"e",function(){return N}),n.d(e,"c",function(){return $}),n.d(e,"b",function(){return tt})},function(t,e,n){"use strict";var r=n(6);function i(t,e,n,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*e+(4-6*o+3*a)*n+(1+3*t+3*o-3*a)*r+a*i)/6}var o=function(t){var e=t.length-1;return function(n){var r=n<=0?n=0:n>=1?(n=1,e-1):Math.floor(n*e),o=t[r],a=t[r+1],s=r>0?t[r-1]:2*o-a,l=r180||n<-180?n-360*Math.round(n/360):n):s(isNaN(t)?e:t)}function c(t){return 1==(t=+t)?f:function(e,n){return n-e?function(t,e,n){return t=Math.pow(t,n),e=Math.pow(e,n)-t,n=1/n,function(r){return Math.pow(t+r*e,n)}}(e,n,t):s(isNaN(e)?n:e)}}function f(t,e){var n=e-t;return n?l(t,n):s(isNaN(t)?e:t)}var h=function t(e){var n=c(e);function i(t,e){var i=n((t=Object(r.f)(t)).r,(e=Object(r.f)(e)).r),o=n(t.g,e.g),a=n(t.b,e.b),s=f(t.opacity,e.opacity);return function(e){return t.r=i(e),t.g=o(e),t.b=a(e),t.opacity=s(e),t+""}}return i.gamma=t,i}(1);function p(t){return function(e){var n,i,o=e.length,a=new Array(o),s=new Array(o),l=new Array(o);for(n=0;no&&(i=e.slice(o,i),s[a]?s[a]+=i:s[++a]=i),(n=n[0])===(r=r[0])?s[a]?s[a]+=r:s[++a]=r:(s[++a]=null,l.push({i:a,x:y(n,r)})),o=_.lastIndex;return o180?e+=360:e-t>180&&(t+=360),o.push({i:n.push(i(n)+"rotate(",null,r)-2,x:y(t,e)})):e&&n.push(i(n)+"rotate("+e+r)}(o.rotate,a.rotate,s,l),function(t,e,n,o){t!==e?o.push({i:n.push(i(n)+"skewX(",null,r)-2,x:y(t,e)}):e&&n.push(i(n)+"skewX("+e+r)}(o.skewX,a.skewX,s,l),function(t,e,n,r,o,a){if(t!==n||e!==r){var s=o.push(i(o)+"scale(",null,",",null,")");a.push({i:s-4,x:y(t,n)},{i:s-2,x:y(e,r)})}else 1===n&&1===r||o.push(i(o)+"scale("+n+","+r+")")}(o.scaleX,o.scaleY,a.scaleX,a.scaleY,s,l),o=a=null,function(t){for(var e,n=-1,r=l.length;++n=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!r.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:e}})),l=-1,u=o.length;if(!(arguments.length<2)){if(null!=e&&"function"!=typeof e)throw new Error("invalid callback: "+e);for(;++l0)for(var n,r,i=new Array(n),o=0;ol)throw new Error("too late; already scheduled");return n}function m(t,e){var n=y(t,e);if(n.state>c)throw new Error("too late; already started");return n}function y(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw new Error("transition not found");return n}var b=function(t,e){var n,r,i,o=t.__transition,a=!0;if(o){for(i in e=null==e?null:e+"",o)(n=o[i]).name===e?(r=n.state>c&&n.state=0&&(t=t.slice(0,e)),!t||"start"===t})}(e)?g:m;return function(){var a=o(this,t),s=a.on;s!==r&&(i=(r=s).copy()).on(e,n),a.on=i}}(n,t,e))},attr:function(t,e){var n=Object(r.namespace)(t),i="transform"===n?x.u:A;return this.attrTween(t,"function"==typeof e?(n.local?function(t,e,n){var r,i,o;return function(){var a,s=n(this);if(null!=s)return(a=this.getAttributeNS(t.space,t.local))===s?null:a===r&&s===i?o:o=e(r=a,i=s);this.removeAttributeNS(t.space,t.local)}}:function(t,e,n){var r,i,o;return function(){var a,s=n(this);if(null!=s)return(a=this.getAttribute(t))===s?null:a===r&&s===i?o:o=e(r=a,i=s);this.removeAttribute(t)}})(n,i,_(this,"attr."+t,e)):null==e?(n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}})(n):(n.local?function(t,e,n){var r,i;return function(){var o=this.getAttributeNS(t.space,t.local);return o===n?null:o===r?i:i=e(r=o,n)}}:function(t,e,n){var r,i;return function(){var o=this.getAttribute(t);return o===n?null:o===r?i:i=e(r=o,n)}})(n,i,e+""))},attrTween:function(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw new Error;var i=Object(r.namespace)(t);return this.tween(n,(i.local?function(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttributeNS(t.space,t.local,r(e))}}return n._value=e,n}:function(t,e){function n(){var n=this,r=e.apply(n,arguments);return r&&function(e){n.setAttribute(t,r(e))}}return n._value=e,n})(i,e))},style:function(t,e,n){var i="transform"==(t+="")?x.t:A;return null==e?this.styleTween(t,function(t,e){var n,i,o;return function(){var a=Object(r.style)(this,t),s=(this.style.removeProperty(t),Object(r.style)(this,t));return a===s?null:a===n&&s===i?o:o=e(n=a,i=s)}}(t,i)).on("end.style."+t,function(t){return function(){this.style.removeProperty(t)}}(t)):this.styleTween(t,"function"==typeof e?function(t,e,n){var i,o,a;return function(){var s=Object(r.style)(this,t),l=n(this);return null==l&&(this.style.removeProperty(t),l=Object(r.style)(this,t)),s===l?null:s===i&&l===o?a:a=e(i=s,o=l)}}(t,i,_(this,"style."+t,e)):function(t,e,n){var i,o;return function(){var a=Object(r.style)(this,t);return a===n?null:a===i?o:o=e(i=a,n)}}(t,i,e+""),n)},styleTween:function(t,e,n){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(null==e)return this.tween(r,null);if("function"!=typeof e)throw new Error;return this.tween(r,function(t,e,n){function r(){var r=this,i=e.apply(r,arguments);return i&&function(e){r.style.setProperty(t,i(e),n)}}return r._value=e,r}(t,e,null==n?"":n))},text:function(t){return this.tween("text","function"==typeof t?function(t){return function(){var e=t(this);this.textContent=null==e?"":e}}(_(this,"text",t)):function(t){return function(){this.textContent=t}}(null==t?"":t+""))},remove:function(){return this.on("end.remove",(t=this._id,function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}));var t},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var r,i=y(this.node(),n).tween,o=0,a=i.length;ou&&n.name===e)return new T([[t]],L,e,+r);return null};n.d(e,"c",function(){return S}),n.d(e,"a",function(){return P}),n.d(e,"b",function(){return b})},function(t,e,n){"use strict";function r(){}function i(t,e){var n=new r;if(t instanceof r)t.each(function(t,e){n.set(e,t)});else if(Array.isArray(t)){var i,o=-1,a=t.length;if(null==e)for(;++o=r.length)return null!=t&&n.sort(t),null!=e?e(n):n;for(var u,c,f,h=-1,p=n.length,d=r[i++],v=o(),g=s();++hr.length)return n;var a,s=i[o-1];return null!=e&&o>=r.length?a=n.entries():(a=[],n.each(function(e,n){a.push({key:n,values:t(e,o)})})),null!=s?a.sort(function(t,e){return s(t.key,e.key)}):a}(a(t,0,u,c),0)},key:function(t){return r.push(t),n},sortKeys:function(t){return i[r.length-1]=t,n},sortValues:function(e){return t=e,n},rollup:function(t){return e=t,n}}};function s(){return{}}function l(t,e,n){t[e]=n}function u(){return o()}function c(t,e,n){t.set(e,n)}function f(){}var h=o.prototype;function p(t,e){var n=new f;if(t instanceof f)t.each(function(t){n.add(t)});else if(t){var r=-1,i=t.length;if(null==e)for(;++rA}x.mouse("drag")}function S(){Object(i.select)(i.event.view).on("mousemove.drag mouseup.drag",null),l(i.event.view,n),a(),x.mouse("end")}function C(){if(g.apply(this,arguments)){var t,e,n=i.event.changedTouches,r=m.apply(this,arguments),a=n.length;for(t=0;t=0&&e._call.call(null,t),e=e._next;--o}function b(){c=(u=h.now())+f,o=a=0;try{y()}finally{o=0,function(){var t,e,n=r,o=1/0;for(;n;)n._call?(o>n._time&&(o=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:r=e);i=t,_(o)}(),c=0}}function x(){var t=h.now(),e=t-u;e>l&&(f-=e,u=t)}function _(t){o||(a&&(a=clearTimeout(a)),t-c>24?(t<1/0&&(a=setTimeout(b,t-h.now()-f)),s&&(s=clearInterval(s))):(s||(u=h.now(),s=setInterval(x,l)),o=1,p(b)))}g.prototype=m.prototype={constructor:g,restart:function(t,e,n){if("function"!=typeof t)throw new TypeError("callback is not a function");n=(null==n?d():+n)+(null==e?0:+e),this._next||i===this||(i?i._next=this:r=this,i=this),this._call=t,this._time=n,_()},stop:function(){this._call&&(this._call=null,this._time=1/0,_())}};var w=function(t,e,n){var r=new g;return e=null==e?0:+e,r.restart(function(n){r.stop(),t(n+e)},e,n),r},A=function(t,e,n){var r=new g,i=e;return null==e?(r.restart(t,e,n),r):(e=+e,n=null==n?d():+n,r.restart(function o(a){a+=i,r.restart(o,i+=e,n),t(a)},e,n),r)};n.d(e,"b",function(){return d}),n.d(e,"d",function(){return m}),n.d(e,"e",function(){return y}),n.d(e,"c",function(){return w}),n.d(e,"a",function(){return A})},function(t,e,n){"use strict";var r,i=function(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,r=t.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+t.slice(n+1)]},o=function(t){return(t=i(Math.abs(t)))?t[1]:NaN},a=function(t,e){var n=i(t,e);if(!n)return t+"";var r=n[0],o=n[1];return o<0?"0."+new Array(-o).join("0")+r:r.length>o+1?r.slice(0,o+1)+"."+r.slice(o+1):r+new Array(o-r.length+2).join("0")},s={"":function(t,e){t:for(var n,r=(t=t.toPrecision(e)).length,i=1,o=-1;i0&&(o=0)}return o>0?t.slice(0,o)+t.slice(n+1):t},"%":function(t,e){return(100*t).toFixed(e)},b:function(t){return Math.round(t).toString(2)},c:function(t){return t+""},d:function(t){return Math.round(t).toString(10)},e:function(t,e){return t.toExponential(e)},f:function(t,e){return t.toFixed(e)},g:function(t,e){return t.toPrecision(e)},o:function(t){return Math.round(t).toString(8)},p:function(t,e){return a(100*t,e)},r:a,s:function(t,e){var n=i(t,e);if(!n)return t+"";var o=n[0],a=n[1],s=a-(r=3*Math.max(-8,Math.min(8,Math.floor(a/3))))+1,l=o.length;return s===l?o:s>l?o+new Array(s-l+1).join("0"):s>0?o.slice(0,s)+"."+o.slice(s):"0."+new Array(1-s).join("0")+i(t,Math.max(0,e+s-1))[0]},X:function(t){return Math.round(t).toString(16).toUpperCase()},x:function(t){return Math.round(t).toString(16)}},l=/^(?:(.)?([<>=^]))?([+\-\( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?([a-z%])?$/i;function u(t){return new c(t)}function c(t){if(!(e=l.exec(t)))throw new Error("invalid format: "+t);var e,n=e[1]||" ",r=e[2]||">",i=e[3]||"-",o=e[4]||"",a=!!e[5],u=e[6]&&+e[6],c=!!e[7],f=e[8]&&+e[8].slice(1),h=e[9]||"";"n"===h?(c=!0,h="g"):s[h]||(h=""),(a||"0"===n&&"="===r)&&(a=!0,n="0",r="="),this.fill=n,this.align=r,this.sign=i,this.symbol=o,this.zero=a,this.width=u,this.comma=c,this.precision=f,this.type=h}u.prototype=c.prototype,c.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(null==this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(null==this.precision?"":"."+Math.max(0,0|this.precision))+this.type};var f,h,p,d=function(t){return t},v=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"],g=function(t){var e,n,i=t.grouping&&t.thousands?(e=t.grouping,n=t.thousands,function(t,r){for(var i=t.length,o=[],a=0,s=e[0],l=0;i>0&&s>0&&(l+s+1>r&&(s=Math.max(1,r-l)),o.push(t.substring(i-=s,i+s)),!((l+=s+1)>r));)s=e[a=(a+1)%e.length];return o.reverse().join(n)}):d,a=t.currency,l=t.decimal,c=t.numerals?function(t){return function(e){return e.replace(/[0-9]/g,function(e){return t[+e]})}}(t.numerals):d,f=t.percent||"%";function h(t){var e=(t=u(t)).fill,n=t.align,o=t.sign,h=t.symbol,p=t.zero,d=t.width,g=t.comma,m=t.precision,y=t.type,b="$"===h?a[0]:"#"===h&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",x="$"===h?a[1]:/[%p]/.test(y)?f:"",_=s[y],w=!y||/[defgprs%]/.test(y);function A(t){var a,s,u,f=b,h=x;if("c"===y)h=_(t)+h,t="";else{var A=(t=+t)<0;if(t=_(Math.abs(t),m),A&&0==+t&&(A=!1),f=(A?"("===o?o:"-":"-"===o||"("===o?"":o)+f,h=("s"===y?v[8+r/3]:"")+h+(A&&"("===o?")":""),w)for(a=-1,s=t.length;++a(u=t.charCodeAt(a))||u>57){h=(46===u?l+t.slice(a+1):t.slice(a))+h,t=t.slice(0,a);break}}g&&!p&&(t=i(t,1/0));var M=f.length+t.length+h.length,k=M>1)+f+t+h+k.slice(M);break;default:t=k+f+t+h}return c(t)}return m=null==m?y?6:12:/[gprs]/.test(y)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),A.toString=function(){return t+""},A}return{format:h,formatPrefix:function(t,e){var n=h(((t=u(t)).type="f",t)),r=3*Math.max(-8,Math.min(8,Math.floor(o(e)/3))),i=Math.pow(10,-r),a=v[8+r/3];return function(t){return n(i*t)+a}}}};function m(t){return f=g(t),h=f.format,p=f.formatPrefix,f}m({decimal:".",thousands:",",grouping:[3],currency:["$",""]});var y=function(t){return Math.max(0,-o(Math.abs(t)))},b=function(t,e){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(o(e)/3)))-o(Math.abs(t)))},x=function(t,e){return t=Math.abs(t),e=Math.abs(e)-t,Math.max(0,o(e)-o(t))+1};n.d(e,"b",function(){return m}),n.d(e,"a",function(){return h}),n.d(e,"d",function(){return p}),n.d(e,"c",function(){return g}),n.d(e,"e",function(){return u}),n.d(e,"f",function(){return y}),n.d(e,"g",function(){return b}),n.d(e,"h",function(){return x})},function(t,e,n){"use strict";function r(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.blob()}n.r(e);var i=function(t,e){return fetch(t,e).then(r)};function o(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.arrayBuffer()}var a=function(t,e){return fetch(t,e).then(o)},s=n(16);function l(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.text()}var u=function(t,e){return fetch(t,e).then(l)};function c(t){return function(e,n,r){return 2===arguments.length&&"function"==typeof n&&(r=n,n=void 0),u(e,n).then(function(e){return t(e,r)})}}function f(t,e,n,r){3===arguments.length&&"function"==typeof n&&(r=n,n=void 0);var i=Object(s.e)(t);return u(e,n).then(function(t){return i.parse(t,r)})}var h=c(s.c),p=c(s.h),d=function(t,e){return new Promise(function(n,r){var i=new Image;for(var o in e)i[o]=e[o];i.onerror=r,i.onload=function(){n(i)},i.src=t})};function v(t){if(!t.ok)throw new Error(t.status+" "+t.statusText);return t.json()}var g=function(t,e){return fetch(t,e).then(v)};function m(t){return function(e,n){return u(e,n).then(function(e){return(new DOMParser).parseFromString(e,t)})}}var y=m("application/xml"),b=m("text/html"),x=m("image/svg+xml");n.d(e,"blob",function(){return i}),n.d(e,"buffer",function(){return a}),n.d(e,"dsv",function(){return f}),n.d(e,"csv",function(){return h}),n.d(e,"tsv",function(){return p}),n.d(e,"image",function(){return d}),n.d(e,"json",function(){return g}),n.d(e,"text",function(){return u}),n.d(e,"xml",function(){return y}),n.d(e,"html",function(){return b}),n.d(e,"svg",function(){return x})},function(t,e,n){"use strict";var r={},i={},o=34,a=10,s=13;function l(t){return new Function("d","return {"+t.map(function(t,e){return JSON.stringify(t)+": d["+e+"]"}).join(",")+"}")}var u=function(t){var e=new RegExp('["'+t+"\n\r]"),n=t.charCodeAt(0);function u(t,e){var l,u=[],c=t.length,f=0,h=0,p=c<=0,d=!1;function v(){if(p)return i;if(d)return d=!1,r;var e,l,u=f;if(t.charCodeAt(u)===o){for(;f++=c?p=!0:(l=t.charCodeAt(f++))===a?d=!0:l===s&&(d=!0,t.charCodeAt(f)===a&&++f),t.slice(u+1,e-1).replace(/""/g,'"')}for(;f @@ -6,7 +6,7 @@ window.dash_bio=function(t){var e={};function n(r){if(e[r])return e[r].exports;v * Released under MIT license * Based on Underscore.js 1.8.3 * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors - */(function(){var o,a=200,s="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",l="Expected a function",u="__lodash_hash_undefined__",c=500,f="__lodash_placeholder__",h=1,p=2,d=4,v=1,m=2,g=1,y=2,b=4,x=8,_=16,w=32,A=64,M=128,k=256,T=512,S=30,C="...",E=800,O=16,D=1,L=2,P=1/0,z=9007199254740991,I=1.7976931348623157e308,R=NaN,j=4294967295,F=j-1,N=j>>>1,B=[["ary",M],["bind",g],["bindKey",y],["curry",x],["curryRight",_],["flip",T],["partial",w],["partialRight",A],["rearg",k]],U="[object Arguments]",V="[object Array]",q="[object AsyncFunction]",$="[object Boolean]",H="[object Date]",W="[object DOMException]",G="[object Error]",Y="[object Function]",X="[object GeneratorFunction]",Z="[object Map]",J="[object Number]",K="[object Null]",Q="[object Object]",tt="[object Proxy]",et="[object RegExp]",nt="[object Set]",rt="[object String]",it="[object Symbol]",ot="[object Undefined]",at="[object WeakMap]",st="[object WeakSet]",lt="[object ArrayBuffer]",ut="[object DataView]",ct="[object Float32Array]",ft="[object Float64Array]",ht="[object Int8Array]",pt="[object Int16Array]",dt="[object Int32Array]",vt="[object Uint8Array]",mt="[object Uint8ClampedArray]",gt="[object Uint16Array]",yt="[object Uint32Array]",bt=/\b__p \+= '';/g,xt=/\b(__p \+=) '' \+/g,_t=/(__e\(.*?\)|\b__t\)) \+\n'';/g,wt=/&(?:amp|lt|gt|quot|#39);/g,At=/[&<>"']/g,Mt=RegExp(wt.source),kt=RegExp(At.source),Tt=/<%-([\s\S]+?)%>/g,St=/<%([\s\S]+?)%>/g,Ct=/<%=([\s\S]+?)%>/g,Et=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ot=/^\w*$/,Dt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lt=/[\\^$.*+?()[\]{}|]/g,Pt=RegExp(Lt.source),zt=/^\s+|\s+$/g,It=/^\s+/,Rt=/\s+$/,jt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ft=/\{\n\/\* \[wrapped with (.+)\] \*/,Nt=/,? & /,Bt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ut=/\\(\\)?/g,Vt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qt=/\w*$/,$t=/^[-+]0x[0-9a-f]+$/i,Ht=/^0b[01]+$/i,Wt=/^\[object .+?Constructor\]$/,Gt=/^0o[0-7]+$/i,Yt=/^(?:0|[1-9]\d*)$/,Xt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Zt=/($^)/,Jt=/['\n\r\u2028\u2029\\]/g,Kt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Qt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",te="[\\ud800-\\udfff]",ee="["+Qt+"]",ne="["+Kt+"]",re="\\d+",ie="[\\u2700-\\u27bf]",oe="[a-z\\xdf-\\xf6\\xf8-\\xff]",ae="[^\\ud800-\\udfff"+Qt+re+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",se="\\ud83c[\\udffb-\\udfff]",le="[^\\ud800-\\udfff]",ue="(?:\\ud83c[\\udde6-\\uddff]){2}",ce="[\\ud800-\\udbff][\\udc00-\\udfff]",fe="[A-Z\\xc0-\\xd6\\xd8-\\xde]",he="(?:"+oe+"|"+ae+")",pe="(?:"+fe+"|"+ae+")",de="(?:"+ne+"|"+se+")"+"?",ve="[\\ufe0e\\ufe0f]?"+de+("(?:\\u200d(?:"+[le,ue,ce].join("|")+")[\\ufe0e\\ufe0f]?"+de+")*"),me="(?:"+[ie,ue,ce].join("|")+")"+ve,ge="(?:"+[le+ne+"?",ne,ue,ce,te].join("|")+")",ye=RegExp("['’]","g"),be=RegExp(ne,"g"),xe=RegExp(se+"(?="+se+")|"+ge+ve,"g"),_e=RegExp([fe+"?"+oe+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ee,fe,"$"].join("|")+")",pe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ee,fe+he,"$"].join("|")+")",fe+"?"+he+"+(?:['’](?:d|ll|m|re|s|t|ve))?",fe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",re,me].join("|"),"g"),we=RegExp("[\\u200d\\ud800-\\udfff"+Kt+"\\ufe0e\\ufe0f]"),Ae=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Me=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ke=-1,Te={};Te[ct]=Te[ft]=Te[ht]=Te[pt]=Te[dt]=Te[vt]=Te[mt]=Te[gt]=Te[yt]=!0,Te[U]=Te[V]=Te[lt]=Te[$]=Te[ut]=Te[H]=Te[G]=Te[Y]=Te[Z]=Te[J]=Te[Q]=Te[et]=Te[nt]=Te[rt]=Te[at]=!1;var Se={};Se[U]=Se[V]=Se[lt]=Se[ut]=Se[$]=Se[H]=Se[ct]=Se[ft]=Se[ht]=Se[pt]=Se[dt]=Se[Z]=Se[J]=Se[Q]=Se[et]=Se[nt]=Se[rt]=Se[it]=Se[vt]=Se[mt]=Se[gt]=Se[yt]=!0,Se[G]=Se[Y]=Se[at]=!1;var Ce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Ee=parseFloat,Oe=parseInt,De="object"==typeof t&&t&&t.Object===Object&&t,Le="object"==typeof self&&self&&self.Object===Object&&self,Pe=De||Le||Function("return this")(),ze=e&&!e.nodeType&&e,Ie=ze&&"object"==typeof r&&r&&!r.nodeType&&r,Re=Ie&&Ie.exports===ze,je=Re&&De.process,Fe=function(){try{var t=Ie&&Ie.require&&Ie.require("util").types;return t||je&&je.binding&&je.binding("util")}catch(t){}}(),Ne=Fe&&Fe.isArrayBuffer,Be=Fe&&Fe.isDate,Ue=Fe&&Fe.isMap,Ve=Fe&&Fe.isRegExp,qe=Fe&&Fe.isSet,$e=Fe&&Fe.isTypedArray;function He(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function We(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i-1}function Ke(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function _n(t,e){for(var n=t.length;n--&&ln(e,t[n],0)>-1;);return n}var wn=pn({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),An=pn({"&":"&","<":"<",">":">",'"':""","'":"'"});function Mn(t){return"\\"+Ce[t]}function kn(t){return we.test(t)}function Tn(t){var e=-1,n=Array(t.size);return t.forEach(function(t,r){n[++e]=[r,t]}),n}function Sn(t,e){return function(n){return t(e(n))}}function Cn(t,e){for(var n=-1,r=t.length,i=0,o=[];++n",""":'"',"'":"'"});var zn=function t(e){var n,r=(e=null==e?Pe:zn.defaults(Pe.Object(),e,zn.pick(Pe,Me))).Array,i=e.Date,Kt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,ne=e.RegExp,re=e.String,ie=e.TypeError,oe=r.prototype,ae=Qt.prototype,se=ee.prototype,le=e["__core-js_shared__"],ue=ae.toString,ce=se.hasOwnProperty,fe=0,he=(n=/[^.]+$/.exec(le&&le.keys&&le.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",pe=se.toString,de=ue.call(ee),ve=Pe._,me=ne("^"+ue.call(ce).replace(Lt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),ge=Re?e.Buffer:o,xe=e.Symbol,we=e.Uint8Array,Ce=ge?ge.allocUnsafe:o,De=Sn(ee.getPrototypeOf,ee),Le=ee.create,ze=se.propertyIsEnumerable,Ie=oe.splice,je=xe?xe.isConcatSpreadable:o,Fe=xe?xe.iterator:o,on=xe?xe.toStringTag:o,pn=function(){try{var t=No(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),In=e.clearTimeout!==Pe.clearTimeout&&e.clearTimeout,Rn=i&&i.now!==Pe.Date.now&&i.now,jn=e.setTimeout!==Pe.setTimeout&&e.setTimeout,Fn=te.ceil,Nn=te.floor,Bn=ee.getOwnPropertySymbols,Un=ge?ge.isBuffer:o,Vn=e.isFinite,qn=oe.join,$n=Sn(ee.keys,ee),Hn=te.max,Wn=te.min,Gn=i.now,Yn=e.parseInt,Xn=te.random,Zn=oe.reverse,Jn=No(e,"DataView"),Kn=No(e,"Map"),Qn=No(e,"Promise"),tr=No(e,"Set"),er=No(e,"WeakMap"),nr=No(ee,"create"),rr=er&&new er,ir={},or=fa(Jn),ar=fa(Kn),sr=fa(Qn),lr=fa(tr),ur=fa(er),cr=xe?xe.prototype:o,fr=cr?cr.valueOf:o,hr=cr?cr.toString:o;function pr(t){if(Cs(t)&&!gs(t)&&!(t instanceof gr)){if(t instanceof mr)return t;if(ce.call(t,"__wrapped__"))return ha(t)}return new mr(t)}var dr=function(){function t(){}return function(e){if(!Ss(e))return{};if(Le)return Le(e);t.prototype=e;var n=new t;return t.prototype=o,n}}();function vr(){}function mr(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=o}function gr(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=j,this.__views__=[]}function yr(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Ir(t,e,n,r,i,a){var s,l=e&h,u=e&p,c=e&d;if(n&&(s=i?n(t,r,i,a):n(t)),s!==o)return s;if(!Ss(t))return t;var f=gs(t);if(f){if(s=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&ce.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!l)return no(t,s)}else{var v=Vo(t),m=v==Y||v==X;if(_s(t))return Zi(t,l);if(v==Q||v==U||m&&!i){if(s=u||m?{}:$o(t),!l)return u?function(t,e){return ro(t,Uo(t),e)}(t,function(t,e){return t&&ro(e,ol(e),t)}(s,t)):function(t,e){return ro(t,Bo(t),e)}(t,Dr(s,t))}else{if(!Se[v])return i?t:{};s=function(t,e,n){var r,i,o,a=t.constructor;switch(e){case lt:return Ji(t);case $:case H:return new a(+t);case ut:return function(t,e){var n=e?Ji(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case ct:case ft:case ht:case pt:case dt:case vt:case mt:case gt:case yt:return Ki(t,n);case Z:return new a;case J:case rt:return new a(t);case et:return(o=new(i=t).constructor(i.source,qt.exec(i))).lastIndex=i.lastIndex,o;case nt:return new a;case it:return r=t,fr?ee(fr.call(r)):{}}}(t,v,l)}}a||(a=new wr);var g=a.get(t);if(g)return g;a.set(t,s),Ps(t)?t.forEach(function(r){s.add(Ir(r,e,n,r,t,a))}):Es(t)&&t.forEach(function(r,i){s.set(i,Ir(r,e,n,i,t,a))});var y=f?o:(c?u?Lo:Do:u?ol:il)(t);return Ge(y||t,function(r,i){y&&(r=t[i=r]),Cr(s,i,Ir(r,e,n,i,t,a))}),s}function Rr(t,e,n){var r=n.length;if(null==t)return!r;for(t=ee(t);r--;){var i=n[r],a=e[i],s=t[i];if(s===o&&!(i in t)||!a(s))return!1}return!0}function jr(t,e,n){if("function"!=typeof t)throw new ie(l);return ia(function(){t.apply(o,n)},e)}function Fr(t,e,n,r){var i=-1,o=Je,s=!0,l=t.length,u=[],c=e.length;if(!l)return u;n&&(e=Qe(e,gn(n))),r?(o=Ke,s=!1):e.length>=a&&(o=bn,s=!1,e=new _r(e));t:for(;++i-1},br.prototype.set=function(t,e){var n=this.__data__,r=Er(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},xr.prototype.clear=function(){this.size=0,this.__data__={hash:new yr,map:new(Kn||br),string:new yr}},xr.prototype.delete=function(t){var e=jo(this,t).delete(t);return this.size-=e?1:0,e},xr.prototype.get=function(t){return jo(this,t).get(t)},xr.prototype.has=function(t){return jo(this,t).has(t)},xr.prototype.set=function(t,e){var n=jo(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},_r.prototype.add=_r.prototype.push=function(t){return this.__data__.set(t,u),this},_r.prototype.has=function(t){return this.__data__.has(t)},wr.prototype.clear=function(){this.__data__=new br,this.size=0},wr.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},wr.prototype.get=function(t){return this.__data__.get(t)},wr.prototype.has=function(t){return this.__data__.has(t)},wr.prototype.set=function(t,e){var n=this.__data__;if(n instanceof br){var r=n.__data__;if(!Kn||r.length0&&n(s)?e>1?$r(s,e-1,n,r,i):tn(i,s):r||(i[i.length]=s)}return i}var Hr=so(),Wr=so(!0);function Gr(t,e){return t&&Hr(t,e,il)}function Yr(t,e){return t&&Wr(t,e,il)}function Xr(t,e){return Ze(e,function(e){return Ms(t[e])})}function Zr(t,e){for(var n=0,r=(e=Wi(e,t)).length;null!=t&&ne}function ti(t,e){return null!=t&&ce.call(t,e)}function ei(t,e){return null!=t&&e in ee(t)}function ni(t,e,n){for(var i=n?Ke:Je,a=t[0].length,s=t.length,l=s,u=r(s),c=1/0,f=[];l--;){var h=t[l];l&&e&&(h=Qe(h,gn(e))),c=Wn(h.length,c),u[l]=!n&&(e||a>=120&&h.length>=120)?new _r(l&&h):o}h=t[0];var p=-1,d=u[0];t:for(;++p=s)return l;var u=n[r];return l*("desc"==u?-1:1)}}return t.index-e.index}(t,e,n)})}function yi(t,e,n){for(var r=-1,i=e.length,o={};++r-1;)s!==t&&Ie.call(s,l,1),Ie.call(t,l,1);return t}function xi(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==o){var o=i;Wo(i)?Ie.call(t,i,1):Fi(t,i)}}return t}function _i(t,e){return t+Nn(Xn()*(e-t+1))}function wi(t,e){var n="";if(!t||e<1||e>z)return n;do{e%2&&(n+=t),(e=Nn(e/2))&&(t+=t)}while(e);return n}function Ai(t,e){return oa(ta(t,e,Ol),t+"")}function Mi(t){return Mr(pl(t))}function ki(t,e){var n=pl(t);return la(n,zr(e,0,n.length))}function Ti(t,e,n,r){if(!Ss(t))return t;for(var i=-1,a=(e=Wi(e,t)).length,s=a-1,l=t;null!=l&&++io?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var a=r(o);++i>>1,a=t[o];null!==a&&!Is(a)&&(n?a<=e:a=a){var c=e?null:Ao(t);if(c)return En(c);s=!1,i=bn,u=new _r}else u=e?[]:l;t:for(;++r=r?t:Oi(t,e,n)}var Xi=In||function(t){return Pe.clearTimeout(t)};function Zi(t,e){if(e)return t.slice();var n=t.length,r=Ce?Ce(n):new t.constructor(n);return t.copy(r),r}function Ji(t){var e=new t.constructor(t.byteLength);return new we(e).set(new we(t)),e}function Ki(t,e){var n=e?Ji(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function Qi(t,e){if(t!==e){var n=t!==o,r=null===t,i=t==t,a=Is(t),s=e!==o,l=null===e,u=e==e,c=Is(e);if(!l&&!c&&!a&&t>e||a&&s&&u&&!l&&!c||r&&s&&u||!n&&u||!i)return 1;if(!r&&!a&&!c&&t1?n[i-1]:o,s=i>2?n[2]:o;for(a=t.length>3&&"function"==typeof a?(i--,a):o,s&&Go(n[0],n[1],s)&&(a=i<3?o:a,i=1),e=ee(e);++r-1?i[a?e[s]:s]:o}}function ho(t){return Oo(function(e){var n=e.length,r=n,i=mr.prototype.thru;for(t&&e.reverse();r--;){var a=e[r];if("function"!=typeof a)throw new ie(l);if(i&&!s&&"wrapper"==zo(a))var s=new mr([],!0)}for(r=s?r:n;++r1&&x.reverse(),h&&cl))return!1;var c=a.get(t);if(c&&a.get(e))return c==e;var f=-1,h=!0,p=n&m?new _r:o;for(a.set(t,e),a.set(e,t);++f-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(jt,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return Ge(B,function(n){var r="_."+n[0];e&n[1]&&!Je(t,r)&&t.push(r)}),t.sort()}(function(t){var e=t.match(Ft);return e?e[1].split(Nt):[]}(r),n)))}function sa(t){var e=0,n=0;return function(){var r=Gn(),i=O-(r-n);if(n=r,i>0){if(++e>=E)return arguments[0]}else e=0;return t.apply(o,arguments)}}function la(t,e){var n=-1,r=t.length,i=r-1;for(e=e===o?r:e;++n1?t[e-1]:o;return n="function"==typeof n?(t.pop(),n):o,La(t,n)});function Na(t){var e=pr(t);return e.__chain__=!0,e}function Ba(t,e){return e(t)}var Ua=Oo(function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,i=function(e){return Pr(e,t)};return!(e>1||this.__actions__.length)&&r instanceof gr&&Wo(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:Ba,args:[i],thisArg:o}),new mr(r,this.__chain__).thru(function(t){return e&&!t.length&&t.push(o),t})):this.thru(i)});var Va=io(function(t,e,n){ce.call(t,n)?++t[n]:Lr(t,n,1)});var qa=fo(ma),$a=fo(ga);function Ha(t,e){return(gs(t)?Ge:Nr)(t,Ro(e,3))}function Wa(t,e){return(gs(t)?Ye:Br)(t,Ro(e,3))}var Ga=io(function(t,e,n){ce.call(t,n)?t[n].push(e):Lr(t,n,[e])});var Ya=Ai(function(t,e,n){var i=-1,o="function"==typeof e,a=bs(t)?r(t.length):[];return Nr(t,function(t){a[++i]=o?He(e,t,n):ri(t,e,n)}),a}),Xa=io(function(t,e,n){Lr(t,n,e)});function Za(t,e){return(gs(t)?Qe:hi)(t,Ro(e,3))}var Ja=io(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]});var Ka=Ai(function(t,e){if(null==t)return[];var n=e.length;return n>1&&Go(t,e[0],e[1])?e=[]:n>2&&Go(e[0],e[1],e[2])&&(e=[e[0]]),gi(t,$r(e,1),[])}),Qa=Rn||function(){return Pe.Date.now()};function ts(t,e,n){return e=n?o:e,e=t&&null==e?t.length:e,ko(t,M,o,o,o,o,e)}function es(t,e){var n;if("function"!=typeof e)throw new ie(l);return t=Us(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=o),n}}var ns=Ai(function(t,e,n){var r=g;if(n.length){var i=Cn(n,Io(ns));r|=w}return ko(t,r,e,n,i)}),rs=Ai(function(t,e,n){var r=g|y;if(n.length){var i=Cn(n,Io(rs));r|=w}return ko(e,r,t,n,i)});function is(t,e,n){var r,i,a,s,u,c,f=0,h=!1,p=!1,d=!0;if("function"!=typeof t)throw new ie(l);function v(e){var n=r,a=i;return r=i=o,f=e,s=t.apply(a,n)}function m(t){var n=t-c;return c===o||n>=e||n<0||p&&t-f>=a}function g(){var t=Qa();if(m(t))return y(t);u=ia(g,function(t){var n=e-(t-c);return p?Wn(n,a-(t-f)):n}(t))}function y(t){return u=o,d&&r?v(t):(r=i=o,s)}function b(){var t=Qa(),n=m(t);if(r=arguments,i=this,c=t,n){if(u===o)return function(t){return f=t,u=ia(g,e),h?v(t):s}(c);if(p)return Xi(u),u=ia(g,e),v(c)}return u===o&&(u=ia(g,e)),s}return e=qs(e)||0,Ss(n)&&(h=!!n.leading,a=(p="maxWait"in n)?Hn(qs(n.maxWait)||0,e):a,d="trailing"in n?!!n.trailing:d),b.cancel=function(){u!==o&&Xi(u),f=0,r=c=i=u=o},b.flush=function(){return u===o?s:y(Qa())},b}var os=Ai(function(t,e){return jr(t,1,e)}),as=Ai(function(t,e,n){return jr(t,qs(e)||0,n)});function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new ie(l);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(ss.Cache||xr),n}function ls(t){if("function"!=typeof t)throw new ie(l);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=xr;var us=Gi(function(t,e){var n=(e=1==e.length&&gs(e[0])?Qe(e[0],gn(Ro())):Qe($r(e,1),gn(Ro()))).length;return Ai(function(r){for(var i=-1,o=Wn(r.length,n);++i=e}),ms=ii(function(){return arguments}())?ii:function(t){return Cs(t)&&ce.call(t,"callee")&&!ze.call(t,"callee")},gs=r.isArray,ys=Ne?gn(Ne):function(t){return Cs(t)&&Kr(t)==lt};function bs(t){return null!=t&&Ts(t.length)&&!Ms(t)}function xs(t){return Cs(t)&&bs(t)}var _s=Un||ql,ws=Be?gn(Be):function(t){return Cs(t)&&Kr(t)==H};function As(t){if(!Cs(t))return!1;var e=Kr(t);return e==G||e==W||"string"==typeof t.message&&"string"==typeof t.name&&!Ds(t)}function Ms(t){if(!Ss(t))return!1;var e=Kr(t);return e==Y||e==X||e==q||e==tt}function ks(t){return"number"==typeof t&&t==Us(t)}function Ts(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=z}function Ss(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Cs(t){return null!=t&&"object"==typeof t}var Es=Ue?gn(Ue):function(t){return Cs(t)&&Vo(t)==Z};function Os(t){return"number"==typeof t||Cs(t)&&Kr(t)==J}function Ds(t){if(!Cs(t)||Kr(t)!=Q)return!1;var e=De(t);if(null===e)return!0;var n=ce.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ue.call(n)==de}var Ls=Ve?gn(Ve):function(t){return Cs(t)&&Kr(t)==et};var Ps=qe?gn(qe):function(t){return Cs(t)&&Vo(t)==nt};function zs(t){return"string"==typeof t||!gs(t)&&Cs(t)&&Kr(t)==rt}function Is(t){return"symbol"==typeof t||Cs(t)&&Kr(t)==it}var Rs=$e?gn($e):function(t){return Cs(t)&&Ts(t.length)&&!!Te[Kr(t)]};var js=xo(fi),Fs=xo(function(t,e){return t<=e});function Ns(t){if(!t)return[];if(bs(t))return zs(t)?Ln(t):no(t);if(Fe&&t[Fe])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Fe]());var e=Vo(t);return(e==Z?Tn:e==nt?En:pl)(t)}function Bs(t){return t?(t=qs(t))===P||t===-P?(t<0?-1:1)*I:t==t?t:0:0===t?t:0}function Us(t){var e=Bs(t),n=e%1;return e==e?n?e-n:e:0}function Vs(t){return t?zr(Us(t),0,j):0}function qs(t){if("number"==typeof t)return t;if(Is(t))return R;if(Ss(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ss(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(zt,"");var n=Ht.test(t);return n||Gt.test(t)?Oe(t.slice(2),n?2:8):$t.test(t)?R:+t}function $s(t){return ro(t,ol(t))}function Hs(t){return null==t?"":Ri(t)}var Ws=oo(function(t,e){if(Jo(e)||bs(e))ro(e,il(e),t);else for(var n in e)ce.call(e,n)&&Cr(t,n,e[n])}),Gs=oo(function(t,e){ro(e,ol(e),t)}),Ys=oo(function(t,e,n,r){ro(e,ol(e),t,r)}),Xs=oo(function(t,e,n,r){ro(e,il(e),t,r)}),Zs=Oo(Pr);var Js=Ai(function(t,e){t=ee(t);var n=-1,r=e.length,i=r>2?e[2]:o;for(i&&Go(e[0],e[1],i)&&(r=1);++n1),e}),ro(t,Lo(t),n),r&&(n=Ir(n,h|p|d,Co));for(var i=e.length;i--;)Fi(n,e[i]);return n});var ul=Oo(function(t,e){return null==t?{}:function(t,e){return yi(t,e,function(e,n){return tl(t,n)})}(t,e)});function cl(t,e){if(null==t)return{};var n=Qe(Lo(t),function(t){return[t]});return e=Ro(e),yi(t,n,function(t,n){return e(t,n[0])})}var fl=Mo(il),hl=Mo(ol);function pl(t){return null==t?[]:yn(t,il(t))}var dl=uo(function(t,e,n){return e=e.toLowerCase(),t+(n?vl(e):e)});function vl(t){return Al(Hs(t).toLowerCase())}function ml(t){return(t=Hs(t))&&t.replace(Xt,wn).replace(be,"")}var gl=uo(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),yl=uo(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),bl=lo("toLowerCase");var xl=uo(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()});var _l=uo(function(t,e,n){return t+(n?" ":"")+Al(e)});var wl=uo(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Al=lo("toUpperCase");function Ml(t,e,n){return t=Hs(t),(e=n?o:e)===o?function(t){return Ae.test(t)}(t)?function(t){return t.match(_e)||[]}(t):function(t){return t.match(Bt)||[]}(t):t.match(e)||[]}var kl=Ai(function(t,e){try{return He(t,o,e)}catch(t){return As(t)?t:new Kt(t)}}),Tl=Oo(function(t,e){return Ge(e,function(e){e=ca(e),Lr(t,e,ns(t[e],t))}),t});function Sl(t){return function(){return t}}var Cl=ho(),El=ho(!0);function Ol(t){return t}function Dl(t){return li("function"==typeof t?t:Ir(t,h))}var Ll=Ai(function(t,e){return function(n){return ri(n,t,e)}}),Pl=Ai(function(t,e){return function(n){return ri(t,n,e)}});function zl(t,e,n){var r=il(e),i=Xr(e,r);null!=n||Ss(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=Xr(e,il(e)));var o=!(Ss(n)&&"chain"in n&&!n.chain),a=Ms(t);return Ge(i,function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__);return(n.__actions__=no(this.__actions__)).push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,tn([this.value()],arguments))})}),t}function Il(){}var Rl=go(Qe),jl=go(Xe),Fl=go(rn);function Nl(t){return Yo(t)?hn(ca(t)):function(t){return function(e){return Zr(e,t)}}(t)}var Bl=bo(),Ul=bo(!0);function Vl(){return[]}function ql(){return!1}var $l=mo(function(t,e){return t+e},0),Hl=wo("ceil"),Wl=mo(function(t,e){return t/e},1),Gl=wo("floor");var Yl,Xl=mo(function(t,e){return t*e},1),Zl=wo("round"),Jl=mo(function(t,e){return t-e},0);return pr.after=function(t,e){if("function"!=typeof e)throw new ie(l);return t=Us(t),function(){if(--t<1)return e.apply(this,arguments)}},pr.ary=ts,pr.assign=Ws,pr.assignIn=Gs,pr.assignInWith=Ys,pr.assignWith=Xs,pr.at=Zs,pr.before=es,pr.bind=ns,pr.bindAll=Tl,pr.bindKey=rs,pr.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return gs(t)?t:[t]},pr.chain=Na,pr.chunk=function(t,e,n){e=(n?Go(t,e,n):e===o)?1:Hn(Us(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var a=0,s=0,l=r(Fn(i/e));ai?0:i+n),(r=r===o||r>i?i:Us(r))<0&&(r+=i),r=n>r?0:Vs(r);n>>0)?(t=Hs(t))&&("string"==typeof e||null!=e&&!Ls(e))&&!(e=Ri(e))&&kn(t)?Yi(Ln(t),0,n):t.split(e,n):[]},pr.spread=function(t,e){if("function"!=typeof t)throw new ie(l);return e=null==e?0:Hn(Us(e),0),Ai(function(n){var r=n[e],i=Yi(n,0,e);return r&&tn(i,r),He(t,this,i)})},pr.tail=function(t){var e=null==t?0:t.length;return e?Oi(t,1,e):[]},pr.take=function(t,e,n){return t&&t.length?Oi(t,0,(e=n||e===o?1:Us(e))<0?0:e):[]},pr.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?Oi(t,(e=r-(e=n||e===o?1:Us(e)))<0?0:e,r):[]},pr.takeRightWhile=function(t,e){return t&&t.length?Bi(t,Ro(e,3),!1,!0):[]},pr.takeWhile=function(t,e){return t&&t.length?Bi(t,Ro(e,3)):[]},pr.tap=function(t,e){return e(t),t},pr.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new ie(l);return Ss(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),is(t,e,{leading:r,maxWait:e,trailing:i})},pr.thru=Ba,pr.toArray=Ns,pr.toPairs=fl,pr.toPairsIn=hl,pr.toPath=function(t){return gs(t)?Qe(t,ca):Is(t)?[t]:no(ua(Hs(t)))},pr.toPlainObject=$s,pr.transform=function(t,e,n){var r=gs(t),i=r||_s(t)||Rs(t);if(e=Ro(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:Ss(t)&&Ms(o)?dr(De(t)):{}}return(i?Ge:Gr)(t,function(t,r,i){return e(n,t,r,i)}),n},pr.unary=function(t){return ts(t,1)},pr.union=Ca,pr.unionBy=Ea,pr.unionWith=Oa,pr.uniq=function(t){return t&&t.length?ji(t):[]},pr.uniqBy=function(t,e){return t&&t.length?ji(t,Ro(e,2)):[]},pr.uniqWith=function(t,e){return e="function"==typeof e?e:o,t&&t.length?ji(t,o,e):[]},pr.unset=function(t,e){return null==t||Fi(t,e)},pr.unzip=Da,pr.unzipWith=La,pr.update=function(t,e,n){return null==t?t:Ni(t,e,Hi(n))},pr.updateWith=function(t,e,n,r){return r="function"==typeof r?r:o,null==t?t:Ni(t,e,Hi(n),r)},pr.values=pl,pr.valuesIn=function(t){return null==t?[]:yn(t,ol(t))},pr.without=Pa,pr.words=Ml,pr.wrap=function(t,e){return cs(Hi(e),t)},pr.xor=za,pr.xorBy=Ia,pr.xorWith=Ra,pr.zip=ja,pr.zipObject=function(t,e){return qi(t||[],e||[],Cr)},pr.zipObjectDeep=function(t,e){return qi(t||[],e||[],Ti)},pr.zipWith=Fa,pr.entries=fl,pr.entriesIn=hl,pr.extend=Gs,pr.extendWith=Ys,zl(pr,pr),pr.add=$l,pr.attempt=kl,pr.camelCase=dl,pr.capitalize=vl,pr.ceil=Hl,pr.clamp=function(t,e,n){return n===o&&(n=e,e=o),n!==o&&(n=(n=qs(n))==n?n:0),e!==o&&(e=(e=qs(e))==e?e:0),zr(qs(t),e,n)},pr.clone=function(t){return Ir(t,d)},pr.cloneDeep=function(t){return Ir(t,h|d)},pr.cloneDeepWith=function(t,e){return Ir(t,h|d,e="function"==typeof e?e:o)},pr.cloneWith=function(t,e){return Ir(t,d,e="function"==typeof e?e:o)},pr.conformsTo=function(t,e){return null==e||Rr(t,e,il(e))},pr.deburr=ml,pr.defaultTo=function(t,e){return null==t||t!=t?e:t},pr.divide=Wl,pr.endsWith=function(t,e,n){t=Hs(t),e=Ri(e);var r=t.length,i=n=n===o?r:zr(Us(n),0,r);return(n-=e.length)>=0&&t.slice(n,i)==e},pr.eq=ps,pr.escape=function(t){return(t=Hs(t))&&kt.test(t)?t.replace(At,An):t},pr.escapeRegExp=function(t){return(t=Hs(t))&&Pt.test(t)?t.replace(Lt,"\\$&"):t},pr.every=function(t,e,n){var r=gs(t)?Xe:Ur;return n&&Go(t,e,n)&&(e=o),r(t,Ro(e,3))},pr.find=qa,pr.findIndex=ma,pr.findKey=function(t,e){return an(t,Ro(e,3),Gr)},pr.findLast=$a,pr.findLastIndex=ga,pr.findLastKey=function(t,e){return an(t,Ro(e,3),Yr)},pr.floor=Gl,pr.forEach=Ha,pr.forEachRight=Wa,pr.forIn=function(t,e){return null==t?t:Hr(t,Ro(e,3),ol)},pr.forInRight=function(t,e){return null==t?t:Wr(t,Ro(e,3),ol)},pr.forOwn=function(t,e){return t&&Gr(t,Ro(e,3))},pr.forOwnRight=function(t,e){return t&&Yr(t,Ro(e,3))},pr.get=Qs,pr.gt=ds,pr.gte=vs,pr.has=function(t,e){return null!=t&&qo(t,e,ti)},pr.hasIn=tl,pr.head=ba,pr.identity=Ol,pr.includes=function(t,e,n,r){t=bs(t)?t:pl(t),n=n&&!r?Us(n):0;var i=t.length;return n<0&&(n=Hn(i+n,0)),zs(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&ln(t,e,n)>-1},pr.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:Us(n);return i<0&&(i=Hn(r+i,0)),ln(t,e,i)},pr.inRange=function(t,e,n){return e=Bs(e),n===o?(n=e,e=0):n=Bs(n),function(t,e,n){return t>=Wn(e,n)&&t=-z&&t<=z},pr.isSet=Ps,pr.isString=zs,pr.isSymbol=Is,pr.isTypedArray=Rs,pr.isUndefined=function(t){return t===o},pr.isWeakMap=function(t){return Cs(t)&&Vo(t)==at},pr.isWeakSet=function(t){return Cs(t)&&Kr(t)==st},pr.join=function(t,e){return null==t?"":qn.call(t,e)},pr.kebabCase=gl,pr.last=Aa,pr.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return n!==o&&(i=(i=Us(n))<0?Hn(r+i,0):Wn(i,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,i):sn(t,cn,i,!0)},pr.lowerCase=yl,pr.lowerFirst=bl,pr.lt=js,pr.lte=Fs,pr.max=function(t){return t&&t.length?Vr(t,Ol,Qr):o},pr.maxBy=function(t,e){return t&&t.length?Vr(t,Ro(e,2),Qr):o},pr.mean=function(t){return fn(t,Ol)},pr.meanBy=function(t,e){return fn(t,Ro(e,2))},pr.min=function(t){return t&&t.length?Vr(t,Ol,fi):o},pr.minBy=function(t,e){return t&&t.length?Vr(t,Ro(e,2),fi):o},pr.stubArray=Vl,pr.stubFalse=ql,pr.stubObject=function(){return{}},pr.stubString=function(){return""},pr.stubTrue=function(){return!0},pr.multiply=Xl,pr.nth=function(t,e){return t&&t.length?mi(t,Us(e)):o},pr.noConflict=function(){return Pe._===this&&(Pe._=ve),this},pr.noop=Il,pr.now=Qa,pr.pad=function(t,e,n){t=Hs(t);var r=(e=Us(e))?Dn(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return yo(Nn(i),n)+t+yo(Fn(i),n)},pr.padEnd=function(t,e,n){t=Hs(t);var r=(e=Us(e))?Dn(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var i=Xn();return Wn(t+i*(e-t+Ee("1e-"+((i+"").length-1))),e)}return _i(t,e)},pr.reduce=function(t,e,n){var r=gs(t)?en:dn,i=arguments.length<3;return r(t,Ro(e,4),n,i,Nr)},pr.reduceRight=function(t,e,n){var r=gs(t)?nn:dn,i=arguments.length<3;return r(t,Ro(e,4),n,i,Br)},pr.repeat=function(t,e,n){return e=(n?Go(t,e,n):e===o)?1:Us(e),wi(Hs(t),e)},pr.replace=function(){var t=arguments,e=Hs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},pr.result=function(t,e,n){var r=-1,i=(e=Wi(e,t)).length;for(i||(i=1,t=o);++rz)return[];var n=j,r=Wn(t,j);e=Ro(e),t-=j;for(var i=mn(r,e);++n=a)return t;var l=n-Dn(r);if(l<1)return r;var u=s?Yi(s,0,l).join(""):t.slice(0,l);if(i===o)return u+r;if(s&&(l+=u.length-l),Ls(i)){if(t.slice(l).search(i)){var c,f=u;for(i.global||(i=ne(i.source,Hs(qt.exec(i))+"g")),i.lastIndex=0;c=i.exec(f);)var h=c.index;u=u.slice(0,h===o?l:h)}}else if(t.indexOf(Ri(i),l)!=l){var p=u.lastIndexOf(i);p>-1&&(u=u.slice(0,p))}return u+r},pr.unescape=function(t){return(t=Hs(t))&&Mt.test(t)?t.replace(wt,Pn):t},pr.uniqueId=function(t){var e=++fe;return Hs(t)+e},pr.upperCase=wl,pr.upperFirst=Al,pr.each=Ha,pr.eachRight=Wa,pr.first=ba,zl(pr,(Yl={},Gr(pr,function(t,e){ce.call(pr.prototype,e)||(Yl[e]=t)}),Yl),{chain:!1}),pr.VERSION="4.17.15",Ge(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){pr[t].placeholder=pr}),Ge(["drop","take"],function(t,e){gr.prototype[t]=function(n){n=n===o?1:Hn(Us(n),0);var r=this.__filtered__&&!e?new gr(this):this.clone();return r.__filtered__?r.__takeCount__=Wn(n,r.__takeCount__):r.__views__.push({size:Wn(n,j),type:t+(r.__dir__<0?"Right":"")}),r},gr.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Ge(["filter","map","takeWhile"],function(t,e){var n=e+1,r=n==D||3==n;gr.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Ro(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}}),Ge(["head","last"],function(t,e){var n="take"+(e?"Right":"");gr.prototype[t]=function(){return this[n](1).value()[0]}}),Ge(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");gr.prototype[t]=function(){return this.__filtered__?new gr(this):this[n](1)}}),gr.prototype.compact=function(){return this.filter(Ol)},gr.prototype.find=function(t){return this.filter(t).head()},gr.prototype.findLast=function(t){return this.reverse().find(t)},gr.prototype.invokeMap=Ai(function(t,e){return"function"==typeof t?new gr(this):this.map(function(n){return ri(n,t,e)})}),gr.prototype.reject=function(t){return this.filter(ls(Ro(t)))},gr.prototype.slice=function(t,e){t=Us(t);var n=this;return n.__filtered__&&(t>0||e<0)?new gr(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==o&&(n=(e=Us(e))<0?n.dropRight(-e):n.take(e-t)),n)},gr.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},gr.prototype.toArray=function(){return this.take(j)},Gr(gr.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),i=pr[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);i&&(pr.prototype[e]=function(){var e=this.__wrapped__,s=r?[1]:arguments,l=e instanceof gr,u=s[0],c=l||gs(e),f=function(t){var e=i.apply(pr,tn([t],s));return r&&h?e[0]:e};c&&n&&"function"==typeof u&&1!=u.length&&(l=c=!1);var h=this.__chain__,p=!!this.__actions__.length,d=a&&!h,v=l&&!p;if(!a&&c){e=v?e:new gr(this);var m=t.apply(e,s);return m.__actions__.push({func:Ba,args:[f],thisArg:o}),new mr(m,h)}return d&&v?t.apply(this,s):(m=this.thru(f),d?r?m.value()[0]:m.value():m)})}),Ge(["pop","push","shift","sort","splice","unshift"],function(t){var e=oe[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);pr.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(gs(i)?i:[],t)}return this[n](function(n){return e.apply(gs(n)?n:[],t)})}}),Gr(gr.prototype,function(t,e){var n=pr[e];if(n){var r=n.name+"";ce.call(ir,r)||(ir[r]=[]),ir[r].push({name:e,func:n})}}),ir[po(o,y).name]=[{name:"wrapper",func:o}],gr.prototype.clone=function(){var t=new gr(this.__wrapped__);return t.__actions__=no(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=no(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=no(this.__views__),t},gr.prototype.reverse=function(){if(this.__filtered__){var t=new gr(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},gr.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=gs(t),r=e<0,i=n?t.length:0,o=function(t,e,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:t,value:t?o:this.__values__[this.__index__++]}},pr.prototype.plant=function(t){for(var e,n=this;n instanceof vr;){var r=ha(n);r.__index__=0,r.__values__=o,e?i.__wrapped__=r:e=r;var i=r;n=n.__wrapped__}return i.__wrapped__=t,e},pr.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof gr){var e=t;return this.__actions__.length&&(e=new gr(this)),(e=e.reverse()).__actions__.push({func:Ba,args:[Sa],thisArg:o}),new mr(e,this.__chain__)}return this.thru(Sa)},pr.prototype.toJSON=pr.prototype.valueOf=pr.prototype.value=function(){return Ui(this.__wrapped__,this.__actions__)},pr.prototype.first=pr.prototype.head,Fe&&(pr.prototype[Fe]=function(){return this}),pr}();Pe._=zn,(i=function(){return zn}.call(e,n,e,r))===o||(r.exports=i)}).call(this)}).call(this,n(19),n(69)(t))},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},,function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",function(){return getTaxidFromEutils}),__webpack_require__.d(__webpack_exports__,"d",function(){return setTaxidAndAssemblyAndChromosomes}),__webpack_require__.d(__webpack_exports__,"c",function(){return getTaxids}),__webpack_require__.d(__webpack_exports__,"e",function(){return setTaxidData}),__webpack_require__.d(__webpack_exports__,"a",function(){return getOrganismFromEutils});var d3_fetch__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(15),d3=Object.assign({},d3_fetch__WEBPACK_IMPORTED_MODULE_0__);function getTaxidFromEutils(t){var e,n,r,i=this;e=i.config.organism,n=i.esearch+"&db=taxonomy&term="+e,d3.json(n).then(function(e){return r=e.esearchresult.idlist[0],void 0===i.config.taxids?i.config.taxids=[r]:i.config.taxids.push(r),t(r)})}function setTaxidData(taxid){var organism,dataDir,urlOrg,taxids,ideo=this;organism=ideo.config.organism,dataDir=ideo.config.dataDir,urlOrg=organism.replace(" ","-"),taxids=[taxid],ideo.organisms[taxid]={commonName:"",scientificName:organism,scientificNameAbbr:""};var fullyBandedTaxids=["9606","10090","10116"];fullyBandedTaxids.includes(taxid)&&!ideo.config.showFullyBanded&&(urlOrg+="-no-bands");var chromosomesUrl=dataDir+urlOrg+".js",promise2=new Promise(function(t,e){fetch(chromosomesUrl).then(function(n){if(!1!==n.ok)return n.text().then(function(e){t(e)});e(Error("Fetch failed for "+chromosomesUrl))})});return promise2.then(function(data){var asmAndChrTaxidsArray=[""],chromosomes=[],seenChrs={},chr;eval(data);for(var i=0;i2?y:g,r=i=null,p}function p(e){return(r||(r=n(o,l,c?function(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=e?0:t>=n?1:r(t)}}}(t):t,u)))(+e)}return p.invert=function(t){return(i||(i=n(l,o,m,c?function(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=0?e:t>=1?n:r(t)}}}(e):e)))(+t)},p.domain=function(t){return arguments.length?(o=a.call(t,d),f()):o.slice()},p.range=function(t){return arguments.length?(l=s.call(t),f()):l.slice()},p.rangeRound=function(t){return l=s.call(t),u=h.r,f()},p.clamp=function(t){return arguments.length?(c=!!t,f()):c},p.interpolate=function(t){return arguments.length?(u=t,f()):u},f()}var _=n(14),w=function(t,e,n){var i,o=t[0],a=t[t.length-1],s=Object(r.A)(o,a,null==e?10:e);switch((n=Object(_.e)(null==n?",f":n)).type){case"s":var l=Math.max(Math.abs(o),Math.abs(a));return null!=n.precision||isNaN(i=Object(_.g)(s,l))||(n.precision=i),Object(_.d)(n,l);case"":case"e":case"g":case"p":case"r":null!=n.precision||isNaN(i=Object(_.h)(s,Math.max(Math.abs(o),Math.abs(a))))||(n.precision=i-("e"===n.type));break;case"f":case"%":null!=n.precision||isNaN(i=Object(_.f)(s))||(n.precision=i-2*("%"===n.type))}return Object(_.a)(n)};function A(t){var e=t.domain;return t.ticks=function(t){var n=e();return Object(r.B)(n[0],n[n.length-1],null==t?10:t)},t.tickFormat=function(t,n){return w(e(),t,n)},t.nice=function(n){null==n&&(n=10);var i,o=e(),a=0,s=o.length-1,l=o[a],u=o[s];return u0?(l=Math.floor(l/i)*i,u=Math.ceil(u/i)*i,i=Object(r.z)(l,u,n)):i<0&&(l=Math.ceil(l*i)/i,u=Math.floor(u*i)/i,i=Object(r.z)(l,u,n)),i>0?(o[a]=Math.floor(l/i)*i,o[s]=Math.ceil(u/i)*i,e(o)):i<0&&(o[a]=Math.ceil(l*i)/i,o[s]=Math.floor(u*i)/i,e(o)),t},t}function M(){var t=x(m,h.m);return t.copy=function(){return b(t,M())},A(t)}function k(){var t=[0,1];function e(t){return+t}return e.invert=e,e.domain=e.range=function(n){return arguments.length?(t=a.call(n,d),e):t.slice()},e.copy=function(){return k().domain(t)},A(e)}var T=function(t,e){var n,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a0){for(;pu)break;m.push(h)}}else for(;p=1;--f)if(!((h=c*f)u)break;m.push(h)}}else m=Object(r.B)(p,d,Math.min(d-p,v)).map(o);return a?m.reverse():m},t.tickFormat=function(e,r){if(null==r&&(r=10===n?".0e":","),"function"!=typeof r&&(r=Object(_.a)(r)),e===1/0)return r;null==e&&(e=10);var a=Math.max(1,n*e/t.ticks().length);return function(t){var e=t/o(Math.round(i(t)));return e*n0?n[i-1]:t[0],i=n?[i[n-1],e]:[i[a-1],i[a]]},a.copy=function(){return F().domain([t,e]).range(o)},A(a)}function N(){var t=[.5],e=[0,1],n=1;function i(i){if(i<=i)return e[Object(r.b)(t,i,0,n)]}return i.domain=function(r){return arguments.length?(t=s.call(r),n=Math.min(t.length,e.length-1),i):t.slice()},i.range=function(r){return arguments.length?(e=s.call(r),n=Math.min(t.length,e.length-1),i):e.slice()},i.invertExtent=function(n){var r=e.indexOf(n);return[t[r-1],t[r]]},i.copy=function(){return N().domain(t).range(e)},i}var B=n(3),U=n(23),V=1e3,q=60*V,$=60*q,H=24*$,W=7*H,G=30*H,Y=365*H;function X(t){return new Date(t)}function Z(t){return t instanceof Date?+t:+new Date(+t)}function J(t,e,n,i,o,s,l,u,c){var f=x(m,h.m),p=f.invert,d=f.domain,v=c(".%L"),g=c(":%S"),y=c("%I:%M"),_=c("%I %p"),w=c("%a %d"),A=c("%b %d"),M=c("%B"),k=c("%Y"),S=[[l,1,V],[l,5,5*V],[l,15,15*V],[l,30,30*V],[s,1,q],[s,5,5*q],[s,15,15*q],[s,30,30*q],[o,1,$],[o,3,3*$],[o,6,6*$],[o,12,12*$],[i,1,H],[i,2,2*H],[n,1,W],[e,1,G],[e,3,3*G],[t,1,Y]];function C(r){return(l(r)1)&&(t-=Math.floor(t));var e=Math.abs(t-.5);return ut.h=360*t-100,ut.s=1.5-1.5*e,ut.l=.8-.9*e,ut+""};function ft(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}var ht=ft(tt("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),pt=ft(tt("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),dt=ft(tt("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),vt=ft(tt("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function mt(t){var e=0,n=1,r=!1;function i(i){var o=(i-e)/(n-e);return t(r?Math.max(0,Math.min(1,o)):o)}return i.domain=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]},i.clamp=function(t){return arguments.length?(r=!!t,i):r},i.interpolator=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return mt(t).domain([e,n]).clamp(r)},A(i)}n.d(e,"i",function(){return c}),n.d(e,"o",function(){return f}),n.d(e,"j",function(){return k}),n.d(e,"l",function(){return M}),n.d(e,"m",function(){return P}),n.d(e,"n",function(){return u}),n.d(e,"k",function(){return l}),n.d(e,"p",function(){return I}),n.d(e,"t",function(){return R}),n.d(e,"q",function(){return j}),n.d(e,"r",function(){return F}),n.d(e,"u",function(){return N}),n.d(e,"v",function(){return K}),n.d(e,"w",function(){return Q}),n.d(e,"x",function(){return et}),n.d(e,"z",function(){return nt}),n.d(e,"A",function(){return rt}),n.d(e,"y",function(){return it}),n.d(e,"b",function(){return at}),n.d(e,"f",function(){return ct}),n.d(e,"h",function(){return st}),n.d(e,"a",function(){return lt}),n.d(e,"g",function(){return ht}),n.d(e,"d",function(){return pt}),n.d(e,"c",function(){return dt}),n.d(e,"e",function(){return vt}),n.d(e,"s",function(){return mt})},function(t,e,n){"use strict";var r=n(3);function i(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function o(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function a(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function s(t){var e=t.dateTime,n=t.date,s=t.time,l=t.periods,u=t.days,c=t.shortDays,f=t.months,h=t.shortMonths,d=b(l),v=x(l),m=b(u),g=x(u),y=b(c),At=x(c),Mt=b(f),kt=x(f),Tt=b(h),St=x(h),Ct={a:function(t){return c[t.getDay()]},A:function(t){return u[t.getDay()]},b:function(t){return h[t.getMonth()]},B:function(t){return f[t.getMonth()]},c:null,d:B,e:B,f:H,H:U,I:V,j:q,L:$,m:W,M:G,p:function(t){return l[+(t.getHours()>=12)]},Q:_t,s:wt,S:Y,u:X,U:Z,V:J,w:K,W:Q,x:null,X:null,y:tt,Y:et,Z:nt,"%":xt},Et={a:function(t){return c[t.getUTCDay()]},A:function(t){return u[t.getUTCDay()]},b:function(t){return h[t.getUTCMonth()]},B:function(t){return f[t.getUTCMonth()]},c:null,d:rt,e:rt,f:lt,H:it,I:ot,j:at,L:st,m:ut,M:ct,p:function(t){return l[+(t.getUTCHours()>=12)]},Q:_t,s:wt,S:ft,u:ht,U:pt,V:dt,w:vt,W:mt,x:null,X:null,y:gt,Y:yt,Z:bt,"%":xt},Ot={a:function(t,e,n){var r=y.exec(e.slice(n));return r?(t.w=At[r[0].toLowerCase()],n+r[0].length):-1},A:function(t,e,n){var r=m.exec(e.slice(n));return r?(t.w=g[r[0].toLowerCase()],n+r[0].length):-1},b:function(t,e,n){var r=Tt.exec(e.slice(n));return r?(t.m=St[r[0].toLowerCase()],n+r[0].length):-1},B:function(t,e,n){var r=Mt.exec(e.slice(n));return r?(t.m=kt[r[0].toLowerCase()],n+r[0].length):-1},c:function(t,n,r){return Pt(t,e,n,r)},d:O,e:O,f:R,H:L,I:L,j:D,L:I,m:E,M:P,p:function(t,e,n){var r=d.exec(e.slice(n));return r?(t.p=v[r[0].toLowerCase()],n+r[0].length):-1},Q:F,s:N,S:z,u:w,U:A,V:M,w:_,W:k,x:function(t,e,r){return Pt(t,n,e,r)},X:function(t,e,n){return Pt(t,s,e,n)},y:S,Y:T,Z:C,"%":j};function Dt(t,e){return function(n){var r,i,o,a=[],s=-1,l=0,u=t.length;for(n instanceof Date||(n=new Date(+n));++s53)return null;"w"in l||(l.w=1),"Z"in l?(s=(i=o(a(l.y))).getUTCDay(),i=s>4||0===s?r.P.ceil(i):Object(r.P)(i),i=r.F.offset(i,7*(l.V-1)),l.y=i.getUTCFullYear(),l.m=i.getUTCMonth(),l.d=i.getUTCDate()+(l.w+6)%7):(s=(i=e(a(l.y))).getDay(),i=s>4||0===s?r.l.ceil(i):Object(r.l)(i),i=r.a.offset(i,7*(l.V-1)),l.y=i.getFullYear(),l.m=i.getMonth(),l.d=i.getDate()+(l.w+6)%7)}else("W"in l||"U"in l)&&("w"in l||(l.w="u"in l?l.u%7:"W"in l?1:0),s="Z"in l?o(a(l.y)).getUTCDay():e(a(l.y)).getDay(),l.m=0,l.d="W"in l?(l.w+6)%7+7*l.W-(s+5)%7:l.w+7*l.U-(s+6)%7);return"Z"in l?(l.H+=l.Z/100|0,l.M+=l.Z%100,o(l)):e(l)}}function Pt(t,e,n,r){for(var i,o,a=0,s=e.length,l=n.length;a=l)return-1;if(37===(i=e.charCodeAt(a++))){if(i=e.charAt(a++),!(o=Ot[i in p?e.charAt(a++):i])||(r=o(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return Ct.x=Dt(n,Ct),Ct.X=Dt(s,Ct),Ct.c=Dt(e,Ct),Et.x=Dt(n,Et),Et.X=Dt(s,Et),Et.c=Dt(e,Et),{format:function(t){var e=Dt(t+="",Ct);return e.toString=function(){return t},e},parse:function(t){var e=Lt(t+="",i);return e.toString=function(){return t},e},utcFormat:function(t){var e=Dt(t+="",Et);return e.toString=function(){return t},e},utcParse:function(t){var e=Lt(t,o);return e.toString=function(){return t},e}}}var l,u,c,f,h,p={"-":"",_:" ",0:"0"},d=/^\s*\d+/,v=/^%/,m=/[\\^$*+?|[\]().{}]/g;function g(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o68?1900:2e3),n+r[0].length):-1}function C(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function E(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function O(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function D(t,e,n){var r=d.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function L(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function P(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function z(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function I(t,e,n){var r=d.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function R(t,e,n){var r=d.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function j(t,e,n){var r=v.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function F(t,e,n){var r=d.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function N(t,e,n){var r=d.exec(e.slice(n));return r?(t.Q=1e3*+r[0],n+r[0].length):-1}function B(t,e){return g(t.getDate(),e,2)}function U(t,e){return g(t.getHours(),e,2)}function V(t,e){return g(t.getHours()%12||12,e,2)}function q(t,e){return g(1+r.a.count(Object(r.D)(t),t),e,3)}function $(t,e){return g(t.getMilliseconds(),e,3)}function H(t,e){return $(t,e)+"000"}function W(t,e){return g(t.getMonth()+1,e,2)}function G(t,e){return g(t.getMinutes(),e,2)}function Y(t,e){return g(t.getSeconds(),e,2)}function X(t){var e=t.getDay();return 0===e?7:e}function Z(t,e){return g(r.t.count(Object(r.D)(t),t),e,2)}function J(t,e){var n=t.getDay();return t=n>=4||0===n?Object(r.v)(t):r.v.ceil(t),g(r.v.count(Object(r.D)(t),t)+(4===Object(r.D)(t).getDay()),e,2)}function K(t){return t.getDay()}function Q(t,e){return g(r.l.count(Object(r.D)(t),t),e,2)}function tt(t,e){return g(t.getFullYear()%100,e,2)}function et(t,e){return g(t.getFullYear()%1e4,e,4)}function nt(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+g(e/60|0,"0",2)+g(e%60,"0",2)}function rt(t,e){return g(t.getUTCDate(),e,2)}function it(t,e){return g(t.getUTCHours(),e,2)}function ot(t,e){return g(t.getUTCHours()%12||12,e,2)}function at(t,e){return g(1+r.F.count(Object(r.hb)(t),t),e,3)}function st(t,e){return g(t.getUTCMilliseconds(),e,3)}function lt(t,e){return st(t,e)+"000"}function ut(t,e){return g(t.getUTCMonth()+1,e,2)}function ct(t,e){return g(t.getUTCMinutes(),e,2)}function ft(t,e){return g(t.getUTCSeconds(),e,2)}function ht(t){var e=t.getUTCDay();return 0===e?7:e}function pt(t,e){return g(r.X.count(Object(r.hb)(t),t),e,2)}function dt(t,e){var n=t.getUTCDay();return t=n>=4||0===n?Object(r.Z)(t):r.Z.ceil(t),g(r.Z.count(Object(r.hb)(t),t)+(4===Object(r.hb)(t).getUTCDay()),e,2)}function vt(t){return t.getUTCDay()}function mt(t,e){return g(r.P.count(Object(r.hb)(t),t),e,2)}function gt(t,e){return g(t.getUTCFullYear()%100,e,2)}function yt(t,e){return g(t.getUTCFullYear()%1e4,e,4)}function bt(){return"+0000"}function xt(){return"%"}function _t(t){return+t}function wt(t){return Math.floor(+t/1e3)}function At(t){return l=s(t),u=l.format,c=l.parse,f=l.utcFormat,h=l.utcParse,l}At({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var Mt=Date.prototype.toISOString?function(t){return t.toISOString()}:f("%Y-%m-%dT%H:%M:%S.%LZ");var kt=+new Date("2000-01-01T00:00:00.000Z")?function(t){var e=new Date(t);return isNaN(e)?null:e}:h("%Y-%m-%dT%H:%M:%S.%LZ");n.d(e,"d",function(){return At}),n.d(e,"c",function(){return u}),n.d(e,"f",function(){return c}),n.d(e,"g",function(){return f}),n.d(e,"h",function(){return h}),n.d(e,"e",function(){return s}),n.d(e,"a",function(){return Mt}),n.d(e,"b",function(){return kt})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},i=n(37),o={};e.default=o,o.read=function(t,e){var n,r=(n=this,function(t,r,i){return o._onRetrieval(t,i,e,n)});return void 0===e?new Promise(function(n,o){e=function(t,e){t?o(t):n(e)},i(t,r)}):i(t,r)},o._onRetrieval=function(t,e,n,r){var i=void 0;return void 0!==t&&(i=r.parse(e)),n.call(r,t,i)},o.extend=function(t,e){return extend(o,t,e)},o.mixin=function(t){return"object"!==(void 0===t?"undefined":r(t))&&(t=t.prototype),["read"].forEach(function(e){t[e]=o[e]},this),t}},function(t,e){t.exports=window.ReactDOM},function(t,e){t.exports={},t.exports[0]=t.exports.Xx={symbol:"Xx",name:"unknown",mass:1,radius:1,color:[1,.078,.576],number:0},t.exports[1]=t.exports.H={symbol:"H",name:"hydrogen",mass:1.00794,radius:.31,color:[1,1,1],number:1},t.exports[2]=t.exports.He={symbol:"He",name:"helium",mass:4.002602,radius:.28,color:[.851,1,1],number:2},t.exports[3]=t.exports.Li={symbol:"Li",name:"lithium",mass:6.941,radius:1.28,color:[.8,.502,1],number:3},t.exports[4]=t.exports.Be={symbol:"Be",name:"beryllium",mass:9.012182,radius:.96,color:[.761,1,0],number:4},t.exports[5]=t.exports.B={symbol:"B",name:"boron",mass:10.811,radius:.84,color:[1,.71,.71],number:5},t.exports[6]=t.exports.C={symbol:"C",name:"carbon",mass:12.0107,radius:.73,color:[.565,.565,.565],number:6},t.exports[7]=t.exports.N={symbol:"N",name:"nitrogen",mass:14.0067,radius:.71,color:[.188,.314,.973],number:7},t.exports[8]=t.exports.O={symbol:"O",name:"oxygen",mass:15.9994,radius:.66,color:[1,.051,.051],number:8},t.exports[9]=t.exports.F={symbol:"F",name:"fluorine",mass:18.9984032,radius:.57,color:[.565,.878,.314],number:9},t.exports[10]=t.exports.Ne={symbol:"Ne",name:"neon",mass:20.1797,radius:.58,color:[.702,.89,.961],number:10},t.exports[11]=t.exports.Na={symbol:"Na",name:"sodium",mass:22.98976928,radius:1.66,color:[.671,.361,.949],number:11},t.exports[12]=t.exports.Mg={symbol:"Mg",name:"magnesium",mass:24.305,radius:1.41,color:[.541,1,0],number:12},t.exports[13]=t.exports.Al={symbol:"Al",name:"aluminum",mass:26.9815386,radius:1.21,color:[.749,.651,.651],number:13},t.exports[14]=t.exports.Si={symbol:"Si",name:"silicon",mass:28.0855,radius:1.11,color:[.941,.784,.627],number:14},t.exports[15]=t.exports.P={symbol:"P",name:"phosphorus",mass:30.973762,radius:1.07,color:[1,.502,0],number:15},t.exports[16]=t.exports.S={symbol:"S",name:"sulfur",mass:32.065,radius:1.05,color:[1,1,.188],number:16},t.exports[17]=t.exports.Cl={symbol:"Cl",name:"chlorine",mass:35.453,radius:1.02,color:[.122,.941,.122],number:17},t.exports[18]=t.exports.Ar={symbol:"Ar",name:"argon",mass:39.948,radius:1.06,color:[.502,.82,.89],number:18},t.exports[19]=t.exports.K={symbol:"K",name:"potassium",mass:39.0983,radius:2.03,color:[.561,.251,.831],number:19},t.exports[20]=t.exports.Ca={symbol:"Ca",name:"calcium",mass:40.078,radius:1.76,color:[.239,1,0],number:20},t.exports[21]=t.exports.Sc={symbol:"Sc",name:"scandium",mass:44.955912,radius:1.7,color:[.902,.902,.902],number:21},t.exports[22]=t.exports.Ti={symbol:"Ti",name:"titanium",mass:47.867,radius:1.6,color:[.749,.761,.78],number:22},t.exports[23]=t.exports.V={symbol:"V",name:"vanadium",mass:50.9415,radius:1.53,color:[.651,.651,.671],number:23},t.exports[24]=t.exports.Cr={symbol:"Cr",name:"chromium",mass:51.9961,radius:1.39,color:[.541,.6,.78],number:24},t.exports[25]=t.exports.Mn={symbol:"Mn",name:"manganese",mass:54.938045,radius:1.39,color:[.611,.478,.78],number:25},t.exports[26]=t.exports.Fe={symbol:"Fe",name:"iron",mass:55.845,radius:1.32,color:[.878,.4,.2],number:26},t.exports[27]=t.exports.Co={symbol:"Co",name:"cobalt",mass:58.6934,radius:1.26,color:[.941,.565,.627],number:27},t.exports[28]=t.exports.Ni={symbol:"Ni",name:"nickel",mass:58.933195,radius:1.24,color:[.314,.816,.314],number:28},t.exports[29]=t.exports.Cu={symbol:"Cu",name:"copper",mass:63.546,radius:1.32,color:[.784,.502,.2],number:29},t.exports[30]=t.exports.Zn={symbol:"Zn",name:"zinc",mass:65.38,radius:1.22,color:[.49,.502,.69],number:30},t.exports[31]=t.exports.Ga={symbol:"Ga",name:"gallium",mass:69.723,radius:1.22,color:[.761,.561,.561],number:31},t.exports[32]=t.exports.Ge={symbol:"Ge",name:"germanium",mass:72.64,radius:1.2,color:[.4,.561,.561],number:32},t.exports[33]=t.exports.As={symbol:"As",name:"arsenic",mass:74.9216,radius:1.19,color:[.741,.502,.89],number:33},t.exports[34]=t.exports.Se={symbol:"Se",name:"selenium",mass:78.96,radius:1.2,color:[1,.631,0],number:34},t.exports[35]=t.exports.Br={symbol:"Br",name:"bromine",mass:79.904,radius:1.2,color:[.651,.161,.161],number:35},t.exports[36]=t.exports.Kr={symbol:"Kr",name:"krypton",mass:83.798,radius:1.16,color:[.361,.722,.82],number:36},t.exports[37]=t.exports.Rb={symbol:"Rb",name:"rubidium",mass:85.4678,radius:2.2,color:[.439,.18,.69],number:37},t.exports[38]=t.exports.Sr={symbol:"Sr",name:"strontium",mass:87.62,radius:1.95,color:[0,1,0],number:38},t.exports[39]=t.exports.Y={symbol:"Y",name:"yttrium",mass:88.90585,radius:1.9,color:[.58,1,1],number:39},t.exports[40]=t.exports.Zr={symbol:"Zr",name:"zirconium",mass:91.224,radius:1.75,color:[.58,.878,.878],number:40},t.exports[41]=t.exports.Nb={symbol:"Nb",name:"niobium",mass:92.90638,radius:1.64,color:[.451,.761,.788],number:41},t.exports[42]=t.exports.Mo={symbol:"Mo",name:"molybdenum",mass:95.96,radius:1.54,color:[.329,.71,.71],number:42},t.exports[43]=t.exports.Tc={symbol:"Tc",name:"technetium",mass:98,radius:1.47,color:[.231,.62,.62],number:43},t.exports[44]=t.exports.Ru={symbol:"Ru",name:"ruthenium",mass:101.07,radius:1.46,color:[.141,.561,.561],number:44},t.exports[45]=t.exports.Rh={symbol:"Rh",name:"rhodium",mass:102.9055,radius:1.42,color:[.039,.49,.549],number:45},t.exports[46]=t.exports.Pd={symbol:"Pd",name:"palladium",mass:106.42,radius:1.39,color:[0,.412,.522],number:46},t.exports[47]=t.exports.Ag={symbol:"Ag",name:"silver",mass:107.8682,radius:1.45,color:[.753,.753,.753],number:47},t.exports[48]=t.exports.Cd={symbol:"Cd",name:"cadmium",mass:112.411,radius:1.44,color:[1,.851,.561],number:48},t.exports[49]=t.exports.In={symbol:"In",name:"indium",mass:114.818,radius:1.42,color:[.651,.459,.451],number:49},t.exports[50]=t.exports.Sn={symbol:"Sn",name:"tin",mass:118.71,radius:1.39,color:[.4,.502,.502],number:50},t.exports[51]=t.exports.Sb={symbol:"Sb",name:"antimony",mass:121.76,radius:1.39,color:[.62,.388,.71],number:51},t.exports[52]=t.exports.Te={symbol:"Te",name:"tellurium",mass:127.6,radius:1.38,color:[.831,.478,0],number:52},t.exports[53]=t.exports.I={symbol:"I",name:"iodine",mass:126.9047,radius:1.39,color:[.58,0,.58],number:53},t.exports[54]=t.exports.Xe={symbol:"Xe",name:"xenon",mass:131.293,radius:1.4,color:[.259,.62,.69],number:54},t.exports[55]=t.exports.Cs={symbol:"Cs",name:"cesium",mass:132.9054519,radius:2.44,color:[.341,.09,.561],number:55},t.exports[56]=t.exports.Ba={symbol:"Ba",name:"barium",mass:137.327,radius:2.15,color:[0,.788,0],number:56},t.exports[57]=t.exports.La={symbol:"La",name:"lanthanum",mass:138.90547,radius:2.07,color:[.439,.831,1],number:57},t.exports[58]=t.exports.Ce={symbol:"Ce",name:"cerium",mass:140.116,radius:2.04,color:[1,1,.78],number:58},t.exports[59]=t.exports.Pr={symbol:"Pr",name:"praseodymium",mass:140.90765,radius:2.03,color:[.851,1,.78],number:59},t.exports[60]=t.exports.Nd={symbol:"Nd",name:"neodymium",mass:144.242,radius:2.01,color:[.78,1,.78],number:60},t.exports[61]=t.exports.Pm={symbol:"Pm",name:"promethium",mass:145,radius:1.99,color:[.639,1,.78],number:61},t.exports[62]=t.exports.Sm={symbol:"Sm",name:"samarium",mass:150.36,radius:1.98,color:[.561,1,.78],number:62},t.exports[63]=t.exports.Eu={symbol:"Eu",name:"europium",mass:151.964,radius:1.98,color:[.38,1,.78],number:63},t.exports[64]=t.exports.Gd={symbol:"Gd",name:"gadolinium",mass:157.25,radius:1.96,color:[.271,1,.78],number:64},t.exports[65]=t.exports.Tb={symbol:"Tb",name:"terbium",mass:158.92535,radius:1.94,color:[.189,1,.78],number:65},t.exports[66]=t.exports.Dy={symbol:"Dy",name:"dysprosium",mass:162.5,radius:1.92,color:[.122,1,.78],number:66},t.exports[67]=t.exports.Ho={symbol:"Ho",name:"holmium",mass:164.93032,radius:1.92,color:[0,1,.612],number:67},t.exports[68]=t.exports.Er={symbol:"Er",name:"erbium",mass:167.259,radius:1.89,color:[0,.902,.459],number:68},t.exports[69]=t.exports.Tm={symbol:"Tm",name:"thulium",mass:168.93421,radius:1.9,color:[0,.831,.322],number:69},t.exports[70]=t.exports.Yb={symbol:"Yb",name:"ytterbium",mass:173.054,radius:1.87,color:[0,.749,.22],number:70},t.exports[71]=t.exports.Lu={symbol:"Lu",name:"lutetium",mass:174.9668,radius:1.87,color:[0,.671,.141],number:71},t.exports[72]=t.exports.Hf={symbol:"Hf",name:"hafnium",mass:178.49,radius:1.75,color:[.302,.761,1],number:72},t.exports[73]=t.exports.Ta={symbol:"Ta",name:"tantalum",mass:180.94788,radius:1.7,color:[.302,.651,1],number:73},t.exports[74]=t.exports.W={symbol:"W",name:"tungsten",mass:183.84,radius:1.62,color:[.129,.58,.839],number:74},t.exports[75]=t.exports.Re={symbol:"Re",name:"rhenium",mass:186.207,radius:1.51,color:[.149,.49,.671],number:75},t.exports[76]=t.exports.Os={symbol:"Os",name:"osmium",mass:190.23,radius:1.44,color:[.149,.4,.588],number:76},t.exports[77]=t.exports.Ir={symbol:"Ir",name:"iridium",mass:192.217,radius:1.41,color:[.09,.329,.529],number:77},t.exports[78]=t.exports.Pt={symbol:"Pt",name:"platinum",mass:195.084,radius:1.36,color:[.816,.816,.878],number:78},t.exports[79]=t.exports.Au={symbol:"Au",name:"gold",mass:196.966569,radius:1.36,color:[1,.82,.137],number:79},t.exports[80]=t.exports.Hg={symbol:"Hg",name:"mercury",mass:200.59,radius:1.32,color:[.722,.722,.816],number:80},t.exports[81]=t.exports.Tl={symbol:"Tl",name:"thallium",mass:204.3833,radius:1.45,color:[.651,.329,.302],number:81},t.exports[82]=t.exports.Pb={symbol:"Pb",name:"lead",mass:207.2,radius:1.46,color:[.341,.349,.38],number:82},t.exports[83]=t.exports.Bi={symbol:"Bi",name:"bismuth",mass:208.9804,radius:1.48,color:[.62,.31,.71],number:83},t.exports[84]=t.exports.Po={symbol:"Po",name:"polonium",mass:210,radius:1.4,color:[.671,.361,0],number:84},t.exports[85]=t.exports.At={symbol:"At",name:"astatine",mass:210,radius:1.5,color:[.459,.31,.271],number:85},t.exports[86]=t.exports.Rn={symbol:"Rn",name:"radon",mass:220,radius:1.5,color:[.259,.51,.588],number:86},t.exports[87]=t.exports.Fr={symbol:"Fr",name:"francium",mass:223,radius:2.6,color:[.259,0,.4],number:87},t.exports[88]=t.exports.Ra={symbol:"Ra",name:"radium",mass:226,radius:2.21,color:[0,.49,0],number:88},t.exports[89]=t.exports.Ac={symbol:"Ac",name:"actinium",mass:227,radius:2.15,color:[.439,.671,.98],number:89},t.exports[90]=t.exports.Th={symbol:"Th",name:"thorium",mass:231.03588,radius:2.06,color:[0,.729,1],number:90},t.exports[91]=t.exports.Pa={symbol:"Pa",name:"protactinium",mass:232.03806,radius:2,color:[0,.631,1],number:91},t.exports[92]=t.exports.U={symbol:"U",name:"uranium",mass:237,radius:1.96,color:[0,.561,1],number:92},t.exports[93]=t.exports.Np={symbol:"Np",name:"neptunium",mass:238.02891,radius:1.9,color:[0,.502,1],number:93},t.exports[94]=t.exports.Pu={symbol:"Pu",name:"plutonium",mass:243,radius:1.87,color:[0,.42,1],number:94},t.exports[95]=t.exports.Am={symbol:"Am",name:"americium",mass:244,radius:1.8,color:[.329,.361,.949],number:95},t.exports[96]=t.exports.Cm={symbol:"Cm",name:"curium",mass:247,radius:1.69,color:[.471,.361,.89],number:96},t.exports[97]=t.exports.Bk={symbol:"Bk",name:"berkelium",mass:247,radius:1.66,color:[.541,.31,.89],number:97},t.exports[98]=t.exports.Cf={symbol:"Cf",name:"californium",mass:251,radius:1.68,color:[.631,.212,.831],number:98},t.exports[99]=t.exports.Es={symbol:"Es",name:"einsteinium",mass:252,radius:1.65,color:[.702,.122,.831],number:99},t.exports[100]=t.exports.Fm={symbol:"Fm",name:"fermium",mass:257,radius:1.67,color:[.702,.122,.729],number:100},t.exports[101]=t.exports.Md={symbol:"Md",name:"mendelevium",mass:258,radius:1.73,color:[.702,.051,.651],number:101},t.exports[102]=t.exports.No={symbol:"No",name:"nobelium",mass:259,radius:1.76,color:[.741,.051,.529],number:102},t.exports[103]=t.exports.Lr={symbol:"Lr",name:"lawrencium",mass:262,radius:1.61,color:[.78,0,.4],number:103},t.exports[104]=t.exports.Rf={symbol:"Rf",name:"rutherfordium",mass:261,radius:1.57,color:[.8,0,.349],number:104},t.exports[105]=t.exports.Db={symbol:"Db",name:"dubnium",mass:262,radius:1.49,color:[.82,0,.31],number:105},t.exports[106]=t.exports.Sg={symbol:"Sg",name:"seaborgium",mass:266,radius:1.43,color:[.851,0,.271],number:106},t.exports[107]=t.exports.Bh={symbol:"Bh",name:"bohrium",mass:264,radius:1.41,color:[.878,0,.22],number:107},t.exports[108]=t.exports.Hs={symbol:"Hs",name:"hassium",mass:277,radius:1.34,color:[.902,0,.18],number:108},t.exports[109]=t.exports.Mt={symbol:"Mt",name:"meitnerium",mass:268,radius:1.29,color:[.922,0,.149],number:109},t.exports[110]=t.exports.Ds={symbol:"Ds",name:"Ds",mass:271,radius:1.28,color:[.922,0,.149],number:110},t.exports[111]=t.exports.Uuu={symbol:"Uuu",name:"Uuu",mass:272,radius:1.21,color:[.922,0,.149],number:111},t.exports[112]=t.exports.Uub={symbol:"Uub",name:"Uub",mass:285,radius:1.22,color:[.922,0,.149],number:112},t.exports[113]=t.exports.Uut={symbol:"Uut",name:"Uut",mass:284,radius:1.36,color:[.922,0,.149],number:113},t.exports[114]=t.exports.Uuq={symbol:"Uuq",name:"Uuq",mass:289,radius:1.43,color:[.922,0,.149],number:114},t.exports[115]=t.exports.Uup={symbol:"Uup",name:"Uup",mass:288,radius:1.62,color:[.922,0,.149],number:115},t.exports[116]=t.exports.Uuh={symbol:"Uuh",name:"Uuh",mass:292,radius:1.75,color:[.922,0,.149],number:116},t.exports[117]=t.exports.Uus={symbol:"Uus",name:"Uus",mass:294,radius:1.65,color:[.922,0,.149],number:117},t.exports[118]=t.exports.Uuo={symbol:"Uuo",name:"Uuo",mass:296,radius:1.57,color:[.922,0,.149],number:118}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=o(n(70)),i=o(n(71));function o(t){return t&&t.__esModule?t:{default:t}}var a=(0,r.default)(i.default);e.default=a,t.exports=e.default},function(t,e,n){"use strict";function r(t){return+t}function i(t){return t*t}function o(t){return t*(2-t)}function a(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function s(t){return t*t*t}function l(t){return--t*t*t+1}function u(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var c=function t(e){function n(t){return Math.pow(t,e)}return e=+e,n.exponent=t,n}(3),f=function t(e){function n(t){return 1-Math.pow(1-t,e)}return e=+e,n.exponent=t,n}(3),h=function t(e){function n(t){return((t*=2)<=1?Math.pow(t,e):2-Math.pow(2-t,e))/2}return e=+e,n.exponent=t,n}(3),p=Math.PI,d=p/2;function v(t){return 1-Math.cos(t*d)}function m(t){return Math.sin(t*d)}function g(t){return(1-Math.cos(p*t))/2}function y(t){return Math.pow(2,10*t-10)}function b(t){return 1-Math.pow(2,-10*t)}function x(t){return((t*=2)<=1?Math.pow(2,10*t-10):2-Math.pow(2,10-10*t))/2}function _(t){return 1-Math.sqrt(1-t*t)}function w(t){return Math.sqrt(1- --t*t)}function A(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var M=4/11,k=6/11,T=8/11,S=.75,C=9/11,E=10/11,O=.9375,D=21/22,L=63/64,P=1/M/M;function z(t){return 1-I(1-t)}function I(t){return(t=+t)=1?(r=s.shift(),i=s.join(" ")):r=t,r){var l=r.split("|");for(e=l.pop(),a.en=e;0!=l.length;){var u=l.shift(),c=l.shift();o[u]=c}}else e=r;if(i){var f=i.split("=");if(f.length>1){var h,p;f.length;f.forEach(function(t){var e,r=(t=t.trim()).split(" ");if(r.length>1?(p=r.pop(),e=r.join(" ")):e=t,h){var i=h.toLowerCase();a[i]=e}else n=e;h=p})}else n=f.shift()}var d={name:e,ids:o,details:a};return n&&(d.desc=n),d};var i={sp:{link:"http://www.uniprot.org/%s",name:"Uniprot"},tr:{link:"http://www.uniprot.org/%s",name:"Trembl"},gb:{link:"http://www.ncbi.nlm.nih.gov/nuccore/%s",name:"Genbank"},pdb:{link:"http://www.rcsb.org/pdb/explore/explore.do?structureId=%s",name:"PDB"}};r.buildLinks=function(t){var e={};return t=t||{},Object.keys(t).forEach(function(n){if(n in i){var r=i[n],o=r.link.replace("%s",t[n]);e[r.name]=o}}),e},r.contains=function(t,e){return-1!=="".indexOf.call(t,e,0)},r.splitNChars=function(t,e){var n,r;e=e||80;var i=[];for(n=0,r=t.length-1;n<=r;n+=e)i.push(t.substr(n,e));return i},r.reverse=function(t){return t.split("").reverse().join("")},r.complement=function(t){var e=t+"",n=[[/g/g,"0"],[/c/g,"1"],[/0/g,"c"],[/1/g,"g"],[/G/g,"0"],[/C/g,"1"],[/0/g,"C"],[/1/g,"G"],[/a/g,"0"],[/t/g,"1"],[/0/g,"t"],[/1/g,"a"],[/A/g,"0"],[/T/g,"1"],[/0/g,"T"],[/1/g,"A"]];for(var r in n)e=e.replace(n[r][0],n[r][1]);return e},r.reverseComplement=function(t){return r.reverse(r.complement(t))},r.model=function(t,e,n){this.seq=t,this.name=e,this.id=n,this.ids={}}},function(t,e,n){!function(t){"use strict";var n={};n.exports=e,function(t){if(!e)var e=1e-6;if(!n)var n="undefined"!=typeof Float32Array?Float32Array:Array;if(!r)var r=Math.random;var i={setMatrixArrayType:function(t){n=t}};void 0!==t&&(t.glMatrix=i);var o=Math.PI/180;i.toRadian=function(t){return t*o};var a,s={};s.create=function(){var t=new n(2);return t[0]=0,t[1]=0,t},s.clone=function(t){var e=new n(2);return e[0]=t[0],e[1]=t[1],e},s.fromValues=function(t,e){var r=new n(2);return r[0]=t,r[1]=e,r},s.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t},s.set=function(t,e,n){return t[0]=e,t[1]=n,t},s.add=function(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t},s.subtract=function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t},s.sub=s.subtract,s.multiply=function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t},s.mul=s.multiply,s.divide=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t},s.div=s.divide,s.min=function(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t},s.max=function(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t},s.scale=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t},s.scaleAndAdd=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t},s.distance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1];return Math.sqrt(n*n+r*r)},s.dist=s.distance,s.squaredDistance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1];return n*n+r*r},s.sqrDist=s.squaredDistance,s.length=function(t){var e=t[0],n=t[1];return Math.sqrt(e*e+n*n)},s.len=s.length,s.squaredLength=function(t){var e=t[0],n=t[1];return e*e+n*n},s.sqrLen=s.squaredLength,s.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t},s.inverse=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t},s.normalize=function(t,e){var n=e[0],r=e[1],i=n*n+r*r;return i>0&&(i=1/Math.sqrt(i),t[0]=e[0]*i,t[1]=e[1]*i),t},s.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]},s.cross=function(t,e,n){var r=e[0]*n[1]-e[1]*n[0];return t[0]=t[1]=0,t[2]=r,t},s.lerp=function(t,e,n,r){var i=e[0],o=e[1];return t[0]=i+r*(n[0]-i),t[1]=o+r*(n[1]-o),t},s.random=function(t,e){e=e||1;var n=2*r()*Math.PI;return t[0]=Math.cos(n)*e,t[1]=Math.sin(n)*e,t},s.transformMat2=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[2]*i,t[1]=n[1]*r+n[3]*i,t},s.transformMat2d=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[2]*i+n[4],t[1]=n[1]*r+n[3]*i+n[5],t},s.transformMat3=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[3]*i+n[6],t[1]=n[1]*r+n[4]*i+n[7],t},s.transformMat4=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[4]*i+n[12],t[1]=n[1]*r+n[5]*i+n[13],t},s.forEach=(a=s.create(),function(t,e,n,r,i,o){var s,l;for(e||(e=2),n||(n=0),l=r?Math.min(r*e+n,t.length):t.length,s=n;s0&&(o=1/Math.sqrt(o),t[0]=e[0]*o,t[1]=e[1]*o,t[2]=e[2]*o),t},l.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]},l.cross=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[0],s=n[1],l=n[2];return t[0]=i*l-o*s,t[1]=o*a-r*l,t[2]=r*s-i*a,t},l.lerp=function(t,e,n,r){var i=e[0],o=e[1],a=e[2];return t[0]=i+r*(n[0]-i),t[1]=o+r*(n[1]-o),t[2]=a+r*(n[2]-a),t},l.random=function(t,e){e=e||1;var n=2*r()*Math.PI,i=2*r()-1,o=Math.sqrt(1-i*i)*e;return t[0]=Math.cos(n)*o,t[1]=Math.sin(n)*o,t[2]=i*e,t},l.transformMat4=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[3]*r+n[7]*i+n[11]*o+n[15];return a=a||1,t[0]=(n[0]*r+n[4]*i+n[8]*o+n[12])/a,t[1]=(n[1]*r+n[5]*i+n[9]*o+n[13])/a,t[2]=(n[2]*r+n[6]*i+n[10]*o+n[14])/a,t},l.transformMat3=function(t,e,n){var r=e[0],i=e[1],o=e[2];return t[0]=r*n[0]+i*n[3]+o*n[6],t[1]=r*n[1]+i*n[4]+o*n[7],t[2]=r*n[2]+i*n[5]+o*n[8],t},l.transformQuat=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[0],s=n[1],l=n[2],u=n[3],c=u*r+s*o-l*i,f=u*i+l*r-a*o,h=u*o+a*i-s*r,p=-a*r-s*i-l*o;return t[0]=c*u+p*-a+f*-l-h*-s,t[1]=f*u+p*-s+h*-a-c*-l,t[2]=h*u+p*-l+c*-s-f*-a,t},l.rotateX=function(t,e,n,r){var i=[],o=[];return i[0]=e[0]-n[0],i[1]=e[1]-n[1],i[2]=e[2]-n[2],o[0]=i[0],o[1]=i[1]*Math.cos(r)-i[2]*Math.sin(r),o[2]=i[1]*Math.sin(r)+i[2]*Math.cos(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t},l.rotateY=function(t,e,n,r){var i=[],o=[];return i[0]=e[0]-n[0],i[1]=e[1]-n[1],i[2]=e[2]-n[2],o[0]=i[2]*Math.sin(r)+i[0]*Math.cos(r),o[1]=i[1],o[2]=i[2]*Math.cos(r)-i[0]*Math.sin(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t},l.rotateZ=function(t,e,n,r){var i=[],o=[];return i[0]=e[0]-n[0],i[1]=e[1]-n[1],i[2]=e[2]-n[2],o[0]=i[0]*Math.cos(r)-i[1]*Math.sin(r),o[1]=i[0]*Math.sin(r)+i[1]*Math.cos(r),o[2]=i[2],t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t},l.forEach=function(){var t=l.create();return function(e,n,r,i,o,a){var s,l;for(n||(n=3),r||(r=0),l=i?Math.min(i*n+r,e.length):e.length,s=r;s1?0:Math.acos(i)},l.str=function(t){return"vec3("+t[0]+", "+t[1]+", "+t[2]+")"},void 0!==t&&(t.vec3=l);var u={create:function(){var t=new n(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t},clone:function(t){var e=new n(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},fromValues:function(t,e,r,i){var o=new n(4);return o[0]=t,o[1]=e,o[2]=r,o[3]=i,o},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},set:function(t,e,n,r,i){return t[0]=e,t[1]=n,t[2]=r,t[3]=i,t},add:function(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t},subtract:function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t[3]=e[3]-n[3],t}};u.sub=u.subtract,u.multiply=function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t[3]=e[3]*n[3],t},u.mul=u.multiply,u.divide=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t[3]=e[3]/n[3],t},u.div=u.divide,u.min=function(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t[2]=Math.min(e[2],n[2]),t[3]=Math.min(e[3],n[3]),t},u.max=function(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t[2]=Math.max(e[2],n[2]),t[3]=Math.max(e[3],n[3]),t},u.scale=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t},u.scaleAndAdd=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t[3]=e[3]+n[3]*r,t},u.distance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],o=e[3]-t[3];return Math.sqrt(n*n+r*r+i*i+o*o)},u.dist=u.distance,u.squaredDistance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],o=e[3]-t[3];return n*n+r*r+i*i+o*o},u.sqrDist=u.squaredDistance,u.length=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return Math.sqrt(e*e+n*n+r*r+i*i)},u.len=u.length,u.squaredLength=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return e*e+n*n+r*r+i*i},u.sqrLen=u.squaredLength,u.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t},u.inverse=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t},u.normalize=function(t,e){var n=e[0],r=e[1],i=e[2],o=e[3],a=n*n+r*r+i*i+o*o;return a>0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t[3]=e[3]*a),t},u.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},u.lerp=function(t,e,n,r){var i=e[0],o=e[1],a=e[2],s=e[3];return t[0]=i+r*(n[0]-i),t[1]=o+r*(n[1]-o),t[2]=a+r*(n[2]-a),t[3]=s+r*(n[3]-s),t},u.random=function(t,e){return e=e||1,t[0]=r(),t[1]=r(),t[2]=r(),t[3]=r(),u.normalize(t,t),u.scale(t,t,e),t},u.transformMat4=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=e[3];return t[0]=n[0]*r+n[4]*i+n[8]*o+n[12]*a,t[1]=n[1]*r+n[5]*i+n[9]*o+n[13]*a,t[2]=n[2]*r+n[6]*i+n[10]*o+n[14]*a,t[3]=n[3]*r+n[7]*i+n[11]*o+n[15]*a,t},u.transformQuat=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[0],s=n[1],l=n[2],u=n[3],c=u*r+s*o-l*i,f=u*i+l*r-a*o,h=u*o+a*i-s*r,p=-a*r-s*i-l*o;return t[0]=c*u+p*-a+f*-l-h*-s,t[1]=f*u+p*-s+h*-a-c*-l,t[2]=h*u+p*-l+c*-s-f*-a,t},u.forEach=function(){var t=u.create();return function(e,n,r,i,o,a){var s,l;for(n||(n=4),r||(r=0),l=i?Math.min(i*n+r,e.length):e.length,s=r;s.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(l.cross(d,e,n),t[0]=d[0],t[1]=d[1],t[2]=d[2],t[3]=1+r,y.normalize(t,t))}),y.setAxes=(g=h.create(),function(t,e,n,r){return g[0]=n[0],g[3]=n[1],g[6]=n[2],g[1]=r[0],g[4]=r[1],g[7]=r[2],g[2]=-e[0],g[5]=-e[1],g[8]=-e[2],y.normalize(t,y.fromMat3(t,g))}),y.clone=u.clone,y.fromValues=u.fromValues,y.copy=u.copy,y.set=u.set,y.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},y.setAxisAngle=function(t,e,n){n*=.5;var r=Math.sin(n);return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=Math.cos(n),t},y.add=u.add,y.multiply=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=e[3],s=n[0],l=n[1],u=n[2],c=n[3];return t[0]=r*c+a*s+i*u-o*l,t[1]=i*c+a*l+o*s-r*u,t[2]=o*c+a*u+r*l-i*s,t[3]=a*c-r*s-i*l-o*u,t},y.mul=y.multiply,y.scale=u.scale,y.rotateX=function(t,e,n){n*=.5;var r=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l+a*s,t[1]=i*l+o*s,t[2]=o*l-i*s,t[3]=a*l-r*s,t},y.rotateY=function(t,e,n){n*=.5;var r=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l-o*s,t[1]=i*l+a*s,t[2]=o*l+r*s,t[3]=a*l-i*s,t},y.rotateZ=function(t,e,n){n*=.5;var r=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l+i*s,t[1]=i*l-r*s,t[2]=o*l+a*s,t[3]=a*l-o*s,t},y.calculateW=function(t,e){var n=e[0],r=e[1],i=e[2];return t[0]=n,t[1]=r,t[2]=i,t[3]=Math.sqrt(Math.abs(1-n*n-r*r-i*i)),t},y.dot=u.dot,y.lerp=u.lerp,y.slerp=function(t,e,n,r){var i,o,a,s,l,u=e[0],c=e[1],f=e[2],h=e[3],p=n[0],d=n[1],v=n[2],m=n[3];return(o=u*p+c*d+f*v+h*m)<0&&(o=-o,p=-p,d=-d,v=-v,m=-m),1-o>1e-6?(i=Math.acos(o),a=Math.sin(i),s=Math.sin((1-r)*i)/a,l=Math.sin(r*i)/a):(s=1-r,l=r),t[0]=s*u+l*p,t[1]=s*c+l*d,t[2]=s*f+l*v,t[3]=s*h+l*m,t},y.invert=function(t,e){var n=e[0],r=e[1],i=e[2],o=e[3],a=n*n+r*r+i*i+o*o,s=a?1/a:0;return t[0]=-n*s,t[1]=-r*s,t[2]=-i*s,t[3]=o*s,t},y.conjugate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t},y.length=u.length,y.len=y.length,y.squaredLength=u.squaredLength,y.sqrLen=y.squaredLength,y.normalize=u.normalize,y.fromMat3=function(t,e){var n,r=e[0]+e[4]+e[8];if(r>0)n=Math.sqrt(r+1),t[3]=.5*n,n=.5/n,t[0]=(e[5]-e[7])*n,t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{var i=0;e[4]>e[0]&&(i=1),e[8]>e[3*i+i]&&(i=2);var o=(i+1)%3,a=(i+2)%3;n=Math.sqrt(e[3*i+i]-e[3*o+o]-e[3*a+a]+1),t[i]=.5*n,n=.5/n,t[3]=(e[3*o+a]-e[3*a+o])*n,t[o]=(e[3*o+i]+e[3*i+o])*n,t[a]=(e[3*a+i]+e[3*i+a])*n}return t},y.str=function(t){return"quat("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"},void 0!==t&&(t.quat=y)}(n.exports)}()},function(t,e,n){"use strict";var r=n(34),i=n(26),o=n(52);function a(t,e,n){return Math.min(e,Math.max(t,n))}t.exports.new=function(){return{aspect:1,zoom:.125,translation:{x:0,y:0},atomScale:.6,relativeAtomScale:1,bondScale:.5,rotation:r.mat4.create(),ao:.75,aoRes:256,brightness:.5,outline:0,spf:32,bonds:!1,bondThreshold:1.2,bondShade:.5,atomShade:.5,resolution:768,dofStrength:0,dofPosition:.5,fxaa:1}},t.exports.center=function(t,e){for(var n=-1/0,o=1/0,a=-1/0,s=1/0,l=0;lJ&&(J=e):e=(0,l.getConservation)(t),e}),X="entropy"===b?X.map(function(t){return 1-t/J}):X.map(function(t){return t/P})),_&&(Z=L.map(function(t){return o.default.countBy(t)["-"]/P})),x)for(var K=0;KBar weights",titlefont:{size:12},showgrid:!1,zeroline:!1,domain:[.75,1]}):3===h?(C.yaxis.domain=[0,.64],C.yaxis2={title:"Conservation",titlefont:{size:12},showgrid:!1,zeroline:!1,domain:[.65,.89]},C.yaxis3={title:"Gap",titlefont:{size:12},showgrid:!1,zeroline:!1,domain:[.9,1]}):C.yaxis.domain=[0,1],"heatmap"===g?(C.xaxis.rangeslider={autorange:!0},C.xaxis.tick0=b,C.xaxis.dtick=x,C.margin={t:20,r:20,b:20}):"slider"===g?C.sliders=[{currentvalue:{prefix:"Position ",suffix:""},steps:a}]:(C.xaxis.tick0=b,C.xaxis.dtick=x,C.margin={t:20,r:20,b:20}),{layout:C,width:e,height:r}}},{key:"componentDidMount",value:function(){var t=this.resetWindowing(this.props),e=t.xStart,n=t.xEnd;this.setState({xStart:e,xEnd:n})}},{key:"componentDidUpdate",value:function(t,e){if(this.props.data!==t.data){var n=this.resetWindowing(this.props),r=n.xStart,i=n.xEnd;this.setState({xStart:r,xEnd:i})}}},{key:"render",value:function(){var t=this.getData(),e=t.data,n=t.length,i=t.count,o=t.labels,s=t.tick,l=t.plotCount,u=this.getLayout({length:n,count:i,labels:o,tick:s,plotCount:l}),c=u.layout,f={style:{width:u.width,height:u.height},useResizeHandler:!0};return r.default.createElement("div",null,r.default.createElement(a.default,p({data:e,layout:c,onClick:this.handleChange,onHover:this.handleChange,onRelayout:this.handleChange},f)))}}])&&v(n.prototype,i),f&&v(n,f),e}();e.default=b,b.propTypes={data:i.default.string,extension:i.default.string,colorscale:i.default.oneOfType([i.default.string,i.default.object]),opacity:i.default.oneOfType([i.default.number,i.default.string]),textcolor:i.default.string,textsize:i.default.oneOfType([i.default.number,i.default.string]),showlabel:i.default.bool,showid:i.default.bool,showconservation:i.default.bool,conservationcolor:i.default.string,conservationcolorscale:i.default.oneOfType([i.default.string,i.default.array]),conservationopacity:i.default.oneOfType([i.default.number,i.default.string]),conservationmethod:i.default.oneOf(["conservation","entropy"]),correctgap:i.default.bool,showgap:i.default.bool,gapcolor:i.default.string,gapcolorscale:i.default.oneOfType([i.default.string,i.default.array]),gapopacity:i.default.oneOfType([i.default.number,i.default.string]),groupbars:i.default.bool,showconsensus:i.default.bool,tilewidth:i.default.number,tileheight:i.default.number,overview:i.default.oneOf(["heatmap","slider","none"]),numtiles:i.default.number,scrollskip:i.default.number,tickstart:i.default.oneOfType([i.default.number,i.default.string]),ticksteps:i.default.oneOfType([i.default.number,i.default.string]),width:i.default.oneOfType([i.default.number,i.default.string]),height:i.default.oneOfType([i.default.number,i.default.string])},b.defaultProps={extension:"fasta",colorscale:"clustal2",opacity:null,textcolor:null,textsize:10,showlabel:!0,showid:!0,showconservation:!0,conservationcolor:null,conservationcolorscale:"Viridis",conservationopacity:null,conservationmethod:"entropy",correctgap:!0,showgap:!0,gapcolor:"grey",gapcolorscale:null,gapopacity:null,groupbars:!1,showconsensus:!0,tilewidth:16,tileheight:16,numtiles:null,overview:"heatmap",scrollskip:10,tickstart:null,ticksteps:null,width:null,height:900}},function(t,e,n){"use strict";var r=n(75),i=n(76),o=n(77),a=n(93);function s(t,e,n){var r=t;return i(e)?(n=e,"string"==typeof t&&(r={uri:t})):r=a(e,{uri:t}),r.callback=n,r}function l(t,e,n){return u(e=s(t,e,n))}function u(t){if(void 0===t.callback)throw new Error("callback argument missing");var e=!1,n=function(n,r,i){e||(e=!0,t.callback(n,r,i))};function r(t){return clearTimeout(c),t instanceof Error||(t=new Error(""+(t||"Unknown XMLHttpRequest Error"))),t.statusCode=0,n(t,g)}function i(){if(!s){var e;clearTimeout(c),e=t.useXDR&&void 0===u.status?200:1223===u.status?204:u.status;var r=g,i=null;return 0!==e?(r={body:function(){var t=void 0;if(t=u.response?u.response:u.responseText||function(t){try{if("document"===t.responseType)return t.responseXML;var e=t.responseXML&&"parsererror"===t.responseXML.documentElement.nodeName;if(""===t.responseType&&!e)return t.responseXML}catch(t){}return null}(u),m)try{t=JSON.parse(t)}catch(t){}return t}(),statusCode:e,method:h,headers:{},url:f,rawRequest:u},u.getAllResponseHeaders&&(r.headers=o(u.getAllResponseHeaders()))):i=new Error("Internal XMLHttpRequest Error"),n(i,r,r.body)}}var a,s,u=t.xhr||null;u||(u=t.cors||t.useXDR?new l.XDomainRequest:new l.XMLHttpRequest);var c,f=u.url=t.uri||t.url,h=u.method=t.method||"GET",p=t.body||t.data,d=u.headers=t.headers||{},v=!!t.sync,m=!1,g={body:void 0,headers:{},statusCode:0,method:h,url:f,rawRequest:u};if("json"in t&&!1!==t.json&&(m=!0,d.accept||d.Accept||(d.Accept="application/json"),"GET"!==h&&"HEAD"!==h&&(d["content-type"]||d["Content-Type"]||(d["Content-Type"]="application/json"),p=JSON.stringify(!0===t.json?p:t.json))),u.onreadystatechange=function(){4===u.readyState&&setTimeout(i,0)},u.onload=i,u.onerror=r,u.onprogress=function(){},u.onabort=function(){s=!0},u.ontimeout=r,u.open(h,f,!v,t.username,t.password),v||(u.withCredentials=!!t.withCredentials),!v&&t.timeout>0&&(c=setTimeout(function(){if(!s){s=!0,u.abort("timeout");var t=new Error("XMLHttpRequest timeout");t.code="ETIMEDOUT",r(t)}},t.timeout)),u.setRequestHeader)for(a in d)d.hasOwnProperty(a)&&u.setRequestHeader(a,d[a]);else if(t.headers&&!function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0}(t.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in t&&(u.responseType=t.responseType),"beforeSend"in t&&"function"==typeof t.beforeSend&&t.beforeSend(u),u.send(p||null),u}t.exports=l,t.exports.default=l,l.XMLHttpRequest=r.XMLHttpRequest||function(){},l.XDomainRequest="withCredentials"in new l.XMLHttpRequest?l.XMLHttpRequest:r.XDomainRequest,function(t,e){for(var n=0;n2?arguments[2]:{},o=r(e);i&&(o=a.call(o,Object.getOwnPropertySymbols(e)));for(var s=0;s0&&(r=(n=t.split(" "))[0],i=n[1].replace(/"/g,""),e[r]=i)}),e}function i(t){var e=t.toString(16);return 1===e.length?"0"+e:e}function o(t,e,n){return 3===t.length?o(t[0],t[1],t[2]):"#"+i(t)+i(e)+i(n)}Object.defineProperty(e,"__esModule",{value:!0}),e.extractKeys=r,e.rgbToHex=o,e.default={extractKeys:r,rgbToHex:o}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getConsensus=e.getConservation=e.getEntropy=void 0;var r,i=(r=n(18))&&r.__esModule?r:{default:r};e.getEntropy=function(t){var e;e=i.default.isString(t)?t.split(""):t;var n={};return e.forEach(function(t){return n[t]?n[t]++:n[t]=1}),Object.keys(n).reduce(function(t,r){var i=n[r]/e.length;return t-i*Math.log(i)},0)};e.getConservation=function(t){var e;return e=i.default.isString(t)?t.split(""):t,(0,i.default)(e).countBy().entries().maxBy("[1]")[1]};e.getConsensus=function(t){return t.map(function(t){return(0,i.default)(t).countBy().entries().maxBy("[1]")[0]})}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getVisualizations=e.getTicks=e.getHovertext=e.getWidth=e.SUBPLOT_RATIOS=void 0;var r,i=(r=n(18))&&r.__esModule?r:{default:r};e.SUBPLOT_RATIOS={1:1,2:.75,3:.65};e.getWidth=function(t){return i.default.isNumber(t)?t:t.includes("%")?parseFloat(t)/100*window.innerWidth:parseFloat(t)};e.getHovertext=function(t,e){for(var n=[],r=function(r){var i=[],o=0;t[r].forEach(function(t){o+=1;var n=["Name: ".concat(e[r].name),"Organism: ".concat(e[r].os?e[r].os:"N/A"),"ID: ".concat(e[r].id,"
"),"Position: (".concat(o,", ").concat(r,")"),"Letter: ".concat(t)].join("
");i.push(n)}),n.push(i)},o=0;o=0||(i[n]=t[n]);return i}(e,["children"]);if(delete r.in,delete r.mountOnEnter,delete r.unmountOnExit,delete r.appear,delete r.enter,delete r.exit,delete r.timeout,delete r.addEndListener,delete r.onEnter,delete r.onEntering,delete r.onEntered,delete r.onExit,delete r.onExiting,delete r.onExited,"function"==typeof n)return n(t,r);var o=i.default.Children.only(n);return i.default.cloneElement(o,r)},r}(i.default.Component);function p(){}h.contextTypes={transitionGroup:r.object},h.childContextTypes={transitionGroup:function(){}},h.propTypes={},h.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:p,onEntering:p,onEntered:p,onExit:p,onExiting:p,onExited:p},h.UNMOUNTED=0,h.EXITED=1,h.ENTERING=2,h.ENTERED=3,h.EXITING=4;var d=(0,a.polyfill)(h);e.default=d},function(t,e,n){"use strict";function r(){var t=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=t&&this.setState(t)}function i(t){this.setState(function(e){var n=this.constructor.getDerivedStateFromProps(t,e);return null!=n?n:null}.bind(this))}function o(t,e){try{var n=this.props,r=this.state;this.props=t,this.state=e,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,r)}finally{this.props=n,this.state=r}}function a(t){var e=t.prototype;if(!e||!e.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof t.getDerivedStateFromProps&&"function"!=typeof e.getSnapshotBeforeUpdate)return t;var n=null,a=null,s=null;if("function"==typeof e.componentWillMount?n="componentWillMount":"function"==typeof e.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof e.componentWillReceiveProps?a="componentWillReceiveProps":"function"==typeof e.UNSAFE_componentWillReceiveProps&&(a="UNSAFE_componentWillReceiveProps"),"function"==typeof e.componentWillUpdate?s="componentWillUpdate":"function"==typeof e.UNSAFE_componentWillUpdate&&(s="UNSAFE_componentWillUpdate"),null!==n||null!==a||null!==s){var l=t.displayName||t.name,u="function"==typeof t.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+l+" uses "+u+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==a?"\n "+a:"")+(null!==s?"\n "+s:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof t.getDerivedStateFromProps&&(e.componentWillMount=r,e.componentWillReceiveProps=i),"function"==typeof e.getSnapshotBeforeUpdate){if("function"!=typeof e.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");e.componentWillUpdate=o;var c=e.componentDidUpdate;e.componentDidUpdate=function(t,e,n){var r=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;c.call(this,t,e,r)}}return t}n.r(e),n.d(e,"polyfill",function(){return a}),r.__suppressDeprecationWarning=!0,i.__suppressDeprecationWarning=!0,o.__suppressDeprecationWarning=!0},function(t,e,n){"use strict";e.__esModule=!0,e.classNamesShape=e.timeoutsShape=void 0;var r;(r=n(0))&&r.__esModule;e.timeoutsShape=null;e.classNamesShape=null},function(t,e,n){"use strict";e.__esModule=!0,e.default=void 0;var r=s(n(0)),i=s(n(2)),o=n(45),a=n(126);function s(t){return t&&t.__esModule?t:{default:t}}function l(){return(l=Object.assign||function(t){for(var e=1;e=0||(i[n]=t[n]);return i}(t,["component","childFactory"]),o=c(this.state.children).map(n);return delete r.appear,delete r.enter,delete r.exit,null===e?o:i.default.createElement(e,r,o)},r}(i.default.Component);f.childContextTypes={transitionGroup:r.default.object.isRequired},f.propTypes={},f.defaultProps={component:"div",childFactory:function(t){return t}};var h=(0,o.polyfill)(f);e.default=h,t.exports=e.default},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",function(){return parseBands});var _lib__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);function getDelimiterTsvLinesAndInit(source,content){var delimiter,tsvLines,init;return"undefined"==typeof chrBands&&"native"!==source?(delimiter=/\t/,tsvLines=content.split(/\r\n|\n/),init=1):(delimiter=/ /,tsvLines="native"===source?eval(content):content,init=0),[delimiter,tsvLines,init]}function updateChromosomes(t){var e,n;if(t instanceof Array&&"object"==typeof t[0]){for(e=[],n=0;n>>1,B=[["ary",M],["bind",m],["bindKey",y],["curry",x],["curryRight",_],["flip",T],["partial",w],["partialRight",A],["rearg",k]],U="[object Arguments]",V="[object Array]",q="[object AsyncFunction]",$="[object Boolean]",H="[object Date]",W="[object DOMException]",G="[object Error]",Y="[object Function]",X="[object GeneratorFunction]",Z="[object Map]",J="[object Number]",K="[object Null]",Q="[object Object]",tt="[object Proxy]",et="[object RegExp]",nt="[object Set]",rt="[object String]",it="[object Symbol]",ot="[object Undefined]",at="[object WeakMap]",st="[object WeakSet]",lt="[object ArrayBuffer]",ut="[object DataView]",ct="[object Float32Array]",ft="[object Float64Array]",ht="[object Int8Array]",pt="[object Int16Array]",dt="[object Int32Array]",vt="[object Uint8Array]",gt="[object Uint8ClampedArray]",mt="[object Uint16Array]",yt="[object Uint32Array]",bt=/\b__p \+= '';/g,xt=/\b(__p \+=) '' \+/g,_t=/(__e\(.*?\)|\b__t\)) \+\n'';/g,wt=/&(?:amp|lt|gt|quot|#39);/g,At=/[&<>"']/g,Mt=RegExp(wt.source),kt=RegExp(At.source),Tt=/<%-([\s\S]+?)%>/g,St=/<%([\s\S]+?)%>/g,Ct=/<%=([\s\S]+?)%>/g,Et=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Ot=/^\w*$/,Dt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,Lt=/[\\^$.*+?()[\]{}|]/g,Pt=RegExp(Lt.source),zt=/^\s+|\s+$/g,It=/^\s+/,Rt=/\s+$/,jt=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Nt=/\{\n\/\* \[wrapped with (.+)\] \*/,Ft=/,? & /,Bt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Ut=/\\(\\)?/g,Vt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qt=/\w*$/,$t=/^[-+]0x[0-9a-f]+$/i,Ht=/^0b[01]+$/i,Wt=/^\[object .+?Constructor\]$/,Gt=/^0o[0-7]+$/i,Yt=/^(?:0|[1-9]\d*)$/,Xt=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,Zt=/($^)/,Jt=/['\n\r\u2028\u2029\\]/g,Kt="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Qt="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",te="[\\ud800-\\udfff]",ee="["+Qt+"]",ne="["+Kt+"]",re="\\d+",ie="[\\u2700-\\u27bf]",oe="[a-z\\xdf-\\xf6\\xf8-\\xff]",ae="[^\\ud800-\\udfff"+Qt+re+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",se="\\ud83c[\\udffb-\\udfff]",le="[^\\ud800-\\udfff]",ue="(?:\\ud83c[\\udde6-\\uddff]){2}",ce="[\\ud800-\\udbff][\\udc00-\\udfff]",fe="[A-Z\\xc0-\\xd6\\xd8-\\xde]",he="(?:"+oe+"|"+ae+")",pe="(?:"+fe+"|"+ae+")",de="(?:"+ne+"|"+se+")"+"?",ve="[\\ufe0e\\ufe0f]?"+de+("(?:\\u200d(?:"+[le,ue,ce].join("|")+")[\\ufe0e\\ufe0f]?"+de+")*"),ge="(?:"+[ie,ue,ce].join("|")+")"+ve,me="(?:"+[le+ne+"?",ne,ue,ce,te].join("|")+")",ye=RegExp("['’]","g"),be=RegExp(ne,"g"),xe=RegExp(se+"(?="+se+")|"+me+ve,"g"),_e=RegExp([fe+"?"+oe+"+(?:['’](?:d|ll|m|re|s|t|ve))?(?="+[ee,fe,"$"].join("|")+")",pe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?(?="+[ee,fe+he,"$"].join("|")+")",fe+"?"+he+"+(?:['’](?:d|ll|m|re|s|t|ve))?",fe+"+(?:['’](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",re,ge].join("|"),"g"),we=RegExp("[\\u200d\\ud800-\\udfff"+Kt+"\\ufe0e\\ufe0f]"),Ae=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Me=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],ke=-1,Te={};Te[ct]=Te[ft]=Te[ht]=Te[pt]=Te[dt]=Te[vt]=Te[gt]=Te[mt]=Te[yt]=!0,Te[U]=Te[V]=Te[lt]=Te[$]=Te[ut]=Te[H]=Te[G]=Te[Y]=Te[Z]=Te[J]=Te[Q]=Te[et]=Te[nt]=Te[rt]=Te[at]=!1;var Se={};Se[U]=Se[V]=Se[lt]=Se[ut]=Se[$]=Se[H]=Se[ct]=Se[ft]=Se[ht]=Se[pt]=Se[dt]=Se[Z]=Se[J]=Se[Q]=Se[et]=Se[nt]=Se[rt]=Se[it]=Se[vt]=Se[gt]=Se[mt]=Se[yt]=!0,Se[G]=Se[Y]=Se[at]=!1;var Ce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Ee=parseFloat,Oe=parseInt,De="object"==typeof t&&t&&t.Object===Object&&t,Le="object"==typeof self&&self&&self.Object===Object&&self,Pe=De||Le||Function("return this")(),ze=e&&!e.nodeType&&e,Ie=ze&&"object"==typeof r&&r&&!r.nodeType&&r,Re=Ie&&Ie.exports===ze,je=Re&&De.process,Ne=function(){try{var t=Ie&&Ie.require&&Ie.require("util").types;return t||je&&je.binding&&je.binding("util")}catch(t){}}(),Fe=Ne&&Ne.isArrayBuffer,Be=Ne&&Ne.isDate,Ue=Ne&&Ne.isMap,Ve=Ne&&Ne.isRegExp,qe=Ne&&Ne.isSet,$e=Ne&&Ne.isTypedArray;function He(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function We(t,e,n,r){for(var i=-1,o=null==t?0:t.length;++i-1}function Ke(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function _n(t,e){for(var n=t.length;n--&&ln(e,t[n],0)>-1;);return n}var wn=pn({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),An=pn({"&":"&","<":"<",">":">",'"':""","'":"'"});function Mn(t){return"\\"+Ce[t]}function kn(t){return we.test(t)}function Tn(t){var e=-1,n=Array(t.size);return t.forEach(function(t,r){n[++e]=[r,t]}),n}function Sn(t,e){return function(n){return t(e(n))}}function Cn(t,e){for(var n=-1,r=t.length,i=0,o=[];++n",""":'"',"'":"'"});var zn=function t(e){var n,r=(e=null==e?Pe:zn.defaults(Pe.Object(),e,zn.pick(Pe,Me))).Array,i=e.Date,Kt=e.Error,Qt=e.Function,te=e.Math,ee=e.Object,ne=e.RegExp,re=e.String,ie=e.TypeError,oe=r.prototype,ae=Qt.prototype,se=ee.prototype,le=e["__core-js_shared__"],ue=ae.toString,ce=se.hasOwnProperty,fe=0,he=(n=/[^.]+$/.exec(le&&le.keys&&le.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",pe=se.toString,de=ue.call(ee),ve=Pe._,ge=ne("^"+ue.call(ce).replace(Lt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),me=Re?e.Buffer:o,xe=e.Symbol,we=e.Uint8Array,Ce=me?me.allocUnsafe:o,De=Sn(ee.getPrototypeOf,ee),Le=ee.create,ze=se.propertyIsEnumerable,Ie=oe.splice,je=xe?xe.isConcatSpreadable:o,Ne=xe?xe.iterator:o,on=xe?xe.toStringTag:o,pn=function(){try{var t=Fo(ee,"defineProperty");return t({},"",{}),t}catch(t){}}(),In=e.clearTimeout!==Pe.clearTimeout&&e.clearTimeout,Rn=i&&i.now!==Pe.Date.now&&i.now,jn=e.setTimeout!==Pe.setTimeout&&e.setTimeout,Nn=te.ceil,Fn=te.floor,Bn=ee.getOwnPropertySymbols,Un=me?me.isBuffer:o,Vn=e.isFinite,qn=oe.join,$n=Sn(ee.keys,ee),Hn=te.max,Wn=te.min,Gn=i.now,Yn=e.parseInt,Xn=te.random,Zn=oe.reverse,Jn=Fo(e,"DataView"),Kn=Fo(e,"Map"),Qn=Fo(e,"Promise"),tr=Fo(e,"Set"),er=Fo(e,"WeakMap"),nr=Fo(ee,"create"),rr=er&&new er,ir={},or=fa(Jn),ar=fa(Kn),sr=fa(Qn),lr=fa(tr),ur=fa(er),cr=xe?xe.prototype:o,fr=cr?cr.valueOf:o,hr=cr?cr.toString:o;function pr(t){if(Cs(t)&&!ms(t)&&!(t instanceof mr)){if(t instanceof gr)return t;if(ce.call(t,"__wrapped__"))return ha(t)}return new gr(t)}var dr=function(){function t(){}return function(e){if(!Ss(e))return{};if(Le)return Le(e);t.prototype=e;var n=new t;return t.prototype=o,n}}();function vr(){}function gr(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=o}function mr(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=j,this.__views__=[]}function yr(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function Ir(t,e,n,r,i,a){var s,l=e&h,u=e&p,c=e&d;if(n&&(s=i?n(t,r,i,a):n(t)),s!==o)return s;if(!Ss(t))return t;var f=ms(t);if(f){if(s=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&ce.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!l)return no(t,s)}else{var v=Vo(t),g=v==Y||v==X;if(_s(t))return Zi(t,l);if(v==Q||v==U||g&&!i){if(s=u||g?{}:$o(t),!l)return u?function(t,e){return ro(t,Uo(t),e)}(t,function(t,e){return t&&ro(e,ol(e),t)}(s,t)):function(t,e){return ro(t,Bo(t),e)}(t,Dr(s,t))}else{if(!Se[v])return i?t:{};s=function(t,e,n){var r,i,o,a=t.constructor;switch(e){case lt:return Ji(t);case $:case H:return new a(+t);case ut:return function(t,e){var n=e?Ji(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case ct:case ft:case ht:case pt:case dt:case vt:case gt:case mt:case yt:return Ki(t,n);case Z:return new a;case J:case rt:return new a(t);case et:return(o=new(i=t).constructor(i.source,qt.exec(i))).lastIndex=i.lastIndex,o;case nt:return new a;case it:return r=t,fr?ee(fr.call(r)):{}}}(t,v,l)}}a||(a=new wr);var m=a.get(t);if(m)return m;a.set(t,s),Ps(t)?t.forEach(function(r){s.add(Ir(r,e,n,r,t,a))}):Es(t)&&t.forEach(function(r,i){s.set(i,Ir(r,e,n,i,t,a))});var y=f?o:(c?u?Lo:Do:u?ol:il)(t);return Ge(y||t,function(r,i){y&&(r=t[i=r]),Cr(s,i,Ir(r,e,n,i,t,a))}),s}function Rr(t,e,n){var r=n.length;if(null==t)return!r;for(t=ee(t);r--;){var i=n[r],a=e[i],s=t[i];if(s===o&&!(i in t)||!a(s))return!1}return!0}function jr(t,e,n){if("function"!=typeof t)throw new ie(l);return ia(function(){t.apply(o,n)},e)}function Nr(t,e,n,r){var i=-1,o=Je,s=!0,l=t.length,u=[],c=e.length;if(!l)return u;n&&(e=Qe(e,mn(n))),r?(o=Ke,s=!1):e.length>=a&&(o=bn,s=!1,e=new _r(e));t:for(;++i-1},br.prototype.set=function(t,e){var n=this.__data__,r=Er(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},xr.prototype.clear=function(){this.size=0,this.__data__={hash:new yr,map:new(Kn||br),string:new yr}},xr.prototype.delete=function(t){var e=jo(this,t).delete(t);return this.size-=e?1:0,e},xr.prototype.get=function(t){return jo(this,t).get(t)},xr.prototype.has=function(t){return jo(this,t).has(t)},xr.prototype.set=function(t,e){var n=jo(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},_r.prototype.add=_r.prototype.push=function(t){return this.__data__.set(t,u),this},_r.prototype.has=function(t){return this.__data__.has(t)},wr.prototype.clear=function(){this.__data__=new br,this.size=0},wr.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},wr.prototype.get=function(t){return this.__data__.get(t)},wr.prototype.has=function(t){return this.__data__.has(t)},wr.prototype.set=function(t,e){var n=this.__data__;if(n instanceof br){var r=n.__data__;if(!Kn||r.length0&&n(s)?e>1?$r(s,e-1,n,r,i):tn(i,s):r||(i[i.length]=s)}return i}var Hr=so(),Wr=so(!0);function Gr(t,e){return t&&Hr(t,e,il)}function Yr(t,e){return t&&Wr(t,e,il)}function Xr(t,e){return Ze(e,function(e){return Ms(t[e])})}function Zr(t,e){for(var n=0,r=(e=Wi(e,t)).length;null!=t&&ne}function ti(t,e){return null!=t&&ce.call(t,e)}function ei(t,e){return null!=t&&e in ee(t)}function ni(t,e,n){for(var i=n?Ke:Je,a=t[0].length,s=t.length,l=s,u=r(s),c=1/0,f=[];l--;){var h=t[l];l&&e&&(h=Qe(h,mn(e))),c=Wn(h.length,c),u[l]=!n&&(e||a>=120&&h.length>=120)?new _r(l&&h):o}h=t[0];var p=-1,d=u[0];t:for(;++p=s)return l;var u=n[r];return l*("desc"==u?-1:1)}}return t.index-e.index}(t,e,n)})}function yi(t,e,n){for(var r=-1,i=e.length,o={};++r-1;)s!==t&&Ie.call(s,l,1),Ie.call(t,l,1);return t}function xi(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==o){var o=i;Wo(i)?Ie.call(t,i,1):Ni(t,i)}}return t}function _i(t,e){return t+Fn(Xn()*(e-t+1))}function wi(t,e){var n="";if(!t||e<1||e>z)return n;do{e%2&&(n+=t),(e=Fn(e/2))&&(t+=t)}while(e);return n}function Ai(t,e){return oa(ta(t,e,Ol),t+"")}function Mi(t){return Mr(pl(t))}function ki(t,e){var n=pl(t);return la(n,zr(e,0,n.length))}function Ti(t,e,n,r){if(!Ss(t))return t;for(var i=-1,a=(e=Wi(e,t)).length,s=a-1,l=t;null!=l&&++io?0:o+e),(n=n>o?o:n)<0&&(n+=o),o=e>n?0:n-e>>>0,e>>>=0;for(var a=r(o);++i>>1,a=t[o];null!==a&&!Is(a)&&(n?a<=e:a=a){var c=e?null:Ao(t);if(c)return En(c);s=!1,i=bn,u=new _r}else u=e?[]:l;t:for(;++r=r?t:Oi(t,e,n)}var Xi=In||function(t){return Pe.clearTimeout(t)};function Zi(t,e){if(e)return t.slice();var n=t.length,r=Ce?Ce(n):new t.constructor(n);return t.copy(r),r}function Ji(t){var e=new t.constructor(t.byteLength);return new we(e).set(new we(t)),e}function Ki(t,e){var n=e?Ji(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function Qi(t,e){if(t!==e){var n=t!==o,r=null===t,i=t==t,a=Is(t),s=e!==o,l=null===e,u=e==e,c=Is(e);if(!l&&!c&&!a&&t>e||a&&s&&u&&!l&&!c||r&&s&&u||!n&&u||!i)return 1;if(!r&&!a&&!c&&t1?n[i-1]:o,s=i>2?n[2]:o;for(a=t.length>3&&"function"==typeof a?(i--,a):o,s&&Go(n[0],n[1],s)&&(a=i<3?o:a,i=1),e=ee(e);++r-1?i[a?e[s]:s]:o}}function ho(t){return Oo(function(e){var n=e.length,r=n,i=gr.prototype.thru;for(t&&e.reverse();r--;){var a=e[r];if("function"!=typeof a)throw new ie(l);if(i&&!s&&"wrapper"==zo(a))var s=new gr([],!0)}for(r=s?r:n;++r1&&x.reverse(),h&&cl))return!1;var c=a.get(t);if(c&&a.get(e))return c==e;var f=-1,h=!0,p=n&g?new _r:o;for(a.set(t,e),a.set(e,t);++f-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(jt,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return Ge(B,function(n){var r="_."+n[0];e&n[1]&&!Je(t,r)&&t.push(r)}),t.sort()}(function(t){var e=t.match(Nt);return e?e[1].split(Ft):[]}(r),n)))}function sa(t){var e=0,n=0;return function(){var r=Gn(),i=O-(r-n);if(n=r,i>0){if(++e>=E)return arguments[0]}else e=0;return t.apply(o,arguments)}}function la(t,e){var n=-1,r=t.length,i=r-1;for(e=e===o?r:e;++n1?t[e-1]:o;return n="function"==typeof n?(t.pop(),n):o,La(t,n)});function Fa(t){var e=pr(t);return e.__chain__=!0,e}function Ba(t,e){return e(t)}var Ua=Oo(function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,i=function(e){return Pr(e,t)};return!(e>1||this.__actions__.length)&&r instanceof mr&&Wo(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:Ba,args:[i],thisArg:o}),new gr(r,this.__chain__).thru(function(t){return e&&!t.length&&t.push(o),t})):this.thru(i)});var Va=io(function(t,e,n){ce.call(t,n)?++t[n]:Lr(t,n,1)});var qa=fo(ga),$a=fo(ma);function Ha(t,e){return(ms(t)?Ge:Fr)(t,Ro(e,3))}function Wa(t,e){return(ms(t)?Ye:Br)(t,Ro(e,3))}var Ga=io(function(t,e,n){ce.call(t,n)?t[n].push(e):Lr(t,n,[e])});var Ya=Ai(function(t,e,n){var i=-1,o="function"==typeof e,a=bs(t)?r(t.length):[];return Fr(t,function(t){a[++i]=o?He(e,t,n):ri(t,e,n)}),a}),Xa=io(function(t,e,n){Lr(t,n,e)});function Za(t,e){return(ms(t)?Qe:hi)(t,Ro(e,3))}var Ja=io(function(t,e,n){t[n?0:1].push(e)},function(){return[[],[]]});var Ka=Ai(function(t,e){if(null==t)return[];var n=e.length;return n>1&&Go(t,e[0],e[1])?e=[]:n>2&&Go(e[0],e[1],e[2])&&(e=[e[0]]),mi(t,$r(e,1),[])}),Qa=Rn||function(){return Pe.Date.now()};function ts(t,e,n){return e=n?o:e,e=t&&null==e?t.length:e,ko(t,M,o,o,o,o,e)}function es(t,e){var n;if("function"!=typeof e)throw new ie(l);return t=Us(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=o),n}}var ns=Ai(function(t,e,n){var r=m;if(n.length){var i=Cn(n,Io(ns));r|=w}return ko(t,r,e,n,i)}),rs=Ai(function(t,e,n){var r=m|y;if(n.length){var i=Cn(n,Io(rs));r|=w}return ko(e,r,t,n,i)});function is(t,e,n){var r,i,a,s,u,c,f=0,h=!1,p=!1,d=!0;if("function"!=typeof t)throw new ie(l);function v(e){var n=r,a=i;return r=i=o,f=e,s=t.apply(a,n)}function g(t){var n=t-c;return c===o||n>=e||n<0||p&&t-f>=a}function m(){var t=Qa();if(g(t))return y(t);u=ia(m,function(t){var n=e-(t-c);return p?Wn(n,a-(t-f)):n}(t))}function y(t){return u=o,d&&r?v(t):(r=i=o,s)}function b(){var t=Qa(),n=g(t);if(r=arguments,i=this,c=t,n){if(u===o)return function(t){return f=t,u=ia(m,e),h?v(t):s}(c);if(p)return Xi(u),u=ia(m,e),v(c)}return u===o&&(u=ia(m,e)),s}return e=qs(e)||0,Ss(n)&&(h=!!n.leading,a=(p="maxWait"in n)?Hn(qs(n.maxWait)||0,e):a,d="trailing"in n?!!n.trailing:d),b.cancel=function(){u!==o&&Xi(u),f=0,r=c=i=u=o},b.flush=function(){return u===o?s:y(Qa())},b}var os=Ai(function(t,e){return jr(t,1,e)}),as=Ai(function(t,e,n){return jr(t,qs(e)||0,n)});function ss(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new ie(l);var n=function(){var r=arguments,i=e?e.apply(this,r):r[0],o=n.cache;if(o.has(i))return o.get(i);var a=t.apply(this,r);return n.cache=o.set(i,a)||o,a};return n.cache=new(ss.Cache||xr),n}function ls(t){if("function"!=typeof t)throw new ie(l);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}ss.Cache=xr;var us=Gi(function(t,e){var n=(e=1==e.length&&ms(e[0])?Qe(e[0],mn(Ro())):Qe($r(e,1),mn(Ro()))).length;return Ai(function(r){for(var i=-1,o=Wn(r.length,n);++i=e}),gs=ii(function(){return arguments}())?ii:function(t){return Cs(t)&&ce.call(t,"callee")&&!ze.call(t,"callee")},ms=r.isArray,ys=Fe?mn(Fe):function(t){return Cs(t)&&Kr(t)==lt};function bs(t){return null!=t&&Ts(t.length)&&!Ms(t)}function xs(t){return Cs(t)&&bs(t)}var _s=Un||ql,ws=Be?mn(Be):function(t){return Cs(t)&&Kr(t)==H};function As(t){if(!Cs(t))return!1;var e=Kr(t);return e==G||e==W||"string"==typeof t.message&&"string"==typeof t.name&&!Ds(t)}function Ms(t){if(!Ss(t))return!1;var e=Kr(t);return e==Y||e==X||e==q||e==tt}function ks(t){return"number"==typeof t&&t==Us(t)}function Ts(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=z}function Ss(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Cs(t){return null!=t&&"object"==typeof t}var Es=Ue?mn(Ue):function(t){return Cs(t)&&Vo(t)==Z};function Os(t){return"number"==typeof t||Cs(t)&&Kr(t)==J}function Ds(t){if(!Cs(t)||Kr(t)!=Q)return!1;var e=De(t);if(null===e)return!0;var n=ce.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ue.call(n)==de}var Ls=Ve?mn(Ve):function(t){return Cs(t)&&Kr(t)==et};var Ps=qe?mn(qe):function(t){return Cs(t)&&Vo(t)==nt};function zs(t){return"string"==typeof t||!ms(t)&&Cs(t)&&Kr(t)==rt}function Is(t){return"symbol"==typeof t||Cs(t)&&Kr(t)==it}var Rs=$e?mn($e):function(t){return Cs(t)&&Ts(t.length)&&!!Te[Kr(t)]};var js=xo(fi),Ns=xo(function(t,e){return t<=e});function Fs(t){if(!t)return[];if(bs(t))return zs(t)?Ln(t):no(t);if(Ne&&t[Ne])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Ne]());var e=Vo(t);return(e==Z?Tn:e==nt?En:pl)(t)}function Bs(t){return t?(t=qs(t))===P||t===-P?(t<0?-1:1)*I:t==t?t:0:0===t?t:0}function Us(t){var e=Bs(t),n=e%1;return e==e?n?e-n:e:0}function Vs(t){return t?zr(Us(t),0,j):0}function qs(t){if("number"==typeof t)return t;if(Is(t))return R;if(Ss(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Ss(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(zt,"");var n=Ht.test(t);return n||Gt.test(t)?Oe(t.slice(2),n?2:8):$t.test(t)?R:+t}function $s(t){return ro(t,ol(t))}function Hs(t){return null==t?"":Ri(t)}var Ws=oo(function(t,e){if(Jo(e)||bs(e))ro(e,il(e),t);else for(var n in e)ce.call(e,n)&&Cr(t,n,e[n])}),Gs=oo(function(t,e){ro(e,ol(e),t)}),Ys=oo(function(t,e,n,r){ro(e,ol(e),t,r)}),Xs=oo(function(t,e,n,r){ro(e,il(e),t,r)}),Zs=Oo(Pr);var Js=Ai(function(t,e){t=ee(t);var n=-1,r=e.length,i=r>2?e[2]:o;for(i&&Go(e[0],e[1],i)&&(r=1);++n1),e}),ro(t,Lo(t),n),r&&(n=Ir(n,h|p|d,Co));for(var i=e.length;i--;)Ni(n,e[i]);return n});var ul=Oo(function(t,e){return null==t?{}:function(t,e){return yi(t,e,function(e,n){return tl(t,n)})}(t,e)});function cl(t,e){if(null==t)return{};var n=Qe(Lo(t),function(t){return[t]});return e=Ro(e),yi(t,n,function(t,n){return e(t,n[0])})}var fl=Mo(il),hl=Mo(ol);function pl(t){return null==t?[]:yn(t,il(t))}var dl=uo(function(t,e,n){return e=e.toLowerCase(),t+(n?vl(e):e)});function vl(t){return Al(Hs(t).toLowerCase())}function gl(t){return(t=Hs(t))&&t.replace(Xt,wn).replace(be,"")}var ml=uo(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()}),yl=uo(function(t,e,n){return t+(n?" ":"")+e.toLowerCase()}),bl=lo("toLowerCase");var xl=uo(function(t,e,n){return t+(n?"_":"")+e.toLowerCase()});var _l=uo(function(t,e,n){return t+(n?" ":"")+Al(e)});var wl=uo(function(t,e,n){return t+(n?" ":"")+e.toUpperCase()}),Al=lo("toUpperCase");function Ml(t,e,n){return t=Hs(t),(e=n?o:e)===o?function(t){return Ae.test(t)}(t)?function(t){return t.match(_e)||[]}(t):function(t){return t.match(Bt)||[]}(t):t.match(e)||[]}var kl=Ai(function(t,e){try{return He(t,o,e)}catch(t){return As(t)?t:new Kt(t)}}),Tl=Oo(function(t,e){return Ge(e,function(e){e=ca(e),Lr(t,e,ns(t[e],t))}),t});function Sl(t){return function(){return t}}var Cl=ho(),El=ho(!0);function Ol(t){return t}function Dl(t){return li("function"==typeof t?t:Ir(t,h))}var Ll=Ai(function(t,e){return function(n){return ri(n,t,e)}}),Pl=Ai(function(t,e){return function(n){return ri(t,n,e)}});function zl(t,e,n){var r=il(e),i=Xr(e,r);null!=n||Ss(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=Xr(e,il(e)));var o=!(Ss(n)&&"chain"in n&&!n.chain),a=Ms(t);return Ge(i,function(n){var r=e[n];t[n]=r,a&&(t.prototype[n]=function(){var e=this.__chain__;if(o||e){var n=t(this.__wrapped__);return(n.__actions__=no(this.__actions__)).push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,tn([this.value()],arguments))})}),t}function Il(){}var Rl=mo(Qe),jl=mo(Xe),Nl=mo(rn);function Fl(t){return Yo(t)?hn(ca(t)):function(t){return function(e){return Zr(e,t)}}(t)}var Bl=bo(),Ul=bo(!0);function Vl(){return[]}function ql(){return!1}var $l=go(function(t,e){return t+e},0),Hl=wo("ceil"),Wl=go(function(t,e){return t/e},1),Gl=wo("floor");var Yl,Xl=go(function(t,e){return t*e},1),Zl=wo("round"),Jl=go(function(t,e){return t-e},0);return pr.after=function(t,e){if("function"!=typeof e)throw new ie(l);return t=Us(t),function(){if(--t<1)return e.apply(this,arguments)}},pr.ary=ts,pr.assign=Ws,pr.assignIn=Gs,pr.assignInWith=Ys,pr.assignWith=Xs,pr.at=Zs,pr.before=es,pr.bind=ns,pr.bindAll=Tl,pr.bindKey=rs,pr.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return ms(t)?t:[t]},pr.chain=Fa,pr.chunk=function(t,e,n){e=(n?Go(t,e,n):e===o)?1:Hn(Us(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var a=0,s=0,l=r(Nn(i/e));ai?0:i+n),(r=r===o||r>i?i:Us(r))<0&&(r+=i),r=n>r?0:Vs(r);n>>0)?(t=Hs(t))&&("string"==typeof e||null!=e&&!Ls(e))&&!(e=Ri(e))&&kn(t)?Yi(Ln(t),0,n):t.split(e,n):[]},pr.spread=function(t,e){if("function"!=typeof t)throw new ie(l);return e=null==e?0:Hn(Us(e),0),Ai(function(n){var r=n[e],i=Yi(n,0,e);return r&&tn(i,r),He(t,this,i)})},pr.tail=function(t){var e=null==t?0:t.length;return e?Oi(t,1,e):[]},pr.take=function(t,e,n){return t&&t.length?Oi(t,0,(e=n||e===o?1:Us(e))<0?0:e):[]},pr.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?Oi(t,(e=r-(e=n||e===o?1:Us(e)))<0?0:e,r):[]},pr.takeRightWhile=function(t,e){return t&&t.length?Bi(t,Ro(e,3),!1,!0):[]},pr.takeWhile=function(t,e){return t&&t.length?Bi(t,Ro(e,3)):[]},pr.tap=function(t,e){return e(t),t},pr.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new ie(l);return Ss(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),is(t,e,{leading:r,maxWait:e,trailing:i})},pr.thru=Ba,pr.toArray=Fs,pr.toPairs=fl,pr.toPairsIn=hl,pr.toPath=function(t){return ms(t)?Qe(t,ca):Is(t)?[t]:no(ua(Hs(t)))},pr.toPlainObject=$s,pr.transform=function(t,e,n){var r=ms(t),i=r||_s(t)||Rs(t);if(e=Ro(e,4),null==n){var o=t&&t.constructor;n=i?r?new o:[]:Ss(t)&&Ms(o)?dr(De(t)):{}}return(i?Ge:Gr)(t,function(t,r,i){return e(n,t,r,i)}),n},pr.unary=function(t){return ts(t,1)},pr.union=Ca,pr.unionBy=Ea,pr.unionWith=Oa,pr.uniq=function(t){return t&&t.length?ji(t):[]},pr.uniqBy=function(t,e){return t&&t.length?ji(t,Ro(e,2)):[]},pr.uniqWith=function(t,e){return e="function"==typeof e?e:o,t&&t.length?ji(t,o,e):[]},pr.unset=function(t,e){return null==t||Ni(t,e)},pr.unzip=Da,pr.unzipWith=La,pr.update=function(t,e,n){return null==t?t:Fi(t,e,Hi(n))},pr.updateWith=function(t,e,n,r){return r="function"==typeof r?r:o,null==t?t:Fi(t,e,Hi(n),r)},pr.values=pl,pr.valuesIn=function(t){return null==t?[]:yn(t,ol(t))},pr.without=Pa,pr.words=Ml,pr.wrap=function(t,e){return cs(Hi(e),t)},pr.xor=za,pr.xorBy=Ia,pr.xorWith=Ra,pr.zip=ja,pr.zipObject=function(t,e){return qi(t||[],e||[],Cr)},pr.zipObjectDeep=function(t,e){return qi(t||[],e||[],Ti)},pr.zipWith=Na,pr.entries=fl,pr.entriesIn=hl,pr.extend=Gs,pr.extendWith=Ys,zl(pr,pr),pr.add=$l,pr.attempt=kl,pr.camelCase=dl,pr.capitalize=vl,pr.ceil=Hl,pr.clamp=function(t,e,n){return n===o&&(n=e,e=o),n!==o&&(n=(n=qs(n))==n?n:0),e!==o&&(e=(e=qs(e))==e?e:0),zr(qs(t),e,n)},pr.clone=function(t){return Ir(t,d)},pr.cloneDeep=function(t){return Ir(t,h|d)},pr.cloneDeepWith=function(t,e){return Ir(t,h|d,e="function"==typeof e?e:o)},pr.cloneWith=function(t,e){return Ir(t,d,e="function"==typeof e?e:o)},pr.conformsTo=function(t,e){return null==e||Rr(t,e,il(e))},pr.deburr=gl,pr.defaultTo=function(t,e){return null==t||t!=t?e:t},pr.divide=Wl,pr.endsWith=function(t,e,n){t=Hs(t),e=Ri(e);var r=t.length,i=n=n===o?r:zr(Us(n),0,r);return(n-=e.length)>=0&&t.slice(n,i)==e},pr.eq=ps,pr.escape=function(t){return(t=Hs(t))&&kt.test(t)?t.replace(At,An):t},pr.escapeRegExp=function(t){return(t=Hs(t))&&Pt.test(t)?t.replace(Lt,"\\$&"):t},pr.every=function(t,e,n){var r=ms(t)?Xe:Ur;return n&&Go(t,e,n)&&(e=o),r(t,Ro(e,3))},pr.find=qa,pr.findIndex=ga,pr.findKey=function(t,e){return an(t,Ro(e,3),Gr)},pr.findLast=$a,pr.findLastIndex=ma,pr.findLastKey=function(t,e){return an(t,Ro(e,3),Yr)},pr.floor=Gl,pr.forEach=Ha,pr.forEachRight=Wa,pr.forIn=function(t,e){return null==t?t:Hr(t,Ro(e,3),ol)},pr.forInRight=function(t,e){return null==t?t:Wr(t,Ro(e,3),ol)},pr.forOwn=function(t,e){return t&&Gr(t,Ro(e,3))},pr.forOwnRight=function(t,e){return t&&Yr(t,Ro(e,3))},pr.get=Qs,pr.gt=ds,pr.gte=vs,pr.has=function(t,e){return null!=t&&qo(t,e,ti)},pr.hasIn=tl,pr.head=ba,pr.identity=Ol,pr.includes=function(t,e,n,r){t=bs(t)?t:pl(t),n=n&&!r?Us(n):0;var i=t.length;return n<0&&(n=Hn(i+n,0)),zs(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&ln(t,e,n)>-1},pr.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:Us(n);return i<0&&(i=Hn(r+i,0)),ln(t,e,i)},pr.inRange=function(t,e,n){return e=Bs(e),n===o?(n=e,e=0):n=Bs(n),function(t,e,n){return t>=Wn(e,n)&&t=-z&&t<=z},pr.isSet=Ps,pr.isString=zs,pr.isSymbol=Is,pr.isTypedArray=Rs,pr.isUndefined=function(t){return t===o},pr.isWeakMap=function(t){return Cs(t)&&Vo(t)==at},pr.isWeakSet=function(t){return Cs(t)&&Kr(t)==st},pr.join=function(t,e){return null==t?"":qn.call(t,e)},pr.kebabCase=ml,pr.last=Aa,pr.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return n!==o&&(i=(i=Us(n))<0?Hn(r+i,0):Wn(i,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,i):sn(t,cn,i,!0)},pr.lowerCase=yl,pr.lowerFirst=bl,pr.lt=js,pr.lte=Ns,pr.max=function(t){return t&&t.length?Vr(t,Ol,Qr):o},pr.maxBy=function(t,e){return t&&t.length?Vr(t,Ro(e,2),Qr):o},pr.mean=function(t){return fn(t,Ol)},pr.meanBy=function(t,e){return fn(t,Ro(e,2))},pr.min=function(t){return t&&t.length?Vr(t,Ol,fi):o},pr.minBy=function(t,e){return t&&t.length?Vr(t,Ro(e,2),fi):o},pr.stubArray=Vl,pr.stubFalse=ql,pr.stubObject=function(){return{}},pr.stubString=function(){return""},pr.stubTrue=function(){return!0},pr.multiply=Xl,pr.nth=function(t,e){return t&&t.length?gi(t,Us(e)):o},pr.noConflict=function(){return Pe._===this&&(Pe._=ve),this},pr.noop=Il,pr.now=Qa,pr.pad=function(t,e,n){t=Hs(t);var r=(e=Us(e))?Dn(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return yo(Fn(i),n)+t+yo(Nn(i),n)},pr.padEnd=function(t,e,n){t=Hs(t);var r=(e=Us(e))?Dn(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var i=Xn();return Wn(t+i*(e-t+Ee("1e-"+((i+"").length-1))),e)}return _i(t,e)},pr.reduce=function(t,e,n){var r=ms(t)?en:dn,i=arguments.length<3;return r(t,Ro(e,4),n,i,Fr)},pr.reduceRight=function(t,e,n){var r=ms(t)?nn:dn,i=arguments.length<3;return r(t,Ro(e,4),n,i,Br)},pr.repeat=function(t,e,n){return e=(n?Go(t,e,n):e===o)?1:Us(e),wi(Hs(t),e)},pr.replace=function(){var t=arguments,e=Hs(t[0]);return t.length<3?e:e.replace(t[1],t[2])},pr.result=function(t,e,n){var r=-1,i=(e=Wi(e,t)).length;for(i||(i=1,t=o);++rz)return[];var n=j,r=Wn(t,j);e=Ro(e),t-=j;for(var i=gn(r,e);++n=a)return t;var l=n-Dn(r);if(l<1)return r;var u=s?Yi(s,0,l).join(""):t.slice(0,l);if(i===o)return u+r;if(s&&(l+=u.length-l),Ls(i)){if(t.slice(l).search(i)){var c,f=u;for(i.global||(i=ne(i.source,Hs(qt.exec(i))+"g")),i.lastIndex=0;c=i.exec(f);)var h=c.index;u=u.slice(0,h===o?l:h)}}else if(t.indexOf(Ri(i),l)!=l){var p=u.lastIndexOf(i);p>-1&&(u=u.slice(0,p))}return u+r},pr.unescape=function(t){return(t=Hs(t))&&Mt.test(t)?t.replace(wt,Pn):t},pr.uniqueId=function(t){var e=++fe;return Hs(t)+e},pr.upperCase=wl,pr.upperFirst=Al,pr.each=Ha,pr.eachRight=Wa,pr.first=ba,zl(pr,(Yl={},Gr(pr,function(t,e){ce.call(pr.prototype,e)||(Yl[e]=t)}),Yl),{chain:!1}),pr.VERSION="4.17.15",Ge(["bind","bindKey","curry","curryRight","partial","partialRight"],function(t){pr[t].placeholder=pr}),Ge(["drop","take"],function(t,e){mr.prototype[t]=function(n){n=n===o?1:Hn(Us(n),0);var r=this.__filtered__&&!e?new mr(this):this.clone();return r.__filtered__?r.__takeCount__=Wn(n,r.__takeCount__):r.__views__.push({size:Wn(n,j),type:t+(r.__dir__<0?"Right":"")}),r},mr.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}}),Ge(["filter","map","takeWhile"],function(t,e){var n=e+1,r=n==D||3==n;mr.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:Ro(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}}),Ge(["head","last"],function(t,e){var n="take"+(e?"Right":"");mr.prototype[t]=function(){return this[n](1).value()[0]}}),Ge(["initial","tail"],function(t,e){var n="drop"+(e?"":"Right");mr.prototype[t]=function(){return this.__filtered__?new mr(this):this[n](1)}}),mr.prototype.compact=function(){return this.filter(Ol)},mr.prototype.find=function(t){return this.filter(t).head()},mr.prototype.findLast=function(t){return this.reverse().find(t)},mr.prototype.invokeMap=Ai(function(t,e){return"function"==typeof t?new mr(this):this.map(function(n){return ri(n,t,e)})}),mr.prototype.reject=function(t){return this.filter(ls(Ro(t)))},mr.prototype.slice=function(t,e){t=Us(t);var n=this;return n.__filtered__&&(t>0||e<0)?new mr(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),e!==o&&(n=(e=Us(e))<0?n.dropRight(-e):n.take(e-t)),n)},mr.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},mr.prototype.toArray=function(){return this.take(j)},Gr(mr.prototype,function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),i=pr[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);i&&(pr.prototype[e]=function(){var e=this.__wrapped__,s=r?[1]:arguments,l=e instanceof mr,u=s[0],c=l||ms(e),f=function(t){var e=i.apply(pr,tn([t],s));return r&&h?e[0]:e};c&&n&&"function"==typeof u&&1!=u.length&&(l=c=!1);var h=this.__chain__,p=!!this.__actions__.length,d=a&&!h,v=l&&!p;if(!a&&c){e=v?e:new mr(this);var g=t.apply(e,s);return g.__actions__.push({func:Ba,args:[f],thisArg:o}),new gr(g,h)}return d&&v?t.apply(this,s):(g=this.thru(f),d?r?g.value()[0]:g.value():g)})}),Ge(["pop","push","shift","sort","splice","unshift"],function(t){var e=oe[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);pr.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(ms(i)?i:[],t)}return this[n](function(n){return e.apply(ms(n)?n:[],t)})}}),Gr(mr.prototype,function(t,e){var n=pr[e];if(n){var r=n.name+"";ce.call(ir,r)||(ir[r]=[]),ir[r].push({name:e,func:n})}}),ir[po(o,y).name]=[{name:"wrapper",func:o}],mr.prototype.clone=function(){var t=new mr(this.__wrapped__);return t.__actions__=no(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=no(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=no(this.__views__),t},mr.prototype.reverse=function(){if(this.__filtered__){var t=new mr(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},mr.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=ms(t),r=e<0,i=n?t.length:0,o=function(t,e,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:t,value:t?o:this.__values__[this.__index__++]}},pr.prototype.plant=function(t){for(var e,n=this;n instanceof vr;){var r=ha(n);r.__index__=0,r.__values__=o,e?i.__wrapped__=r:e=r;var i=r;n=n.__wrapped__}return i.__wrapped__=t,e},pr.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof mr){var e=t;return this.__actions__.length&&(e=new mr(this)),(e=e.reverse()).__actions__.push({func:Ba,args:[Sa],thisArg:o}),new gr(e,this.__chain__)}return this.thru(Sa)},pr.prototype.toJSON=pr.prototype.valueOf=pr.prototype.value=function(){return Ui(this.__wrapped__,this.__actions__)},pr.prototype.first=pr.prototype.head,Ne&&(pr.prototype[Ne]=function(){return this}),pr}();Pe._=zn,(i=function(){return zn}.call(e,n,e,r))===o||(r.exports=i)}).call(this)}).call(this,n(19),n(70)(t))},function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(t){"object"==typeof window&&(n=window)}t.exports=n},,function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",function(){return getTaxidFromEutils}),__webpack_require__.d(__webpack_exports__,"d",function(){return setTaxidAndAssemblyAndChromosomes}),__webpack_require__.d(__webpack_exports__,"c",function(){return getTaxids}),__webpack_require__.d(__webpack_exports__,"e",function(){return setTaxidData}),__webpack_require__.d(__webpack_exports__,"a",function(){return getOrganismFromEutils});var d3_fetch__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(15),d3=Object.assign({},d3_fetch__WEBPACK_IMPORTED_MODULE_0__);function getTaxidFromEutils(t){var e,n,r,i=this;e=i.config.organism,n=i.esearch+"&db=taxonomy&term="+e,d3.json(n).then(function(e){return r=e.esearchresult.idlist[0],void 0===i.config.taxids?i.config.taxids=[r]:i.config.taxids.push(r),t(r)})}function setTaxidData(taxid){var organism,dataDir,urlOrg,taxids,ideo=this;organism=ideo.config.organism,dataDir=ideo.config.dataDir,urlOrg=organism.replace(" ","-"),taxids=[taxid],ideo.organisms[taxid]={commonName:"",scientificName:organism,scientificNameAbbr:""};var fullyBandedTaxids=["9606","10090","10116"];fullyBandedTaxids.includes(taxid)&&!ideo.config.showFullyBanded&&(urlOrg+="-no-bands");var chromosomesUrl=dataDir+urlOrg+".js",promise2=new Promise(function(t,e){fetch(chromosomesUrl).then(function(n){if(!1!==n.ok)return n.text().then(function(e){t(e)});e(Error("Fetch failed for "+chromosomesUrl))})});return promise2.then(function(data){var asmAndChrTaxidsArray=[""],chromosomes=[],seenChrs={},chr;eval(data);for(var i=0;i2?y:m,r=i=null,p}function p(e){return(r||(r=n(o,l,c?function(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=e?0:t>=n?1:r(t)}}}(t):t,u)))(+e)}return p.invert=function(t){return(i||(i=n(l,o,g,c?function(t){return function(e,n){var r=t(e=+e,n=+n);return function(t){return t<=0?e:t>=1?n:r(t)}}}(e):e)))(+t)},p.domain=function(t){return arguments.length?(o=a.call(t,d),f()):o.slice()},p.range=function(t){return arguments.length?(l=s.call(t),f()):l.slice()},p.rangeRound=function(t){return l=s.call(t),u=h.r,f()},p.clamp=function(t){return arguments.length?(c=!!t,f()):c},p.interpolate=function(t){return arguments.length?(u=t,f()):u},f()}var _=n(14),w=function(t,e,n){var i,o=t[0],a=t[t.length-1],s=Object(r.A)(o,a,null==e?10:e);switch((n=Object(_.e)(null==n?",f":n)).type){case"s":var l=Math.max(Math.abs(o),Math.abs(a));return null!=n.precision||isNaN(i=Object(_.g)(s,l))||(n.precision=i),Object(_.d)(n,l);case"":case"e":case"g":case"p":case"r":null!=n.precision||isNaN(i=Object(_.h)(s,Math.max(Math.abs(o),Math.abs(a))))||(n.precision=i-("e"===n.type));break;case"f":case"%":null!=n.precision||isNaN(i=Object(_.f)(s))||(n.precision=i-2*("%"===n.type))}return Object(_.a)(n)};function A(t){var e=t.domain;return t.ticks=function(t){var n=e();return Object(r.B)(n[0],n[n.length-1],null==t?10:t)},t.tickFormat=function(t,n){return w(e(),t,n)},t.nice=function(n){null==n&&(n=10);var i,o=e(),a=0,s=o.length-1,l=o[a],u=o[s];return u0?(l=Math.floor(l/i)*i,u=Math.ceil(u/i)*i,i=Object(r.z)(l,u,n)):i<0&&(l=Math.ceil(l*i)/i,u=Math.floor(u*i)/i,i=Object(r.z)(l,u,n)),i>0?(o[a]=Math.floor(l/i)*i,o[s]=Math.ceil(u/i)*i,e(o)):i<0&&(o[a]=Math.ceil(l*i)/i,o[s]=Math.floor(u*i)/i,e(o)),t},t}function M(){var t=x(g,h.m);return t.copy=function(){return b(t,M())},A(t)}function k(){var t=[0,1];function e(t){return+t}return e.invert=e,e.domain=e.range=function(n){return arguments.length?(t=a.call(n,d),e):t.slice()},e.copy=function(){return k().domain(t)},A(e)}var T=function(t,e){var n,r=0,i=(t=t.slice()).length-1,o=t[r],a=t[i];return a0){for(;pu)break;g.push(h)}}else for(;p=1;--f)if(!((h=c*f)u)break;g.push(h)}}else g=Object(r.B)(p,d,Math.min(d-p,v)).map(o);return a?g.reverse():g},t.tickFormat=function(e,r){if(null==r&&(r=10===n?".0e":","),"function"!=typeof r&&(r=Object(_.a)(r)),e===1/0)return r;null==e&&(e=10);var a=Math.max(1,n*e/t.ticks().length);return function(t){var e=t/o(Math.round(i(t)));return e*n0?n[i-1]:t[0],i=n?[i[n-1],e]:[i[a-1],i[a]]},a.copy=function(){return N().domain([t,e]).range(o)},A(a)}function F(){var t=[.5],e=[0,1],n=1;function i(i){if(i<=i)return e[Object(r.b)(t,i,0,n)]}return i.domain=function(r){return arguments.length?(t=s.call(r),n=Math.min(t.length,e.length-1),i):t.slice()},i.range=function(r){return arguments.length?(e=s.call(r),n=Math.min(t.length,e.length-1),i):e.slice()},i.invertExtent=function(n){var r=e.indexOf(n);return[t[r-1],t[r]]},i.copy=function(){return F().domain(t).range(e)},i}var B=n(3),U=n(23),V=1e3,q=60*V,$=60*q,H=24*$,W=7*H,G=30*H,Y=365*H;function X(t){return new Date(t)}function Z(t){return t instanceof Date?+t:+new Date(+t)}function J(t,e,n,i,o,s,l,u,c){var f=x(g,h.m),p=f.invert,d=f.domain,v=c(".%L"),m=c(":%S"),y=c("%I:%M"),_=c("%I %p"),w=c("%a %d"),A=c("%b %d"),M=c("%B"),k=c("%Y"),S=[[l,1,V],[l,5,5*V],[l,15,15*V],[l,30,30*V],[s,1,q],[s,5,5*q],[s,15,15*q],[s,30,30*q],[o,1,$],[o,3,3*$],[o,6,6*$],[o,12,12*$],[i,1,H],[i,2,2*H],[n,1,W],[e,1,G],[e,3,3*G],[t,1,Y]];function C(r){return(l(r)1)&&(t-=Math.floor(t));var e=Math.abs(t-.5);return ut.h=360*t-100,ut.s=1.5-1.5*e,ut.l=.8-.9*e,ut+""};function ft(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}var ht=ft(tt("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),pt=ft(tt("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),dt=ft(tt("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),vt=ft(tt("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function gt(t){var e=0,n=1,r=!1;function i(i){var o=(i-e)/(n-e);return t(r?Math.max(0,Math.min(1,o)):o)}return i.domain=function(t){return arguments.length?(e=+t[0],n=+t[1],i):[e,n]},i.clamp=function(t){return arguments.length?(r=!!t,i):r},i.interpolator=function(e){return arguments.length?(t=e,i):t},i.copy=function(){return gt(t).domain([e,n]).clamp(r)},A(i)}n.d(e,"i",function(){return c}),n.d(e,"o",function(){return f}),n.d(e,"j",function(){return k}),n.d(e,"l",function(){return M}),n.d(e,"m",function(){return P}),n.d(e,"n",function(){return u}),n.d(e,"k",function(){return l}),n.d(e,"p",function(){return I}),n.d(e,"t",function(){return R}),n.d(e,"q",function(){return j}),n.d(e,"r",function(){return N}),n.d(e,"u",function(){return F}),n.d(e,"v",function(){return K}),n.d(e,"w",function(){return Q}),n.d(e,"x",function(){return et}),n.d(e,"z",function(){return nt}),n.d(e,"A",function(){return rt}),n.d(e,"y",function(){return it}),n.d(e,"b",function(){return at}),n.d(e,"f",function(){return ct}),n.d(e,"h",function(){return st}),n.d(e,"a",function(){return lt}),n.d(e,"g",function(){return ht}),n.d(e,"d",function(){return pt}),n.d(e,"c",function(){return dt}),n.d(e,"e",function(){return vt}),n.d(e,"s",function(){return gt})},function(t,e,n){"use strict";var r=n(3);function i(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function o(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function a(t){return{y:t,m:0,d:1,H:0,M:0,S:0,L:0}}function s(t){var e=t.dateTime,n=t.date,s=t.time,l=t.periods,u=t.days,c=t.shortDays,f=t.months,h=t.shortMonths,d=b(l),v=x(l),g=b(u),m=x(u),y=b(c),At=x(c),Mt=b(f),kt=x(f),Tt=b(h),St=x(h),Ct={a:function(t){return c[t.getDay()]},A:function(t){return u[t.getDay()]},b:function(t){return h[t.getMonth()]},B:function(t){return f[t.getMonth()]},c:null,d:B,e:B,f:H,H:U,I:V,j:q,L:$,m:W,M:G,p:function(t){return l[+(t.getHours()>=12)]},Q:_t,s:wt,S:Y,u:X,U:Z,V:J,w:K,W:Q,x:null,X:null,y:tt,Y:et,Z:nt,"%":xt},Et={a:function(t){return c[t.getUTCDay()]},A:function(t){return u[t.getUTCDay()]},b:function(t){return h[t.getUTCMonth()]},B:function(t){return f[t.getUTCMonth()]},c:null,d:rt,e:rt,f:lt,H:it,I:ot,j:at,L:st,m:ut,M:ct,p:function(t){return l[+(t.getUTCHours()>=12)]},Q:_t,s:wt,S:ft,u:ht,U:pt,V:dt,w:vt,W:gt,x:null,X:null,y:mt,Y:yt,Z:bt,"%":xt},Ot={a:function(t,e,n){var r=y.exec(e.slice(n));return r?(t.w=At[r[0].toLowerCase()],n+r[0].length):-1},A:function(t,e,n){var r=g.exec(e.slice(n));return r?(t.w=m[r[0].toLowerCase()],n+r[0].length):-1},b:function(t,e,n){var r=Tt.exec(e.slice(n));return r?(t.m=St[r[0].toLowerCase()],n+r[0].length):-1},B:function(t,e,n){var r=Mt.exec(e.slice(n));return r?(t.m=kt[r[0].toLowerCase()],n+r[0].length):-1},c:function(t,n,r){return Pt(t,e,n,r)},d:O,e:O,f:R,H:L,I:L,j:D,L:I,m:E,M:P,p:function(t,e,n){var r=d.exec(e.slice(n));return r?(t.p=v[r[0].toLowerCase()],n+r[0].length):-1},Q:N,s:F,S:z,u:w,U:A,V:M,w:_,W:k,x:function(t,e,r){return Pt(t,n,e,r)},X:function(t,e,n){return Pt(t,s,e,n)},y:S,Y:T,Z:C,"%":j};function Dt(t,e){return function(n){var r,i,o,a=[],s=-1,l=0,u=t.length;for(n instanceof Date||(n=new Date(+n));++s53)return null;"w"in l||(l.w=1),"Z"in l?(s=(i=o(a(l.y))).getUTCDay(),i=s>4||0===s?r.P.ceil(i):Object(r.P)(i),i=r.F.offset(i,7*(l.V-1)),l.y=i.getUTCFullYear(),l.m=i.getUTCMonth(),l.d=i.getUTCDate()+(l.w+6)%7):(s=(i=e(a(l.y))).getDay(),i=s>4||0===s?r.l.ceil(i):Object(r.l)(i),i=r.a.offset(i,7*(l.V-1)),l.y=i.getFullYear(),l.m=i.getMonth(),l.d=i.getDate()+(l.w+6)%7)}else("W"in l||"U"in l)&&("w"in l||(l.w="u"in l?l.u%7:"W"in l?1:0),s="Z"in l?o(a(l.y)).getUTCDay():e(a(l.y)).getDay(),l.m=0,l.d="W"in l?(l.w+6)%7+7*l.W-(s+5)%7:l.w+7*l.U-(s+6)%7);return"Z"in l?(l.H+=l.Z/100|0,l.M+=l.Z%100,o(l)):e(l)}}function Pt(t,e,n,r){for(var i,o,a=0,s=e.length,l=n.length;a=l)return-1;if(37===(i=e.charCodeAt(a++))){if(i=e.charAt(a++),!(o=Ot[i in p?e.charAt(a++):i])||(r=o(t,n,r))<0)return-1}else if(i!=n.charCodeAt(r++))return-1}return r}return Ct.x=Dt(n,Ct),Ct.X=Dt(s,Ct),Ct.c=Dt(e,Ct),Et.x=Dt(n,Et),Et.X=Dt(s,Et),Et.c=Dt(e,Et),{format:function(t){var e=Dt(t+="",Ct);return e.toString=function(){return t},e},parse:function(t){var e=Lt(t+="",i);return e.toString=function(){return t},e},utcFormat:function(t){var e=Dt(t+="",Et);return e.toString=function(){return t},e},utcParse:function(t){var e=Lt(t,o);return e.toString=function(){return t},e}}}var l,u,c,f,h,p={"-":"",_:" ",0:"0"},d=/^\s*\d+/,v=/^%/,g=/[\\^$*+?|[\]().{}]/g;function m(t,e,n){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o68?1900:2e3),n+r[0].length):-1}function C(t,e,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function E(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.m=r[0]-1,n+r[0].length):-1}function O(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.d=+r[0],n+r[0].length):-1}function D(t,e,n){var r=d.exec(e.slice(n,n+3));return r?(t.m=0,t.d=+r[0],n+r[0].length):-1}function L(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.H=+r[0],n+r[0].length):-1}function P(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.M=+r[0],n+r[0].length):-1}function z(t,e,n){var r=d.exec(e.slice(n,n+2));return r?(t.S=+r[0],n+r[0].length):-1}function I(t,e,n){var r=d.exec(e.slice(n,n+3));return r?(t.L=+r[0],n+r[0].length):-1}function R(t,e,n){var r=d.exec(e.slice(n,n+6));return r?(t.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function j(t,e,n){var r=v.exec(e.slice(n,n+1));return r?n+r[0].length:-1}function N(t,e,n){var r=d.exec(e.slice(n));return r?(t.Q=+r[0],n+r[0].length):-1}function F(t,e,n){var r=d.exec(e.slice(n));return r?(t.Q=1e3*+r[0],n+r[0].length):-1}function B(t,e){return m(t.getDate(),e,2)}function U(t,e){return m(t.getHours(),e,2)}function V(t,e){return m(t.getHours()%12||12,e,2)}function q(t,e){return m(1+r.a.count(Object(r.D)(t),t),e,3)}function $(t,e){return m(t.getMilliseconds(),e,3)}function H(t,e){return $(t,e)+"000"}function W(t,e){return m(t.getMonth()+1,e,2)}function G(t,e){return m(t.getMinutes(),e,2)}function Y(t,e){return m(t.getSeconds(),e,2)}function X(t){var e=t.getDay();return 0===e?7:e}function Z(t,e){return m(r.t.count(Object(r.D)(t),t),e,2)}function J(t,e){var n=t.getDay();return t=n>=4||0===n?Object(r.v)(t):r.v.ceil(t),m(r.v.count(Object(r.D)(t),t)+(4===Object(r.D)(t).getDay()),e,2)}function K(t){return t.getDay()}function Q(t,e){return m(r.l.count(Object(r.D)(t),t),e,2)}function tt(t,e){return m(t.getFullYear()%100,e,2)}function et(t,e){return m(t.getFullYear()%1e4,e,4)}function nt(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+m(e/60|0,"0",2)+m(e%60,"0",2)}function rt(t,e){return m(t.getUTCDate(),e,2)}function it(t,e){return m(t.getUTCHours(),e,2)}function ot(t,e){return m(t.getUTCHours()%12||12,e,2)}function at(t,e){return m(1+r.F.count(Object(r.hb)(t),t),e,3)}function st(t,e){return m(t.getUTCMilliseconds(),e,3)}function lt(t,e){return st(t,e)+"000"}function ut(t,e){return m(t.getUTCMonth()+1,e,2)}function ct(t,e){return m(t.getUTCMinutes(),e,2)}function ft(t,e){return m(t.getUTCSeconds(),e,2)}function ht(t){var e=t.getUTCDay();return 0===e?7:e}function pt(t,e){return m(r.X.count(Object(r.hb)(t),t),e,2)}function dt(t,e){var n=t.getUTCDay();return t=n>=4||0===n?Object(r.Z)(t):r.Z.ceil(t),m(r.Z.count(Object(r.hb)(t),t)+(4===Object(r.hb)(t).getUTCDay()),e,2)}function vt(t){return t.getUTCDay()}function gt(t,e){return m(r.P.count(Object(r.hb)(t),t),e,2)}function mt(t,e){return m(t.getUTCFullYear()%100,e,2)}function yt(t,e){return m(t.getUTCFullYear()%1e4,e,4)}function bt(){return"+0000"}function xt(){return"%"}function _t(t){return+t}function wt(t){return Math.floor(+t/1e3)}function At(t){return l=s(t),u=l.format,c=l.parse,f=l.utcFormat,h=l.utcParse,l}At({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});var Mt=Date.prototype.toISOString?function(t){return t.toISOString()}:f("%Y-%m-%dT%H:%M:%S.%LZ");var kt=+new Date("2000-01-01T00:00:00.000Z")?function(t){var e=new Date(t);return isNaN(e)?null:e}:h("%Y-%m-%dT%H:%M:%S.%LZ");n.d(e,"d",function(){return At}),n.d(e,"c",function(){return u}),n.d(e,"f",function(){return c}),n.d(e,"g",function(){return f}),n.d(e,"h",function(){return h}),n.d(e,"e",function(){return s}),n.d(e,"a",function(){return Mt}),n.d(e,"b",function(){return kt})},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},i=n(37),o={};e.default=o,o.read=function(t,e){var n,r=(n=this,function(t,r,i){return o._onRetrieval(t,i,e,n)});return void 0===e?new Promise(function(n,o){e=function(t,e){t?o(t):n(e)},i(t,r)}):i(t,r)},o._onRetrieval=function(t,e,n,r){var i=void 0;return void 0!==t&&(i=r.parse(e)),n.call(r,t,i)},o.extend=function(t,e){return extend(o,t,e)},o.mixin=function(t){return"object"!==(void 0===t?"undefined":r(t))&&(t=t.prototype),["read"].forEach(function(e){t[e]=o[e]},this),t}},function(t,e){t.exports=window.ReactDOM},function(t,e){t.exports={},t.exports[0]=t.exports.Xx={symbol:"Xx",name:"unknown",mass:1,radius:1,color:[1,.078,.576],number:0},t.exports[1]=t.exports.H={symbol:"H",name:"hydrogen",mass:1.00794,radius:.31,color:[1,1,1],number:1},t.exports[2]=t.exports.He={symbol:"He",name:"helium",mass:4.002602,radius:.28,color:[.851,1,1],number:2},t.exports[3]=t.exports.Li={symbol:"Li",name:"lithium",mass:6.941,radius:1.28,color:[.8,.502,1],number:3},t.exports[4]=t.exports.Be={symbol:"Be",name:"beryllium",mass:9.012182,radius:.96,color:[.761,1,0],number:4},t.exports[5]=t.exports.B={symbol:"B",name:"boron",mass:10.811,radius:.84,color:[1,.71,.71],number:5},t.exports[6]=t.exports.C={symbol:"C",name:"carbon",mass:12.0107,radius:.73,color:[.565,.565,.565],number:6},t.exports[7]=t.exports.N={symbol:"N",name:"nitrogen",mass:14.0067,radius:.71,color:[.188,.314,.973],number:7},t.exports[8]=t.exports.O={symbol:"O",name:"oxygen",mass:15.9994,radius:.66,color:[1,.051,.051],number:8},t.exports[9]=t.exports.F={symbol:"F",name:"fluorine",mass:18.9984032,radius:.57,color:[.565,.878,.314],number:9},t.exports[10]=t.exports.Ne={symbol:"Ne",name:"neon",mass:20.1797,radius:.58,color:[.702,.89,.961],number:10},t.exports[11]=t.exports.Na={symbol:"Na",name:"sodium",mass:22.98976928,radius:1.66,color:[.671,.361,.949],number:11},t.exports[12]=t.exports.Mg={symbol:"Mg",name:"magnesium",mass:24.305,radius:1.41,color:[.541,1,0],number:12},t.exports[13]=t.exports.Al={symbol:"Al",name:"aluminum",mass:26.9815386,radius:1.21,color:[.749,.651,.651],number:13},t.exports[14]=t.exports.Si={symbol:"Si",name:"silicon",mass:28.0855,radius:1.11,color:[.941,.784,.627],number:14},t.exports[15]=t.exports.P={symbol:"P",name:"phosphorus",mass:30.973762,radius:1.07,color:[1,.502,0],number:15},t.exports[16]=t.exports.S={symbol:"S",name:"sulfur",mass:32.065,radius:1.05,color:[1,1,.188],number:16},t.exports[17]=t.exports.Cl={symbol:"Cl",name:"chlorine",mass:35.453,radius:1.02,color:[.122,.941,.122],number:17},t.exports[18]=t.exports.Ar={symbol:"Ar",name:"argon",mass:39.948,radius:1.06,color:[.502,.82,.89],number:18},t.exports[19]=t.exports.K={symbol:"K",name:"potassium",mass:39.0983,radius:2.03,color:[.561,.251,.831],number:19},t.exports[20]=t.exports.Ca={symbol:"Ca",name:"calcium",mass:40.078,radius:1.76,color:[.239,1,0],number:20},t.exports[21]=t.exports.Sc={symbol:"Sc",name:"scandium",mass:44.955912,radius:1.7,color:[.902,.902,.902],number:21},t.exports[22]=t.exports.Ti={symbol:"Ti",name:"titanium",mass:47.867,radius:1.6,color:[.749,.761,.78],number:22},t.exports[23]=t.exports.V={symbol:"V",name:"vanadium",mass:50.9415,radius:1.53,color:[.651,.651,.671],number:23},t.exports[24]=t.exports.Cr={symbol:"Cr",name:"chromium",mass:51.9961,radius:1.39,color:[.541,.6,.78],number:24},t.exports[25]=t.exports.Mn={symbol:"Mn",name:"manganese",mass:54.938045,radius:1.39,color:[.611,.478,.78],number:25},t.exports[26]=t.exports.Fe={symbol:"Fe",name:"iron",mass:55.845,radius:1.32,color:[.878,.4,.2],number:26},t.exports[27]=t.exports.Co={symbol:"Co",name:"cobalt",mass:58.6934,radius:1.26,color:[.941,.565,.627],number:27},t.exports[28]=t.exports.Ni={symbol:"Ni",name:"nickel",mass:58.933195,radius:1.24,color:[.314,.816,.314],number:28},t.exports[29]=t.exports.Cu={symbol:"Cu",name:"copper",mass:63.546,radius:1.32,color:[.784,.502,.2],number:29},t.exports[30]=t.exports.Zn={symbol:"Zn",name:"zinc",mass:65.38,radius:1.22,color:[.49,.502,.69],number:30},t.exports[31]=t.exports.Ga={symbol:"Ga",name:"gallium",mass:69.723,radius:1.22,color:[.761,.561,.561],number:31},t.exports[32]=t.exports.Ge={symbol:"Ge",name:"germanium",mass:72.64,radius:1.2,color:[.4,.561,.561],number:32},t.exports[33]=t.exports.As={symbol:"As",name:"arsenic",mass:74.9216,radius:1.19,color:[.741,.502,.89],number:33},t.exports[34]=t.exports.Se={symbol:"Se",name:"selenium",mass:78.96,radius:1.2,color:[1,.631,0],number:34},t.exports[35]=t.exports.Br={symbol:"Br",name:"bromine",mass:79.904,radius:1.2,color:[.651,.161,.161],number:35},t.exports[36]=t.exports.Kr={symbol:"Kr",name:"krypton",mass:83.798,radius:1.16,color:[.361,.722,.82],number:36},t.exports[37]=t.exports.Rb={symbol:"Rb",name:"rubidium",mass:85.4678,radius:2.2,color:[.439,.18,.69],number:37},t.exports[38]=t.exports.Sr={symbol:"Sr",name:"strontium",mass:87.62,radius:1.95,color:[0,1,0],number:38},t.exports[39]=t.exports.Y={symbol:"Y",name:"yttrium",mass:88.90585,radius:1.9,color:[.58,1,1],number:39},t.exports[40]=t.exports.Zr={symbol:"Zr",name:"zirconium",mass:91.224,radius:1.75,color:[.58,.878,.878],number:40},t.exports[41]=t.exports.Nb={symbol:"Nb",name:"niobium",mass:92.90638,radius:1.64,color:[.451,.761,.788],number:41},t.exports[42]=t.exports.Mo={symbol:"Mo",name:"molybdenum",mass:95.96,radius:1.54,color:[.329,.71,.71],number:42},t.exports[43]=t.exports.Tc={symbol:"Tc",name:"technetium",mass:98,radius:1.47,color:[.231,.62,.62],number:43},t.exports[44]=t.exports.Ru={symbol:"Ru",name:"ruthenium",mass:101.07,radius:1.46,color:[.141,.561,.561],number:44},t.exports[45]=t.exports.Rh={symbol:"Rh",name:"rhodium",mass:102.9055,radius:1.42,color:[.039,.49,.549],number:45},t.exports[46]=t.exports.Pd={symbol:"Pd",name:"palladium",mass:106.42,radius:1.39,color:[0,.412,.522],number:46},t.exports[47]=t.exports.Ag={symbol:"Ag",name:"silver",mass:107.8682,radius:1.45,color:[.753,.753,.753],number:47},t.exports[48]=t.exports.Cd={symbol:"Cd",name:"cadmium",mass:112.411,radius:1.44,color:[1,.851,.561],number:48},t.exports[49]=t.exports.In={symbol:"In",name:"indium",mass:114.818,radius:1.42,color:[.651,.459,.451],number:49},t.exports[50]=t.exports.Sn={symbol:"Sn",name:"tin",mass:118.71,radius:1.39,color:[.4,.502,.502],number:50},t.exports[51]=t.exports.Sb={symbol:"Sb",name:"antimony",mass:121.76,radius:1.39,color:[.62,.388,.71],number:51},t.exports[52]=t.exports.Te={symbol:"Te",name:"tellurium",mass:127.6,radius:1.38,color:[.831,.478,0],number:52},t.exports[53]=t.exports.I={symbol:"I",name:"iodine",mass:126.9047,radius:1.39,color:[.58,0,.58],number:53},t.exports[54]=t.exports.Xe={symbol:"Xe",name:"xenon",mass:131.293,radius:1.4,color:[.259,.62,.69],number:54},t.exports[55]=t.exports.Cs={symbol:"Cs",name:"cesium",mass:132.9054519,radius:2.44,color:[.341,.09,.561],number:55},t.exports[56]=t.exports.Ba={symbol:"Ba",name:"barium",mass:137.327,radius:2.15,color:[0,.788,0],number:56},t.exports[57]=t.exports.La={symbol:"La",name:"lanthanum",mass:138.90547,radius:2.07,color:[.439,.831,1],number:57},t.exports[58]=t.exports.Ce={symbol:"Ce",name:"cerium",mass:140.116,radius:2.04,color:[1,1,.78],number:58},t.exports[59]=t.exports.Pr={symbol:"Pr",name:"praseodymium",mass:140.90765,radius:2.03,color:[.851,1,.78],number:59},t.exports[60]=t.exports.Nd={symbol:"Nd",name:"neodymium",mass:144.242,radius:2.01,color:[.78,1,.78],number:60},t.exports[61]=t.exports.Pm={symbol:"Pm",name:"promethium",mass:145,radius:1.99,color:[.639,1,.78],number:61},t.exports[62]=t.exports.Sm={symbol:"Sm",name:"samarium",mass:150.36,radius:1.98,color:[.561,1,.78],number:62},t.exports[63]=t.exports.Eu={symbol:"Eu",name:"europium",mass:151.964,radius:1.98,color:[.38,1,.78],number:63},t.exports[64]=t.exports.Gd={symbol:"Gd",name:"gadolinium",mass:157.25,radius:1.96,color:[.271,1,.78],number:64},t.exports[65]=t.exports.Tb={symbol:"Tb",name:"terbium",mass:158.92535,radius:1.94,color:[.189,1,.78],number:65},t.exports[66]=t.exports.Dy={symbol:"Dy",name:"dysprosium",mass:162.5,radius:1.92,color:[.122,1,.78],number:66},t.exports[67]=t.exports.Ho={symbol:"Ho",name:"holmium",mass:164.93032,radius:1.92,color:[0,1,.612],number:67},t.exports[68]=t.exports.Er={symbol:"Er",name:"erbium",mass:167.259,radius:1.89,color:[0,.902,.459],number:68},t.exports[69]=t.exports.Tm={symbol:"Tm",name:"thulium",mass:168.93421,radius:1.9,color:[0,.831,.322],number:69},t.exports[70]=t.exports.Yb={symbol:"Yb",name:"ytterbium",mass:173.054,radius:1.87,color:[0,.749,.22],number:70},t.exports[71]=t.exports.Lu={symbol:"Lu",name:"lutetium",mass:174.9668,radius:1.87,color:[0,.671,.141],number:71},t.exports[72]=t.exports.Hf={symbol:"Hf",name:"hafnium",mass:178.49,radius:1.75,color:[.302,.761,1],number:72},t.exports[73]=t.exports.Ta={symbol:"Ta",name:"tantalum",mass:180.94788,radius:1.7,color:[.302,.651,1],number:73},t.exports[74]=t.exports.W={symbol:"W",name:"tungsten",mass:183.84,radius:1.62,color:[.129,.58,.839],number:74},t.exports[75]=t.exports.Re={symbol:"Re",name:"rhenium",mass:186.207,radius:1.51,color:[.149,.49,.671],number:75},t.exports[76]=t.exports.Os={symbol:"Os",name:"osmium",mass:190.23,radius:1.44,color:[.149,.4,.588],number:76},t.exports[77]=t.exports.Ir={symbol:"Ir",name:"iridium",mass:192.217,radius:1.41,color:[.09,.329,.529],number:77},t.exports[78]=t.exports.Pt={symbol:"Pt",name:"platinum",mass:195.084,radius:1.36,color:[.816,.816,.878],number:78},t.exports[79]=t.exports.Au={symbol:"Au",name:"gold",mass:196.966569,radius:1.36,color:[1,.82,.137],number:79},t.exports[80]=t.exports.Hg={symbol:"Hg",name:"mercury",mass:200.59,radius:1.32,color:[.722,.722,.816],number:80},t.exports[81]=t.exports.Tl={symbol:"Tl",name:"thallium",mass:204.3833,radius:1.45,color:[.651,.329,.302],number:81},t.exports[82]=t.exports.Pb={symbol:"Pb",name:"lead",mass:207.2,radius:1.46,color:[.341,.349,.38],number:82},t.exports[83]=t.exports.Bi={symbol:"Bi",name:"bismuth",mass:208.9804,radius:1.48,color:[.62,.31,.71],number:83},t.exports[84]=t.exports.Po={symbol:"Po",name:"polonium",mass:210,radius:1.4,color:[.671,.361,0],number:84},t.exports[85]=t.exports.At={symbol:"At",name:"astatine",mass:210,radius:1.5,color:[.459,.31,.271],number:85},t.exports[86]=t.exports.Rn={symbol:"Rn",name:"radon",mass:220,radius:1.5,color:[.259,.51,.588],number:86},t.exports[87]=t.exports.Fr={symbol:"Fr",name:"francium",mass:223,radius:2.6,color:[.259,0,.4],number:87},t.exports[88]=t.exports.Ra={symbol:"Ra",name:"radium",mass:226,radius:2.21,color:[0,.49,0],number:88},t.exports[89]=t.exports.Ac={symbol:"Ac",name:"actinium",mass:227,radius:2.15,color:[.439,.671,.98],number:89},t.exports[90]=t.exports.Th={symbol:"Th",name:"thorium",mass:231.03588,radius:2.06,color:[0,.729,1],number:90},t.exports[91]=t.exports.Pa={symbol:"Pa",name:"protactinium",mass:232.03806,radius:2,color:[0,.631,1],number:91},t.exports[92]=t.exports.U={symbol:"U",name:"uranium",mass:237,radius:1.96,color:[0,.561,1],number:92},t.exports[93]=t.exports.Np={symbol:"Np",name:"neptunium",mass:238.02891,radius:1.9,color:[0,.502,1],number:93},t.exports[94]=t.exports.Pu={symbol:"Pu",name:"plutonium",mass:243,radius:1.87,color:[0,.42,1],number:94},t.exports[95]=t.exports.Am={symbol:"Am",name:"americium",mass:244,radius:1.8,color:[.329,.361,.949],number:95},t.exports[96]=t.exports.Cm={symbol:"Cm",name:"curium",mass:247,radius:1.69,color:[.471,.361,.89],number:96},t.exports[97]=t.exports.Bk={symbol:"Bk",name:"berkelium",mass:247,radius:1.66,color:[.541,.31,.89],number:97},t.exports[98]=t.exports.Cf={symbol:"Cf",name:"californium",mass:251,radius:1.68,color:[.631,.212,.831],number:98},t.exports[99]=t.exports.Es={symbol:"Es",name:"einsteinium",mass:252,radius:1.65,color:[.702,.122,.831],number:99},t.exports[100]=t.exports.Fm={symbol:"Fm",name:"fermium",mass:257,radius:1.67,color:[.702,.122,.729],number:100},t.exports[101]=t.exports.Md={symbol:"Md",name:"mendelevium",mass:258,radius:1.73,color:[.702,.051,.651],number:101},t.exports[102]=t.exports.No={symbol:"No",name:"nobelium",mass:259,radius:1.76,color:[.741,.051,.529],number:102},t.exports[103]=t.exports.Lr={symbol:"Lr",name:"lawrencium",mass:262,radius:1.61,color:[.78,0,.4],number:103},t.exports[104]=t.exports.Rf={symbol:"Rf",name:"rutherfordium",mass:261,radius:1.57,color:[.8,0,.349],number:104},t.exports[105]=t.exports.Db={symbol:"Db",name:"dubnium",mass:262,radius:1.49,color:[.82,0,.31],number:105},t.exports[106]=t.exports.Sg={symbol:"Sg",name:"seaborgium",mass:266,radius:1.43,color:[.851,0,.271],number:106},t.exports[107]=t.exports.Bh={symbol:"Bh",name:"bohrium",mass:264,radius:1.41,color:[.878,0,.22],number:107},t.exports[108]=t.exports.Hs={symbol:"Hs",name:"hassium",mass:277,radius:1.34,color:[.902,0,.18],number:108},t.exports[109]=t.exports.Mt={symbol:"Mt",name:"meitnerium",mass:268,radius:1.29,color:[.922,0,.149],number:109},t.exports[110]=t.exports.Ds={symbol:"Ds",name:"Ds",mass:271,radius:1.28,color:[.922,0,.149],number:110},t.exports[111]=t.exports.Uuu={symbol:"Uuu",name:"Uuu",mass:272,radius:1.21,color:[.922,0,.149],number:111},t.exports[112]=t.exports.Uub={symbol:"Uub",name:"Uub",mass:285,radius:1.22,color:[.922,0,.149],number:112},t.exports[113]=t.exports.Uut={symbol:"Uut",name:"Uut",mass:284,radius:1.36,color:[.922,0,.149],number:113},t.exports[114]=t.exports.Uuq={symbol:"Uuq",name:"Uuq",mass:289,radius:1.43,color:[.922,0,.149],number:114},t.exports[115]=t.exports.Uup={symbol:"Uup",name:"Uup",mass:288,radius:1.62,color:[.922,0,.149],number:115},t.exports[116]=t.exports.Uuh={symbol:"Uuh",name:"Uuh",mass:292,radius:1.75,color:[.922,0,.149],number:116},t.exports[117]=t.exports.Uus={symbol:"Uus",name:"Uus",mass:294,radius:1.65,color:[.922,0,.149],number:117},t.exports[118]=t.exports.Uuo={symbol:"Uuo",name:"Uuo",mass:296,radius:1.57,color:[.922,0,.149],number:118}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var r=o(n(71)),i=o(n(72));function o(t){return t&&t.__esModule?t:{default:t}}var a=(0,r.default)(i.default);e.default=a,t.exports=e.default},function(t,e,n){"use strict";function r(t){return+t}function i(t){return t*t}function o(t){return t*(2-t)}function a(t){return((t*=2)<=1?t*t:--t*(2-t)+1)/2}function s(t){return t*t*t}function l(t){return--t*t*t+1}function u(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var c=function t(e){function n(t){return Math.pow(t,e)}return e=+e,n.exponent=t,n}(3),f=function t(e){function n(t){return 1-Math.pow(1-t,e)}return e=+e,n.exponent=t,n}(3),h=function t(e){function n(t){return((t*=2)<=1?Math.pow(t,e):2-Math.pow(2-t,e))/2}return e=+e,n.exponent=t,n}(3),p=Math.PI,d=p/2;function v(t){return 1-Math.cos(t*d)}function g(t){return Math.sin(t*d)}function m(t){return(1-Math.cos(p*t))/2}function y(t){return Math.pow(2,10*t-10)}function b(t){return 1-Math.pow(2,-10*t)}function x(t){return((t*=2)<=1?Math.pow(2,10*t-10):2-Math.pow(2,10-10*t))/2}function _(t){return 1-Math.sqrt(1-t*t)}function w(t){return Math.sqrt(1- --t*t)}function A(t){return((t*=2)<=1?1-Math.sqrt(1-t*t):Math.sqrt(1-(t-=2)*t)+1)/2}var M=4/11,k=6/11,T=8/11,S=.75,C=9/11,E=10/11,O=.9375,D=21/22,L=63/64,P=1/M/M;function z(t){return 1-I(1-t)}function I(t){return(t=+t)=1?(r=s.shift(),i=s.join(" ")):r=t,r){var l=r.split("|");for(e=l.pop(),a.en=e;0!=l.length;){var u=l.shift(),c=l.shift();o[u]=c}}else e=r;if(i){var f=i.split("=");if(f.length>1){var h,p;f.length;f.forEach(function(t){var e,r=(t=t.trim()).split(" ");if(r.length>1?(p=r.pop(),e=r.join(" ")):e=t,h){var i=h.toLowerCase();a[i]=e}else n=e;h=p})}else n=f.shift()}var d={name:e,ids:o,details:a};return n&&(d.desc=n),d};var i={sp:{link:"http://www.uniprot.org/%s",name:"Uniprot"},tr:{link:"http://www.uniprot.org/%s",name:"Trembl"},gb:{link:"http://www.ncbi.nlm.nih.gov/nuccore/%s",name:"Genbank"},pdb:{link:"http://www.rcsb.org/pdb/explore/explore.do?structureId=%s",name:"PDB"}};r.buildLinks=function(t){var e={};return t=t||{},Object.keys(t).forEach(function(n){if(n in i){var r=i[n],o=r.link.replace("%s",t[n]);e[r.name]=o}}),e},r.contains=function(t,e){return-1!=="".indexOf.call(t,e,0)},r.splitNChars=function(t,e){var n,r;e=e||80;var i=[];for(n=0,r=t.length-1;n<=r;n+=e)i.push(t.substr(n,e));return i},r.reverse=function(t){return t.split("").reverse().join("")},r.complement=function(t){var e=t+"",n=[[/g/g,"0"],[/c/g,"1"],[/0/g,"c"],[/1/g,"g"],[/G/g,"0"],[/C/g,"1"],[/0/g,"C"],[/1/g,"G"],[/a/g,"0"],[/t/g,"1"],[/0/g,"t"],[/1/g,"a"],[/A/g,"0"],[/T/g,"1"],[/0/g,"T"],[/1/g,"A"]];for(var r in n)e=e.replace(n[r][0],n[r][1]);return e},r.reverseComplement=function(t){return r.reverse(r.complement(t))},r.model=function(t,e,n){this.seq=t,this.name=e,this.id=n,this.ids={}}},function(t,e,n){!function(t){"use strict";var n={};n.exports=e,function(t){if(!e)var e=1e-6;if(!n)var n="undefined"!=typeof Float32Array?Float32Array:Array;if(!r)var r=Math.random;var i={setMatrixArrayType:function(t){n=t}};void 0!==t&&(t.glMatrix=i);var o=Math.PI/180;i.toRadian=function(t){return t*o};var a,s={};s.create=function(){var t=new n(2);return t[0]=0,t[1]=0,t},s.clone=function(t){var e=new n(2);return e[0]=t[0],e[1]=t[1],e},s.fromValues=function(t,e){var r=new n(2);return r[0]=t,r[1]=e,r},s.copy=function(t,e){return t[0]=e[0],t[1]=e[1],t},s.set=function(t,e,n){return t[0]=e,t[1]=n,t},s.add=function(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t},s.subtract=function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t},s.sub=s.subtract,s.multiply=function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t},s.mul=s.multiply,s.divide=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t},s.div=s.divide,s.min=function(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t},s.max=function(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t},s.scale=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t},s.scaleAndAdd=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t},s.distance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1];return Math.sqrt(n*n+r*r)},s.dist=s.distance,s.squaredDistance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1];return n*n+r*r},s.sqrDist=s.squaredDistance,s.length=function(t){var e=t[0],n=t[1];return Math.sqrt(e*e+n*n)},s.len=s.length,s.squaredLength=function(t){var e=t[0],n=t[1];return e*e+n*n},s.sqrLen=s.squaredLength,s.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t},s.inverse=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t},s.normalize=function(t,e){var n=e[0],r=e[1],i=n*n+r*r;return i>0&&(i=1/Math.sqrt(i),t[0]=e[0]*i,t[1]=e[1]*i),t},s.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]},s.cross=function(t,e,n){var r=e[0]*n[1]-e[1]*n[0];return t[0]=t[1]=0,t[2]=r,t},s.lerp=function(t,e,n,r){var i=e[0],o=e[1];return t[0]=i+r*(n[0]-i),t[1]=o+r*(n[1]-o),t},s.random=function(t,e){e=e||1;var n=2*r()*Math.PI;return t[0]=Math.cos(n)*e,t[1]=Math.sin(n)*e,t},s.transformMat2=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[2]*i,t[1]=n[1]*r+n[3]*i,t},s.transformMat2d=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[2]*i+n[4],t[1]=n[1]*r+n[3]*i+n[5],t},s.transformMat3=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[3]*i+n[6],t[1]=n[1]*r+n[4]*i+n[7],t},s.transformMat4=function(t,e,n){var r=e[0],i=e[1];return t[0]=n[0]*r+n[4]*i+n[12],t[1]=n[1]*r+n[5]*i+n[13],t},s.forEach=(a=s.create(),function(t,e,n,r,i,o){var s,l;for(e||(e=2),n||(n=0),l=r?Math.min(r*e+n,t.length):t.length,s=n;s0&&(o=1/Math.sqrt(o),t[0]=e[0]*o,t[1]=e[1]*o,t[2]=e[2]*o),t},l.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]},l.cross=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[0],s=n[1],l=n[2];return t[0]=i*l-o*s,t[1]=o*a-r*l,t[2]=r*s-i*a,t},l.lerp=function(t,e,n,r){var i=e[0],o=e[1],a=e[2];return t[0]=i+r*(n[0]-i),t[1]=o+r*(n[1]-o),t[2]=a+r*(n[2]-a),t},l.random=function(t,e){e=e||1;var n=2*r()*Math.PI,i=2*r()-1,o=Math.sqrt(1-i*i)*e;return t[0]=Math.cos(n)*o,t[1]=Math.sin(n)*o,t[2]=i*e,t},l.transformMat4=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[3]*r+n[7]*i+n[11]*o+n[15];return a=a||1,t[0]=(n[0]*r+n[4]*i+n[8]*o+n[12])/a,t[1]=(n[1]*r+n[5]*i+n[9]*o+n[13])/a,t[2]=(n[2]*r+n[6]*i+n[10]*o+n[14])/a,t},l.transformMat3=function(t,e,n){var r=e[0],i=e[1],o=e[2];return t[0]=r*n[0]+i*n[3]+o*n[6],t[1]=r*n[1]+i*n[4]+o*n[7],t[2]=r*n[2]+i*n[5]+o*n[8],t},l.transformQuat=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[0],s=n[1],l=n[2],u=n[3],c=u*r+s*o-l*i,f=u*i+l*r-a*o,h=u*o+a*i-s*r,p=-a*r-s*i-l*o;return t[0]=c*u+p*-a+f*-l-h*-s,t[1]=f*u+p*-s+h*-a-c*-l,t[2]=h*u+p*-l+c*-s-f*-a,t},l.rotateX=function(t,e,n,r){var i=[],o=[];return i[0]=e[0]-n[0],i[1]=e[1]-n[1],i[2]=e[2]-n[2],o[0]=i[0],o[1]=i[1]*Math.cos(r)-i[2]*Math.sin(r),o[2]=i[1]*Math.sin(r)+i[2]*Math.cos(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t},l.rotateY=function(t,e,n,r){var i=[],o=[];return i[0]=e[0]-n[0],i[1]=e[1]-n[1],i[2]=e[2]-n[2],o[0]=i[2]*Math.sin(r)+i[0]*Math.cos(r),o[1]=i[1],o[2]=i[2]*Math.cos(r)-i[0]*Math.sin(r),t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t},l.rotateZ=function(t,e,n,r){var i=[],o=[];return i[0]=e[0]-n[0],i[1]=e[1]-n[1],i[2]=e[2]-n[2],o[0]=i[0]*Math.cos(r)-i[1]*Math.sin(r),o[1]=i[0]*Math.sin(r)+i[1]*Math.cos(r),o[2]=i[2],t[0]=o[0]+n[0],t[1]=o[1]+n[1],t[2]=o[2]+n[2],t},l.forEach=function(){var t=l.create();return function(e,n,r,i,o,a){var s,l;for(n||(n=3),r||(r=0),l=i?Math.min(i*n+r,e.length):e.length,s=r;s1?0:Math.acos(i)},l.str=function(t){return"vec3("+t[0]+", "+t[1]+", "+t[2]+")"},void 0!==t&&(t.vec3=l);var u={create:function(){var t=new n(4);return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t},clone:function(t){var e=new n(4);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e},fromValues:function(t,e,r,i){var o=new n(4);return o[0]=t,o[1]=e,o[2]=r,o[3]=i,o},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t},set:function(t,e,n,r,i){return t[0]=e,t[1]=n,t[2]=r,t[3]=i,t},add:function(t,e,n){return t[0]=e[0]+n[0],t[1]=e[1]+n[1],t[2]=e[2]+n[2],t[3]=e[3]+n[3],t},subtract:function(t,e,n){return t[0]=e[0]-n[0],t[1]=e[1]-n[1],t[2]=e[2]-n[2],t[3]=e[3]-n[3],t}};u.sub=u.subtract,u.multiply=function(t,e,n){return t[0]=e[0]*n[0],t[1]=e[1]*n[1],t[2]=e[2]*n[2],t[3]=e[3]*n[3],t},u.mul=u.multiply,u.divide=function(t,e,n){return t[0]=e[0]/n[0],t[1]=e[1]/n[1],t[2]=e[2]/n[2],t[3]=e[3]/n[3],t},u.div=u.divide,u.min=function(t,e,n){return t[0]=Math.min(e[0],n[0]),t[1]=Math.min(e[1],n[1]),t[2]=Math.min(e[2],n[2]),t[3]=Math.min(e[3],n[3]),t},u.max=function(t,e,n){return t[0]=Math.max(e[0],n[0]),t[1]=Math.max(e[1],n[1]),t[2]=Math.max(e[2],n[2]),t[3]=Math.max(e[3],n[3]),t},u.scale=function(t,e,n){return t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n,t[3]=e[3]*n,t},u.scaleAndAdd=function(t,e,n,r){return t[0]=e[0]+n[0]*r,t[1]=e[1]+n[1]*r,t[2]=e[2]+n[2]*r,t[3]=e[3]+n[3]*r,t},u.distance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],o=e[3]-t[3];return Math.sqrt(n*n+r*r+i*i+o*o)},u.dist=u.distance,u.squaredDistance=function(t,e){var n=e[0]-t[0],r=e[1]-t[1],i=e[2]-t[2],o=e[3]-t[3];return n*n+r*r+i*i+o*o},u.sqrDist=u.squaredDistance,u.length=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return Math.sqrt(e*e+n*n+r*r+i*i)},u.len=u.length,u.squaredLength=function(t){var e=t[0],n=t[1],r=t[2],i=t[3];return e*e+n*n+r*r+i*i},u.sqrLen=u.squaredLength,u.negate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=-e[3],t},u.inverse=function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t[3]=1/e[3],t},u.normalize=function(t,e){var n=e[0],r=e[1],i=e[2],o=e[3],a=n*n+r*r+i*i+o*o;return a>0&&(a=1/Math.sqrt(a),t[0]=e[0]*a,t[1]=e[1]*a,t[2]=e[2]*a,t[3]=e[3]*a),t},u.dot=function(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]+t[3]*e[3]},u.lerp=function(t,e,n,r){var i=e[0],o=e[1],a=e[2],s=e[3];return t[0]=i+r*(n[0]-i),t[1]=o+r*(n[1]-o),t[2]=a+r*(n[2]-a),t[3]=s+r*(n[3]-s),t},u.random=function(t,e){return e=e||1,t[0]=r(),t[1]=r(),t[2]=r(),t[3]=r(),u.normalize(t,t),u.scale(t,t,e),t},u.transformMat4=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=e[3];return t[0]=n[0]*r+n[4]*i+n[8]*o+n[12]*a,t[1]=n[1]*r+n[5]*i+n[9]*o+n[13]*a,t[2]=n[2]*r+n[6]*i+n[10]*o+n[14]*a,t[3]=n[3]*r+n[7]*i+n[11]*o+n[15]*a,t},u.transformQuat=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=n[0],s=n[1],l=n[2],u=n[3],c=u*r+s*o-l*i,f=u*i+l*r-a*o,h=u*o+a*i-s*r,p=-a*r-s*i-l*o;return t[0]=c*u+p*-a+f*-l-h*-s,t[1]=f*u+p*-s+h*-a-c*-l,t[2]=h*u+p*-l+c*-s-f*-a,t},u.forEach=function(){var t=u.create();return function(e,n,r,i,o,a){var s,l;for(n||(n=4),r||(r=0),l=i?Math.min(i*n+r,e.length):e.length,s=r;s.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(l.cross(d,e,n),t[0]=d[0],t[1]=d[1],t[2]=d[2],t[3]=1+r,y.normalize(t,t))}),y.setAxes=(m=h.create(),function(t,e,n,r){return m[0]=n[0],m[3]=n[1],m[6]=n[2],m[1]=r[0],m[4]=r[1],m[7]=r[2],m[2]=-e[0],m[5]=-e[1],m[8]=-e[2],y.normalize(t,y.fromMat3(t,m))}),y.clone=u.clone,y.fromValues=u.fromValues,y.copy=u.copy,y.set=u.set,y.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},y.setAxisAngle=function(t,e,n){n*=.5;var r=Math.sin(n);return t[0]=r*e[0],t[1]=r*e[1],t[2]=r*e[2],t[3]=Math.cos(n),t},y.add=u.add,y.multiply=function(t,e,n){var r=e[0],i=e[1],o=e[2],a=e[3],s=n[0],l=n[1],u=n[2],c=n[3];return t[0]=r*c+a*s+i*u-o*l,t[1]=i*c+a*l+o*s-r*u,t[2]=o*c+a*u+r*l-i*s,t[3]=a*c-r*s-i*l-o*u,t},y.mul=y.multiply,y.scale=u.scale,y.rotateX=function(t,e,n){n*=.5;var r=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l+a*s,t[1]=i*l+o*s,t[2]=o*l-i*s,t[3]=a*l-r*s,t},y.rotateY=function(t,e,n){n*=.5;var r=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l-o*s,t[1]=i*l+a*s,t[2]=o*l+r*s,t[3]=a*l-i*s,t},y.rotateZ=function(t,e,n){n*=.5;var r=e[0],i=e[1],o=e[2],a=e[3],s=Math.sin(n),l=Math.cos(n);return t[0]=r*l+i*s,t[1]=i*l-r*s,t[2]=o*l+a*s,t[3]=a*l-o*s,t},y.calculateW=function(t,e){var n=e[0],r=e[1],i=e[2];return t[0]=n,t[1]=r,t[2]=i,t[3]=Math.sqrt(Math.abs(1-n*n-r*r-i*i)),t},y.dot=u.dot,y.lerp=u.lerp,y.slerp=function(t,e,n,r){var i,o,a,s,l,u=e[0],c=e[1],f=e[2],h=e[3],p=n[0],d=n[1],v=n[2],g=n[3];return(o=u*p+c*d+f*v+h*g)<0&&(o=-o,p=-p,d=-d,v=-v,g=-g),1-o>1e-6?(i=Math.acos(o),a=Math.sin(i),s=Math.sin((1-r)*i)/a,l=Math.sin(r*i)/a):(s=1-r,l=r),t[0]=s*u+l*p,t[1]=s*c+l*d,t[2]=s*f+l*v,t[3]=s*h+l*g,t},y.invert=function(t,e){var n=e[0],r=e[1],i=e[2],o=e[3],a=n*n+r*r+i*i+o*o,s=a?1/a:0;return t[0]=-n*s,t[1]=-r*s,t[2]=-i*s,t[3]=o*s,t},y.conjugate=function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t[3]=e[3],t},y.length=u.length,y.len=y.length,y.squaredLength=u.squaredLength,y.sqrLen=y.squaredLength,y.normalize=u.normalize,y.fromMat3=function(t,e){var n,r=e[0]+e[4]+e[8];if(r>0)n=Math.sqrt(r+1),t[3]=.5*n,n=.5/n,t[0]=(e[5]-e[7])*n,t[1]=(e[6]-e[2])*n,t[2]=(e[1]-e[3])*n;else{var i=0;e[4]>e[0]&&(i=1),e[8]>e[3*i+i]&&(i=2);var o=(i+1)%3,a=(i+2)%3;n=Math.sqrt(e[3*i+i]-e[3*o+o]-e[3*a+a]+1),t[i]=.5*n,n=.5/n,t[3]=(e[3*o+a]-e[3*a+o])*n,t[o]=(e[3*o+i]+e[3*i+o])*n,t[a]=(e[3*a+i]+e[3*i+a])*n}return t},y.str=function(t){return"quat("+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+")"},void 0!==t&&(t.quat=y)}(n.exports)}()},function(t,e,n){"use strict";var r=n(34),i=n(26),o=n(52);function a(t,e,n){return Math.min(e,Math.max(t,n))}t.exports.new=function(){return{aspect:1,zoom:.125,translation:{x:0,y:0},atomScale:.6,relativeAtomScale:1,bondScale:.5,rotation:r.mat4.create(),ao:.75,aoRes:256,brightness:.5,outline:0,spf:32,bonds:!1,bondThreshold:1.2,bondShade:.5,atomShade:.5,resolution:768,dofStrength:0,dofPosition:.5,fxaa:1}},t.exports.center=function(t,e){for(var n=-1/0,o=1/0,a=-1/0,s=1/0,l=0;lJ&&(J=e):e=(0,l.getConservation)(t),e}),X="entropy"===b?X.map(function(t){return 1-t/J}):X.map(function(t){return t/P})),_&&(Z=L.map(function(t){return o.default.countBy(t)["-"]/P})),x)for(var K=0;KBar weights",titlefont:{size:12},showgrid:!1,zeroline:!1,domain:[.75,1]}):3===h?(C.yaxis.domain=[0,.64],C.yaxis2={title:"Conservation",titlefont:{size:12},showgrid:!1,zeroline:!1,domain:[.65,.89]},C.yaxis3={title:"Gap",titlefont:{size:12},showgrid:!1,zeroline:!1,domain:[.9,1]}):C.yaxis.domain=[0,1],"heatmap"===m?(C.xaxis.rangeslider={autorange:!0},C.xaxis.tick0=b,C.xaxis.dtick=x,C.margin={t:20,r:20,b:20}):"slider"===m?C.sliders=[{currentvalue:{prefix:"Position ",suffix:""},steps:a}]:(C.xaxis.tick0=b,C.xaxis.dtick=x,C.margin={t:20,r:20,b:20}),{layout:C,width:e,height:r}}},{key:"componentDidMount",value:function(){var t=this.resetWindowing(this.props),e=t.xStart,n=t.xEnd;this.setState({xStart:e,xEnd:n})}},{key:"componentDidUpdate",value:function(t,e){if(this.props.data!==t.data){var n=this.resetWindowing(this.props),r=n.xStart,i=n.xEnd;this.setState({xStart:r,xEnd:i})}}},{key:"render",value:function(){var t=this.getData(),e=t.data,n=t.length,i=t.count,o=t.labels,s=t.tick,l=t.plotCount,u=this.getLayout({length:n,count:i,labels:o,tick:s,plotCount:l}),c=u.layout,f={style:{width:u.width,height:u.height},useResizeHandler:!0};return r.default.createElement("div",null,r.default.createElement(a.default,p({data:e,layout:c,onClick:this.handleChange,onHover:this.handleChange,onRelayout:this.handleChange},f)))}}])&&v(n.prototype,i),f&&v(n,f),e}();e.default=b,b.propTypes={data:i.default.string,extension:i.default.string,colorscale:i.default.oneOfType([i.default.string,i.default.object]),opacity:i.default.oneOfType([i.default.number,i.default.string]),textcolor:i.default.string,textsize:i.default.oneOfType([i.default.number,i.default.string]),showlabel:i.default.bool,showid:i.default.bool,showconservation:i.default.bool,conservationcolor:i.default.string,conservationcolorscale:i.default.oneOfType([i.default.string,i.default.array]),conservationopacity:i.default.oneOfType([i.default.number,i.default.string]),conservationmethod:i.default.oneOf(["conservation","entropy"]),correctgap:i.default.bool,showgap:i.default.bool,gapcolor:i.default.string,gapcolorscale:i.default.oneOfType([i.default.string,i.default.array]),gapopacity:i.default.oneOfType([i.default.number,i.default.string]),groupbars:i.default.bool,showconsensus:i.default.bool,tilewidth:i.default.number,tileheight:i.default.number,overview:i.default.oneOf(["heatmap","slider","none"]),numtiles:i.default.number,scrollskip:i.default.number,tickstart:i.default.oneOfType([i.default.number,i.default.string]),ticksteps:i.default.oneOfType([i.default.number,i.default.string]),width:i.default.oneOfType([i.default.number,i.default.string]),height:i.default.oneOfType([i.default.number,i.default.string])},b.defaultProps={extension:"fasta",colorscale:"clustal2",opacity:null,textcolor:null,textsize:10,showlabel:!0,showid:!0,showconservation:!0,conservationcolor:null,conservationcolorscale:"Viridis",conservationopacity:null,conservationmethod:"entropy",correctgap:!0,showgap:!0,gapcolor:"grey",gapcolorscale:null,gapopacity:null,groupbars:!1,showconsensus:!0,tilewidth:16,tileheight:16,numtiles:null,overview:"heatmap",scrollskip:10,tickstart:null,ticksteps:null,width:null,height:900}},function(t,e,n){"use strict";var r=n(76),i=n(77),o=n(78),a=n(94);function s(t,e,n){var r=t;return i(e)?(n=e,"string"==typeof t&&(r={uri:t})):r=a(e,{uri:t}),r.callback=n,r}function l(t,e,n){return u(e=s(t,e,n))}function u(t){if(void 0===t.callback)throw new Error("callback argument missing");var e=!1,n=function(n,r,i){e||(e=!0,t.callback(n,r,i))};function r(t){return clearTimeout(c),t instanceof Error||(t=new Error(""+(t||"Unknown XMLHttpRequest Error"))),t.statusCode=0,n(t,m)}function i(){if(!s){var e;clearTimeout(c),e=t.useXDR&&void 0===u.status?200:1223===u.status?204:u.status;var r=m,i=null;return 0!==e?(r={body:function(){var t=void 0;if(t=u.response?u.response:u.responseText||function(t){try{if("document"===t.responseType)return t.responseXML;var e=t.responseXML&&"parsererror"===t.responseXML.documentElement.nodeName;if(""===t.responseType&&!e)return t.responseXML}catch(t){}return null}(u),g)try{t=JSON.parse(t)}catch(t){}return t}(),statusCode:e,method:h,headers:{},url:f,rawRequest:u},u.getAllResponseHeaders&&(r.headers=o(u.getAllResponseHeaders()))):i=new Error("Internal XMLHttpRequest Error"),n(i,r,r.body)}}var a,s,u=t.xhr||null;u||(u=t.cors||t.useXDR?new l.XDomainRequest:new l.XMLHttpRequest);var c,f=u.url=t.uri||t.url,h=u.method=t.method||"GET",p=t.body||t.data,d=u.headers=t.headers||{},v=!!t.sync,g=!1,m={body:void 0,headers:{},statusCode:0,method:h,url:f,rawRequest:u};if("json"in t&&!1!==t.json&&(g=!0,d.accept||d.Accept||(d.Accept="application/json"),"GET"!==h&&"HEAD"!==h&&(d["content-type"]||d["Content-Type"]||(d["Content-Type"]="application/json"),p=JSON.stringify(!0===t.json?p:t.json))),u.onreadystatechange=function(){4===u.readyState&&setTimeout(i,0)},u.onload=i,u.onerror=r,u.onprogress=function(){},u.onabort=function(){s=!0},u.ontimeout=r,u.open(h,f,!v,t.username,t.password),v||(u.withCredentials=!!t.withCredentials),!v&&t.timeout>0&&(c=setTimeout(function(){if(!s){s=!0,u.abort("timeout");var t=new Error("XMLHttpRequest timeout");t.code="ETIMEDOUT",r(t)}},t.timeout)),u.setRequestHeader)for(a in d)d.hasOwnProperty(a)&&u.setRequestHeader(a,d[a]);else if(t.headers&&!function(t){for(var e in t)if(t.hasOwnProperty(e))return!1;return!0}(t.headers))throw new Error("Headers cannot be set on an XDomainRequest object");return"responseType"in t&&(u.responseType=t.responseType),"beforeSend"in t&&"function"==typeof t.beforeSend&&t.beforeSend(u),u.send(p||null),u}t.exports=l,t.exports.default=l,l.XMLHttpRequest=r.XMLHttpRequest||function(){},l.XDomainRequest="withCredentials"in new l.XMLHttpRequest?l.XMLHttpRequest:r.XDomainRequest,function(t,e){for(var n=0;n2?arguments[2]:{},o=r(e);i&&(o=a.call(o,Object.getOwnPropertySymbols(e)));for(var s=0;s0&&(r=(n=t.split(" "))[0],i=n[1].replace(/"/g,""),e[r]=i)}),e}function i(t){var e=t.toString(16);return 1===e.length?"0"+e:e}function o(t,e,n){return 3===t.length?o(t[0],t[1],t[2]):"#"+i(t)+i(e)+i(n)}Object.defineProperty(e,"__esModule",{value:!0}),e.extractKeys=r,e.rgbToHex=o,e.default={extractKeys:r,rgbToHex:o}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getConsensus=e.getConservation=e.getEntropy=void 0;var r,i=(r=n(18))&&r.__esModule?r:{default:r};e.getEntropy=function(t){var e;e=i.default.isString(t)?t.split(""):t;var n={};return e.forEach(function(t){return n[t]?n[t]++:n[t]=1}),Object.keys(n).reduce(function(t,r){var i=n[r]/e.length;return t-i*Math.log(i)},0)};e.getConservation=function(t){var e;return e=i.default.isString(t)?t.split(""):t,(0,i.default)(e).countBy().entries().maxBy("[1]")[1]};e.getConsensus=function(t){return t.map(function(t){return(0,i.default)(t).countBy().entries().maxBy("[1]")[0]})}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.getVisualizations=e.getTicks=e.getHovertext=e.getWidth=e.SUBPLOT_RATIOS=void 0;var r,i=(r=n(18))&&r.__esModule?r:{default:r};e.SUBPLOT_RATIOS={1:1,2:.75,3:.65};e.getWidth=function(t){return i.default.isNumber(t)?t:t.includes("%")?parseFloat(t)/100*window.innerWidth:parseFloat(t)};e.getHovertext=function(t,e){for(var n=[],r=function(r){var i=[],o=0;t[r].forEach(function(t){o+=1;var n=["Name: ".concat(e[r].name),"Organism: ".concat(e[r].os?e[r].os:"N/A"),"ID: ".concat(e[r].id,"
"),"Position: (".concat(o,", ").concat(r,")"),"Letter: ".concat(t)].join("
");i.push(n)}),n.push(i)},o=0;o=0||(i[n]=t[n]);return i}(e,["children"]);if(delete r.in,delete r.mountOnEnter,delete r.unmountOnExit,delete r.appear,delete r.enter,delete r.exit,delete r.timeout,delete r.addEndListener,delete r.onEnter,delete r.onEntering,delete r.onEntered,delete r.onExit,delete r.onExiting,delete r.onExited,"function"==typeof n)return n(t,r);var o=i.default.Children.only(n);return i.default.cloneElement(o,r)},r}(i.default.Component);function p(){}h.contextTypes={transitionGroup:r.object},h.childContextTypes={transitionGroup:function(){}},h.propTypes={},h.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:p,onEntering:p,onEntered:p,onExit:p,onExiting:p,onExited:p},h.UNMOUNTED=0,h.EXITED=1,h.ENTERING=2,h.ENTERED=3,h.EXITING=4;var d=(0,a.polyfill)(h);e.default=d},function(t,e,n){"use strict";function r(){var t=this.constructor.getDerivedStateFromProps(this.props,this.state);null!=t&&this.setState(t)}function i(t){this.setState(function(e){var n=this.constructor.getDerivedStateFromProps(t,e);return null!=n?n:null}.bind(this))}function o(t,e){try{var n=this.props,r=this.state;this.props=t,this.state=e,this.__reactInternalSnapshotFlag=!0,this.__reactInternalSnapshot=this.getSnapshotBeforeUpdate(n,r)}finally{this.props=n,this.state=r}}function a(t){var e=t.prototype;if(!e||!e.isReactComponent)throw new Error("Can only polyfill class components");if("function"!=typeof t.getDerivedStateFromProps&&"function"!=typeof e.getSnapshotBeforeUpdate)return t;var n=null,a=null,s=null;if("function"==typeof e.componentWillMount?n="componentWillMount":"function"==typeof e.UNSAFE_componentWillMount&&(n="UNSAFE_componentWillMount"),"function"==typeof e.componentWillReceiveProps?a="componentWillReceiveProps":"function"==typeof e.UNSAFE_componentWillReceiveProps&&(a="UNSAFE_componentWillReceiveProps"),"function"==typeof e.componentWillUpdate?s="componentWillUpdate":"function"==typeof e.UNSAFE_componentWillUpdate&&(s="UNSAFE_componentWillUpdate"),null!==n||null!==a||null!==s){var l=t.displayName||t.name,u="function"==typeof t.getDerivedStateFromProps?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";throw Error("Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n"+l+" uses "+u+" but also contains the following legacy lifecycles:"+(null!==n?"\n "+n:"")+(null!==a?"\n "+a:"")+(null!==s?"\n "+s:"")+"\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://fb.me/react-async-component-lifecycle-hooks")}if("function"==typeof t.getDerivedStateFromProps&&(e.componentWillMount=r,e.componentWillReceiveProps=i),"function"==typeof e.getSnapshotBeforeUpdate){if("function"!=typeof e.componentDidUpdate)throw new Error("Cannot polyfill getSnapshotBeforeUpdate() for components that do not define componentDidUpdate() on the prototype");e.componentWillUpdate=o;var c=e.componentDidUpdate;e.componentDidUpdate=function(t,e,n){var r=this.__reactInternalSnapshotFlag?this.__reactInternalSnapshot:n;c.call(this,t,e,r)}}return t}n.r(e),n.d(e,"polyfill",function(){return a}),r.__suppressDeprecationWarning=!0,i.__suppressDeprecationWarning=!0,o.__suppressDeprecationWarning=!0},function(t,e,n){"use strict";e.__esModule=!0,e.classNamesShape=e.timeoutsShape=void 0;var r;(r=n(0))&&r.__esModule;e.timeoutsShape=null;e.classNamesShape=null},function(t,e,n){"use strict";e.__esModule=!0,e.default=void 0;var r=s(n(0)),i=s(n(2)),o=n(45),a=n(127);function s(t){return t&&t.__esModule?t:{default:t}}function l(){return(l=Object.assign||function(t){for(var e=1;e=0||(i[n]=t[n]);return i}(t,["component","childFactory"]),o=c(this.state.children).map(n);return delete r.appear,delete r.enter,delete r.exit,null===e?o:i.default.createElement(e,r,o)},r}(i.default.Component);f.childContextTypes={transitionGroup:r.default.object.isRequired},f.propTypes={},f.defaultProps={component:"div",childFactory:function(t){return t}};var h=(0,o.polyfill)(f);e.default=h,t.exports=e.default},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",function(){return parseBands});var _lib__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);function getDelimiterTsvLinesAndInit(source,content){var delimiter,tsvLines,init;return"undefined"==typeof chrBands&&"native"!==source?(delimiter=/\t/,tsvLines=content.split(/\r\n|\n/),init=1):(delimiter=/ /,tsvLines="native"===source?eval(content):content,init=0),[delimiter,tsvLines,init]}function updateChromosomes(t){var e,n;if(t instanceof Array&&"object"==typeof t[0]){for(e=[],n=0;n0&&e-1 in t)}A.fn=A.prototype={jquery:"3.4.0",constructor:A,length:0,toArray:function(){return l.call(this)},get:function(t){return null==t?l.call(this):t<0?this[t+this.length]:this[t]},pushStack:function(t){var e=A.merge(this.constructor(),t);return e.prevObject=this,e},each:function(t){return A.each(this,t)},map:function(t){return this.pushStack(A.map(this,function(e,n){return t.call(e,n,e)}))},slice:function(){return this.pushStack(l.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,n=+t+(t<0?e:0);return this.pushStack(n>=0&&n0&&e-1 in t)}A.fn=A.prototype={jquery:"3.4.0",constructor:A,length:0,toArray:function(){return l.call(this)},get:function(t){return null==t?l.call(this):t<0?this[t+this.length]:this[t]},pushStack:function(t){var e=A.merge(this.constructor(),t);return e.prevObject=this,e},each:function(t){return A.each(this,t)},map:function(t){return this.pushStack(A.map(this,function(e,n){return t.call(e,n,e)}))},slice:function(){return this.pushStack(l.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(t){var e=this.length,n=+t+(t<0?e:0);return this.pushStack(n>=0&&n+~]|"+j+")"+j+"*"),H=new RegExp(j+"|>"),W=new RegExp(B),G=new RegExp("^"+F+"$"),Y={ID:new RegExp("^#("+F+")"),CLASS:new RegExp("^\\.("+F+")"),TAG:new RegExp("^("+F+"|[*])"),ATTR:new RegExp("^"+N),PSEUDO:new RegExp("^"+B),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+j+"*(even|odd|(([+-]|)(\\d*)n|)"+j+"*(?:([+-]|)"+j+"*(\\d+)|))"+j+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+j+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+j+"*((?:-\\d)?\\d*)"+j+"*\\)|)(?=[^-]|$)","i")},X=/HTML$/i,Z=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Q=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,tt=/[+~]/,et=new RegExp("\\\\([\\da-f]{1,6}"+j+"?|("+j+")|.)","ig"),nt=function(t,e,n){var r="0x"+e-65536;return r!=r||n?e:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},rt=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,it=function(t,e){return e?"\0"===t?"�":t.slice(0,-1)+"\\"+t.charCodeAt(t.length-1).toString(16)+" ":"\\"+t},ot=function(){h()},at=xt(function(t){return!0===t.disabled&&"fieldset"===t.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{P.apply(O=z.call(_.childNodes),_.childNodes),O[_.childNodes.length].nodeType}catch(t){P={apply:O.length?function(t,e){L.apply(t,z.call(e))}:function(t,e){for(var n=t.length,r=0;t[n++]=e[r++];);t.length=n-1}}}function st(t,e,r,i){var o,s,u,c,f,d,g,y=e&&e.ownerDocument,w=e?e.nodeType:9;if(r=r||[],"string"!=typeof t||!t||1!==w&&9!==w&&11!==w)return r;if(!i&&((e?e.ownerDocument||e:_)!==p&&h(e),e=e||p,v)){if(11!==w&&(f=Q.exec(t)))if(o=f[1]){if(9===w){if(!(u=e.getElementById(o)))return r;if(u.id===o)return r.push(u),r}else if(y&&(u=y.getElementById(o))&&b(e,u)&&u.id===o)return r.push(u),r}else{if(f[2])return P.apply(r,e.getElementsByTagName(t)),r;if((o=f[3])&&n.getElementsByClassName&&e.getElementsByClassName)return P.apply(r,e.getElementsByClassName(o)),r}if(n.qsa&&!S[t+" "]&&(!m||!m.test(t))&&(1!==w||"object"!==e.nodeName.toLowerCase())){if(g=t,y=e,1===w&&H.test(t)){for((c=e.getAttribute("id"))?c=c.replace(rt,it):e.setAttribute("id",c=x),s=(d=a(t)).length;s--;)d[s]="#"+c+" "+bt(d[s]);g=d.join(","),y=tt.test(t)&>(e.parentNode)||e}try{return P.apply(r,y.querySelectorAll(g)),r}catch(e){S(t,!0)}finally{c===x&&e.removeAttribute("id")}}}return l(t.replace(V,"$1"),e,r,i)}function lt(){var t=[];return function e(n,i){return t.push(n+" ")>r.cacheLength&&delete e[t.shift()],e[n+" "]=i}}function ut(t){return t[x]=!0,t}function ct(t){var e=p.createElement("fieldset");try{return!!t(e)}catch(t){return!1}finally{e.parentNode&&e.parentNode.removeChild(e),e=null}}function ft(t,e){for(var n=t.split("|"),i=n.length;i--;)r.attrHandle[n[i]]=e}function ht(t,e){var n=e&&t,r=n&&1===t.nodeType&&1===e.nodeType&&t.sourceIndex-e.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===e)return-1;return t?1:-1}function pt(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function dt(t){return function(e){var n=e.nodeName.toLowerCase();return("input"===n||"button"===n)&&e.type===t}}function vt(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&at(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function mt(t){return ut(function(e){return e=+e,ut(function(n,r){for(var i,o=t([],n.length,e),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))})})}function gt(t){return t&&void 0!==t.getElementsByTagName&&t}for(e in n=st.support={},o=st.isXML=function(t){var e=t.namespaceURI,n=(t.ownerDocument||t).documentElement;return!X.test(e||n&&n.nodeName||"HTML")},h=st.setDocument=function(t){var e,i,a=t?t.ownerDocument||t:_;return a!==p&&9===a.nodeType&&a.documentElement?(d=(p=a).documentElement,v=!o(p),_!==p&&(i=p.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener("unload",ot,!1):i.attachEvent&&i.attachEvent("onunload",ot)),n.attributes=ct(function(t){return t.className="i",!t.getAttribute("className")}),n.getElementsByTagName=ct(function(t){return t.appendChild(p.createComment("")),!t.getElementsByTagName("*").length}),n.getElementsByClassName=K.test(p.getElementsByClassName),n.getById=ct(function(t){return d.appendChild(t).id=x,!p.getElementsByName||!p.getElementsByName(x).length}),n.getById?(r.filter.ID=function(t){var e=t.replace(et,nt);return function(t){return t.getAttribute("id")===e}},r.find.ID=function(t,e){if(void 0!==e.getElementById&&v){var n=e.getElementById(t);return n?[n]:[]}}):(r.filter.ID=function(t){var e=t.replace(et,nt);return function(t){var n=void 0!==t.getAttributeNode&&t.getAttributeNode("id");return n&&n.value===e}},r.find.ID=function(t,e){if(void 0!==e.getElementById&&v){var n,r,i,o=e.getElementById(t);if(o){if((n=o.getAttributeNode("id"))&&n.value===t)return[o];for(i=e.getElementsByName(t),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===t)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(t,e){return void 0!==e.getElementsByTagName?e.getElementsByTagName(t):n.qsa?e.querySelectorAll(t):void 0}:function(t,e){var n,r=[],i=0,o=e.getElementsByTagName(t);if("*"===t){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(t,e){if(void 0!==e.getElementsByClassName&&v)return e.getElementsByClassName(t)},g=[],m=[],(n.qsa=K.test(p.querySelectorAll))&&(ct(function(t){d.appendChild(t).innerHTML="",t.querySelectorAll("[msallowcapture^='']").length&&m.push("[*^$]="+j+"*(?:''|\"\")"),t.querySelectorAll("[selected]").length||m.push("\\["+j+"*(?:value|"+R+")"),t.querySelectorAll("[id~="+x+"-]").length||m.push("~="),t.querySelectorAll(":checked").length||m.push(":checked"),t.querySelectorAll("a#"+x+"+*").length||m.push(".#.+[+~]")}),ct(function(t){t.innerHTML="";var e=p.createElement("input");e.setAttribute("type","hidden"),t.appendChild(e).setAttribute("name","D"),t.querySelectorAll("[name=d]").length&&m.push("name"+j+"*[*^$|!~]?="),2!==t.querySelectorAll(":enabled").length&&m.push(":enabled",":disabled"),d.appendChild(t).disabled=!0,2!==t.querySelectorAll(":disabled").length&&m.push(":enabled",":disabled"),t.querySelectorAll("*,:x"),m.push(",.*:")})),(n.matchesSelector=K.test(y=d.matches||d.webkitMatchesSelector||d.mozMatchesSelector||d.oMatchesSelector||d.msMatchesSelector))&&ct(function(t){n.disconnectedMatch=y.call(t,"*"),y.call(t,"[s!='']:x"),g.push("!=",B)}),m=m.length&&new RegExp(m.join("|")),g=g.length&&new RegExp(g.join("|")),e=K.test(d.compareDocumentPosition),b=e||K.test(d.contains)?function(t,e){var n=9===t.nodeType?t.documentElement:t,r=e&&e.parentNode;return t===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):t.compareDocumentPosition&&16&t.compareDocumentPosition(r)))}:function(t,e){if(e)for(;e=e.parentNode;)if(e===t)return!0;return!1},C=e?function(t,e){if(t===e)return f=!0,0;var r=!t.compareDocumentPosition-!e.compareDocumentPosition;return r||(1&(r=(t.ownerDocument||t)===(e.ownerDocument||e)?t.compareDocumentPosition(e):1)||!n.sortDetached&&e.compareDocumentPosition(t)===r?t===p||t.ownerDocument===_&&b(_,t)?-1:e===p||e.ownerDocument===_&&b(_,e)?1:c?I(c,t)-I(c,e):0:4&r?-1:1)}:function(t,e){if(t===e)return f=!0,0;var n,r=0,i=t.parentNode,o=e.parentNode,a=[t],s=[e];if(!i||!o)return t===p?-1:e===p?1:i?-1:o?1:c?I(c,t)-I(c,e):0;if(i===o)return ht(t,e);for(n=t;n=n.parentNode;)a.unshift(n);for(n=e;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?ht(a[r],s[r]):a[r]===_?-1:s[r]===_?1:0},p):p},st.matches=function(t,e){return st(t,null,null,e)},st.matchesSelector=function(t,e){if((t.ownerDocument||t)!==p&&h(t),n.matchesSelector&&v&&!S[e+" "]&&(!g||!g.test(e))&&(!m||!m.test(e)))try{var r=y.call(t,e);if(r||n.disconnectedMatch||t.document&&11!==t.document.nodeType)return r}catch(t){S(e,!0)}return st(e,p,null,[t]).length>0},st.contains=function(t,e){return(t.ownerDocument||t)!==p&&h(t),b(t,e)},st.attr=function(t,e){(t.ownerDocument||t)!==p&&h(t);var i=r.attrHandle[e.toLowerCase()],o=i&&E.call(r.attrHandle,e.toLowerCase())?i(t,e,!v):void 0;return void 0!==o?o:n.attributes||!v?t.getAttribute(e):(o=t.getAttributeNode(e))&&o.specified?o.value:null},st.escape=function(t){return(t+"").replace(rt,it)},st.error=function(t){throw new Error("Syntax error, unrecognized expression: "+t)},st.uniqueSort=function(t){var e,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&t.slice(0),t.sort(C),f){for(;e=t[o++];)e===t[o]&&(i=r.push(o));for(;i--;)t.splice(r[i],1)}return c=null,t},i=st.getText=function(t){var e,n="",r=0,o=t.nodeType;if(o){if(1===o||9===o||11===o){if("string"==typeof t.textContent)return t.textContent;for(t=t.firstChild;t;t=t.nextSibling)n+=i(t)}else if(3===o||4===o)return t.nodeValue}else for(;e=t[r++];)n+=i(e);return n},(r=st.selectors={cacheLength:50,createPseudo:ut,match:Y,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(t){return t[1]=t[1].replace(et,nt),t[3]=(t[3]||t[4]||t[5]||"").replace(et,nt),"~="===t[2]&&(t[3]=" "+t[3]+" "),t.slice(0,4)},CHILD:function(t){return t[1]=t[1].toLowerCase(),"nth"===t[1].slice(0,3)?(t[3]||st.error(t[0]),t[4]=+(t[4]?t[5]+(t[6]||1):2*("even"===t[3]||"odd"===t[3])),t[5]=+(t[7]+t[8]||"odd"===t[3])):t[3]&&st.error(t[0]),t},PSEUDO:function(t){var e,n=!t[6]&&t[2];return Y.CHILD.test(t[0])?null:(t[3]?t[2]=t[4]||t[5]||"":n&&W.test(n)&&(e=a(n,!0))&&(e=n.indexOf(")",n.length-e)-n.length)&&(t[0]=t[0].slice(0,e),t[2]=n.slice(0,e)),t.slice(0,3))}},filter:{TAG:function(t){var e=t.replace(et,nt).toLowerCase();return"*"===t?function(){return!0}:function(t){return t.nodeName&&t.nodeName.toLowerCase()===e}},CLASS:function(t){var e=M[t+" "];return e||(e=new RegExp("(^|"+j+")"+t+"("+j+"|$)"))&&M(t,function(t){return e.test("string"==typeof t.className&&t.className||void 0!==t.getAttribute&&t.getAttribute("class")||"")})},ATTR:function(t,e,n){return function(r){var i=st.attr(r,t);return null==i?"!="===e:!e||(i+="","="===e?i===n:"!="===e?i!==n:"^="===e?n&&0===i.indexOf(n):"*="===e?n&&i.indexOf(n)>-1:"$="===e?n&&i.slice(-n.length)===n:"~="===e?(" "+i.replace(U," ")+" ").indexOf(n)>-1:"|="===e&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(t,e,n,r,i){var o="nth"!==t.slice(0,3),a="last"!==t.slice(-4),s="of-type"===e;return 1===r&&0===i?function(t){return!!t.parentNode}:function(e,n,l){var u,c,f,h,p,d,v=o!==a?"nextSibling":"previousSibling",m=e.parentNode,g=s&&e.nodeName.toLowerCase(),y=!l&&!s,b=!1;if(m){if(o){for(;v;){for(h=e;h=h[v];)if(s?h.nodeName.toLowerCase()===g:1===h.nodeType)return!1;d=v="only"===t&&!d&&"nextSibling"}return!0}if(d=[a?m.firstChild:m.lastChild],a&&y){for(b=(p=(u=(c=(f=(h=m)[x]||(h[x]={}))[h.uniqueID]||(f[h.uniqueID]={}))[t]||[])[0]===w&&u[1])&&u[2],h=p&&m.childNodes[p];h=++p&&h&&h[v]||(b=p=0)||d.pop();)if(1===h.nodeType&&++b&&h===e){c[t]=[w,p,b];break}}else if(y&&(b=p=(u=(c=(f=(h=e)[x]||(h[x]={}))[h.uniqueID]||(f[h.uniqueID]={}))[t]||[])[0]===w&&u[1]),!1===b)for(;(h=++p&&h&&h[v]||(b=p=0)||d.pop())&&((s?h.nodeName.toLowerCase()!==g:1!==h.nodeType)||!++b||(y&&((c=(f=h[x]||(h[x]={}))[h.uniqueID]||(f[h.uniqueID]={}))[t]=[w,b]),h!==e)););return(b-=i)===r||b%r==0&&b/r>=0}}},PSEUDO:function(t,e){var n,i=r.pseudos[t]||r.setFilters[t.toLowerCase()]||st.error("unsupported pseudo: "+t);return i[x]?i(e):i.length>1?(n=[t,t,"",e],r.setFilters.hasOwnProperty(t.toLowerCase())?ut(function(t,n){for(var r,o=i(t,e),a=o.length;a--;)t[r=I(t,o[a])]=!(n[r]=o[a])}):function(t){return i(t,0,n)}):i}},pseudos:{not:ut(function(t){var e=[],n=[],r=s(t.replace(V,"$1"));return r[x]?ut(function(t,e,n,i){for(var o,a=r(t,null,i,[]),s=t.length;s--;)(o=a[s])&&(t[s]=!(e[s]=o))}):function(t,i,o){return e[0]=t,r(e,null,o,n),e[0]=null,!n.pop()}}),has:ut(function(t){return function(e){return st(t,e).length>0}}),contains:ut(function(t){return t=t.replace(et,nt),function(e){return(e.textContent||i(e)).indexOf(t)>-1}}),lang:ut(function(t){return G.test(t||"")||st.error("unsupported lang: "+t),t=t.replace(et,nt).toLowerCase(),function(e){var n;do{if(n=v?e.lang:e.getAttribute("xml:lang")||e.getAttribute("lang"))return(n=n.toLowerCase())===t||0===n.indexOf(t+"-")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var n=t.location&&t.location.hash;return n&&n.slice(1)===e.id},root:function(t){return t===d},focus:function(t){return t===p.activeElement&&(!p.hasFocus||p.hasFocus())&&!!(t.type||t.href||~t.tabIndex)},enabled:vt(!1),disabled:vt(!0),checked:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&!!t.checked||"option"===e&&!!t.selected},selected:function(t){return t.parentNode&&t.parentNode.selectedIndex,!0===t.selected},empty:function(t){for(t=t.firstChild;t;t=t.nextSibling)if(t.nodeType<6)return!1;return!0},parent:function(t){return!r.pseudos.empty(t)},header:function(t){return J.test(t.nodeName)},input:function(t){return Z.test(t.nodeName)},button:function(t){var e=t.nodeName.toLowerCase();return"input"===e&&"button"===t.type||"button"===e},text:function(t){var e;return"input"===t.nodeName.toLowerCase()&&"text"===t.type&&(null==(e=t.getAttribute("type"))||"text"===e.toLowerCase())},first:mt(function(){return[0]}),last:mt(function(t,e){return[e-1]}),eq:mt(function(t,e,n){return[n<0?n+e:n]}),even:mt(function(t,e){for(var n=0;ne?e:n;--r>=0;)t.push(r);return t}),gt:mt(function(t,e,n){for(var r=n<0?n+e:n;++r1?function(e,n,r){for(var i=t.length;i--;)if(!t[i](e,n,r))return!1;return!0}:t[0]}function wt(t,e,n,r,i){for(var o,a=[],s=0,l=t.length,u=null!=e;s-1&&(o[u]=!(a[u]=f))}}else g=wt(g===a?g.splice(d,g.length):g),i?i(null,a,g,l):P.apply(a,g)})}function Mt(t){for(var e,n,i,o=t.length,a=r.relative[t[0].type],s=a||r.relative[" "],l=a?1:0,c=xt(function(t){return t===e},s,!0),f=xt(function(t){return I(e,t)>-1},s,!0),h=[function(t,n,r){var i=!a&&(r||n!==u)||((e=n).nodeType?c(t,n,r):f(t,n,r));return e=null,i}];l1&&_t(h),l>1&&bt(t.slice(0,l-1).concat({value:" "===t[l-2].type?"*":""})).replace(V,"$1"),n,l0,i=t.length>0,o=function(o,a,s,l,c){var f,d,m,g=0,y="0",b=o&&[],x=[],_=u,A=o||i&&r.find.TAG("*",c),M=w+=null==_?1:Math.random()||.1,k=A.length;for(c&&(u=a===p||a||c);y!==k&&null!=(f=A[y]);y++){if(i&&f){for(d=0,a||f.ownerDocument===p||(h(f),s=!v);m=t[d++];)if(m(f,a||p,s)){l.push(f);break}c&&(w=M)}n&&((f=!m&&f)&&g--,o&&b.push(f))}if(g+=y,n&&y!==g){for(d=0;m=e[d++];)m(b,x,a,s);if(o){if(g>0)for(;y--;)b[y]||x[y]||(x[y]=D.call(l));x=wt(x)}P.apply(l,x),c&&!o&&x.length>0&&g+e.length>1&&st.uniqueSort(l)}return c&&(w=M,u=_),b};return n?ut(o):o}(o,i))).selector=t}return s},l=st.select=function(t,e,n,i){var o,l,u,c,f,h="function"==typeof t&&t,p=!i&&a(t=h.selector||t);if(n=n||[],1===p.length){if((l=p[0]=p[0].slice(0)).length>2&&"ID"===(u=l[0]).type&&9===e.nodeType&&v&&r.relative[l[1].type]){if(!(e=(r.find.ID(u.matches[0].replace(et,nt),e)||[])[0]))return n;h&&(e=e.parentNode),t=t.slice(l.shift().value.length)}for(o=Y.needsContext.test(t)?0:l.length;o--&&(u=l[o],!r.relative[c=u.type]);)if((f=r.find[c])&&(i=f(u.matches[0].replace(et,nt),tt.test(l[0].type)&>(e.parentNode)||e))){if(l.splice(o,1),!(t=i.length&&bt(l)))return P.apply(n,i),n;break}}return(h||s(t,p))(i,e,!v,n,!e||tt.test(t)&>(e.parentNode)||e),n},n.sortStable=x.split("").sort(C).join("")===x,n.detectDuplicates=!!f,h(),n.sortDetached=ct(function(t){return 1&t.compareDocumentPosition(p.createElement("fieldset"))}),ct(function(t){return t.innerHTML="","#"===t.firstChild.getAttribute("href")})||ft("type|href|height|width",function(t,e,n){if(!n)return t.getAttribute(e,"type"===e.toLowerCase()?1:2)}),n.attributes&&ct(function(t){return t.innerHTML="",t.firstChild.setAttribute("value",""),""===t.firstChild.getAttribute("value")})||ft("value",function(t,e,n){if(!n&&"input"===t.nodeName.toLowerCase())return t.defaultValue}),ct(function(t){return null==t.getAttribute("disabled")})||ft(R,function(t,e,n){var r;if(!n)return!0===t[e]?e.toLowerCase():(r=t.getAttributeNode(e))&&r.specified?r.value:null}),st}(n);A.find=T,A.expr=T.selectors,A.expr[":"]=A.expr.pseudos,A.uniqueSort=A.unique=T.uniqueSort,A.text=T.getText,A.isXMLDoc=T.isXML,A.contains=T.contains,A.escapeSelector=T.escape;var S=function(t,e,n){for(var r=[],i=void 0!==n;(t=t[e])&&9!==t.nodeType;)if(1===t.nodeType){if(i&&A(t).is(n))break;r.push(t)}return r},C=function(t,e){for(var n=[];t;t=t.nextSibling)1===t.nodeType&&t!==e&&n.push(t);return n},E=A.expr.match.needsContext;function O(t,e){return t.nodeName&&t.nodeName.toLowerCase()===e.toLowerCase()}var D=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function L(t,e,n){return y(e)?A.grep(t,function(t,r){return!!e.call(t,r,t)!==n}):e.nodeType?A.grep(t,function(t){return t===e!==n}):"string"!=typeof e?A.grep(t,function(t){return f.call(e,t)>-1!==n}):A.filter(e,t,n)}A.filter=function(t,e,n){var r=e[0];return n&&(t=":not("+t+")"),1===e.length&&1===r.nodeType?A.find.matchesSelector(r,t)?[r]:[]:A.find.matches(t,A.grep(e,function(t){return 1===t.nodeType}))},A.fn.extend({find:function(t){var e,n,r=this.length,i=this;if("string"!=typeof t)return this.pushStack(A(t).filter(function(){for(e=0;e1?A.uniqueSort(n):n},filter:function(t){return this.pushStack(L(this,t||[],!1))},not:function(t){return this.pushStack(L(this,t||[],!0))},is:function(t){return!!L(this,"string"==typeof t&&E.test(t)?A(t):t||[],!1).length}});var P,z=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(A.fn.init=function(t,e,n){var r,i;if(!t)return this;if(n=n||P,"string"==typeof t){if(!(r="<"===t[0]&&">"===t[t.length-1]&&t.length>=3?[null,t,null]:z.exec(t))||!r[1]&&e)return!e||e.jquery?(e||n).find(t):this.constructor(e).find(t);if(r[1]){if(e=e instanceof A?e[0]:e,A.merge(this,A.parseHTML(r[1],e&&e.nodeType?e.ownerDocument||e:a,!0)),D.test(r[1])&&A.isPlainObject(e))for(r in e)y(this[r])?this[r](e[r]):this.attr(r,e[r]);return this}return(i=a.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return t.nodeType?(this[0]=t,this.length=1,this):y(t)?void 0!==n.ready?n.ready(t):t(A):A.makeArray(t,this)}).prototype=A.fn,P=A(a);var I=/^(?:parents|prev(?:Until|All))/,R={children:!0,contents:!0,next:!0,prev:!0};function j(t,e){for(;(t=t[e])&&1!==t.nodeType;);return t}A.fn.extend({has:function(t){var e=A(t,this),n=e.length;return this.filter(function(){for(var t=0;t-1:1===n.nodeType&&A.find.matchesSelector(n,t))){o.push(n);break}return this.pushStack(o.length>1?A.uniqueSort(o):o)},index:function(t){return t?"string"==typeof t?f.call(A(t),this[0]):f.call(this,t.jquery?t[0]:t):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(t,e){return this.pushStack(A.uniqueSort(A.merge(this.get(),A(t,e))))},addBack:function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}}),A.each({parent:function(t){var e=t.parentNode;return e&&11!==e.nodeType?e:null},parents:function(t){return S(t,"parentNode")},parentsUntil:function(t,e,n){return S(t,"parentNode",n)},next:function(t){return j(t,"nextSibling")},prev:function(t){return j(t,"previousSibling")},nextAll:function(t){return S(t,"nextSibling")},prevAll:function(t){return S(t,"previousSibling")},nextUntil:function(t,e,n){return S(t,"nextSibling",n)},prevUntil:function(t,e,n){return S(t,"previousSibling",n)},siblings:function(t){return C((t.parentNode||{}).firstChild,t)},children:function(t){return C(t.firstChild)},contents:function(t){return void 0!==t.contentDocument?t.contentDocument:(O(t,"template")&&(t=t.content||t),A.merge([],t.childNodes))}},function(t,e){A.fn[t]=function(n,r){var i=A.map(this,e,n);return"Until"!==t.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=A.filter(r,i)),this.length>1&&(R[t]||A.uniqueSort(i),I.test(t)&&i.reverse()),this.pushStack(i)}});var F=/[^\x20\t\r\n\f]+/g;function N(t){return t}function B(t){throw t}function U(t,e,n,r){var i;try{t&&y(i=t.promise)?i.call(t).done(e).fail(n):t&&y(i=t.then)?i.call(t,e,n):e.apply(void 0,[t].slice(r))}catch(t){n.apply(void 0,[t])}}A.Callbacks=function(t){t="string"==typeof t?function(t){var e={};return A.each(t.match(F)||[],function(t,n){e[n]=!0}),e}(t):A.extend({},t);var e,n,r,i,o=[],a=[],s=-1,l=function(){for(i=i||t.once,r=e=!0;a.length;s=-1)for(n=a.shift();++s-1;)o.splice(n,1),n<=s&&s--}),this},has:function(t){return t?A.inArray(t,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||e||(o=n=""),this},locked:function(){return!!i},fireWith:function(t,n){return i||(n=[t,(n=n||[]).slice?n.slice():n],a.push(n),e||l()),this},fire:function(){return u.fireWith(this,arguments),this},fired:function(){return!!r}};return u},A.extend({Deferred:function(t){var e=[["notify","progress",A.Callbacks("memory"),A.Callbacks("memory"),2],["resolve","done",A.Callbacks("once memory"),A.Callbacks("once memory"),0,"resolved"],["reject","fail",A.Callbacks("once memory"),A.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(t){return i.then(null,t)},pipe:function(){var t=arguments;return A.Deferred(function(n){A.each(e,function(e,r){var i=y(t[r[4]])&&t[r[4]];o[r[1]](function(){var t=i&&i.apply(this,arguments);t&&y(t.promise)?t.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[t]:arguments)})}),t=null}).promise()},then:function(t,r,i){var o=0;function a(t,e,r,i){return function(){var s=this,l=arguments,u=function(){var n,u;if(!(t=o&&(r!==B&&(s=void 0,l=[n]),e.rejectWith(s,l))}};t?c():(A.Deferred.getStackHook&&(c.stackTrace=A.Deferred.getStackHook()),n.setTimeout(c))}}return A.Deferred(function(n){e[0][3].add(a(0,n,y(i)?i:N,n.notifyWith)),e[1][3].add(a(0,n,y(t)?t:N)),e[2][3].add(a(0,n,y(r)?r:B))}).promise()},promise:function(t){return null!=t?A.extend(t,i):i}},o={};return A.each(e,function(t,n){var a=n[2],s=n[5];i[n[1]]=a.add,s&&a.add(function(){r=s},e[3-t][2].disable,e[3-t][3].disable,e[0][2].lock,e[0][3].lock),a.add(n[3].fire),o[n[0]]=function(){return o[n[0]+"With"](this===o?void 0:this,arguments),this},o[n[0]+"With"]=a.fireWith}),i.promise(o),t&&t.call(o,o),o},when:function(t){var e=arguments.length,n=e,r=Array(n),i=l.call(arguments),o=A.Deferred(),a=function(t){return function(n){r[t]=this,i[t]=arguments.length>1?l.call(arguments):n,--e||o.resolveWith(r,i)}};if(e<=1&&(U(t,o.done(a(n)).resolve,o.reject,!e),"pending"===o.state()||y(i[n]&&i[n].then)))return o.then();for(;n--;)U(i[n],a(n),o.reject);return o.promise()}});var V=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;A.Deferred.exceptionHook=function(t,e){n.console&&n.console.warn&&t&&V.test(t.name)&&n.console.warn("jQuery.Deferred exception: "+t.message,t.stack,e)},A.readyException=function(t){n.setTimeout(function(){throw t})};var q=A.Deferred();function $(){a.removeEventListener("DOMContentLoaded",$),n.removeEventListener("load",$),A.ready()}A.fn.ready=function(t){return q.then(t).catch(function(t){A.readyException(t)}),this},A.extend({isReady:!1,readyWait:1,ready:function(t){(!0===t?--A.readyWait:A.isReady)||(A.isReady=!0,!0!==t&&--A.readyWait>0||q.resolveWith(a,[A]))}}),A.ready.then=q.then,"complete"===a.readyState||"loading"!==a.readyState&&!a.documentElement.doScroll?n.setTimeout(A.ready):(a.addEventListener("DOMContentLoaded",$),n.addEventListener("load",$));var H=function(t,e,n,r,i,o,a){var s=0,l=t.length,u=null==n;if("object"===w(n))for(s in i=!0,n)H(t,e,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,y(r)||(a=!0),u&&(a?(e.call(t,r),e=null):(u=e,e=function(t,e,n){return u.call(A(t),n)})),e))for(;s1,null,!0)},removeData:function(t){return this.each(function(){Q.remove(this,t)})}}),A.extend({queue:function(t,e,n){var r;if(t)return e=(e||"fx")+"queue",r=K.get(t,e),n&&(!r||Array.isArray(n)?r=K.access(t,e,A.makeArray(n)):r.push(n)),r||[]},dequeue:function(t,e){e=e||"fx";var n=A.queue(t,e),r=n.length,i=n.shift(),o=A._queueHooks(t,e);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===e&&n.unshift("inprogress"),delete o.stop,i.call(t,function(){A.dequeue(t,e)},o)),!r&&o&&o.empty.fire()},_queueHooks:function(t,e){var n=e+"queueHooks";return K.get(t,n)||K.access(t,n,{empty:A.Callbacks("once memory").add(function(){K.remove(t,[e+"queue",n])})})}}),A.fn.extend({queue:function(t,e){var n=2;return"string"!=typeof t&&(e=t,t="fx",n--),arguments.length\x20\t\r\n\f]*)/i,gt=/^$|^module$|\/(?:java|ecma)script/i,yt={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function bt(t,e){var n;return n=void 0!==t.getElementsByTagName?t.getElementsByTagName(e||"*"):void 0!==t.querySelectorAll?t.querySelectorAll(e||"*"):[],void 0===e||e&&O(t,e)?A.merge([t],n):n}function xt(t,e){for(var n=0,r=t.length;n-1)i&&i.push(o);else if(u=st(o),a=bt(f.appendChild(o),"script"),u&&xt(a),n)for(c=0;o=a[c++];)gt.test(o.type||"")&&n.push(o);return f}_t=a.createDocumentFragment().appendChild(a.createElement("div")),(wt=a.createElement("input")).setAttribute("type","radio"),wt.setAttribute("checked","checked"),wt.setAttribute("name","t"),_t.appendChild(wt),g.checkClone=_t.cloneNode(!0).cloneNode(!0).lastChild.checked,_t.innerHTML="",g.noCloneChecked=!!_t.cloneNode(!0).lastChild.defaultValue;var kt=/^key/,Tt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,St=/^([^.]*)(?:\.(.+)|)/;function Ct(){return!0}function Et(){return!1}function Ot(t,e){return t===function(){try{return a.activeElement}catch(t){}}()==("focus"===e)}function Dt(t,e,n,r,i,o){var a,s;if("object"==typeof e){for(s in"string"!=typeof n&&(r=r||n,n=void 0),e)Dt(t,s,n,r,e[s],o);return t}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Et;else if(!i)return t;return 1===o&&(a=i,(i=function(t){return A().off(t),a.apply(this,arguments)}).guid=a.guid||(a.guid=A.guid++)),t.each(function(){A.event.add(this,e,i,r,n)})}function Lt(t,e,n){n?(K.set(t,e,!1),A.event.add(t,e,{namespace:!1,handler:function(t){var r,i,o=K.get(this,e);if(1&t.isTrigger&&this[e]){if(o)(A.event.special[e]||{}).delegateType&&t.stopPropagation();else if(o=l.call(arguments),K.set(this,e,o),r=n(this,e),this[e](),o!==(i=K.get(this,e))||r?K.set(this,e,!1):i=void 0,o!==i)return t.stopImmediatePropagation(),t.preventDefault(),i}else o&&(K.set(this,e,A.event.trigger(A.extend(o.shift(),A.Event.prototype),o,this)),t.stopImmediatePropagation())}})):A.event.add(t,e,Ct)}A.event={global:{},add:function(t,e,n,r,i){var o,a,s,l,u,c,f,h,p,d,v,m=K.get(t);if(m)for(n.handler&&(n=(o=n).handler,i=o.selector),i&&A.find.matchesSelector(at,i),n.guid||(n.guid=A.guid++),(l=m.events)||(l=m.events={}),(a=m.handle)||(a=m.handle=function(e){return void 0!==A&&A.event.triggered!==e.type?A.event.dispatch.apply(t,arguments):void 0}),u=(e=(e||"").match(F)||[""]).length;u--;)p=v=(s=St.exec(e[u])||[])[1],d=(s[2]||"").split(".").sort(),p&&(f=A.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=A.event.special[p]||{},c=A.extend({type:p,origType:v,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&A.expr.match.needsContext.test(i),namespace:d.join(".")},o),(h=l[p])||((h=l[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,d,a)||t.addEventListener&&t.addEventListener(p,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?h.splice(h.delegateCount++,0,c):h.push(c),A.event.global[p]=!0)},remove:function(t,e,n,r,i){var o,a,s,l,u,c,f,h,p,d,v,m=K.hasData(t)&&K.get(t);if(m&&(l=m.events)){for(u=(e=(e||"").match(F)||[""]).length;u--;)if(p=v=(s=St.exec(e[u])||[])[1],d=(s[2]||"").split(".").sort(),p){for(f=A.event.special[p]||{},h=l[p=(r?f.delegateType:f.bindType)||p]||[],s=s[2]&&new RegExp("(^|\\.)"+d.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=h.length;o--;)c=h[o],!i&&v!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(h.splice(o,1),c.selector&&h.delegateCount--,f.remove&&f.remove.call(t,c));a&&!h.length&&(f.teardown&&!1!==f.teardown.call(t,d,m.handle)||A.removeEvent(t,p,m.handle),delete l[p])}else for(p in l)A.event.remove(t,p+e[u],n,r,!0);A.isEmptyObject(l)&&K.remove(t,"handle events")}},dispatch:function(t){var e,n,r,i,o,a,s=A.event.fix(t),l=new Array(arguments.length),u=(K.get(this,"events")||{})[s.type]||[],c=A.event.special[s.type]||{};for(l[0]=s,e=1;e=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==t.type||!0!==u.disabled)){for(o=[],a={},n=0;n-1:A.find(i,this,null,[u]).length),a[i]&&o.push(r);o.length&&s.push({elem:u,handlers:o})}return u=this,l\x20\t\r\n\f]*)[^>]*)\/>/gi,zt=/\s*$/g;function jt(t,e){return O(t,"table")&&O(11!==e.nodeType?e:e.firstChild,"tr")&&A(t).children("tbody")[0]||t}function Ft(t){return t.type=(null!==t.getAttribute("type"))+"/"+t.type,t}function Nt(t){return"true/"===(t.type||"").slice(0,5)?t.type=t.type.slice(5):t.removeAttribute("type"),t}function Bt(t,e){var n,r,i,o,a,s,l,u;if(1===e.nodeType){if(K.hasData(t)&&(o=K.access(t),a=K.set(e,o),u=o.events))for(i in delete a.handle,a.events={},u)for(n=0,r=u[i].length;n1&&"string"==typeof d&&!g.checkClone&&It.test(d))return t.each(function(i){var o=t.eq(i);v&&(e[0]=d.call(this,i,o.html())),Ut(o,e,n,r)});if(h&&(o=(i=Mt(e,t[0].ownerDocument,!1,t,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(a=A.map(bt(i,"script"),Ft)).length;f")},clone:function(t,e,n){var r,i,o,a,s,l,u,c=t.cloneNode(!0),f=st(t);if(!(g.noCloneChecked||1!==t.nodeType&&11!==t.nodeType||A.isXMLDoc(t)))for(a=bt(c),r=0,i=(o=bt(t)).length;r0&&xt(a,!f&&bt(t,"script")),c},cleanData:function(t){for(var e,n,r,i=A.event.special,o=0;void 0!==(n=t[o]);o++)if(Z(n)){if(e=n[K.expando]){if(e.events)for(r in e.events)i[r]?A.event.remove(n,r):A.removeEvent(n,r,e.handle);n[K.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),A.fn.extend({detach:function(t){return Vt(this,t,!0)},remove:function(t){return Vt(this,t)},text:function(t){return H(this,function(t){return void 0===t?A.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=t)})},null,t,arguments.length)},append:function(){return Ut(this,arguments,function(t){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||jt(this,t).appendChild(t)})},prepend:function(){return Ut(this,arguments,function(t){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var e=jt(this,t);e.insertBefore(t,e.firstChild)}})},before:function(){return Ut(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this)})},after:function(){return Ut(this,arguments,function(t){this.parentNode&&this.parentNode.insertBefore(t,this.nextSibling)})},empty:function(){for(var t,e=0;null!=(t=this[e]);e++)1===t.nodeType&&(A.cleanData(bt(t,!1)),t.textContent="");return this},clone:function(t,e){return t=null!=t&&t,e=null==e?t:e,this.map(function(){return A.clone(this,t,e)})},html:function(t){return H(this,function(t){var e=this[0]||{},n=0,r=this.length;if(void 0===t&&1===e.nodeType)return e.innerHTML;if("string"==typeof t&&!zt.test(t)&&!yt[(mt.exec(t)||["",""])[1].toLowerCase()]){t=A.htmlPrefilter(t);try{for(;n=0&&(l+=Math.max(0,Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-o-l-s-.5))||0),l}function ie(t,e,n){var r=$t(t),i=(!g.boxSizingReliable()||n)&&"border-box"===A.css(t,"boxSizing",!1,r),o=i,a=Wt(t,e,r),s="offset"+e[0].toUpperCase()+e.slice(1);if(qt.test(a)){if(!n)return a;a="auto"}return(!g.boxSizingReliable()&&i||"auto"===a||!parseFloat(a)&&"inline"===A.css(t,"display",!1,r))&&t.getClientRects().length&&(i="border-box"===A.css(t,"boxSizing",!1,r),(o=s in t)&&(a=t[s])),(a=parseFloat(a)||0)+re(t,e,n||(i?"border":"content"),o,r,a)+"px"}function oe(t,e,n,r,i){return new oe.prototype.init(t,e,n,r,i)}A.extend({cssHooks:{opacity:{get:function(t,e){if(e){var n=Wt(t,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(t,e,n,r){if(t&&3!==t.nodeType&&8!==t.nodeType&&t.style){var i,o,a,s=X(e),l=Qt.test(e),u=t.style;if(l||(e=Jt(s)),a=A.cssHooks[e]||A.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(t,!1,r))?i:u[e];"string"===(o=typeof n)&&(i=it.exec(n))&&i[1]&&(n=ft(t,e,i),o="number"),null!=n&&n==n&&("number"!==o||l||(n+=i&&i[3]||(A.cssNumber[s]?"":"px")),g.clearCloneStyle||""!==n||0!==e.indexOf("background")||(u[e]="inherit"),a&&"set"in a&&void 0===(n=a.set(t,n,r))||(l?u.setProperty(e,n):u[e]=n))}},css:function(t,e,n,r){var i,o,a,s=X(e);return Qt.test(e)||(e=Jt(s)),(a=A.cssHooks[e]||A.cssHooks[s])&&"get"in a&&(i=a.get(t,!0,n)),void 0===i&&(i=Wt(t,e,r)),"normal"===i&&e in ee&&(i=ee[e]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),A.each(["height","width"],function(t,e){A.cssHooks[e]={get:function(t,n,r){if(n)return!Kt.test(A.css(t,"display"))||t.getClientRects().length&&t.getBoundingClientRect().width?ie(t,e,r):ct(t,te,function(){return ie(t,e,r)})},set:function(t,n,r){var i,o=$t(t),a=!g.scrollboxSize()&&"absolute"===o.position,s=(a||r)&&"border-box"===A.css(t,"boxSizing",!1,o),l=r?re(t,e,r,s,o):0;return s&&a&&(l-=Math.ceil(t["offset"+e[0].toUpperCase()+e.slice(1)]-parseFloat(o[e])-re(t,e,"border",!1,o)-.5)),l&&(i=it.exec(n))&&"px"!==(i[3]||"px")&&(t.style[e]=n,n=A.css(t,e)),ne(0,n,l)}}}),A.cssHooks.marginLeft=Gt(g.reliableMarginLeft,function(t,e){if(e)return(parseFloat(Wt(t,"marginLeft"))||t.getBoundingClientRect().left-ct(t,{marginLeft:0},function(){return t.getBoundingClientRect().left}))+"px"}),A.each({margin:"",padding:"",border:"Width"},function(t,e){A.cssHooks[t+e]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[t+ot[r]+e]=o[r]||o[r-2]||o[0];return i}},"margin"!==t&&(A.cssHooks[t+e].set=ne)}),A.fn.extend({css:function(t,e){return H(this,function(t,e,n){var r,i,o={},a=0;if(Array.isArray(e)){for(r=$t(t),i=e.length;a1)}}),A.Tween=oe,oe.prototype={constructor:oe,init:function(t,e,n,r,i,o){this.elem=t,this.prop=n,this.easing=i||A.easing._default,this.options=e,this.start=this.now=this.cur(),this.end=r,this.unit=o||(A.cssNumber[n]?"":"px")},cur:function(){var t=oe.propHooks[this.prop];return t&&t.get?t.get(this):oe.propHooks._default.get(this)},run:function(t){var e,n=oe.propHooks[this.prop];return this.options.duration?this.pos=e=A.easing[this.easing](t,this.options.duration*t,0,1,this.options.duration):this.pos=e=t,this.now=(this.end-this.start)*e+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):oe.propHooks._default.set(this),this}},oe.prototype.init.prototype=oe.prototype,oe.propHooks={_default:{get:function(t){var e;return 1!==t.elem.nodeType||null!=t.elem[t.prop]&&null==t.elem.style[t.prop]?t.elem[t.prop]:(e=A.css(t.elem,t.prop,""))&&"auto"!==e?e:0},set:function(t){A.fx.step[t.prop]?A.fx.step[t.prop](t):1!==t.elem.nodeType||!A.cssHooks[t.prop]&&null==t.elem.style[Jt(t.prop)]?t.elem[t.prop]=t.now:A.style(t.elem,t.prop,t.now+t.unit)}}},oe.propHooks.scrollTop=oe.propHooks.scrollLeft={set:function(t){t.elem.nodeType&&t.elem.parentNode&&(t.elem[t.prop]=t.now)}},A.easing={linear:function(t){return t},swing:function(t){return.5-Math.cos(t*Math.PI)/2},_default:"swing"},A.fx=oe.prototype.init,A.fx.step={};var ae,se,le=/^(?:toggle|show|hide)$/,ue=/queueHooks$/;function ce(){se&&(!1===a.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(ce):n.setTimeout(ce,A.fx.interval),A.fx.tick())}function fe(){return n.setTimeout(function(){ae=void 0}),ae=Date.now()}function he(t,e){var n,r=0,i={height:t};for(e=e?1:0;r<4;r+=2-e)i["margin"+(n=ot[r])]=i["padding"+n]=t;return e&&(i.opacity=i.width=t),i}function pe(t,e,n){for(var r,i=(de.tweeners[e]||[]).concat(de.tweeners["*"]),o=0,a=i.length;o1)},removeAttr:function(t){return this.each(function(){A.removeAttr(this,t)})}}),A.extend({attr:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===t.getAttribute?A.prop(t,e,n):(1===o&&A.isXMLDoc(t)||(i=A.attrHooks[e.toLowerCase()]||(A.expr.match.bool.test(e)?ve:void 0)),void 0!==n?null===n?void A.removeAttr(t,e):i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:(t.setAttribute(e,n+""),n):i&&"get"in i&&null!==(r=i.get(t,e))?r:null==(r=A.find.attr(t,e))?void 0:r)},attrHooks:{type:{set:function(t,e){if(!g.radioValue&&"radio"===e&&O(t,"input")){var n=t.value;return t.setAttribute("type",e),n&&(t.value=n),e}}}},removeAttr:function(t,e){var n,r=0,i=e&&e.match(F);if(i&&1===t.nodeType)for(;n=i[r++];)t.removeAttribute(n)}}),ve={set:function(t,e,n){return!1===e?A.removeAttr(t,n):t.setAttribute(n,n),n}},A.each(A.expr.match.bool.source.match(/\w+/g),function(t,e){var n=me[e]||A.find.attr;me[e]=function(t,e,r){var i,o,a=e.toLowerCase();return r||(o=me[a],me[a]=i,i=null!=n(t,e,r)?a:null,me[a]=o),i}});var ge=/^(?:input|select|textarea|button)$/i,ye=/^(?:a|area)$/i;function be(t){return(t.match(F)||[]).join(" ")}function xe(t){return t.getAttribute&&t.getAttribute("class")||""}function _e(t){return Array.isArray(t)?t:"string"==typeof t&&t.match(F)||[]}A.fn.extend({prop:function(t,e){return H(this,A.prop,t,e,arguments.length>1)},removeProp:function(t){return this.each(function(){delete this[A.propFix[t]||t]})}}),A.extend({prop:function(t,e,n){var r,i,o=t.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&A.isXMLDoc(t)||(e=A.propFix[e]||e,i=A.propHooks[e]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(t,n,e))?r:t[e]=n:i&&"get"in i&&null!==(r=i.get(t,e))?r:t[e]},propHooks:{tabIndex:{get:function(t){var e=A.find.attr(t,"tabindex");return e?parseInt(e,10):ge.test(t.nodeName)||ye.test(t.nodeName)&&t.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),g.optSelected||(A.propHooks.selected={get:function(t){var e=t.parentNode;return e&&e.parentNode&&e.parentNode.selectedIndex,null},set:function(t){var e=t.parentNode;e&&(e.selectedIndex,e.parentNode&&e.parentNode.selectedIndex)}}),A.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){A.propFix[this.toLowerCase()]=this}),A.fn.extend({addClass:function(t){var e,n,r,i,o,a,s,l=0;if(y(t))return this.each(function(e){A(this).addClass(t.call(this,e,xe(this)))});if((e=_e(t)).length)for(;n=this[l++];)if(i=xe(n),r=1===n.nodeType&&" "+be(i)+" "){for(a=0;o=e[a++];)r.indexOf(" "+o+" ")<0&&(r+=o+" ");i!==(s=be(r))&&n.setAttribute("class",s)}return this},removeClass:function(t){var e,n,r,i,o,a,s,l=0;if(y(t))return this.each(function(e){A(this).removeClass(t.call(this,e,xe(this)))});if(!arguments.length)return this.attr("class","");if((e=_e(t)).length)for(;n=this[l++];)if(i=xe(n),r=1===n.nodeType&&" "+be(i)+" "){for(a=0;o=e[a++];)for(;r.indexOf(" "+o+" ")>-1;)r=r.replace(" "+o+" "," ");i!==(s=be(r))&&n.setAttribute("class",s)}return this},toggleClass:function(t,e){var n=typeof t,r="string"===n||Array.isArray(t);return"boolean"==typeof e&&r?e?this.addClass(t):this.removeClass(t):y(t)?this.each(function(n){A(this).toggleClass(t.call(this,n,xe(this),e),e)}):this.each(function(){var e,i,o,a;if(r)for(i=0,o=A(this),a=_e(t);e=a[i++];)o.hasClass(e)?o.removeClass(e):o.addClass(e);else void 0!==t&&"boolean"!==n||((e=xe(this))&&K.set(this,"__className__",e),this.setAttribute&&this.setAttribute("class",e||!1===t?"":K.get(this,"__className__")||""))})},hasClass:function(t){var e,n,r=0;for(e=" "+t+" ";n=this[r++];)if(1===n.nodeType&&(" "+be(xe(n))+" ").indexOf(e)>-1)return!0;return!1}});var we=/\r/g;A.fn.extend({val:function(t){var e,n,r,i=this[0];return arguments.length?(r=y(t),this.each(function(n){var i;1===this.nodeType&&(null==(i=r?t.call(this,n,A(this).val()):t)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=A.map(i,function(t){return null==t?"":t+""})),(e=A.valHooks[this.type]||A.valHooks[this.nodeName.toLowerCase()])&&"set"in e&&void 0!==e.set(this,i,"value")||(this.value=i))})):i?(e=A.valHooks[i.type]||A.valHooks[i.nodeName.toLowerCase()])&&"get"in e&&void 0!==(n=e.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(we,""):null==n?"":n:void 0}}),A.extend({valHooks:{option:{get:function(t){var e=A.find.attr(t,"value");return null!=e?e:be(A.text(t))}},select:{get:function(t){var e,n,r,i=t.options,o=t.selectedIndex,a="select-one"===t.type,s=a?null:[],l=a?o+1:i.length;for(r=o<0?l:a?o:0;r-1)&&(n=!0);return n||(t.selectedIndex=-1),o}}}}),A.each(["radio","checkbox"],function(){A.valHooks[this]={set:function(t,e){if(Array.isArray(e))return t.checked=A.inArray(A(t).val(),e)>-1}},g.checkOn||(A.valHooks[this].get=function(t){return null===t.getAttribute("value")?"on":t.value})}),g.focusin="onfocusin"in n;var Ae=/^(?:focusinfocus|focusoutblur)$/,Me=function(t){t.stopPropagation()};A.extend(A.event,{trigger:function(t,e,r,i){var o,s,l,u,c,f,h,p,v=[r||a],m=d.call(t,"type")?t.type:t,g=d.call(t,"namespace")?t.namespace.split("."):[];if(s=p=l=r=r||a,3!==r.nodeType&&8!==r.nodeType&&!Ae.test(m+A.event.triggered)&&(m.indexOf(".")>-1&&(g=m.split("."),m=g.shift(),g.sort()),c=m.indexOf(":")<0&&"on"+m,(t=t[A.expando]?t:new A.Event(m,"object"==typeof t&&t)).isTrigger=i?2:3,t.namespace=g.join("."),t.rnamespace=t.namespace?new RegExp("(^|\\.)"+g.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,t.result=void 0,t.target||(t.target=r),e=null==e?[t]:A.makeArray(e,[t]),h=A.event.special[m]||{},i||!h.trigger||!1!==h.trigger.apply(r,e))){if(!i&&!h.noBubble&&!b(r)){for(u=h.delegateType||m,Ae.test(u+m)||(s=s.parentNode);s;s=s.parentNode)v.push(s),l=s;l===(r.ownerDocument||a)&&v.push(l.defaultView||l.parentWindow||n)}for(o=0;(s=v[o++])&&!t.isPropagationStopped();)p=s,t.type=o>1?u:h.bindType||m,(f=(K.get(s,"events")||{})[t.type]&&K.get(s,"handle"))&&f.apply(s,e),(f=c&&s[c])&&f.apply&&Z(s)&&(t.result=f.apply(s,e),!1===t.result&&t.preventDefault());return t.type=m,i||t.isDefaultPrevented()||h._default&&!1!==h._default.apply(v.pop(),e)||!Z(r)||c&&y(r[m])&&!b(r)&&((l=r[c])&&(r[c]=null),A.event.triggered=m,t.isPropagationStopped()&&p.addEventListener(m,Me),r[m](),t.isPropagationStopped()&&p.removeEventListener(m,Me),A.event.triggered=void 0,l&&(r[c]=l)),t.result}},simulate:function(t,e,n){var r=A.extend(new A.Event,n,{type:t,isSimulated:!0});A.event.trigger(r,null,e)}}),A.fn.extend({trigger:function(t,e){return this.each(function(){A.event.trigger(t,e,this)})},triggerHandler:function(t,e){var n=this[0];if(n)return A.event.trigger(t,e,n,!0)}}),g.focusin||A.each({focus:"focusin",blur:"focusout"},function(t,e){var n=function(t){A.event.simulate(e,t.target,A.event.fix(t))};A.event.special[e]={setup:function(){var r=this.ownerDocument||this,i=K.access(r,e);i||r.addEventListener(t,n,!0),K.access(r,e,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this,i=K.access(r,e)-1;i?K.access(r,e,i):(r.removeEventListener(t,n,!0),K.remove(r,e))}}});var ke=n.location,Te=Date.now(),Se=/\?/;A.parseXML=function(t){var e;if(!t||"string"!=typeof t)return null;try{e=(new n.DOMParser).parseFromString(t,"text/xml")}catch(t){e=void 0}return e&&!e.getElementsByTagName("parsererror").length||A.error("Invalid XML: "+t),e};var Ce=/\[\]$/,Ee=/\r?\n/g,Oe=/^(?:submit|button|image|reset|file)$/i,De=/^(?:input|select|textarea|keygen)/i;function Le(t,e,n,r){var i;if(Array.isArray(e))A.each(e,function(e,i){n||Ce.test(t)?r(t,i):Le(t+"["+("object"==typeof i&&null!=i?e:"")+"]",i,n,r)});else if(n||"object"!==w(e))r(t,e);else for(i in e)Le(t+"["+i+"]",e[i],n,r)}A.param=function(t,e){var n,r=[],i=function(t,e){var n=y(e)?e():e;r[r.length]=encodeURIComponent(t)+"="+encodeURIComponent(null==n?"":n)};if(null==t)return"";if(Array.isArray(t)||t.jquery&&!A.isPlainObject(t))A.each(t,function(){i(this.name,this.value)});else for(n in t)Le(n,t[n],e,i);return r.join("&")},A.fn.extend({serialize:function(){return A.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var t=A.prop(this,"elements");return t?A.makeArray(t):this}).filter(function(){var t=this.type;return this.name&&!A(this).is(":disabled")&&De.test(this.nodeName)&&!Oe.test(t)&&(this.checked||!vt.test(t))}).map(function(t,e){var n=A(this).val();return null==n?null:Array.isArray(n)?A.map(n,function(t){return{name:e.name,value:t.replace(Ee,"\r\n")}}):{name:e.name,value:n.replace(Ee,"\r\n")}}).get()}});var Pe=/%20/g,ze=/#.*$/,Ie=/([?&])_=[^&]*/,Re=/^(.*?):[ \t]*([^\r\n]*)$/gm,je=/^(?:GET|HEAD)$/,Fe=/^\/\//,Ne={},Be={},Ue="*/".concat("*"),Ve=a.createElement("a");function qe(t){return function(e,n){"string"!=typeof e&&(n=e,e="*");var r,i=0,o=e.toLowerCase().match(F)||[];if(y(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(t[r]=t[r]||[]).unshift(n)):(t[r]=t[r]||[]).push(n)}}function $e(t,e,n,r){var i={},o=t===Be;function a(s){var l;return i[s]=!0,A.each(t[s]||[],function(t,s){var u=s(e,n,r);return"string"!=typeof u||o||i[u]?o?!(l=u):void 0:(e.dataTypes.unshift(u),a(u),!1)}),l}return a(e.dataTypes[0])||!i["*"]&&a("*")}function He(t,e){var n,r,i=A.ajaxSettings.flatOptions||{};for(n in e)void 0!==e[n]&&((i[n]?t:r||(r={}))[n]=e[n]);return r&&A.extend(!0,t,r),t}Ve.href=ke.href,A.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:ke.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(ke.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Ue,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":A.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(t,e){return e?He(He(t,A.ajaxSettings),e):He(A.ajaxSettings,t)},ajaxPrefilter:qe(Ne),ajaxTransport:qe(Be),ajax:function(t,e){"object"==typeof t&&(e=t,t=void 0),e=e||{};var r,i,o,s,l,u,c,f,h,p,d=A.ajaxSetup({},e),v=d.context||d,m=d.context&&(v.nodeType||v.jquery)?A(v):A.event,g=A.Deferred(),y=A.Callbacks("once memory"),b=d.statusCode||{},x={},_={},w="canceled",M={readyState:0,getResponseHeader:function(t){var e;if(c){if(!s)for(s={};e=Re.exec(o);)s[e[1].toLowerCase()+" "]=(s[e[1].toLowerCase()+" "]||[]).concat(e[2]);e=s[t.toLowerCase()+" "]}return null==e?null:e.join(", ")},getAllResponseHeaders:function(){return c?o:null},setRequestHeader:function(t,e){return null==c&&(t=_[t.toLowerCase()]=_[t.toLowerCase()]||t,x[t]=e),this},overrideMimeType:function(t){return null==c&&(d.mimeType=t),this},statusCode:function(t){var e;if(t)if(c)M.always(t[M.status]);else for(e in t)b[e]=[b[e],t[e]];return this},abort:function(t){var e=t||w;return r&&r.abort(e),k(0,e),this}};if(g.promise(M),d.url=((t||d.url||ke.href)+"").replace(Fe,ke.protocol+"//"),d.type=e.method||e.type||d.method||d.type,d.dataTypes=(d.dataType||"*").toLowerCase().match(F)||[""],null==d.crossDomain){u=a.createElement("a");try{u.href=d.url,u.href=u.href,d.crossDomain=Ve.protocol+"//"+Ve.host!=u.protocol+"//"+u.host}catch(t){d.crossDomain=!0}}if(d.data&&d.processData&&"string"!=typeof d.data&&(d.data=A.param(d.data,d.traditional)),$e(Ne,d,e,M),c)return M;for(h in(f=A.event&&d.global)&&0==A.active++&&A.event.trigger("ajaxStart"),d.type=d.type.toUpperCase(),d.hasContent=!je.test(d.type),i=d.url.replace(ze,""),d.hasContent?d.data&&d.processData&&0===(d.contentType||"").indexOf("application/x-www-form-urlencoded")&&(d.data=d.data.replace(Pe,"+")):(p=d.url.slice(i.length),d.data&&(d.processData||"string"==typeof d.data)&&(i+=(Se.test(i)?"&":"?")+d.data,delete d.data),!1===d.cache&&(i=i.replace(Ie,"$1"),p=(Se.test(i)?"&":"?")+"_="+Te+++p),d.url=i+p),d.ifModified&&(A.lastModified[i]&&M.setRequestHeader("If-Modified-Since",A.lastModified[i]),A.etag[i]&&M.setRequestHeader("If-None-Match",A.etag[i])),(d.data&&d.hasContent&&!1!==d.contentType||e.contentType)&&M.setRequestHeader("Content-Type",d.contentType),M.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+("*"!==d.dataTypes[0]?", "+Ue+"; q=0.01":""):d.accepts["*"]),d.headers)M.setRequestHeader(h,d.headers[h]);if(d.beforeSend&&(!1===d.beforeSend.call(v,M,d)||c))return M.abort();if(w="abort",y.add(d.complete),M.done(d.success),M.fail(d.error),r=$e(Be,d,e,M)){if(M.readyState=1,f&&m.trigger("ajaxSend",[M,d]),c)return M;d.async&&d.timeout>0&&(l=n.setTimeout(function(){M.abort("timeout")},d.timeout));try{c=!1,r.send(x,k)}catch(t){if(c)throw t;k(-1,t)}}else k(-1,"No Transport");function k(t,e,a,s){var u,h,p,x,_,w=e;c||(c=!0,l&&n.clearTimeout(l),r=void 0,o=s||"",M.readyState=t>0?4:0,u=t>=200&&t<300||304===t,a&&(x=function(t,e,n){for(var r,i,o,a,s=t.contents,l=t.dataTypes;"*"===l[0];)l.shift(),void 0===r&&(r=t.mimeType||e.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){l.unshift(i);break}if(l[0]in n)o=l[0];else{for(i in n){if(!l[0]||t.converters[i+" "+l[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==l[0]&&l.unshift(o),n[o]}(d,M,a)),x=function(t,e,n,r){var i,o,a,s,l,u={},c=t.dataTypes.slice();if(c[1])for(a in t.converters)u[a.toLowerCase()]=t.converters[a];for(o=c.shift();o;)if(t.responseFields[o]&&(n[t.responseFields[o]]=e),!l&&r&&t.dataFilter&&(e=t.dataFilter(e,t.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(!(a=u[l+" "+o]||u["* "+o]))for(i in u)if((s=i.split(" "))[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){!0===a?a=u[i]:!0!==u[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&t.throws)e=a(e);else try{e=a(e)}catch(t){return{state:"parsererror",error:a?t:"No conversion from "+l+" to "+o}}}return{state:"success",data:e}}(d,x,M,u),u?(d.ifModified&&((_=M.getResponseHeader("Last-Modified"))&&(A.lastModified[i]=_),(_=M.getResponseHeader("etag"))&&(A.etag[i]=_)),204===t||"HEAD"===d.type?w="nocontent":304===t?w="notmodified":(w=x.state,h=x.data,u=!(p=x.error))):(p=w,!t&&w||(w="error",t<0&&(t=0))),M.status=t,M.statusText=(e||w)+"",u?g.resolveWith(v,[h,w,M]):g.rejectWith(v,[M,w,p]),M.statusCode(b),b=void 0,f&&m.trigger(u?"ajaxSuccess":"ajaxError",[M,d,u?h:p]),y.fireWith(v,[M,w]),f&&(m.trigger("ajaxComplete",[M,d]),--A.active||A.event.trigger("ajaxStop")))}return M},getJSON:function(t,e,n){return A.get(t,e,n,"json")},getScript:function(t,e){return A.get(t,void 0,e,"script")}}),A.each(["get","post"],function(t,e){A[e]=function(t,n,r,i){return y(n)&&(i=i||r,r=n,n=void 0),A.ajax(A.extend({url:t,type:e,dataType:i,data:n,success:r},A.isPlainObject(t)&&t))}}),A._evalUrl=function(t,e){return A.ajax({url:t,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(t){A.globalEval(t,e)}})},A.fn.extend({wrapAll:function(t){var e;return this[0]&&(y(t)&&(t=t.call(this[0])),e=A(t,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&e.insertBefore(this[0]),e.map(function(){for(var t=this;t.firstElementChild;)t=t.firstElementChild;return t}).append(this)),this},wrapInner:function(t){return y(t)?this.each(function(e){A(this).wrapInner(t.call(this,e))}):this.each(function(){var e=A(this),n=e.contents();n.length?n.wrapAll(t):e.append(t)})},wrap:function(t){var e=y(t);return this.each(function(n){A(this).wrapAll(e?t.call(this,n):t)})},unwrap:function(t){return this.parent(t).not("body").each(function(){A(this).replaceWith(this.childNodes)}),this}}),A.expr.pseudos.hidden=function(t){return!A.expr.pseudos.visible(t)},A.expr.pseudos.visible=function(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)},A.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(t){}};var We={0:200,1223:204},Ge=A.ajaxSettings.xhr();g.cors=!!Ge&&"withCredentials"in Ge,g.ajax=Ge=!!Ge,A.ajaxTransport(function(t){var e,r;if(g.cors||Ge&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(a,i[a]);e=function(t){return function(){e&&(e=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===t?s.abort():"error"===t?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(We[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=e(),r=s.onerror=s.ontimeout=e("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout(function(){e&&r()})},e=e("abort");try{s.send(t.hasContent&&t.data||null)}catch(t){if(e)throw t}},abort:function(){e&&e()}}}),A.ajaxPrefilter(function(t){t.crossDomain&&(t.contents.script=!1)}),A.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(t){return A.globalEval(t),t}}}),A.ajaxPrefilter("script",function(t){void 0===t.cache&&(t.cache=!1),t.crossDomain&&(t.type="GET")}),A.ajaxTransport("script",function(t){var e,n;if(t.crossDomain||t.scriptAttrs)return{send:function(r,i){e=A("