From a65b35ea53868fe437e507a985767970556d758d Mon Sep 17 00:00:00 2001 From: "agbarneo@optaresolutions.com" Date: Wed, 4 Sep 2024 13:32:22 +0000 Subject: [PATCH 01/10] Added the components needed to work with qkd in webui --- src/webui/service/device/forms.py | 3 +- src/webui/service/device/routes.py | 4 +- src/webui/service/service/forms.py | 27 ++- src/webui/service/service/routes.py | 84 +++++++- .../static/topology_icons/emu-qkd-node.png | Bin 0 -> 60074 bytes .../static/topology_icons/qkd-node.png | Bin 0 -> 86466 bytes src/webui/service/templates/app/home.html | 78 ++++++++ src/webui/service/templates/base.html | 7 + src/webui/service/templates/device/add.html | 1 + .../templates/service/configure_QKD.html | 187 ++++++++++++++++++ 10 files changed, 383 insertions(+), 8 deletions(-) create mode 100644 src/webui/service/static/topology_icons/emu-qkd-node.png create mode 100644 src/webui/service/static/topology_icons/qkd-node.png create mode 100644 src/webui/service/templates/app/home.html create mode 100644 src/webui/service/templates/service/configure_QKD.html diff --git a/src/webui/service/device/forms.py b/src/webui/service/device/forms.py index e4c71d921..38f56bc00 100644 --- a/src/webui/service/device/forms.py +++ b/src/webui/service/device/forms.py @@ -33,6 +33,7 @@ class AddDeviceForm(FlaskForm): device_drivers_gnmi_openconfig = BooleanField('GNMI OPENCONFIG') device_drivers_optical_tfs = BooleanField('OPTICAL TFS') device_drivers_ietf_actn = BooleanField('IETF ACTN') + device_drivers_qkd = BooleanField('QKD') device_config_address = StringField('connect/address',default='127.0.0.1',validators=[DataRequired(), Length(min=5)]) device_config_port = StringField('connect/port',default='0',validators=[DataRequired(), Length(min=1)]) @@ -56,4 +57,4 @@ class UpdateDeviceForm(FlaskForm): coerce=int, validators=[NumberRange(min=0)]) - submit = SubmitField('Update') + submit = SubmitField('Update') \ No newline at end of file diff --git a/src/webui/service/device/routes.py b/src/webui/service/device/routes.py index fb930024d..8856c6020 100644 --- a/src/webui/service/device/routes.py +++ b/src/webui/service/device/routes.py @@ -129,6 +129,8 @@ def add(): device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_OPTICAL_TFS) if form.device_drivers_ietf_actn.data: device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_IETF_ACTN) + if form.device_drivers_qkd.data: + device_drivers.append(DeviceDriverEnum.DEVICEDRIVER_QKD) device_obj.device_drivers.extend(device_drivers) # pylint: disable=no-member try: @@ -250,4 +252,4 @@ def update(device_uuid): return redirect(url_for('device.home')) except Exception as e: # pylint: disable=broad-except flash(f'Problem updating the device. {e.details()}', 'danger') - return render_template('device/update.html', device=response, form=form, submit_text='Update Device') + return render_template('device/update.html', device=response, form=form, submit_text='Update Device') \ No newline at end of file diff --git a/src/webui/service/service/forms.py b/src/webui/service/service/forms.py index f07acf543..2eb9794a9 100644 --- a/src/webui/service/service/forms.py +++ b/src/webui/service/service/forms.py @@ -17,6 +17,11 @@ from flask_wtf import FlaskForm from wtforms import StringField, SelectField, IntegerField, DecimalField from wtforms.validators import InputRequired, Optional, NumberRange, ValidationError, StopValidation +# Custom uuid validator +def validate_uuid_address(form, field): + if not re.match(r'^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$', field.data): + raise ValidationError('Invalid uuid format') + # Custom IPv4 address validator def validate_ipv4_address(form, field): try: @@ -60,7 +65,25 @@ class CustomInputRequired(): raise StopValidation(self.message) class AddServiceForm_1(FlaskForm): - service_type = SelectField('Type of service', choices=[('', 'Select a type of service to add'), ('ACL_L2', 'ACL_L2'), ('ACL_IPV4', 'ACL_IPV4'), ('ACL_IPV6', 'ACL_IPV6'), ('L2VPN', 'L2VPN'), ('L3VPN', 'L3VPN')], validators=[InputRequired()]) + service_type = SelectField('Type of service', choices=[('', 'Select a type of service to add'), ('ACL_L2', 'ACL_L2'), ('ACL_IPV4', 'ACL_IPV4'), ('ACL_IPV6', 'ACL_IPV6'), ('L2VPN', 'L2VPN'), ('L3VPN', 'L3VPN'), ('QKD', 'QKD')], validators=[InputRequired()]) + +class AddServiceForm_QKD(FlaskForm): + #GENERIC SERVICE PARAMETERS (COMMON & MANDATORY) + service_name = StringField('Service Name', validators=[CustomInputRequired()]) + service_type = SelectField('Service Type', choices=[(6, '6 (QKD)')], validators=[CustomInputRequired()]) + service_device_1 = SelectField('Device_1', choices=[('', 'Select a device (Mandatory)')], validators=[CustomInputRequired()]) + service_device_2 = SelectField('Device_2', choices=[('', 'Select a device (Mandatory)')], validators=[CustomInputRequired()]) + service_endpoint_1 = StringField('Device_1 Endpoint', validators=[CustomInputRequired()]) + service_endpoint_2 = StringField('Device_2 Endpoint', validators=[CustomInputRequired()]) + + #GENERIC SERVICE CONSTRAINT PARAMETERS (ALL OPTIONAL) + service_capacity = DecimalField('Service Capacity', places=2, default=10.00, validators=[Optional(), NumberRange(min=0)]) + service_latency = DecimalField('Service Latency', places=2, default=15.20, validators=[Optional(), NumberRange(min=0)]) + service_availability= DecimalField('Service Availability', places=2, validators=[Optional(), NumberRange(min=0)]) + service_isolation = SelectField('Service Isolation', choices=[('', 'Select (Optional)'), ('NO_ISOLATION', 'NO_ISOLATION'), ('PHYSICAL_ISOLATION', 'PHYSICAL_ISOLATION'), + ('LOGICAL_ISOLATION', 'LOGICAL_ISOLATION'), ('PROCESS_ISOLATION', 'PROCESS_ISOLATION'), ('PHYSICAL_MEMORY_ISOLATION', 'PHYSICAL_MEMORY_ISOLATION'), + ('PHYSICAL_NETWORK_ISOLATION', 'PHYSICAL_NETWORK_ISOLATION'), ('VIRTUAL_RESOURCE_ISOLATION', 'VIRTUAL_RESOURCE_ISOLATION'), + ('NETWORK_FUNCTIONS_ISOLATION', 'NETWORK_FUNCTIONS_ISOLATION'), ('SERVICE_ISOLATION', 'SERVICE_ISOLATION')], validators=[Optional()]) class AddServiceForm_ACL_L2(FlaskForm): #GENERIC SERVICE PARAMETERS (COMMON & MANDATORY) @@ -258,4 +281,4 @@ class AddServiceForm_L3VPN(FlaskForm): Device_2_IF_mtu = IntegerField('Device_2 Interface MTU', validators=[Optional(), NumberRange(min=0, message="MTU value can't be negative")]) Device_2_IF_address_ip = StringField('Device_2 IP Address', validators=[CustomInputRequired(), validate_ipv4_address]) Device_2_IF_address_prefix = IntegerField('Device_2 IP Prefix length', validators=[CustomInputRequired(), validate_uint32]) - Device_2_IF_description = StringField ('Device_2 SubIF Description', validators=[Optional()]) + Device_2_IF_description = StringField ('Device_2 SubIF Description', validators=[Optional()]) \ No newline at end of file diff --git a/src/webui/service/service/routes.py b/src/webui/service/service/routes.py index 92025b2be..d8a3747a1 100644 --- a/src/webui/service/service/routes.py +++ b/src/webui/service/service/routes.py @@ -35,14 +35,14 @@ from common.tools.object_factory.Constraint import ( from common.tools.object_factory.Context import json_context_id from common.tools.object_factory.Device import json_device_id from common.tools.object_factory.EndPoint import json_endpoint_id -from common.tools.object_factory.Service import json_service_l2nm_planned, json_service_l3nm_planned +from common.tools.object_factory.Service import json_service_l2nm_planned, json_service_l3nm_planned, json_service_qkd_planned from common.tools.object_factory.Topology import json_topology_id from context.client.ContextClient import ContextClient from device.client.DeviceClient import DeviceClient from service.client.ServiceClient import ServiceClient from webui.service.service.forms import ( AddServiceForm_1, AddServiceForm_ACL_L2, AddServiceForm_ACL_IPV4, AddServiceForm_ACL_IPV6, - AddServiceForm_L2VPN, AddServiceForm_L3VPN + AddServiceForm_L2VPN, AddServiceForm_L3VPN, AddServiceForm_QKD ) LOGGER = logging.getLogger(__name__) @@ -329,10 +329,83 @@ def add_configure(): form_1 = AddServiceForm_1() if form_1.validate_on_submit(): service_type = str(form_1.service_type.data) - if service_type in {'ACL_L2', 'ACL_IPV4', 'ACL_IPV6', 'L2VPN', 'L3VPN'}: + if service_type in {'ACL_L2', 'ACL_IPV4', 'ACL_IPV6', 'L2VPN', 'L3VPN', 'QKD'}: return redirect(url_for('service.add_configure_{:s}'.format(service_type))) return render_template('service/add.html', form_1=form_1, submit_text='Continue to configuraton') +@service.route('add/configure/QKD', methods=['GET', 'POST']) +def add_configure_QKD(): + form_qkd = AddServiceForm_QKD() + service_obj = Service() + + context_uuid, topology_uuid = get_context_and_topology_uuids() + if context_uuid and topology_uuid: + context_client.connect() + grpc_topology = get_topology(context_client, topology_uuid, context_uuid=context_uuid, rw_copy=False) + if grpc_topology: + topo_device_uuids = {device_id.device_uuid.uuid for device_id in grpc_topology.device_ids} + devices = get_filtered_devices(context_client, topo_device_uuids) + grpc_devices = context_client.ListDevices(Empty()) + devices = [ + device for device in grpc_devices.devices + if device.device_id.device_uuid.uuid in topo_device_uuids and DeviceDriverEnum.DEVICEDRIVER_QKD in device.device_drivers + ] + choices = get_device_choices(devices) + add_device_choices_to_form(choices, form_qkd.service_device_1) + add_device_choices_to_form(choices, form_qkd.service_device_2) + else: + flash('Context({:s})/Topology({:s}) not found'.format(str(context_uuid), str(topology_uuid)), 'danger') + else: + flash('Missing context or topology UUID', 'danger') + + if form_qkd.validate_on_submit(): + try: + [selected_device_1, selected_device_2, selected_endpoint_1, selected_endpoint_2] = validate_selected_devices_and_endpoints(form_qkd, devices) + except Exception as e: + flash('{:s}'.format(str(e.args[0])), 'danger') + current_app.logger.exception(e) + return render_template('service/configure_QKD.html', form_qkd=form_qkd, submit_text='Add New Service') + + service_uuid, service_type, endpoint_ids = set_service_parameters(service_obj, form_qkd, selected_device_1, selected_device_2, selected_endpoint_1, selected_endpoint_2) + constraints = add_constraints(form_qkd) + params_device_1_with_data = get_device_params(form_qkd, 1, service_type) + params_device_2_with_data = get_device_params(form_qkd, 2, service_type) + print(params_device_1_with_data) + print(params_device_2_with_data) + params_settings = {} + config_rules = [ + json_config_rule_set( + '/settings', params_settings + ), + json_config_rule_set( + '/device[{:s}]/endpoint[{:s}]/settings'.format(str(selected_device_1.name), str(selected_endpoint_1)), params_device_1_with_data + ), + json_config_rule_set( + '/device[{:s}]/endpoint[{:s}]/settings'.format(str(selected_device_2.name), str(selected_endpoint_2)), params_device_2_with_data + ) + ] + + service_client.connect() + context_client.connect() + device_client.connect() + descriptor_json = json_service_qkd_planned(service_uuid = service_uuid, endpoint_ids = endpoint_ids, constraints = constraints, config_rules = config_rules, context_uuid= context_uuid) + descriptor_json = {"services": [descriptor_json]} + try: + process_descriptors(descriptor_json) + flash('Service "{:s}" added successfully!'.format(service_obj.service_id.service_uuid.uuid), 'success') + return redirect(url_for('service.home', service_uuid=service_obj.service_id.service_uuid.uuid)) + except Exception as e: + flash('Problem adding service: {:s}'.format((str(e.args[0]))), 'danger') + current_app.logger.exception(e) + finally: + context_client.close() + device_client.close() + service_client.close() + + + return render_template('service/configure_QKD.html', form_qkd=form_qkd, submit_text='Add New Service') + + @service.route('add/configure/ACL_L2', methods=['GET', 'POST']) def add_configure_ACL_L2(): form_acl = AddServiceForm_ACL_L2() @@ -666,8 +739,11 @@ def get_device_params(form, device_num, form_type): 'ni_description': str(getattr(form, 'NI_description').data), 'subif_description': str(getattr(form, f'Device_{device_num}_IF_description').data), } + elif form_type == 6: + device_params = { + } else: raise ValueError(f'Unsupported form type: {form_type}') params_with_data = {k: v for k, v in device_params.items() if v is not None and str(v) != 'None' and v != ''} - return params_with_data + return params_with_data \ No newline at end of file diff --git a/src/webui/service/static/topology_icons/emu-qkd-node.png b/src/webui/service/static/topology_icons/emu-qkd-node.png new file mode 100644 index 0000000000000000000000000000000000000000..d4dc1abaf42a56ff07d1f4a2c5d250b56486584d GIT binary patch literal 60074 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 literal 0 HcmV?d00001 diff --git a/src/webui/service/static/topology_icons/qkd-node.png b/src/webui/service/static/topology_icons/qkd-node.png new file mode 100644 index 0000000000000000000000000000000000000000..79f40d2a600bd7f9e55d0360a132800c09a8ac85 GIT binary patch literal 86466 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 z zZ;4w}CTid}rv!e*SCnd7_HbT(&$V-7n=;QuwI}&SPAhQ4e_$a#65g4*xO$7zob}Qq zU5;gnEIt1D)z1!pboX2m-eYY{EKJ-jG}sG9B`MQH%-%v;?X_tGM@7XoY;q2}1%!`t zCD`4K-`|*Yc5G}=O{ZG_Dtp_PSRyyAp4^2WOZa=RkjvYtBUoxFQQ|v-7u{V3M#tl{ zg>zaA4S@8r?}y-CU&Kd)#G=}$=5IHB@?ffb@Kb*wdaY&h%TK>f0Fqz^h1WBb)rE+u zMQXT^%vL}Y6#EKcJujE%pumg_oB4dc^$9sJX zA3g3c^S}P}rE`dQUOo=$7O$%H7Zc}uTiOuK0(BTnA2Al#PH)o55$;NU2=XYlyIHKT zFYq;pe+7-H0hng0^Ev91qR(W;JV9mH?-Mh!X{K$@mmGvFnmK0|< zm}PTzitnGI@oqRwC_^yb<}eX?jEsF3OGlAF;dGnD<y@j}YK3iP_+KoVUmsDKwihE_5{-w_ddPQ8RMhJ@&V zTM76JBX`i5oMv}PWTJ|Zmd^wDv$d4G{`I?U2{laCMOGL*V>*UC@U?6^Zy;2?1^U;6 zfjdODzwEmfW33xz!Y^nsH?YEcV|W31BK(mnP6l_n8<0;zkBtqCtYx9y{T9=jpY@-+NVL$XYSS z)Dv`XaOBUE3kbiPNODdmnPXewY^0xt#4PJ$3*-xktOsfK%iv9xa)SC*9avO1SEmuS z<|M_y;e^4!*M7pY&m#}ge;8wT6)Dp2WBQv4ab0OlX4z84K<)t8$ocFHBK2zWI|bG-nD`&@8>_`$k30jp&7=IGYf&Un`9_6c+tW zOA@Nxh*W1U=io3vDpQ>|sj#q{Ap|ruk-L%lDP#~NDIh3z-0b5=n8i<3j;MhrST3O8 z$ArS!iu^YlJtJyV_-!7w08x%*)1Cx}HjL0l@_F%*G}P=~H`eU;9=HZda*kezb#%$Z z7D}U|81B{@JY`IS4%5A4ZGC9Ug!kgsE+sG!?)9Y3e;755n~Li? znhBhw^r6raTR0&Am|S9^sVgNg8Ey*ep1GuPk}~d1<&a!-2oi%f|J_r)xu`{ zq1K#gA$Ikos>%9yHXKnG^|x~JQ899leT|HajA=DAHL*UQPr=|xoGoDB*Dr)h z%^Kn0Ck3}Jko4W@y6-A$v%br*No%KY`p**b_}qNF6wmhgLsyz-VOnk{4rHhxs6MGe ze2zZAhHEbXC%&q3fE=)8AnAmuI*j{hx>TvMJb=qf7)>qlKDDW`XHrS_uL}M^3q&ES z%Uep8f970wvEs<<(ubx@(SgYoa7WT?3JjuAZS5Mf*C=b+*p4i_mTI)4i>tW1xp}CM zU*rl4fUrTBL57kAiLaM_1fOoffYpf-Nkd(dP+-3j{JoNl7=PN>$wYG2O`2Y+4Q9~y z?bsuD((e?(SVwh@V1PU}HuD(yWfBMG%hJrI7n#k%>fGN9ic4q{y@?$162~PYw1X+k zuNq7@gBHTHq_Al2Lgoe+O<40RJit^RD1J%)NK-&#%>2^;YH4GcSgz_x0ezM=j8bZn z31@sl_%VX1(^+D*`947&omzs28&BJjGRC z2nBG9xuNEzK7=W}Q+WE2PBLa+ceR6u-u$dGP^ zjJ6zJMx>YnD;6`AY5x5YG2TYzc2!v=1JBP|%GLUs-%3PrNa#7_yh|UxU_+9Y{`omH z^z++MS+#bOOy7xzK2{|$sfHMoDNbr+XCSVveMX>{(j~|}Cywi?Tm0}o{FQ@_(iW90 zxY-pzHHm=`Kp+0H|2nxP7AO8j`=emVRr6VPIa?VuMVQ8}GaYcyCVC}fGirG=0RxVV zTx{J@s&eL`7%^2A!3(9mx|qZ!a|m1^`_L_yzg@-@*nijU7`AyRlyPTdW|8`&4v@!a zi!{_Lg7pE|jy@Qt7cC78Ldn)c#-c4yJdVHO)ybAR6k%uP#8_1GEW;4^yb+kN%zx!r7QTfwWV1R^P zHsgW~U8KQRNGG8<;X%TV4f6tUX*?=j1MvB13kBZZrp^ilZ=TO3Bf> z)5K&JJ!K4ZOTY$g)li)iwa(crPx7wke^SFk9^!5cZ_&kmG`2Ogi5f-%Lo?qj`}G+w zJ8D&04QI=6nbQ#a-HrgRvWcMJVF&-$dB>Vde>6EdfGFkxx<>ulW~8N5UK1^O?iywm z(=%=_`P044LOzjo#Tv>wGx0j1TvPlE-erj^r!+m8z`h$bbBi4d^L4)h1vxMSN+UVC z9Q%}=4i>XL+K&s^>7y?-E-Yn&XQU4Mox! zEp`27J9QOBw=AfEG<(0?D!)fJAqhsCCV}FmP1tgYdXfgo@mF znY8#5KW=+TNk#|OLRxXQa*4G)+ZkVMOH{E_2WLwRu@2|@V!|x`uc?jb!n!%$b!G}k zWJ0!2FpyRaqH{ zxtiP_r1wzjT7vW}plj!1IZd!Zp57(8<2X-!E(9}w=J5R&*^h3Iv zed0_@Fe2W<&R)fsoNoQsH>lh1n&!;&w+24pbpBF=y#ZJEP96rew21nWU{=Mzl1=?Ho8;SS?ZwDewiBMKn!=Fy@((njIsMY7 zzn=V~n|*bO>0n^n^(Ft2uDlx>yC(*rCCnQ1W=bTfudF4SW3_|cRcn8er!zU{_VAvz z5yJA_yG&nzuZOu_0pH4s)ZLunY?F0mZsFK)!X#9kaX6@NHtJol^wW)^3d0S-9N+V4 z-mQkI1fZ@}-p|*p!EZ?=r~S??Hb~uQ;ia zas5i&Maw--`qVO@cX5pQu@W(r!V?$ry#Wc&j|5$MEi+q;nds%a1e=mqC2y4yT1qI+ z>tTL);zlMqYpnDEmucmJ->e!{Qt02Z_r@xbks@xoR4~40wf2CO0OMnM}=w6Rfvu;Uf zgMa!r97#jk4apv;8--eh+fB-_6ZLT8ifGZ!QJ(X4Nb;}GR0Tv`^J`(85D`n$kQgm~ z6$hG#a2{n^zoA-yni-*movWJ^VyVlAmC?Q2FSt!}o_U8%O`mb>GuzR|g(W;ooYrYU>U*dm!WuldO zbCvA(3aEZ&adey_A{l1n0E!}5wNuq8(TY1)sUVZz!hU$!PFLA-udUTBHWblW^Bs#a_>U&KcX8EX?8NydAY6#ewb+3i33sgr{n4w z1r;=qnfPhvFR+Hyt$|(W^Ig-%BZv!C1PFQd~E=F}`oq+MwN9*AM@sPevyFuK9adbxvo-Il5JPKR&A;%>Y%> z=GByG{Qc^DHhv-Iif|NQ4;t!4QIcYwSr9n-yb8DA}D-7J^)n(=?0Q9s{|Hr|rlzmouOB(OiIkpX%# z{Dg2J1^Zd->2}(aDxphhvqXRc<0O13YEN&5gbv8$s_tK@j03^C&AxK^n2o{03+FFV zMx-loaW~)SSt}0?2kA^lqw98(9J%fAzKIa>umzyQ9;%Pndtp3HtW4!e!fC{B6K2l1 z2?AffqWs8hx|9`aZL2dIt%!V}LJe%rOB4^X7lI|!qhEC|6jHJ?Dvb34bIGuS!Np3* zNjhv*so%9U~G@lQk*n^cliy?h)Ws` z>$5Xc@}N-6I2WG%FLg|x*Fofv;+<*%3@%` zdcq}|JVW>C=Huavne(Q1w4RSqp&7cWBH%(;4Mp9FqTw09?^vP*?goL7B6z{PBte5pZ^A~dO)qwJzB7R}=ygI;zoPBwNCzU8imPEV zC&3g@7;Rwaq0ZpKfp9L#SSmR#BA`=hm!O6&G(tT}6#*0Qq0Y3)$_}Rd1U1dn+m% z9k&avoatsdI!+I+uExG7>_Ev$;!nvbYezb1M0=sNPQ<*1 zx2ZyQXfLh>i&>G0GcnAaOMNpk1a*F1FKoy9)}ZTtOxdV^0yCT7ieTwQ?Wmd`6Z|No z$tdWS3Q`Oj-BNQ76UqVvwFZU2I+??4ItX7WqK2yU{xSLHJ8N6Za_!d?z*M-0a>8QL?7{}WT6`0*kR6J5|)}q%S3`qdvXr~;pqlJkj_X*DUR zLKXF-6ZGaNB}Cp@U@dChr?kh4G}6$i0H#Vwn--$PnNF$zh8M>rokl%39R)Jvk(Ylr zz!==yJ*&$8r5gP}x1YaD=)CEDZw8}Eos56PFyyS~G{y*HB~OvNPy$V>)M1oZ!)@B= zenrrb493!em^;v{4?|(4zSEmyc@pfL9%t zM7(Eh@qWwt`+$R?YU|}j(8|1IJ_c4a^z8gIIvd)}I@-qou2BpKm0f(_>52Zw5J~P3 zYOQNhbR#O9u<3sS{;yAx;6DI=**kG0P?TP~R)yfW97#g_V};(nvlO{s;CXpb_Hv7L zRZVwRwQh7}8V_L{a#Um_Miebw{Y8@hgZt_W_dKGpW!%Y;D(gh&yF$G{$+d6Op9uD7 z?Dc0@{YYeHb#k&!=`VB?*Otqq*`kmR#<&Ah1UPF(H;iMGxH9sMm0UF=e%58$MbWBW zrV1G6Jh;*M5piaj+JNG)?96S_8o$s1i}IVxOHx5a5n?MZA(3=yEb&d=E;&)SkfDao zmP+_0<|=7wde1Tkk3oj`)6mreuq8b0%lT1 zkvbjn#8C}!`J=`83X@+|0rFce2eOlJ;&r1yzR0~nq~JixABpG?xxsTZXZlKn%GP}a z#T?@6bp%1>^+U_^31T~9KN^NokwscymXEe$mQr;pmu6v+3^pW$jil$)71pvTt->Reh3HX8XT3I3Q3$#jIWMpThgFlg!;3wOl)PX$8--v-HOMf+TDRq{c zy@VJCl-_B`YcO)YPc|iPioCX@NggoTM&IFM14ipqwnPXtW@p)sk~W|%JkWMY>}-oGEM$x$J<9i^xob9XwQFKSY6ju&KV zoxTZRa_dT>*H7?t&kvr0~;pGnUS7GDn5&y^x%u>|5O zZx$bSf83ILH!;!hk}k&AE7*2Ocw3BtWM>Dp^&+sZ`CDdInaOa=;Ow&KLHwuzoI)}h zJ>cMc%zC-D?Pb+Wh?a?)HD_>+-xQw!S@NAvBNE=Nqqqg3{o#;EF<|i5({)%-{9V?8 zfg~6J8+D~p0jctIloMNEtvkH)ubga7eMcCa3V}hhEWw3Wk=QvK6+v%Ynmb4Te_oDM}4P(QX)2XCVdiPNp*SK0T+!jpWAc zG9{s2qF^lYI+oA7bAlN%%A6YKw7^S(;i5Q(js1yU23auItn_Rg;;lQwi_8o|tFv@S zSMc#5)`?L-7Xed(440lLCa6d%K{z5OO90ygBw&M_X1^X$PbTDK?!D8A|LYE}v#vvi z3#d`Fo^((d11P>7iW>`_IEY~i?2DoT;*cf8a0(^LieoYp`$G6!Ii6FF|~nH2H~Z}BvqM?gnyTz3Q^a;smkj6S0V(qg#BCfLs}yGCwfEFGss2$5qmkGnt)(bCJn8{~EhhI{ErSAr1(W&Zy=SP)=iBF%lQy#NFY zYBU^@U9Rs+>$xNvCd4fX3^@)5KAadIkwk20J?2pXv;VD>*R5OJg$+uf!QR@?-KTG9 zfYR^TCSRIGqq$(}bXdtUt<-))K;9qDkRRv>DTVsZd->wjWD|(-5xw%^pA(MBU~F|a z6NCl0xV&OHhf`WwI62by2Ta(T!f>tQipI-FVZ-d!o+|Ry>kqcIh8s1RyoCt>h+t*v{?E74W zNAdj#b6bFoT0TF*!X8~30uAqp`)Zw7ojLbRr5MF9aMO6q<1W-`ZJEI4-5flovjwQR z46%xPyV*n>f7XpR(6M5l^Y-8e0)h~H%RcF~@$#lL1&y*6q(7nS!x*}41l`+GElV^U!&EY3_@S+|f030jT>cpo~y!S`E86+@3IsJVKmft20>OoybA(2@m- zb&?y%S$^w5#b0LLs0SPB3;!Ia@=K0YwmXs1d`XTJxdju5vg-j+19m@gn@iqzwtB3{ zkgN(3X#k?|VG}hWDq=HFnxs%FAkTxsGyB4Tk>Rw}$Ss)d#q~UmF^6@#YAhhC$nKYI z8RW!HFFK~+o7OSKSS*5LSpZzCatuXvKtAXH!fr5~W;c zqjjwZT_&LYxX5ULNR4qx1FWgz8pkW1pnfR&Q=|4RVla2 z!mj<)3xXJH?{36Su1mhPYF96EXl@^8LF7m1p5&%6f)vynyY z_YS@4^vLw;O2a)sgHZarR@-28IzA4C>5X8H$_olV*r!32HM62gJ@4umJ{ zQ)&jLOzNxaM>3^;+l>8oR1#AV0r;I!2m|tzt~(mccNjBZx625N=lxh-^GGp;nHX_6xZvVA$=%+ z!F8a-YHYC))3TxfRvl%B6&uIwatk^j$w#q`k1qRpWpR541?%i3^uK`@w9)= zM&v4Y45Zf}d#K|3-|4cqdDLq2?+y`O&j)XcVKF;DoPATbWE^)O&N<0OG2xOivrWDH z_o_BXNC!;rC{t<}AYw_R&BYT0FwvsI0@?mIoNg0n@LUPUOU%ln)LWS%x->4v=;ZdT zf)c{oc?biFkiaM)Espw%W?Sb{_?6sW-4l;)PbyCrl#wR|A9SCDF&GqDf~D z%xB>$&G7Qr^GGoDBXUqUF|d)OT;kuf5Kek_J&vb{Qa4Z;1yweYd`>AjbNr4#sc)N7v$fg{ZN} zzmBMjorGB8Y&CK9L+qMK4W4V}lkv|2yye&|}wPmqRPHeOf&P zl-R0jOMGjn!aka;pvW=9!-q5s~zXWg*`w&s+K23e-;k=TO)m1Wi29*de2DIUUX zG-9uV{ox!tHWzQk;O9kNR&b%pW0nYHAH+Cx&#@kxZ^>EMN)q-+D4c8(OAi)4`qk!$9QVB3ZRO)?6=*%o{GG?}` zBK#HV>WR1Siar$`eV41-!T)izyVNw}=?c*z@06ob$9JY#mjhRSTj5esWuX zZO#|yZ@#WI-<4wV?TZ678bC;2K{KqH_|P`eT@Id#Rbe(#)L+ z-Ky~v3I+EgjGMx$i0z2EA-?rL%jptGz&y>c%DNI##gqxIQ-1&+bfn!mxlTJo8S2fd zMxg6Y*ke?djyF4*PFtKmzRCIg2r=Ka`R4EGh!xfk_inl~gc3OCmb|{hx_bb=QiPtK zzR0qcn*KvVf^GBsLqclGrP)P;$mP%k6uxfrSBQZvKi=BY3_wMzHKm;XaWg>x<&L24MI{XL;ppv&lCw zDSfFeCNq-(LD7e2@%>?5GlR+$#er0Q!7-(Am1n$ALzW5_D1ru`vX;{T zZcoiU4#Zdjlle{DfD|FwU{O9|Dyqnohysr@0f8HlNA47i9$0;9rF3|aL~SB4F?6^I zC1pQmM^z@O|4Wj#H0F*p)Vle%ERp2tE&S+7uY0QKgPLgO0kg4MGn-MMOqD>5fx{%is&f^@*#~UW}pDg(hIbB4W=gg;H zqmI&v=VEkRxjKj<&4#f$^zCa{czEhU7&@*t22g%G7$M@_{ zww$0q6lu6{`tGsElsfFo$5N+Vem^B7jeY0GVRo!H5N^&;6$S}|?nMRU7_Gl%I$X6x zl3?Zsih9u<1P+ZPUP&Iu?JaQ{jL#lJWE zZa%8R(`_xnEcPlwmKjVV6G7HgISo09H>`4~>AvS_-4Y43sC4g zo-dAk-P7uT;n18!k512XzfE48G{7tsg%Zq)a<0-l@QP=yTJH<#_Kp z6tjEhtL4U?ZhP&pjyU@>iqX-l{$1ejLm8a$IL7}DT@HV27v1#+Zp(U>2pI-LM^YwU zXO?F-WeE0vgY;wiB-UlMccBcTNZ7*Ut`=0f0b>JQW&qP#MyQ1|T!M--`JnG+6mdP3 zAe$5nddsmqK=yqlugAz+&tU6Jr_<%KLf*b`s;h!DK#30LVX+ShP^Y+pT88X6f!;_*##<2fZTUJr9m@674%ZTNU; z3$SR1A^HC(a060AutIeObHHB}!2u7(y~z?|mQFID(*tF-@fw)S`8>xemdvOW%730S z<;q<5x$bJOD3S(2u_}$#)7QyF!*th|9=Ns0)Jp7lzpugU+T2tsbEhYI$jASs{gJHK zQ_!qqJjk%!$_=}b1>_W*(mTGJM=ZvbtJfbw1LXBcG0|y-d7iDmJ3SUrpK)zR^=}Hn zFnq$G6d`<43<A4s^ICSlW0b=>d?b)A6*WcXPZb9Og>-goq$q_KTN8Jq;{_XeZI54XV zlQsTF;98*Igvr{5bqPIPWmC-;*&WCqz>{H;L*C#h^i3+_^bJy`bW`aH;DG^?pq31@g#L6mC3l`}0@9mqU$|cfG|Fv}F*06`y$E)3#pg9)i{+-liq}k6Rp(i+HNWwdAk2ncDKp_QXO0@%B-Et-&ud1-77yl!h;e zG(7unK^%(#N|sD;WJr)7?%$m>jt<$wu`npns*dk5ve!5Hv*8}1HYQg1SHt~}`p^#h ze+#ELMXI%Hi|Mz4wAD%KVK?$mQ%zMLl*5KteB?)-sr;PW;YO1V9J-Te`sAo@RHy|Y|wO^B_GQ8 zKzc1b>8sv{D9Fo>Mk*j4%vgp}c$ePmWH}%Ba%%JTeI&uXZgu+@0fYE=nCk;RgjV8C}-WzinMWo{tN3#tUlB zJ`b0Pcu_}JPQ{f9A74st%40eNS8dfy55+_Zp*;H6F%3G~UY{(sy$DHs_N_%nC=WTp z4>Z*4Y{t6=x#r^hCO07LX%WU*oHm*#2G+DI8xMps_%vi$n_QHLOKMolx?Cv7)Z%w!ie)ICC!8S4e zQuB3r!WDRi{*I#^7@&qxryDxGbP~ehBDghIHQH$5D;hIipO^O^Rh07D<`Ff7h~8lZ zeW$1Uz1jTOp$U-JrLROgOY_xo;^?@&a$5^2((*i>2ITSyhuXbYY_`bZHoCnp9V>8P zH2m|l>M1zu!@T^ROxLb8_;ERBIN(3pyhd2ZoLarCX0_}g6da*Kq8cz&TaBmzA4mm+ zhUnRXhTu#RXa)Z%e8`vb5%}@H54QeySv{em0KRRnHAJM|y~jY3EHi&g z(xAHmV8TN)@wR<)TwdPxXwR*`u=5u<5(6sR8VGo+to!Y37C#zTDT$vNjOReBUDU8h zXAREV3^HwoPPgZ(J|y%t-CbCeI6ik!YOA}qy8Qa%(6eT4&3;yX8p{j87|hCi^~`Hx z*r4Hk`O`5oT>b@&X|Hn;vNt<;2e9==3I>==g%=0YxECma<#A_@IE8+Xh_?%pwb8l- z0H#CqZf?#@1vELUfw_}30!T#_1LVj?0L58di!MOo@>f2k5ZL2G0kucq?{ypejmYCe znh+Z7#|>)wbtFkE^@XFc{D2%R&^Nmj&u3^VXuclFOTyEaGx^CkA8B^Un-N^X(IlPA z79(}Kr82#^>WTuBq5g%H=1GQT`@Ph#vJ>st(%{+o!|YG36F(65{Fa@YE7XwPkc^x} z1%{LY14b^2{KtzwLhOchRJ3h#bk9$}60goXsTNT427UwAzR7F1%P1a`j*DGy3X`tC z(Kq}f8&lm1Tl zd0?iU9Ol2z8;4)RRrEe1%Wt!{K6 zVp{_GfcY?0?IcfnbvMTkVVn){b@oHGmQxH;Wu)00Y>I_nkL#`f&-2;XV}LH{ALD$^ zXP3858Mp+}@T$J>BLCd&kW$Bsti=L52zaV-`B(yM-BbBU{Cw zwKUJ|#u%o_LAI^H;bjf!YJJDRujaaMI5h^zOB+}CQdFMSe8&0WSg-yqFzhS>X91k4DXz5npKO)M6u zVTBJa*DCrqIwetrIja#`St9{(!}$%W$J-N4Cw{Zya%S}p$EsdZ(DjT=IrDG40hFff zriA1qKjdQ!)syiyQ@@cmo9N;11IqET5w%|Z9>}MBxay+lx=-vjBAWx{nDt5Chk~Aj6$zhQZG1Fz>IQ3+y-z1UvsK1|+*RE`zHCIwP0S4aZlo<{ z_Ro766iPlDJgx(~9RID;hi&-U7sxP)Ic8#1i3SH5l?)T?a->BJzvWskZZqiHPEIMQ zD~la{FNb&3O6UX3Q*obklh_P;eS{%Y!Zt;I2eQGz5Xdcph<7vwwqIk(2m4q2t^Vh?VNauB zh6&^WzUsu^51dy!<7D#aqXU)%jmpKX>DB48PSkL%aLIMmV$w=zdizX1>{bRCUAX47|`a=E_Sb{qLlwqC*-=aIlB(aNbh><6!AegkHY=k6<9d` zu;^gmaAfY};jQ^oW6EmneW3+fHi!()v%{R1kdN=QS9Au{Ze#7b8u*#m);2<% z43&sjAj@^Ym#r&V{CP(nywXvEsq;O%UFbve5PmMP)UsIEv{Ho<&uS@S$)|Y59EYRE zPS&`!`;`a^cwdesfuetJY%=>{OKa3b5YK1!l2YAIr29l~-uQjxFk40_k>^rN`MhMZ zT>B;@(3$w{pP>ReRL~rqIB`igWSNeb`D5usF)Ev_Iu(f$NPd5o%N5&Z99>uctq~>Q z@lHMU&g1v@(?`9>3^*wmy1*&$UpjOE4i-bWJ*Ui2QyT}jh+F$PHljv|Al8-4-O_VA zS38^7uZ&>V1NBI8WY&dB{tGh{mITjVnR%*?N|~gS5Ph-nh5N(;)x7)yO?DzrXO$(} z3%I*;!{X%-659q38B?2~A7BqDeUDAa;p_z7`oXgP+fUS+k)H<~N#_d&hy7&z?LLPpLzgat#D|s`Hr%8K}E(xY<7_G_}Y9MMTW`v69>IE%w z+GkrNBpovxi(ofY!KT+re`#=-3o@|6H%#_7J`RiAMz)@wZ{%^39Pb4pA`(7QKzAn# zYz>E+(UbXU6nigkXmoo_!leou*-e#-gJ5g{o@A2Soew0uBYZTKxG54XLZ>$$6bt0@ZQ(+SAzuz=>5OR?4O3Fal%HBJ?0NN`yxs`K|eJP;#ct6kKY12 z$HfwB&265gze4#7Pe6ysw|zq=Fs}5|HBnKSr=EIr#P@ON&?4Dh1^d7+Ml`s&Q! zj4PkLPFNLC6TtLJ^bbMX6GpxD+5l0)S4yNZz`giC4`!!39W2sn!(y(AcG+?|O4^T%Ws>#%;4I-F6}bN}3c(a|cI7G;Uy~<# zb#I~sYqoj0O#F0;i*u-uBsOji@TJV74RLW_o&YsM)MKt(3PMbN45pA5ei;EazVo;1 z`~Gh&&jvlv_5NiXLScJQcyNyb5F;X#$`LiL>%A!6a6j^AN|V206D`94^dKyaq+#Ml z*x_|DlP*hnkK(@{aJ5ZpA}LAK;W=lPsP>O@@~QxCJ`>BY8vUO*&|s5_;P-pnwrS&ulY~oX~U*INm;5BA6`(m z`yt-G3I_zH6A*;19*MSnC9uqck+$x$BXnCyyO0Ouiw~>GN{M3g9d(M@{c=y&&r8V4 z?3tR;b_Ofa*S34Go@YuE0eo>;L^Edfx3g91Fr7kT#-_|3)_&l`DhAi>54hQ?(wQl+)9t6zCu?HAG!&kr|FBt)))v9;%k#=hIR zGXj_+Puog7F;60Kxe9HXl+iBQe*qLFq6Ta`=xJYImyKM=$(~60_Z{rGX13hwcDt zbHk8k1*?xCKhrFZQQCd273ei~Cq(w-H_I8>Af4?ejC?71or@NS?|*SY^*gIyU4u@* z(--7ym&O5|#L;X!ln|=YPFHb!MwYti;jJG)3=#f~x@n{SYt4q#&9S}|2DTCeWp~Or zivUlm&;ADH?ZruFHcbD{3;)rI9}K+f;9Je|OPH8Y)%kL**MyR^fC{NyN$2S15aHXVaVaCs>J1+_ z^=xR%x0;<7?@CW0Kf2uNQ*37~F*z=E%Y90=9FPq4{rK>SUNculyGkYO=YO{e<=!*1 zd&h00q~|8?Y}AO^xwObakR#1EvVQ$%_vzHlC|ECtIpt)|&%OrjJURS^x!Zu2aq>Fd z`PZr#CJ46a={YB`yM*s&@k}$;+^ywy>fWezF`<>?gI3*>g!ym|S_S&3m;JAE zr13zACXr^1B*AZp4YE&0JK`?`@C0jgm!p-J-3haYR)u|WN~KG+6!0GJCyw6Fo7U2z zc~So!jw9(0r#GekTh>tls|5aEdtVtB<=XW-lyoTFf`kHsbc3LRNC^lGJxWP;rywA$ zA}B2_J#?3pbazP(J#^2^xzW9!{p|NS`+d*(ov&xU@WHun*R`&-{@4FnHC^YUT3asW zeCKl;7WIShp1eCQ`bKJR6YKKrpCp#aH%BKE|7`zY-vT4i`#UcH+D77P0|hbm+t25> z@fA?!CBT`EZsZ3ex95=dJf}+$73zM~J>1lzYq_^EqYbXS{2s4x^;(-Tv++v~W;o6i zUry#bBHhbUa}j^+sJgPvZ)2fd%5$-k!;9916X4sy*eaKi@`3!kA(LS)PoR7xWI%mm zc;~O69}sd8JBZ-vKQ%LYda>}m->%6n9BH~{jsMwPHDW1*C&if8bYr2Z)`^@#&~(6z zA*y4)JtXR7H)HT9<>42IkF_E##aOKA@f)QZ4L7g0QgG9vI>KJfek09SwjuwqxY}I) zKGvX4PS(Ai$A44QJgQ#h=J-E^~*c`8_3w-Jo7$Fi)T-soPNXC>F@ZC=lL)> zD*Bx<*6Or6JX+mkNjw(WlUv?<<-|F&Y9sC(M|7|LJHKVx@WU5hr~q1Hj9^@7W&#wQ z@_tu&C1xCYsE=4XMz!V@z#;p_p3Lt&F$2fMHf{2qQ>~wAqp)#zmLI+Xw37QtTq9Xz?Y*%=dmtK0rCouk0o*;P0KXQNU(#;q`5=rNo26X@^{Gu8hS6>;AWsK_j& zz}LHlimRM>`2ks1(xJpMizJcL_odrP{oZm&Dw2*Ol1ra*G1+gJqWp-gf;!EFX?dRo zud>yBy?t}fZyee1@(KRD&zNjarCd(nS#)v(l|8n)-0vkA&qQ?DqOxh;w|iz! zM#0laGaS9W74w7GR}K!oGVW-yg4I*?xH%2k0(q}C%Zbfn^yXQv^UG7)|1-y->+EY+ z25RRy9ae|6tcOuH;MstK;a4KDcMvh|2M}pj2Kq(_rqxRga^%H*TKbtiKev!f0utm#b^eaJ0-d1a0S_ zB--3|o!{eV$aL#l-pQ2vR^?FImR8RM!KrT!aT!c# zP(9NTCsMC;_Wi7d(?>*Vv*MRg7$>$nGXZs{SGiWxL%OTm?E&5^KOR#>A6+~kCnMD! z`elo53_#KTb=xZtp4M=$1@OND_{vTmx)tg+EKGY1I4*X5HqHVj^ zx0>tLyk7;~|25zB2iXP;@rnifna8G6ud1*)A*jEK?_MU|W@4K(^5mf>)0NV#0-zZ3 zr{u(uNXJDy_6e;Wa?V+Y7N}ROH6EBb;VUlR~iPz(ZPr!>?e`=sS2iXUMwNJMK$o?&%&MDk|``($z2(j8|Qj}}* z@(nB!sM)#dyev++M{4%?A{+gzW!IOWI`9SHtgdU5C)Eiu0b>T*!Ky1C^4?H>q}+;^ zk|t8cWZE>UGgcHx!IKP`Ozs3s?7GQ43=-S7Weuh5C< zsg<*x-$(BBmh3oaLIR!`4(rcog>F%fy>e(cT=`m_l!Uj@)*ZrMgoD+0K6xuLM|Ob8 z^;dML1?U;Lt`z@|Jn-*(Cvcjrakp67<#puD*JE+kuFWq$IB-CHS<7{B9XP#<=6(_UzAE{(s&xrx?hbhbgg?^QG9QSP@kMPp0-&{KWy^ zqtcS(UZq~zQ|rwRy`u8|N~zDQv4)fklhWvZB9=B)W7XX;kXQXICa8OpJAzGwk* zpziu$Stl7Bd6^-4TAW zEvwGEvu@^>+3`sjy`62iScW&fUP)p8egUBV^={b?hOSFDZFL726Fqq~IU*j!Nh#dh ztrvVxRBWjoH~}I%Lx9Fa-8{wpc$@PE*7XU*iFYb7&*n;Z>g<&m9FA4n2>ENvY6Jf{ zUH2D`3ge7p+v-IN8`Yr)z1MieoivV0rr-bS)*INh0SY$o71(SmY$(Aqh#c!M8_?4# zPitt*yDesV5N=?8><5c59>1mmVLW;3GpDvgO_O+KL5k1Wu~g}SUpWquCy<@g*9bnf zGl=M!#%~&XuOvG}#UREPm7}V9n_<8~e^mzhOfhV4EU}LMWeVQo$U4os8;H;bbo}#% zhZB?$_y0V*^2c$S^6Y3t%!2;zKe9HOl4OWlE6;(2hF zNvm})C?gx$;A%lS@9IIB*JEzS)99;BB0Vo|a#bl=bZ{F;-;d0QIZfNyx6!un!*WXO zCZnmgH+~fQ!6;kQ-TvzP_-AkCrUMd99G$QQ7ecN3&L={%UuL4^PmQx*(T_1SAMSN$0ph=B$Cq`jMd1y!*gJn75sVCa|~F~N7*h-c0$ zQe!VZ{iN6CZq^K^rQdRV3va_@kdh+0Bii`O+Zx;+@e5VzE%ZqMP0_hdBO-hhCLM9~ z^fkwDi929R!nmo$|B)*IsUWdreZ&rSap(7Ou@#QDV9CAjxDvInB%dZd60U=?+EOw< z*8#SI`+Fzi?7_2V2RtXbOHgv77ej(Qy8GC|+-?zD#eQB?J{m|aF|d-AnALt`K4p5E zqgmzn&8}*mh|~t50ApjROn)F*r|mlSb1m!mbrDDV>FLHq^hMbPaxF!y-nQn-_Gf75 zSD6A8RjfV{;3g7{^W@K7n}621St^9}#~7hlP2LmkTR2bl0@;aa-3lE~>Ieg#_F1%{LIino(A?~4jI=v0=}1d~h;=)qX8G4NJR^@Sxy~<*s3lQg{ux&|krPVm6WLJ|M5)%+*#q3_UMyHvtz_&9G>^O zqmZ6>SBKw2b~DxFL&zZM4HJiKoN-n;sMOKe88xDq4VaN9)D6s;Ns4^)f+Th1V*O-e zs~yN`t7BSK;%FHcsuW4tV^EZ@$Q2oiO1-^gn788s^Bg6~BtG~Dw$5*dRr0t{yu*60qgk*EQFDL%Pm2-4(bBQNZQKtLh8=+)(1b6G zM>90v@#@cX=oM&T9#+>5wez;uYf&es8-XnsOH}i466x)?lUbZy(T=C(j7=r_vdd@h zpGMR7q_@`k!S&~Y>&7elET4tMEc;%WEI?JNm#S?Q=xs+sHEldj-j=8OT+w|m={5fV zFV=k?ncb~kKPXJ7%2yHGYs=Qptrn2AVbBO|B$$b-r1wIU#^EP?QZ6e}7pXZXZe)-i z7cRny>jes4KSY-CzQSd_iU&5yU3$RacHMj1*j#}xzDU4n*Fch05Gbs)l|=0L`pV|)ob z{vt?xoXgkU%6!$}3r4z*_PwO-SvO>E69R5D@BVZ2Ye`FX!Jj>eOu(UqM_N~NHp*f9 z8n^$P+j7%0Hp z{<23U`)R9k{)_{>LNbciXIC4WcL``?S)nkVI1*UAPb(gAEaIf>>)=kula#9Br-jMs zM!%wVv>By4TbYjFOcb}2juvG}aEbli^Jst()p6>3I?HY(>P_?EDYH$}pG6#i!L#9x z$Mw|i1)W+48f?%W{=^rnN%%ta#pTBXo%1=Smg(|LEWiD=9vkBUwgEco?`|nl+TcKqMOcI%}*H~-KBd|5SSGc6R04rk(Bia z3vf)w&A(d%SqrmOd?R9C{JFtP_?U0$JA^7~%VOD02C)m&38yYx4Z6I}FD?&~PK>B^ znen{}BMZ4N9?wi@%KD@lj?fnEI2vq`xpG|i`dEG!$o4oyB7?3{`V7hvhM5v294zso zlbo}pIRi`!10{SL((9<*Y{Atg7Fn)DPGEs84t|~i#$5w96x>i^Z)G>b{!$j;Pw2fS z%hm*$0cT0$@>QxvJRQFRH~he192UMujM_5ef|q{&%10KuG|+TO&`(&m`YZSe$a}NK z<&m(IcaNo>5V)(e33W@q@jc14yy?W zq1ozL9p)+7E~`g|SKB{D0)~3mdcq)GE&`uEFLm$Mp23aA_`U47SMC93Fck}ED6oXx zP&6-6*@G18UWgthz=!!C{D-Guwp;{G*nFogDrsu^DJ=oTAE4juDS8y#)eZL`;gTgo z?zB#1bgUUvTOX(rGk%{hTb8A(+%^fj)#0;}O;!egRLk8f)*OG>Ie>%04-C> zHJ+tL2Q&I?RD68naG;$5G`iE88{Z~xgOy9w`doPO0!{|hAqlkTPK<;V`>e}N#+nl) zbxKQC&*+8_#KbNf0z6{<)J`{YMo4UiA`Lhp@I9%+7rON zHeuL5+4KlkX^nN3lDOVCx|s6s>W_sDzv|va$M?typDkgI#>DPgLe#HW*C;C`^%(~| zu~l;!i(SrRElhDMfcN_71&K2AQ>tNo^s7g8Z5T;bRMomo237B?JNU-9X1lwxE9Qfi zdG}q3x?fLsMSX!9Ri;xIXx33LD^D}NMkuA}P8PdHF=J8*4lEU6H4gE&# zcOJ)SJr$$O;8DmZ?YsEtPdnM75csJIw@(RPPgG55OG9%*@|xZ0*R$-lhsPR#$6qzT zjkskGvUYY;JBR@Oe|~2eJU}+H-!Kbk|2lxa8cvgEzcUMcBeRnx>J}zl%?$&?e4zRkB!yG|Vw zzlbEtV}{Qv=mQ-gR+JUn-g9~VJJnAgmlg3$BgHcL!YS z&+T9qL$3E%Og47=roZ@*M4#LN^J|oU*BY0sq}H+P=Q|Pm&F!pXe%C4HYyj53!f0H% zB$1H;46d}BnS8@ZvC_!;0q8h)GS_!M*(SSUc~Vz+uE2otYN5yG)si&>Nx`jTaN+Cx zmcE|4-MYq{#f<77*NYKeov4fQJ;iRCJ#X>pyd(+juu+|kUz$qhGDTx+ZN_$}br!<@ z)4HY}bNxo4AZDR@Lv6noe9gWxp<#h?gb%zlfcv0OdKh%yVR-aR@T0zd8+= z1eOSt9zWS}IXhLI#jSI6oeYw0w8Iup0Wz#W>dOlaAaKf}07#unYn~%e)1l8gRo zwQpjYa}8WTf%gv->I!K!H1vJ}eMc2xLK$p;47gQrUr}#w2|n(J7rh#zV+9?gZ^iEebxba!{uWiTld&`G#KF(DQG zhIq+&!%UrS?1SS3C8nPsYNC zQaUFXC)vDs~N(N1R@J_jAG{~NXs}*XLF;BhLko1!5#l4!}gzIqhT@*dYEEXNir+)}Y=5PcOV;JpA$XX&UXl z1sjN#D0lMP>T2P=tvC2}FDAp{H05PppJWh3tUjqek9LT z{>#(!e(7329+H7O9oFrlHrLr?pty7)JQf0UFZSqd+RvF9)WLO!>am^;1BANfY=vF? zr17Mz)6GW2+m-+r8&k&npSzp*v^@s9P*vz=I8Y;%g`*{fxn;%Jh`Z%A4bhfpB$+=v zZMqrF&M9sRq?QeD1MGUHsfk`$u>W){@m_!nqFc)wl8ERmufIBmM}76A| zh#t@x<060Gw?3a(TvhoU?_`+M^mPW)6*kyJN!!A4kE5e|oJPN{0MS{jH-|L5%NuHD zu(}kRD&?^ExyjRZfc7+beFCK(*0*kAK?Bymyn5S*+3;&TO>pW4<6q_I|B9ypRgZfmH29ST2YUH6G#c_yhp7oE3C{}I%G4beNXTWTWFAt; zn8;5}pc?$``x{{PabDb8Fa$?6J<;hY0@)9rKg8vRD5Ki{p1>sYKWgyiz!j%z%gQ0M}QbJaj?Nh?AxRH5q=yOts_pWfo?hwv>zPhUyDf|zMre;3vy}eabPMNIn_K+Z39FHh!@|B|vB3}S?31FDMjIS34)}(o zqbJFR+E;8$uH3DTYX1rgHIQVb+Pv41PmFV{l#&w6Pa^dA-iw&Y`g|&=ZwdD&iUGBg ze39fFq;ULZqWBA9aBaSe-`;ZpcB>x_0##ur*>M`5K5H0351dPRC*@D`+l;pRs5~PJ zw_!xCjIvGxBUKU0;`11Bv00))m(@eh{Hm&76VI@qtKogVYWt)<4PDFNiDne@VNIPD zbD_Mi3GY(hX30XmE%f_HGb@HpoY_Ltmh$x|<>`5<#N;xrKZNNu`+E)>1{8dqqTfR;ZoiMX zxnO#rQ26?I9B*=SIKq~UA>BCFOdqeyp`xijxpYGm+@l%mMP_NfwgrO zOsejOUPz{tXd*#0T=nz0TET+AlM037ji4>(6W!#Oe_8=!ZQ;sURF%J}ovBI>tatm| zqM+CT?kyS0yHuxSTkP$fc^OislMuY7m65{LuA+XSI(fmK+fvBpew(l&O*?v$^iw7& ztCvI?`zs_336uo-3A14RHnFEi&Q(>E2NKSH_wz9_FsU;JoGL3A+E*8bwpH|8^`fi$ z_LR?-$)~XqKcCMne+p_R`$K8E!(!&AOaiBms$%ID_HRNx zEfSJh3kgqb7bq4jlp$nt-jstLR`98lV$~cSt#QE*AK4X4Vm={BE0GG8_W72?EG6vE zFu4L5ME|DEoo6^XJ3VV3^#|(xK8116o-wMv^1&Np5rT8vC}5T0-w1sR0VJdwXp~`0 zsqg+%LilXF#>P~|L3Ah`)>z-sLMI-f)%)`PDIc6Z#GnmpryCbG*PIZsJTUj{M~16Y zb%=%Es7UC8r8>||-9l2)f*)H?$;w)Cc-%9uQZjLc4e6I#shKybXwDygL_QAnHyyl_ zgZ+U4%kyFL$6DJ@*ae>%b>)WM94rW}g}RaE7F-CSmK6$A(-PX&4BGw4#XBQYbaS?g zk55u~vh6e!J+|JDvYW>&?pIU@*xy@9{|zt|=PMx30NS7o^5{o~XR z4Xoewbi}Y_BF?y*VQ_4XgC^-1>h~JDg@n2d!wh!|d`O^^3j;ns|c>iYP7S#nnTMcWJEiV?le zVl^AZkpE(QS^il=4+JL0-o*8}EK~^%+VH4VaJYk}rzj>*cBu)Yi z78RxPmi8mO#v(_IxQbX&AHnaI-s1}?ZOK2#c=7^^Y2*!w4?J=LH_O3&)_SNJ;asZZ3q*jix4bh z$bIy=Q!C~c3b}~eeUHA0$I*yXD%`alyL-2;G%Yse@+uud|M6nQnopwfrlCr?Pa0*7 ziYCluv-{s_p#GE^5 z{7a@w|L&vLyB-&D4&L&2AX9p;U#Be)gvIY{lft$PWgnzd?HfD{g@<$0t1>j|drJtW z9{Yh=+ye&vzK=^Q5ZaOh__4!%+9KAA`*<7o*>LDbNd^>Y$@4#UcKm|M&+{M!E3>Wc zQe$H<%j$1PcZW0Jwab^Bt43njb4QtqYkiv7@EHq`(LRXWC30dH#%|3o;&jL;i6k;x z$i#0y&h%mpE)Zn1NG`i1N$^T(G^JbkKmb+|iX&TwPhYkj-1eXh#LxsF&%Xq@Hx-(K z0W1A-kuB6h`t}+}NPqm)YQz>mk1MBfSGj=$##?(~JqO)VtGE4xRY1S*w6QS$Hs)3; z{XjO4%G#cEO4|ilo`UtfCIOhoHZ=1AkNK33^m(+?sL0+0XQLR)v8cV5$5&39u)P;M z?c1y__nmL&e;j^Bi{1IYq2q6c80x?J%IXnkpoAD>)S+OX5ve~Hu;*XnntWX<4`)U; z)-^vzlS;~%x>fB7td4^ksG zIT-vLuBXS`K!?*o0Ko3^nM>?pTR$J>_Qv$=TtAF~nBad`6@lky{u_R}j8m6}eG+K( zDbI`OC6^2?h@=l(_8Iu6{4@RH8s+Gwm>($jTU#36*h)OK??H4Dtk##=wYqmbR1XBF zi|dfFcmuTXZT+XNT5F|N5OM7nir8hg!;u|Y^Soq*f0Hqf9!f>{;d6$hO*A2g;Ub(b z5z_mz%?(Xs%1fweyDU&4B`B8gMlt80A3F7H_o=^J^GB^fnP^Wz`(Wdv#v)+`bc$1C z(B|)5h53;w?k~<~jz&$K5Y`XX&HoE_v;4^=dg6V3>@v4~FS!T4*13KHL~L51DOx8? z7O(YOkJwemkB@yJ?VgK+{C62gS(eZ8$f3>?P&{XsOid^A6fosxMF6B1pj&7fmuF|O zPT2jXJl*$mvv=P#MGX0&GtsP}Mf$TA-Uwtkw){!Zx$a|NCxOYei@+btaG$%24{n;J zc$9y~JVu=dvCLu`H|hu=-S5p-Z?3f~k)A6Xl-DYz47Xe_4AeU)(K1IvLN|{3YS2{xr~U0F zc;MnW#z$r5N*~6y7*BIf8@kHCz(0;Y!%0>+Z9jVl49=RB2`S^;F!6O+P%Tz!ympck zDu5em#6&FT3qW*qzNmf4;V;D7o2ub*pU%NtzHz4!Kcd{OA10mP&b@_D#3Dza%-Q!c z-}ti*W;`dnA-Or$OdU0JSv&8J1D?I4%#+`*Ril9Vy1HT7gvR)l^of6T;#{wo>q-LL z^*5U(fo3aLWLGijFy{|U&)6LGvcoRtRW%EU6nrfEj_tp~CUA`u8q?EaiA?6d9zLmP z^Bln+`OAy0cfXquTsu+rMTB=*$!O=5TU+cCkJ?auQA6SXg(9jFn z!=OP^)cr>>8FWeIPTM)X>Zp=u?$aMNr#3E+GUfhe1wsBUZl8oDt6$8k?lg*MKVHa+ zr9SD>xOQ~wiZ?&!lJN;UI0`J&8TmNYpXp%OeSOrt)ZdU1iFNM`BLSO?_kFn&L$OTvKutI`+x&!Tj5W77p*tCyaYA?&Gjw0{BCv zh&*snpCE?u_2t>Q-G<;E-+l2<4$U=ZM6!weI7nsZm-sAXB&_CN#Q6@!xOb|>(f2hR z9Rvd5Zn!YB{AJ0bwWmF5ZNM>obXbg|*pB|>j3%OGUcT?|4w6>0XAk_C_F;XZU;X4j z3Pcuwn>Quvfo-2|FP0j5V4VfOs0?^hv5J^F{I0sm@K7CGEUc zt~P2vxywTwfE#*q0jr}FC28=y1_sWvI`4aPdh1d1t)iEcF=&^_sfB_0AGrSf$N7eU#Fk(5(g2{*4o}LZ$Mj?&okJz&G^B1WfRRfmq zD5N0Xc*7Was^%1_0Nj0e->#+Puu*qvyXj>hRN)&M>+%kV8d?|PG>s5Kwrj3VMck;; z-%tvBtvfkJTN@rnR9}gX77hz_|3V|u%Ij$~K}(Dl?uC*)zH2DljUKl`AtchNie#tHuB|^mr|LpCC!0LnPTF8F@7}czG-AUqVH*za1>~IPknW z9pHKHVS{hJ8?tNo&+7WHY?Vv+{bpIxYlX=qBUVfm6lY83cK{cbhmiQ%MiQSsp6Ygw z;cX5!9Al%${pj-dL2bj$?MzN@4`)0i#sRBOL>~AbKmG1KU8yuhD^(`B*NGS%oo6ll zjR-Q$VT8^ZITIn>o2xM+Sk8OT;#+2k=NkUmn$SBZ{3cie6n+^~ zSz8ae6;Vzm6&rd3zLdK+p#+{QNB=GfIq8Z_(_GD`h+}E&qCq#x@XX%`+Cu8TGUWgUfvvmIh^P zMRs1(wY8yoSvHNb?V##xN5sSR+0?eBfbdBORJ*^$6q%aBfJtC#+7<2AgM9 zcdo!H+pv+Hw}kz!f@)?UBMCIK_a6Fqa}^CGG^O4gtuXrJj`5gq#gOWP*kc1p$=1_f zUZscwCUT8CnxP+BVOqA_5xZ0mvlyshrm@`((fx(kNy@`f#Vu6ZKBIqvbmz(7sh8-? zNbNiSX?otWoSXh2z}3I3ODQYmF1Sfelw=mgdWOt%5uhnH$*T}EOX3~*`?I>tQBgvd zTI(Yk(=X}$RC~YL4Nwv+{NgX%x1eSGZt2fhzKdRK%YT_0#T|Dz1Z&dPY# zy5f9{LZajTd5UF5B@pwqI!Y&jNKu9grPFSLAMlE?19nMnw)(9N=(A%5ELT^+;vT7^$EtJY&1a!035HLB9~ zZ{(ZxA)e!Z2WVAHnZoqGAXQ*Pbi%J|TXc($wN*Jva$+uM*N_ToXY;Pp4E_B(0FT)c z11%=}CVeG$e46udMbXV4tOM&?AtptV5S>lT3vc?;givLwlj5MvfwDy!2wZjdH zYplI)Zb~empkJG&*j+Sv<>J`i#BDfcpqQ_>M!NAgCB421HSABy^Elvt3Ai_3&Vb>x zQry}mV)be)%=2On2D=Wci5*Ho9iF^nN4!=5)hK=N#l0cLnEWH7bz|bck%_%@B6xc8 zp_?wH&>Z{lMAchR#I=$J;g{RY@I#BNc5|nqYl_y!KHLIeuPnO`HNxJCs$lSpv>{1U z^Kixd`?ZsApFAmN)<+gk2WyNC$`3YWbWD|eoUBkcFu77Z z+f+*(FBiujfYa32J*S-V*187T&^Tu&Vhz1mQj``CV`|D_O7jqUb(qgQ7o{%4l1$H< z$NQjN1Aooz%Z+Jx9KJHulV=M68$Jv8}vnrt$tj@emAM+}r-{{>> zo=qr6Rf|r27>LLvTVH(a;4~MB6#Pn7%URu20_P*2tAEnkhj^HKwPgjV%RFxXw{yB< zTE5C>{3y4a*+i@L&OTGN4jBjounACGgWH4U@elO zA1(Z7lll#?)v(xPMT?fCcme7S^zqJ|qTxcV)(PbkpI39cO}NuDyw$SR&Jg7PfOkF7+0qD01g%x zqc*nZX%}WffisV<^hY%nY;L2Ri?|bHB&i5+V~$sY4k+m|@?I8JES9BEyE=lD-d=BC zO)E7y+{a1kvLqs%c2x3=rcgYUs-ILCJne7oon2!0oI9 zPUUCa#p#DZV?Hg4(t8mwe^b+z=but(Z9?O#oYefca@1j%&157{$YU0Ry7Tpk9R7u- zFWNE&7&7>PQmj}o;<9Q)5vLiP7L|#2WKgOVMW061=Og88)-At=1;;h+Eb~G(xIIb) zCKG)t*_cOd!ZfqDyFd@nFuADIreb%P>Qu8#SWIJ|TbUE1$Myb##CQIzB{#Iq#V=+C zv}2MhN;$JsO?Y-{M%@qvzzCcq;9@W(Q9KXZ4b?(-#ab=nT?6+wiMr3%ET=o!iGyS|6ljeDTTv+LF^ZIHB@OX1K$qFHK1?mniKo}Q0 z-_OG?d}X}_wYgZp(t1|V6wT)V@Ox!U7Rj1Z%DHaT6;v)Z8$QnIo?&jRf3GkDIA>6a z6}+_2a#XKlWk$sZrv#LZ>AQxTJLnNOz$^KYu%~i|L!3`4R|)%kP?10y!ZZ&sA+oit zXFPM1;(1Nn+uNIIF*>V9u|nXDqEr`o>p>+?Yvl)1;DqR>^iA`L&sYVOeX2Tjn_meK zoY#sym;Gkc9>^Ie8L>eMVPS%_d^y|?-KOp251%X26jX=*)WYOy1-ANevpR5~xbd|P zMHx=jyp_mNPW#|omKH>m6+8IhXlrzOXv`?aFjd2v%K~;FT6@~Xzd?E&^xe`^oHs=9 zXc7nPGXXtFlH+{jqrPh-=9Z?Wj2?jwtf=fHsY_WrK}SNmxb%&uCk|TA*Websn^3YF zT=a8Bl(z5oGjxYI1zqpEtcTlE^>~(Bo75NR=oD7km|R%^ zuZjW@vnOm=tBzz(zwaTlavbulEPaqOtylOW1EGDobhOz)QR`avAz`|<`Z^DD6V0lc zcf0VuMOdMbwMA>%ZiUi?Q*qtAriK^gfIbeLA1Nl67bm|iIr(Irt8cken|1aZ5E~UB zMb+@87d@$}L7w;rmq?49ZTht?@1H=DibGJT(x26W;5s=m_ZYY*&C>PHZ-!$M@@EMxoX>np1ePL+A$jRCCQ(E*dnAb-`NAzj5No8^`cSW8x zox73XNytmp8{4F}N>rr&d=0Mzn$xb|Pa*U;-0{!ze@PZv7iU(dlI1e=W{kKqr0=%B z!Zmb4uFhc__0w$;R{f?f${2c7AAlS4+s6el#H}8mZbNc!+E%lBw2H!;B7eyxi>7E? zlqPB$RnFvUdlJ>|6o?DCbsg2CYHE}+`jq&^kOcgE?6Kr%INGaG zRtRDBsNbs!MUTr0qJ9FfsRXFMws1$^IUyPdokEE_gfHLMPe2krK|NuWn~{%wZMb%S zia;s>nbJudN%xp9w{UnNtM6~jjMjV`lk3YT^=DhcaK-+MiPd3U%N;sTMg~j(7csf^ z{RPK5!s6ccrmu#>E(#7@c$h#B{Qa?FbS#sRmE`un%@16m& zzPl&)3Tp(Z%CD1{Y`V>S{3Flbhv4tLi+(msww(A71R(>y8``MIBkn8EAR+}fyW>L4 zav#u0!9D}DpjS{px;bXN<86HftLF(nCMfS=Gy40D*RJh}A$*Fd{oKVlMZ31w`ddus zu>W-@4U#E)t(*z(CmfPVy#@M)hlc+!4MT^VIHiZ@a^;x?eTCcckS4iV^c3UtQJ?@Zf9s)0>Aw}!y>q^gX?LN4+s>Wy&m4d)QYyR@aAL{`gk%^|aCr8fNo22fU(Xl}P_8Qci865C;w4QF+ zN4zp+>+<;-jCu^)=V-tafxr`CQRL&O0~4(wBfg%k%c88H>oXbLI*6E_(N)ubCtMgo z5H>@yllmC+zzkS$1X>85EqCJ!`{nJ`Qe8_Mpn>TgkQE(Iu5(U$rO5dm;i>(E%h~Ye z;^;%rgSG1im^!z-=y`Hh#|^k@yJl_SvdsxAXgyrU~A)D!}5JlPA{3wt?bVdf9HN)1v!3-~x^lamjLSxwUci3>cPf zGk6_j)U>3kEiSnQ6`&zJuN55*&Pp4LE{aZ(0X-Hz(Xg9*Wvac1QLuZV0SqZPmmn+Z=r57Gd+ zl}NhCZLFfq$?3Z9=I4wTiC_eOo@i)CQnO2~ZU%rdgVstb(0fOK)5Nh%=XTP!;_60q{0~nYnl& zuE^JC?Q2x*fDFWd47bjO8tRcxeQS(8jK!HC)QnI8GXg9R<($57jN;wtYHK1i5CH%U zU*4YNXp<#z6&!I|yiS`J|Lp#-d8shaj(}h8(IOf{Ija=MJ~EaG7Zdaq0Bp!D#ol5G zUx_BZMrdu2=S4Abw7;NIbEyD-2A0h3(b@Q0VG69ehNmD9I^Z|{!t43AU!>Ys&>nCXij=fSn`JZU7?_|!`X@|ObM_kJ~IbSWF3_1INYnSNOe zVj)0t;O3SV$;n(SU1Pe>wQPn3@&_&;AhL69vnNyW-#G^GYz8;$;>JaA!Dcl42{7T9 zT?6X4dQK)bt>h^X=%*~Oo(wwfZ(?qFU(M8B`tTngy$?gne@+YK{&pP;@4d(IBTwIWyy(K^IEOd@}hUPyq1i zW)?g#aY~eZMuAq6t`=v9jQk zA|zoeBJ4r&JI8(^l=j(*Pc%p&Yu4Vt?kbZVDKN1u>6Go$#TM2#V_)+5?+hk&8f&Sj`_}Sise4P{s zlndw((yMSU*Mqler6a#ATdY7&YJtK!`1OoYY z15W~<7s39(E`z@E0ZRftu>b%8f4&j?|40Ad)r6F$(a}x09loD@ty+aADvyg~Ap!pj DW@SUy literal 0 HcmV?d00001 diff --git a/src/webui/service/templates/app/home.html b/src/webui/service/templates/app/home.html new file mode 100644 index 000000000..ed37a21cb --- /dev/null +++ b/src/webui/service/templates/app/home.html @@ -0,0 +1,78 @@ +{% extends 'base.html' %} + +{% block content %} +

Apps

+ +
+
+ {{ apps | length }} apps found in context {{ session['context_uuid'] }} +
+
+ + + + + + + + + + + + + + {% if apps %} + {% for app in apps %} + + + + + + + + + {% endfor %} + {% else %} + + + + {% endif %} + +
UUIDStatusTypeDevice 1Device 2
+ {{ app.app_id.app_uuid.uuid }} + + {{ ase.Name(app.app_status).replace('QKDAPPSTATUS_', '') }} + + {{ ate.Name(app.app_type).replace('QKDAPPTYPES_', '').replace('CLIENT', 'EXTERNAL') }} + +
  • + + {{ device_names.get(app.local_device_id.device_uuid.uuid, app.local_device_id.device_uuid.uuid) }} + + + + + +
  • +
    + {% if app.remote_device_id.device_uuid.uuid %} +
  • + + {{ device_names.get(app.remote_device_id.device_uuid.uuid, app.remote_device_id.device_uuid.uuid) }} + + + + + +
  • + {% endif %} +
    + + + + + + +
    No apps found
    + +{% endblock %} \ No newline at end of file diff --git a/src/webui/service/templates/base.html b/src/webui/service/templates/base.html index 66e188465..8c1dddbc1 100644 --- a/src/webui/service/templates/base.html +++ b/src/webui/service/templates/base.html @@ -103,6 +103,13 @@
    Load Generator {% endif %} +