From 778855c06f72f028e56c03558320648586bf3888 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Tue, 17 Aug 2021 14:12:16 +0800 Subject: [PATCH 001/135] Add XYZprinting Printer Definitions Hi, I just add Definitions for XYZprinting Printers, Please help to check,thank you. --- .../definitions/xyzprinting_base.def.json | 43 ++++++++++++++ ...xyzprinting_da_vinci_jr_pro_xplus.def.json | 56 +++++++++++++++++++ .../xyzprinting_da_vinci_super.def.json | 56 +++++++++++++++++++ .../xyzprinting_base_extruder_0.def.json | 16 ++++++ ..._da_vinci_jr_pro_xplus_extruder_0.def.json | 15 +++++ ...rinting_da_vinci_super_extruder_0.def.json | 15 +++++ ...yzprinting_0.40_copper_abs_coarse.inst.cfg | 23 ++++++++ ...xyzprinting_0.40_copper_abs_draft.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_copper_abs_fine.inst.cfg | 23 ++++++++ ...yzprinting_0.40_copper_abs_normal.inst.cfg | 23 ++++++++ ..._pro_xplus_copper_0.40_abs_coarse.inst.cfg | 32 +++++++++++ ...r_pro_xplus_copper_0.40_abs_draft.inst.cfg | 32 +++++++++++ ...jr_pro_xplus_copper_0.40_abs_fine.inst.cfg | 32 +++++++++++ ..._pro_xplus_copper_0.40_abs_normal.inst.cfg | 32 +++++++++++ ...inci_super_copper_0.40_abs_coarse.inst.cfg | 28 ++++++++++ ...vinci_super_copper_0.40_abs_draft.inst.cfg | 28 ++++++++++ ..._vinci_super_copper_0.40_abs_fine.inst.cfg | 28 ++++++++++ ...inci_super_copper_0.40_abs_normal.inst.cfg | 28 ++++++++++ .../xyzprinting_0.40_antibact_coarse.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_antibact_draft.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_antibact_fine.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_antibact_normal.inst.cfg | 23 ++++++++ ...eplus_copper_0.40_antibact_coarse.inst.cfg | 29 ++++++++++ ...xeplus_copper_0.40_antibact_draft.inst.cfg | 29 ++++++++++ ..._xeplus_copper_0.40_antibact_fine.inst.cfg | 29 ++++++++++ ...eplus_copper_0.40_antibact_normal.inst.cfg | 29 ++++++++++ ...xplus_copper_0.40_antibact_coarse.inst.cfg | 31 ++++++++++ ..._xplus_copper_0.40_antibact_draft.inst.cfg | 31 ++++++++++ ...o_xplus_copper_0.40_antibact_fine.inst.cfg | 31 ++++++++++ ...xplus_copper_0.40_antibact_normal.inst.cfg | 31 ++++++++++ ...super_copper_0.40_antibact_coarse.inst.cfg | 28 ++++++++++ ..._super_copper_0.40_antibact_draft.inst.cfg | 28 ++++++++++ ...i_super_copper_0.40_antibact_fine.inst.cfg | 28 ++++++++++ ...super_copper_0.40_antibact_normal.inst.cfg | 28 ++++++++++ ...xyzprinting_0.40_hs_carbon_coarse.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_hs_carbon_draft.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_hs_carbon_fine.inst.cfg | 23 ++++++++ ...xyzprinting_0.40_hs_carbon_normal.inst.cfg | 23 ++++++++ ...eplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 29 ++++++++++ ...xeplus_hs_0.40_carbon_fiber_draft.inst.cfg | 29 ++++++++++ ..._xeplus_hs_0.40_carbon_fiber_fine.inst.cfg | 29 ++++++++++ ...eplus_hs_0.40_carbon_fiber_normal.inst.cfg | 29 ++++++++++ ...xplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 31 ++++++++++ ..._xplus_hs_0.40_carbon_fiber_draft.inst.cfg | 31 ++++++++++ ...o_xplus_hs_0.40_carbon_fiber_fine.inst.cfg | 31 ++++++++++ ...xplus_hs_0.40_carbon_fiber_normal.inst.cfg | 31 ++++++++++ ...super_hs_0.40_carbon_fiber_coarse.inst.cfg | 28 ++++++++++ ..._super_hs_0.40_carbon_fiber_draft.inst.cfg | 28 ++++++++++ ...i_super_hs_0.40_carbon_fiber_fine.inst.cfg | 28 ++++++++++ ...super_hs_0.40_carbon_fiber_normal.inst.cfg | 28 ++++++++++ .../xyzprinting_0.40_flexible_coarse.inst.cfg | 24 ++++++++ .../xyzprinting_0.40_flexible_draft.inst.cfg | 24 ++++++++ .../xyzprinting_0.40_flexible_fine.inst.cfg | 24 ++++++++ .../xyzprinting_0.40_flexible_normal.inst.cfg | 24 ++++++++ ...super_copper_0.40_flexible_coarse.inst.cfg | 29 ++++++++++ ..._super_copper_0.40_flexible_draft.inst.cfg | 29 ++++++++++ ...i_super_copper_0.40_flexible_fine.inst.cfg | 29 ++++++++++ ...super_copper_0.40_flexible_normal.inst.cfg | 29 ++++++++++ ...zprinting_0.40_hs_metallic_coarse.inst.cfg | 23 ++++++++ ...yzprinting_0.40_hs_metallic_draft.inst.cfg | 23 ++++++++ ...xyzprinting_0.40_hs_metallic_fine.inst.cfg | 23 ++++++++ ...zprinting_0.40_hs_metallic_normal.inst.cfg | 23 ++++++++ ...ro_xeplus_hs_0.40_metallic_coarse.inst.cfg | 29 ++++++++++ ...pro_xeplus_hs_0.40_metallic_draft.inst.cfg | 29 ++++++++++ ..._pro_xeplus_hs_0.40_metallic_fine.inst.cfg | 29 ++++++++++ ...ro_xeplus_hs_0.40_metallic_normal.inst.cfg | 29 ++++++++++ ...pro_xplus_hs_0.40_metallic_coarse.inst.cfg | 31 ++++++++++ ..._pro_xplus_hs_0.40_metallic_draft.inst.cfg | 31 ++++++++++ ...r_pro_xplus_hs_0.40_metallic_fine.inst.cfg | 31 ++++++++++ ...pro_xplus_hs_0.40_metallic_normal.inst.cfg | 31 ++++++++++ ...nci_super_hs_0.40_metallic_coarse.inst.cfg | 28 ++++++++++ ...inci_super_hs_0.40_metallic_draft.inst.cfg | 28 ++++++++++ ...vinci_super_hs_0.40_metallic_fine.inst.cfg | 28 ++++++++++ ...nci_super_hs_0.40_metallic_normal.inst.cfg | 28 ++++++++++ ...printing_0.40_copper_nylon_coarse.inst.cfg | 24 ++++++++ ...zprinting_0.40_copper_nylon_draft.inst.cfg | 24 ++++++++ ...yzprinting_0.40_copper_nylon_fine.inst.cfg | 24 ++++++++ ...printing_0.40_copper_nylon_normal.inst.cfg | 24 ++++++++ ...ci_super_copper_0.40_nylon_coarse.inst.cfg | 30 ++++++++++ ...nci_super_copper_0.40_nylon_draft.inst.cfg | 30 ++++++++++ ...inci_super_copper_0.40_nylon_fine.inst.cfg | 30 ++++++++++ ...ci_super_copper_0.40_nylon_normal.inst.cfg | 30 ++++++++++ ...zprinting_0.40_copper_petg_coarse.inst.cfg | 23 ++++++++ ...yzprinting_0.40_copper_petg_draft.inst.cfg | 23 ++++++++ ...xyzprinting_0.40_copper_petg_fine.inst.cfg | 23 ++++++++ ...zprinting_0.40_copper_petg_normal.inst.cfg | 23 ++++++++ ...ro_xeplus_copper_0.40_petg_coarse.inst.cfg | 29 ++++++++++ ...pro_xeplus_copper_0.40_petg_draft.inst.cfg | 29 ++++++++++ ..._pro_xeplus_copper_0.40_petg_fine.inst.cfg | 29 ++++++++++ ...ro_xeplus_copper_0.40_petg_normal.inst.cfg | 29 ++++++++++ ...pro_xplus_copper_0.40_petg_coarse.inst.cfg | 31 ++++++++++ ..._pro_xplus_copper_0.40_petg_draft.inst.cfg | 31 ++++++++++ ...r_pro_xplus_copper_0.40_petg_fine.inst.cfg | 31 ++++++++++ ...pro_xplus_copper_0.40_petg_normal.inst.cfg | 31 ++++++++++ ...nci_super_copper_0.40_petg_coarse.inst.cfg | 28 ++++++++++ ...inci_super_copper_0.40_petg_draft.inst.cfg | 28 ++++++++++ ...vinci_super_copper_0.40_petg_fine.inst.cfg | 28 ++++++++++ ...nci_super_copper_0.40_petg_normal.inst.cfg | 28 ++++++++++ ...yzprinting_0.40_copper_pla_coarse.inst.cfg | 23 ++++++++ ...xyzprinting_0.40_copper_pla_draft.inst.cfg | 23 ++++++++ .../xyzprinting_0.40_copper_pla_fine.inst.cfg | 23 ++++++++ ...yzprinting_0.40_copper_pla_normal.inst.cfg | 23 ++++++++ .../pla/xyzprinting_0.40_pla_coarse.inst.cfg | 23 ++++++++ .../pla/xyzprinting_0.40_pla_draft.inst.cfg | 23 ++++++++ .../pla/xyzprinting_0.40_pla_fine.inst.cfg | 23 ++++++++ .../pla/xyzprinting_0.40_pla_normal.inst.cfg | 23 ++++++++ ...pro_xeplus_copper_0.40_pla_coarse.inst.cfg | 29 ++++++++++ ..._pro_xeplus_copper_0.40_pla_draft.inst.cfg | 29 ++++++++++ ...r_pro_xeplus_copper_0.40_pla_fine.inst.cfg | 29 ++++++++++ ...pro_xeplus_copper_0.40_pla_normal.inst.cfg | 29 ++++++++++ ..._pro_xplus_copper_0.40_pla_coarse.inst.cfg | 31 ++++++++++ ...r_pro_xplus_copper_0.40_pla_draft.inst.cfg | 31 ++++++++++ ...jr_pro_xplus_copper_0.40_pla_fine.inst.cfg | 31 ++++++++++ ..._pro_xplus_copper_0.40_pla_normal.inst.cfg | 31 ++++++++++ ...inci_super_copper_0.40_pla_coarse.inst.cfg | 28 ++++++++++ ...vinci_super_copper_0.40_pla_draft.inst.cfg | 28 ++++++++++ ..._vinci_super_copper_0.40_pla_fine.inst.cfg | 28 ++++++++++ ...inci_super_copper_0.40_pla_normal.inst.cfg | 28 ++++++++++ ...ting_0.40_copper_tough_pla_coarse.inst.cfg | 23 ++++++++ ...nting_0.40_copper_tough_pla_draft.inst.cfg | 23 ++++++++ ...inting_0.40_copper_tough_pla_fine.inst.cfg | 23 ++++++++ ...ting_0.40_copper_tough_pla_normal.inst.cfg | 23 ++++++++ ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 29 ++++++++++ ...eplus_copper_0.40_tough_pla_draft.inst.cfg | 29 ++++++++++ ...xeplus_copper_0.40_tough_pla_fine.inst.cfg | 30 ++++++++++ ...plus_copper_0.40_tough_pla_normal.inst.cfg | 30 ++++++++++ ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 30 ++++++++++ ...xplus_copper_0.40_tough_pla_draft.inst.cfg | 31 ++++++++++ ..._xplus_copper_0.40_tough_pla_fine.inst.cfg | 31 ++++++++++ ...plus_copper_0.40_tough_pla_normal.inst.cfg | 32 +++++++++++ ...uper_copper_0.40_tough_pla_coarse.inst.cfg | 28 ++++++++++ ...super_copper_0.40_tough_pla_draft.inst.cfg | 28 ++++++++++ ..._super_copper_0.40_tough_pla_fine.inst.cfg | 28 ++++++++++ ...uper_copper_0.40_tough_pla_normal.inst.cfg | 28 ++++++++++ ...yzprinting_0.40_copper_tpu_coarse.inst.cfg | 24 ++++++++ ...xyzprinting_0.40_copper_tpu_draft.inst.cfg | 24 ++++++++ .../xyzprinting_0.40_copper_tpu_fine.inst.cfg | 24 ++++++++ ...inting_0.40_copper_tpu_pla_normal.inst.cfg | 24 ++++++++ ...inci_super_copper_0.40_tpu_coarse.inst.cfg | 27 +++++++++ ...vinci_super_copper_0.40_tpu_draft.inst.cfg | 27 +++++++++ ..._vinci_super_copper_0.40_tpu_fine.inst.cfg | 27 +++++++++ ...inci_super_copper_0.40_tpu_normal.inst.cfg | 27 +++++++++ ...ci_jr_pro_xeplus_global_0.10_fine.inst.cfg | 27 +++++++++ ..._jr_pro_xeplus_global_0.20_normal.inst.cfg | 27 +++++++++ ...i_jr_pro_xeplus_global_0.30_draft.inst.cfg | 27 +++++++++ ..._jr_pro_xeplus_global_0.40_coarse.inst.cfg | 27 +++++++++ ...nci_jr_pro_xplus_global_0.10_fine.inst.cfg | 27 +++++++++ ...i_jr_pro_xplus_global_0.20_normal.inst.cfg | 27 +++++++++ ...ci_jr_pro_xplus_global_0.30_draft.inst.cfg | 27 +++++++++ ...i_jr_pro_xplus_global_0.40_coarse.inst.cfg | 27 +++++++++ ...g_da_vinci_super_global_0.10_fine.inst.cfg | 27 +++++++++ ...da_vinci_super_global_0.20_normal.inst.cfg | 27 +++++++++ ..._da_vinci_super_global_0.30_draft.inst.cfg | 27 +++++++++ ...da_vinci_super_global_0.40_coarse.inst.cfg | 27 +++++++++ .../xyzprinting_global_0.10_fine.inst.cfg | 27 +++++++++ .../xyzprinting_global_0.20_normal.inst.cfg | 27 +++++++++ .../xyzprinting_global_0.30_draft.inst.cfg | 27 +++++++++ .../xyzprinting_global_0.40_coarse.inst.cfg | 27 +++++++++ .../variants/xyzprinting_base_0.40.inst.cfg | 12 ++++ ...da_vinci_jr_pro_xplus_copper_0.40.inst.cfg | 13 +++++ ...ing_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg | 13 +++++ ...inting_da_vinci_super_copper_0.40.inst.cfg | 13 +++++ ...yzprinting_da_vinci_super_hs_0.40.inst.cfg | 13 +++++ 163 files changed, 4419 insertions(+) create mode 100644 resources/definitions/xyzprinting_base.def.json create mode 100644 resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json create mode 100644 resources/definitions/xyzprinting_da_vinci_super.def.json create mode 100644 resources/extruders/xyzprinting_base_extruder_0.def.json create mode 100644 resources/extruders/xyzprinting_da_vinci_jr_pro_xplus_extruder_0.def.json create mode 100644 resources/extruders/xyzprinting_da_vinci_super_extruder_0.def.json create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg create mode 100644 resources/variants/xyzprinting_base_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg diff --git a/resources/definitions/xyzprinting_base.def.json b/resources/definitions/xyzprinting_base.def.json new file mode 100644 index 0000000000..c1be41cd49 --- /dev/null +++ b/resources/definitions/xyzprinting_base.def.json @@ -0,0 +1,43 @@ +{ + "name": "XYZprinting Base Printer", + "version": 2, + "inherits": "fdmprinter", + "metadata": { + "visible": false, + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", + "file_formats": "text/x-gcode", + "first_start_actions": ["MachineSettingsAction"], + "machine_extruder_trains": + { + "0": "xyzprinting_base_extruder_0" + }, + "has_materials": true, + "has_variants": true, + "has_machine_quality": true, + "preferred_quality_type": "normal", + "preferred_material": "generic_pla", + "variants_name": "Nozzle Type" + }, + "overrides": { + "machine_heated_bed": {"default_value": true}, + "machine_max_feedrate_x": { "value": 500 }, + "machine_max_feedrate_y": { "value": 500 }, + "machine_max_feedrate_z": { "value": 10 }, + "machine_max_feedrate_e": { "value": 50 }, + "machine_max_acceleration_x": { "value": 1500 }, + "machine_max_acceleration_y": { "value": 1500 }, + "machine_max_acceleration_z": { "value": 500 }, + "machine_max_acceleration_e": { "value": 5000 }, + "machine_acceleration": { "value": 500 }, + "machine_max_jerk_xy": { "value": 10 }, + "machine_max_jerk_z": { "value": 0.4 }, + "machine_max_jerk_e": { "value": 5 } + }, + + + "machine_gcode_flavor": {"default_value": "RepRap (Marlin/Sprinter)"}, + "machine_start_gcode": {"default_value": ";Start Gcode\nG90 ;absolute positioning\nM118 X25.00 Y25.00 Z20.00 T0\nM140 S{material_bed_temperature_layer_0} T0 ;Heat bed up to first layer temperature\nM104 S{material_print_temperature_layer_0} T0 ;Set nozzle temperature to first layer temperature\nM107 ;start with the fan off\nG90\nG28\nM132 X Y Z A B\nG1 Z50.000 F420\nG161 X Y F3300\nM7 T0\nM6 T0\nM651\nM907 X100 Y100 Z40 A100 B20 ;Digital potentiometer value\nM108 T0\n;Purge line\nG1 X-110.00 Y-60.00 F4800\nG1 Z{layer_height_0} F420\nG1 X-110.00 Y60.00 E17,4 F1200\n;Purge line end"}, + "machine_end_gcode": {"default_value": ";end gcode\nM104 S0 T0\nM140 S0 T0\nG162 Z F1800\nG28 X Y\nM652\nM132 X Y Z A B\nG91\nM18" + } + } diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json new file mode 100644 index 0000000000..94794fc63a --- /dev/null +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json @@ -0,0 +1,56 @@ +{ + "version": 2, + "name": "XYZprinting da Vinci Jr. Pro X+", + "inherits": "xyzprinting_base", + "metadata": { + "visible": true, + "file_formats": "text/x-gcode", + "supports_usb_connection": true, + "preferred_quality_type": "normal", + "quality_definition": "xyzprinting_da_vinci_jr_pro_xplus", + "preferred_variant_name": "Copper 0.4mm Nozzle", + "variants_name": "Nozzle Type" + }, + + "overrides": { + "machine_name": { "default_value": "XYZprinting da Vinci Jr. Pro X+" }, + "machine_shape": { "default_value": "rectangular"}, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 175.00 }, + "machine_depth": { "default_value": 175.00 }, + "machine_height": { "default_value":175.00 }, + "machine_center_is_zero": { "default_value": false }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -20, -10 ], + [ -20, 10 ], + [ 10, 10 ], + [ 10, -10 ] + ] + }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.30 }, + "infill_sparse_density": { "default_value": 10 }, + "default_material_print_temperature": { "default_value": 210 }, + "material_print_temperature": { "value": 210 }, + "material_bed_temperature": { "value": 45 }, + "material_bed_temperature_layer_0": { "value": 45 }, + "material_flow_layer_0": {"value": 120}, + "retraction_amount": { "default_value": 5.0 }, + "retraction_speed": { "default_value": 15 }, + "speed_print": { "default_value": 30 }, + "speed_travel": { "value": 120 }, + "cool_fan_enabled": { "default_value": true }, + "cool_fan_speed_0": { "value": 100 }, + "adhesion_type": { "default_value" : "skirt" }, + "brim_line_count": { "value" : 5 }, + "skirt_line_count": { "default_value" : 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off temperature\nM105 S0; \nG28 X0 ; home X axis\nM84 ; disable motors\n" + } + } +} diff --git a/resources/definitions/xyzprinting_da_vinci_super.def.json b/resources/definitions/xyzprinting_da_vinci_super.def.json new file mode 100644 index 0000000000..f5d9070cf3 --- /dev/null +++ b/resources/definitions/xyzprinting_da_vinci_super.def.json @@ -0,0 +1,56 @@ +{ + "version": 2, + "name": "XYZprinting da Vinci Super", + "inherits": "xyzprinting_base", + "metadata": { + "visible": true, + "file_formats": "text/x-gcode", + "supports_usb_connection": true, + "preferred_quality_type": "normal", + "quality_definition": "xyzprinting_da_vinci_super", + "preferred_variant_name": "Copper 0.4mm Nozzle", + "variants_name": "Nozzle Type" + }, + + "overrides": { + "machine_name": { "default_value": "XYZprinting da Vinci Super" }, + "machine_shape": { "default_value": "rectangular"}, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 300.00 }, + "machine_depth": { "default_value": 300.00 }, + "machine_height": { "default_value":300.00 }, + "machine_center_is_zero": { "default_value": false }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -20, -10 ], + [ -20, 10 ], + [ 10, 10 ], + [ 10, -10 ] + ] + }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.35 }, + "infill_sparse_density": { "default_value": 10 }, + "default_material_print_temperature": { "default_value": 210 }, + "material_print_temperature": { "value": 210 }, + "material_bed_temperature": { "value": 45 }, + "material_bed_temperature_layer_0": { "value": 45 }, + "material_flow_layer_0": {"value": 120}, + "retraction_amount": { "default_value": 5.5 }, + "retraction_speed": { "default_value": 30 }, + "speed_print": { "default_value": 30 }, + "speed_travel": { "value": 120 }, + "cool_fan_enabled": { "default_value": true }, + "cool_fan_speed_0": { "value": 100 }, + "adhesion_type": { "default_value" : "skirt" }, + "brim_line_count": { "value" : 5 }, + "skirt_line_count": { "default_value" : 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off temperature\nM105 S0; \nG28 X0 ; home X axis\nM84 ; disable motors\n" + } + } +} diff --git a/resources/extruders/xyzprinting_base_extruder_0.def.json b/resources/extruders/xyzprinting_base_extruder_0.def.json new file mode 100644 index 0000000000..0a04c63103 --- /dev/null +++ b/resources/extruders/xyzprinting_base_extruder_0.def.json @@ -0,0 +1,16 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_base", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + + } +} diff --git a/resources/extruders/xyzprinting_da_vinci_jr_pro_xplus_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_jr_pro_xplus_extruder_0.def.json new file mode 100644 index 0000000000..ce653eeedd --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_jr_pro_xplus_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_jr_pro_xplus", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/extruders/xyzprinting_da_vinci_super_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_super_extruder_0.def.json new file mode 100644 index 0000000000..e414746665 --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_super_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_super", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg new file mode 100644 index 0000000000..7f528d34b8 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg new file mode 100644 index 0000000000..5df9d6ba1d --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg new file mode 100644 index 0000000000..96baf9e16e --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg new file mode 100644 index 0000000000..5864c1a1ae --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg new file mode 100644 index 0000000000..3265aed964 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg @@ -0,0 +1,32 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_wall = 20 +speed_print = 60 +speed_topbottom = 10 +speed_roofing = 20 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.0 +retraction_speed = 20 +retraction_prime_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg new file mode 100644 index 0000000000..69b85ea6c2 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg @@ -0,0 +1,32 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_wall = 20 +speed_print = 60 +speed_topbottom = 10 +speed_roofing = 20 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.0 +retraction_speed = 20 +retraction_prime_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg new file mode 100644 index 0000000000..cf1f8048f9 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg @@ -0,0 +1,32 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_wall = 20 +speed_print = 60 +speed_topbottom = 10 +speed_roofing = 20 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.0 +retraction_speed = 20 +retraction_prime_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg new file mode 100644 index 0000000000..faad12eb51 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg @@ -0,0 +1,32 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_wall = 20 +speed_print = 60 +speed_topbottom = 10 +speed_roofing = 20 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.0 +retraction_speed = 20 +retraction_prime_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg new file mode 100644 index 0000000000..88864f76cb --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg new file mode 100644 index 0000000000..639ba437c1 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg new file mode 100644 index 0000000000..0c8e1cb669 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg new file mode 100644 index 0000000000..7c045c5bf0 --- /dev/null +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_abs +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 90 +material_bed_temperature_layer_0 = 90 +material_print_temperature = 240 +material_print_temperature_layer_0 = 240 +material_initial_print_temperature = 240 +material_final_print_temperature = 240 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg new file mode 100644 index 0000000000..66b8fa7ccd --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_antibact_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg new file mode 100644 index 0000000000..63c793da28 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_antibact_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg new file mode 100644 index 0000000000..8ff9fb31a8 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_antibact_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg new file mode 100644 index 0000000000..c97e219a5f --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_antibact_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg new file mode 100644 index 0000000000..fe84c38030 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg new file mode 100644 index 0000000000..5b22b543d5 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg new file mode 100644 index 0000000000..97c60be7de --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg new file mode 100644 index 0000000000..426509b57d --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg new file mode 100644 index 0000000000..1f2602cfd2 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg new file mode 100644 index 0000000000..bd36138949 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg new file mode 100644 index 0000000000..23fbb4aa1e --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg new file mode 100644 index 0000000000..4fa1e4abee --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg new file mode 100644 index 0000000000..cc413a8953 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg new file mode 100644 index 0000000000..39750f6ca6 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg new file mode 100644 index 0000000000..e109e3e1e7 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg new file mode 100644 index 0000000000..26a5fea621 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg new file mode 100644 index 0000000000..f67f3fc1c8 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg new file mode 100644 index 0000000000..76a6f23917 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg new file mode 100644 index 0000000000..46bf4e101b --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg new file mode 100644 index 0000000000..319bd53c9e --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg new file mode 100644 index 0000000000..57c36b4963 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg new file mode 100644 index 0000000000..5d26222c30 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg new file mode 100644 index 0000000000..d1fe0d14b8 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg new file mode 100644 index 0000000000..d300bf3bf9 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg new file mode 100644 index 0000000000..86da828388 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 40 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg new file mode 100644 index 0000000000..962f58dcd2 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 40 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg new file mode 100644 index 0000000000..5d9a4f2cbf --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 40 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg new file mode 100644 index 0000000000..b8e4ff1e27 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 40 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg new file mode 100644 index 0000000000..3b31da9c54 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg new file mode 100644 index 0000000000..4f8e480535 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg new file mode 100644 index 0000000000..a40d5a3ab2 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg new file mode 100644 index 0000000000..ae1590cd95 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 215 +material_print_temperature_layer_0 = 215 +material_initial_print_temperature = 215 +material_final_print_temperature = 215 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg new file mode 100644 index 0000000000..76b11c7a7d --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg new file mode 100644 index 0000000000..dce7262f47 --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg new file mode 100644 index 0000000000..a70c09406b --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg new file mode 100644 index 0000000000..3637b6931d --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg new file mode 100644 index 0000000000..921668e72a --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 +retraction_amount = 6.0 +retraction_speed = 40 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg new file mode 100644 index 0000000000..c4a452a8f9 --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 +retraction_amount = 6.0 +retraction_speed = 40 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg new file mode 100644 index 0000000000..e949703d36 --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 +retraction_amount = 6.0 +retraction_speed = 40 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg new file mode 100644 index 0000000000..041dff6125 --- /dev/null +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_flexible +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 100 +infill_sparse_density = 20 +retraction_amount = 6.0 +retraction_speed = 40 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg new file mode 100644 index 0000000000..eeca25e9f5 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg new file mode 100644 index 0000000000..388df4f66d --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg new file mode 100644 index 0000000000..e646682022 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg new file mode 100644 index 0000000000..6fbd4067fc --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg new file mode 100644 index 0000000000..b1eb6770bc --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg new file mode 100644 index 0000000000..ab1ab8abff --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg new file mode 100644 index 0000000000..48fa4f5da0 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg new file mode 100644 index 0000000000..9335e3af63 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg new file mode 100644 index 0000000000..12275f5721 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg new file mode 100644 index 0000000000..de704862a8 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg new file mode 100644 index 0000000000..844747be2e --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg new file mode 100644 index 0000000000..1f3abfd36d --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg new file mode 100644 index 0000000000..5cc127a179 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg new file mode 100644 index 0000000000..8a99f6c7eb --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg new file mode 100644 index 0000000000..620c326cf7 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg new file mode 100644 index 0000000000..9a2e4b82ca --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg new file mode 100644 index 0000000000..d719c5fde8 --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg new file mode 100644 index 0000000000..43ca81c7fc --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg new file mode 100644 index 0000000000..e4e33e86fb --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg new file mode 100644 index 0000000000..466f3f542f --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg new file mode 100644 index 0000000000..f6bf6494ff --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +material_initial_print_temperature = 255 +material_final_print_temperature = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 0 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg new file mode 100644 index 0000000000..75b97daad8 --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +material_initial_print_temperature = 255 +material_final_print_temperature = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 0 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg new file mode 100644 index 0000000000..d59017bbfd --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +material_initial_print_temperature = 255 +material_final_print_temperature = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 0 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg new file mode 100644 index 0000000000..1dd598ae88 --- /dev/null +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_nylon +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 80 +material_bed_temperature_layer_0 = 80 +material_print_temperature = 255 +material_print_temperature_layer_0 = 255 +material_initial_print_temperature = 255 +material_final_print_temperature = 255 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 8.0 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 0 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg new file mode 100644 index 0000000000..6b3f78922a --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg new file mode 100644 index 0000000000..5dbb696034 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg new file mode 100644 index 0000000000..8c7baeb130 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg new file mode 100644 index 0000000000..03123f2bdb --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg new file mode 100644 index 0000000000..de31888641 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg new file mode 100644 index 0000000000..79ee84c808 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg new file mode 100644 index 0000000000..a74b87acd4 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg new file mode 100644 index 0000000000..5bf45c7a2f --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg new file mode 100644 index 0000000000..54d06c64e3 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 60 +material_bed_temperature_layer_0 = 60 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg new file mode 100644 index 0000000000..6c8da2cdf3 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 60 +material_bed_temperature_layer_0 = 60 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg new file mode 100644 index 0000000000..e2f1d4cd47 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg new file mode 100644 index 0000000000..a4056d9994 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 60 +material_bed_temperature_layer_0 = 60 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 3.5 +retraction_speed = 20 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg new file mode 100644 index 0000000000..457cccf3f1 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 25 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg new file mode 100644 index 0000000000..bdf8feb289 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 25 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg new file mode 100644 index 0000000000..e967c62a03 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 25 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg new file mode 100644 index 0000000000..bb59e41b51 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_petg +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 220 +material_print_temperature_layer_0 = 220 +material_initial_print_temperature = 220 +material_final_print_temperature = 220 +speed_infill = 60 +speed_print = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 25 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg new file mode 100644 index 0000000000..52f18fc93d --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg new file mode 100644 index 0000000000..ce1b36a236 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg new file mode 100644 index 0000000000..0d772c71ab --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg new file mode 100644 index 0000000000..aea4b105d7 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..4d77c727c1 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..d673cd8d43 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..f4ae267456 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..5876f74a9f --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 70 +material_bed_temperature_layer_0 = 70 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..3bc43a6f93 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..58dea2d15f --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..88fd6ec658 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..d542d29a67 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..5ce51a9267 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..e07085afaa --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..75e06584fc --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..e841cbfa11 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..d4f89c14ef --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..bb435de683 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..54b068c8d0 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..bf60df401a --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg new file mode 100644 index 0000000000..818fcf74af --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = =speed_print +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg new file mode 100644 index 0000000000..eefb4009da --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg new file mode 100644 index 0000000000..fb49485b93 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg new file mode 100644 index 0000000000..14e4bc01bf --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg @@ -0,0 +1,23 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg new file mode 100644 index 0000000000..c85727a1e2 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg new file mode 100644 index 0000000000..931ffb663f --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg @@ -0,0 +1,29 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg new file mode 100644 index 0000000000..bed7c821e0 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 + diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg new file mode 100644 index 0000000000..646f54669c --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 60 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg new file mode 100644 index 0000000000..dc5cc397a6 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -0,0 +1,30 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg new file mode 100644 index 0000000000..a03fcc741c --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg new file mode 100644 index 0000000000..6157ed727c --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 + diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg new file mode 100644 index 0000000000..289d0092f9 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg @@ -0,0 +1,32 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 200 +material_print_temperature_layer_0 = 200 +material_initial_print_temperature = 200 +material_final_print_temperature = 200 +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 7.0 +retraction_speed = 15 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg new file mode 100644 index 0000000000..a42b65c43b --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg new file mode 100644 index 0000000000..c7a8fd489f --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg new file mode 100644 index 0000000000..7455132c5a --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg new file mode 100644 index 0000000000..3457e46c38 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg @@ -0,0 +1,28 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +material_initial_print_temperature = 210 +material_final_print_temperature = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 80 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg new file mode 100644 index 0000000000..23f99a36ae --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg new file mode 100644 index 0000000000..54f2d7b965 --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg new file mode 100644 index 0000000000..a13df6eb01 --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg new file mode 100644 index 0000000000..f26ab65726 --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg @@ -0,0 +1,24 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_tough_pla +variant = 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 30 +speed_travel = 120 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg new file mode 100644 index 0000000000..8cf13553eb --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_tpu +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 15 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 30 +skirt_brim_speed = 30 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg new file mode 100644 index 0000000000..f334cca519 --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_tpu +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 15 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 30 +skirt_brim_speed = 30 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg new file mode 100644 index 0000000000..b7b5a2d81c --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_tpu +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 15 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 30 +skirt_brim_speed = 30 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg new file mode 100644 index 0000000000..34bb1bc3ed --- /dev/null +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_tpu +variant = Copper 0.4mm Nozzle + +[values] +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +material_bed_temperature = 45 +material_bed_temperature_layer_0 = 45 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 15 +speed_print = 15 +speed_support = 30 +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 30 +skirt_brim_speed = 30 +brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..1ca3778241 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.10 +layer_height_0 = 0.20 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..527b10d2c4 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.2 +layer_height_0 = 0.35 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..d4489125c8 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.30 +layer_height_0 = 0.40 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..5df474233b --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.4 +layer_height_0 = 0.4 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..0ca03b0b7d --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.10 +layer_height_0 = 0.20 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..ce83667725 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.2 +layer_height_0 = 0.35 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..beac51465b --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.30 +layer_height_0 = 0.40 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..0849adfd89 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.4 +layer_height_0 = 0.4 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..b0f4d59c13 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.10 +layer_height_0 = 0.20 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..6bf1bdc998 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.2 +layer_height_0 = 0.35 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..5688536431 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.30 +layer_height_0 = 0.40 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..22ed077db5 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.4 +layer_height_0 = 0.4 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 30 +speed_print = 30 +speed_support = 30 +speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..4564c5da25 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.10 +layer_height_0 = 0.20 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..93382ffcee --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.2 +layer_height_0 = 0.3 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..3721cf5823 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.30 +layer_height_0 = 0.40 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..aa68b25670 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +adhesion_type = brim +brim_width = 10.0 +cool_fan_speed = 100 +cool_fan_speed_0 = 0 +layer_height = 0.4 +layer_height_0 = 0.4 +material_bed_temperature = 40 +material_diameter = 1.75 +material_print_temperature = 210 +material_print_temperature_layer_0 = 210 +speed_infill = 24 +speed_print = 24 +speed_support = 24 +speed_travel = 70 diff --git a/resources/variants/xyzprinting_base_0.40.inst.cfg b/resources/variants/xyzprinting_base_0.40.inst.cfg new file mode 100644 index 0000000000..2786f8864b --- /dev/null +++ b/resources/variants/xyzprinting_base_0.40.inst.cfg @@ -0,0 +1,12 @@ +[general] +name = 0.4mm Nozzle +version = 4 +definition = xyzprinting_base + +[metadata] +setting_version = 17 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 diff --git a/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg new file mode 100644 index 0000000000..7be2df76d1 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Copper 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Copper 0.4mm Nozzle diff --git a/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg new file mode 100644 index 0000000000..0004fd88ad --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Hardened Steel 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 17 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Hardened Steel 0.4mm Nozzle diff --git a/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg new file mode 100644 index 0000000000..c793dfdb31 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Copper 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Copper 0.4mm Nozzle diff --git a/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg new file mode 100644 index 0000000000..3108935fb6 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Hardened Steel 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_super + +[metadata] +setting_version = 17 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Hardened Steel 0.4mm Nozzle From 1662398cdaa0819da04e6b026ee3b4eceb0e3731 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Tue, 17 Aug 2021 17:17:40 +0800 Subject: [PATCH 002/135] Add Jr.Pro Xe+ Definition Add Jr.Pro Xe+ Definition --- ...yzprinting_da_vinci_jr_pro_xeplus.def.json | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json new file mode 100644 index 0000000000..2c4a3c3622 --- /dev/null +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json @@ -0,0 +1,54 @@ +{ + "version": 2, + "name": "XYZprinting da Vinci Jr. Pro Xe+", + "inherits": "xyzprinting_base", + "metadata": { + "visible": true, + "file_formats": "text/x-gcode", + "supports_usb_connection": true, + "preferred_quality_type": "normal", + "quality_definition": "xyzprinting_da_vinci_jr_pro_xeplus", + "preferred_variant_name": "Copper 0.4mm Nozzle", + "variants_name": "Nozzle Type" + }, + + "overrides": { + "machine_name": { "default_value": "XYZprinting da Vinci Jr. Pro Xe+" }, + "machine_shape": { "default_value": "rectangular"}, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 175.00 }, + "machine_depth": { "default_value": 175.00 }, + "machine_height": { "default_value":175.00 }, + "machine_center_is_zero": { "default_value": false }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -20, -10 ], + [ -20, 10 ], + [ 10, 10 ], + [ 10, -10 ] + ] + }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.30 }, + "infill_sparse_density": { "default_value": 10 }, + "default_material_print_temperature": { "default_value": 210 }, + "material_print_temperature": { "value": 210 }, + "material_flow_layer_0": {"value": 120}, + "retraction_amount": { "default_value": 5.0 }, + "retraction_speed": { "default_value": 15 }, + "speed_print": { "default_value": 30 }, + "speed_travel": { "value": 120 }, + "cool_fan_enabled": { "default_value": true }, + "cool_fan_speed_0": { "value": 100 }, + "adhesion_type": { "default_value" : "skirt" }, + "brim_line_count": { "value" : 5 }, + "skirt_line_count": { "default_value" : 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off temperature\nM105 S0; \nG28 X0 ; home X axis\nM84 ; disable motors\n" + } + } +} From 40025c0d63380f869aa97a32d060db8160076f77 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Wed, 18 Aug 2021 13:04:23 +0800 Subject: [PATCH 003/135] Fix machine_extruder_trains not set Fix machine_extruder_trains not set --- .../definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json | 5 ++++- .../definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json | 5 ++++- resources/definitions/xyzprinting_da_vinci_super.def.json | 5 ++++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json index 2c4a3c3622..3cc95f22b0 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json @@ -9,7 +9,10 @@ "preferred_quality_type": "normal", "quality_definition": "xyzprinting_da_vinci_jr_pro_xeplus", "preferred_variant_name": "Copper 0.4mm Nozzle", - "variants_name": "Nozzle Type" + "variants_name": "Nozzle Type", + "machine_extruder_trains": { + "0": "xyzprinting_da_vinci_jr_pro_xeplus_extruder_0" + } }, "overrides": { diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json index 94794fc63a..9029269d7e 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json @@ -9,7 +9,10 @@ "preferred_quality_type": "normal", "quality_definition": "xyzprinting_da_vinci_jr_pro_xplus", "preferred_variant_name": "Copper 0.4mm Nozzle", - "variants_name": "Nozzle Type" + "variants_name": "Nozzle Type", + "machine_extruder_trains": { + "0": "xyzprinting_da_vinci_jr_pro_xplus_extruder_0" + } }, "overrides": { diff --git a/resources/definitions/xyzprinting_da_vinci_super.def.json b/resources/definitions/xyzprinting_da_vinci_super.def.json index f5d9070cf3..a9ee802099 100644 --- a/resources/definitions/xyzprinting_da_vinci_super.def.json +++ b/resources/definitions/xyzprinting_da_vinci_super.def.json @@ -9,7 +9,10 @@ "preferred_quality_type": "normal", "quality_definition": "xyzprinting_da_vinci_super", "preferred_variant_name": "Copper 0.4mm Nozzle", - "variants_name": "Nozzle Type" + "variants_name": "Nozzle Type", + "machine_extruder_trains": { + "0": "xyzprinting_da_vinci_super_extruder_0" + } }, "overrides": { From 32137f1e56adcc321f3f56dc1564607fd274ee0f Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Tue, 7 Sep 2021 16:25:50 +0800 Subject: [PATCH 004/135] modify definition & quality 1.move cool_fan to definition from quality 2.use parameter to replace actual value when value equal --- .../definitions/xyzprinting_base.def.json | 6 ++++- ...yzprinting_0.40_copper_abs_coarse.inst.cfg | 12 ++++----- ...xyzprinting_0.40_copper_abs_draft.inst.cfg | 10 +++---- .../xyzprinting_0.40_copper_abs_fine.inst.cfg | 10 +++---- ...yzprinting_0.40_copper_abs_normal.inst.cfg | 12 ++++----- ..._pro_xplus_copper_0.40_abs_coarse.inst.cfg | 12 ++++----- ...r_pro_xplus_copper_0.40_abs_draft.inst.cfg | 12 ++++----- ...jr_pro_xplus_copper_0.40_abs_fine.inst.cfg | 12 ++++----- ..._pro_xplus_copper_0.40_abs_normal.inst.cfg | 12 ++++----- ...inci_super_copper_0.40_abs_coarse.inst.cfg | 16 +++++------ ...vinci_super_copper_0.40_abs_draft.inst.cfg | 16 +++++------ ..._vinci_super_copper_0.40_abs_fine.inst.cfg | 16 +++++------ ...inci_super_copper_0.40_abs_normal.inst.cfg | 16 +++++------ .../xyzprinting_0.40_antibact_coarse.inst.cfg | 14 +++++----- .../xyzprinting_0.40_antibact_draft.inst.cfg | 14 +++++----- .../xyzprinting_0.40_antibact_fine.inst.cfg | 14 +++++----- .../xyzprinting_0.40_antibact_normal.inst.cfg | 14 +++++----- ...eplus_copper_0.40_antibact_coarse.inst.cfg | 16 +++++------ ...xeplus_copper_0.40_antibact_draft.inst.cfg | 16 +++++------ ..._xeplus_copper_0.40_antibact_fine.inst.cfg | 16 +++++------ ...eplus_copper_0.40_antibact_normal.inst.cfg | 16 +++++------ ...xplus_copper_0.40_antibact_coarse.inst.cfg | 20 +++++++------- ..._xplus_copper_0.40_antibact_draft.inst.cfg | 20 +++++++------- ...o_xplus_copper_0.40_antibact_fine.inst.cfg | 20 +++++++------- ...xplus_copper_0.40_antibact_normal.inst.cfg | 20 +++++++------- ...inci_jr_w_pro_ss_0.40_antibact_coarse.inst | 27 +++++++++++++++++++ ...i_jr_w_pro_ss_0.40_antibact_draft.inst.cfg | 27 +++++++++++++++++++ ...ci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg | 27 +++++++++++++++++++ ..._jr_w_pro_ss_0.40_antibact_normal.inst.cfg | 27 +++++++++++++++++++ ...super_copper_0.40_antibact_coarse.inst.cfg | 18 ++++++------- ..._super_copper_0.40_antibact_draft.inst.cfg | 18 ++++++------- ...i_super_copper_0.40_antibact_fine.inst.cfg | 18 ++++++------- ...super_copper_0.40_antibact_normal.inst.cfg | 18 ++++++------- ...xyzprinting_0.40_hs_carbon_coarse.inst.cfg | 12 ++++----- .../xyzprinting_0.40_hs_carbon_draft.inst.cfg | 12 ++++----- .../xyzprinting_0.40_hs_carbon_fine.inst.cfg | 12 ++++----- ...xyzprinting_0.40_hs_carbon_normal.inst.cfg | 12 ++++----- ...eplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 16 +++++------ ...xeplus_hs_0.40_carbon_fiber_draft.inst.cfg | 16 +++++------ ..._xeplus_hs_0.40_carbon_fiber_fine.inst.cfg | 16 +++++------ ...eplus_hs_0.40_carbon_fiber_normal.inst.cfg | 16 +++++------ ...xplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 18 ++++++------- ..._xplus_hs_0.40_carbon_fiber_draft.inst.cfg | 18 ++++++------- ...o_xplus_hs_0.40_carbon_fiber_fine.inst.cfg | 18 ++++++------- ...xplus_hs_0.40_carbon_fiber_normal.inst.cfg | 18 ++++++------- ...w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg | 27 +++++++++++++++++++ ..._w_pro_hs_0.40_carbon_fiber_draft.inst.cfg | 27 +++++++++++++++++++ ...r_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg | 27 +++++++++++++++++++ ...w_pro_hs_0.40_carbon_fiber_normal.inst.cfg | 27 +++++++++++++++++++ ...super_hs_0.40_carbon_fiber_coarse.inst.cfg | 16 +++++------ ..._super_hs_0.40_carbon_fiber_draft.inst.cfg | 16 +++++------ ...i_super_hs_0.40_carbon_fiber_fine.inst.cfg | 16 +++++------ ...super_hs_0.40_carbon_fiber_normal.inst.cfg | 16 +++++------ .../xyzprinting_0.40_flexible_coarse.inst.cfg | 12 ++++----- .../xyzprinting_0.40_flexible_draft.inst.cfg | 12 ++++----- .../xyzprinting_0.40_flexible_fine.inst.cfg | 12 ++++----- .../xyzprinting_0.40_flexible_normal.inst.cfg | 12 ++++----- ...super_copper_0.40_flexible_coarse.inst.cfg | 16 +++++------ ..._super_copper_0.40_flexible_draft.inst.cfg | 16 +++++------ ...i_super_copper_0.40_flexible_fine.inst.cfg | 16 +++++------ ...super_copper_0.40_flexible_normal.inst.cfg | 16 +++++------ ...zprinting_0.40_hs_metallic_coarse.inst.cfg | 12 ++++----- ...yzprinting_0.40_hs_metallic_draft.inst.cfg | 12 ++++----- ...xyzprinting_0.40_hs_metallic_fine.inst.cfg | 12 ++++----- ...zprinting_0.40_hs_metallic_normal.inst.cfg | 12 ++++----- ...ro_xeplus_hs_0.40_metallic_coarse.inst.cfg | 18 ++++++------- ...pro_xeplus_hs_0.40_metallic_draft.inst.cfg | 18 ++++++------- ..._pro_xeplus_hs_0.40_metallic_fine.inst.cfg | 18 ++++++------- ...ro_xeplus_hs_0.40_metallic_normal.inst.cfg | 18 ++++++------- ...pro_xplus_hs_0.40_metallic_coarse.inst.cfg | 20 +++++++------- ..._pro_xplus_hs_0.40_metallic_draft.inst.cfg | 18 ++++++------- ...r_pro_xplus_hs_0.40_metallic_fine.inst.cfg | 20 +++++++------- ...pro_xplus_hs_0.40_metallic_normal.inst.cfg | 20 +++++++------- ..._jr_w_pro_hs_0.40_metallic_coarse.inst.cfg | 27 +++++++++++++++++++ ...i_jr_w_pro_hs_0.40_metallic_draft.inst.cfg | 27 +++++++++++++++++++ ...ci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg | 27 +++++++++++++++++++ ..._jr_w_pro_hs_0.40_metallic_normal.inst.cfg | 27 +++++++++++++++++++ ...nci_super_hs_0.40_metallic_coarse.inst.cfg | 18 ++++++------- ...inci_super_hs_0.40_metallic_draft.inst.cfg | 18 ++++++------- ...vinci_super_hs_0.40_metallic_fine.inst.cfg | 18 ++++++------- ...nci_super_hs_0.40_metallic_normal.inst.cfg | 18 ++++++------- ...printing_0.40_copper_nylon_coarse.inst.cfg | 12 ++++----- ...zprinting_0.40_copper_nylon_draft.inst.cfg | 12 ++++----- ...yzprinting_0.40_copper_nylon_fine.inst.cfg | 12 ++++----- ...printing_0.40_copper_nylon_normal.inst.cfg | 12 ++++----- ...ci_super_copper_0.40_nylon_coarse.inst.cfg | 18 ++++++------- ...nci_super_copper_0.40_nylon_draft.inst.cfg | 18 ++++++------- ...inci_super_copper_0.40_nylon_fine.inst.cfg | 18 ++++++------- ...ci_super_copper_0.40_nylon_normal.inst.cfg | 18 ++++++------- ...zprinting_0.40_copper_petg_coarse.inst.cfg | 10 +++---- ...yzprinting_0.40_copper_petg_draft.inst.cfg | 10 +++---- ...xyzprinting_0.40_copper_petg_fine.inst.cfg | 10 +++---- ...zprinting_0.40_copper_petg_normal.inst.cfg | 10 +++---- ...ro_xeplus_copper_0.40_petg_coarse.inst.cfg | 16 +++++------ ...pro_xeplus_copper_0.40_petg_draft.inst.cfg | 16 +++++------ ..._pro_xeplus_copper_0.40_petg_fine.inst.cfg | 16 +++++------ ...ro_xeplus_copper_0.40_petg_normal.inst.cfg | 16 +++++------ ...pro_xplus_copper_0.40_petg_coarse.inst.cfg | 18 ++++++------- ..._pro_xplus_copper_0.40_petg_draft.inst.cfg | 18 ++++++------- ...r_pro_xplus_copper_0.40_petg_fine.inst.cfg | 20 +++++++------- ...pro_xplus_copper_0.40_petg_normal.inst.cfg | 18 ++++++------- ...inci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg | 27 +++++++++++++++++++ ...vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg | 27 +++++++++++++++++++ ..._vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg | 27 +++++++++++++++++++ ...inci_jr_w_pro_ss_0.40_petg_normal.inst.cfg | 27 +++++++++++++++++++ ...nci_super_copper_0.40_petg_coarse.inst.cfg | 14 +++++----- ...inci_super_copper_0.40_petg_draft.inst.cfg | 14 +++++----- ...vinci_super_copper_0.40_petg_fine.inst.cfg | 14 +++++----- ...nci_super_copper_0.40_petg_normal.inst.cfg | 14 +++++----- ...yzprinting_0.40_copper_pla_coarse.inst.cfg | 12 ++++----- ...xyzprinting_0.40_copper_pla_draft.inst.cfg | 13 +++++---- .../xyzprinting_0.40_copper_pla_fine.inst.cfg | 12 ++++----- ...yzprinting_0.40_copper_pla_normal.inst.cfg | 12 ++++----- .../pla/xyzprinting_0.40_pla_coarse.inst.cfg | 12 ++++----- .../pla/xyzprinting_0.40_pla_draft.inst.cfg | 12 ++++----- .../pla/xyzprinting_0.40_pla_fine.inst.cfg | 12 ++++----- .../pla/xyzprinting_0.40_pla_normal.inst.cfg | 12 ++++----- ...pro_xeplus_copper_0.40_pla_coarse.inst.cfg | 16 +++++------ ..._pro_xeplus_copper_0.40_pla_draft.inst.cfg | 16 +++++------ ...r_pro_xeplus_copper_0.40_pla_fine.inst.cfg | 16 +++++------ ...pro_xeplus_copper_0.40_pla_normal.inst.cfg | 16 +++++------ ..._pro_xplus_copper_0.40_pla_coarse.inst.cfg | 20 +++++++------- ...r_pro_xplus_copper_0.40_pla_draft.inst.cfg | 20 +++++++------- ...jr_pro_xplus_copper_0.40_pla_fine.inst.cfg | 20 +++++++------- ..._pro_xplus_copper_0.40_pla_normal.inst.cfg | 20 +++++++------- ...vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg | 27 +++++++++++++++++++ ..._vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg | 27 +++++++++++++++++++ ...a_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg | 27 +++++++++++++++++++ ...vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg | 27 +++++++++++++++++++ ...inci_super_copper_0.40_pla_coarse.inst.cfg | 18 ++++++------- ...vinci_super_copper_0.40_pla_draft.inst.cfg | 18 ++++++------- ..._vinci_super_copper_0.40_pla_fine.inst.cfg | 18 ++++++------- ...inci_super_copper_0.40_pla_normal.inst.cfg | 18 ++++++------- ...ting_0.40_copper_tough_pla_coarse.inst.cfg | 12 ++++----- ...nting_0.40_copper_tough_pla_draft.inst.cfg | 12 ++++----- ...inting_0.40_copper_tough_pla_fine.inst.cfg | 12 ++++----- ...ting_0.40_copper_tough_pla_normal.inst.cfg | 12 ++++----- ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 16 +++++------ ...eplus_copper_0.40_tough_pla_draft.inst.cfg | 16 +++++------ ...xeplus_copper_0.40_tough_pla_fine.inst.cfg | 16 +++++------ ...plus_copper_0.40_tough_pla_normal.inst.cfg | 16 +++++------ ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 21 +++++++-------- ...xplus_copper_0.40_tough_pla_draft.inst.cfg | 20 +++++++------- ..._xplus_copper_0.40_tough_pla_fine.inst.cfg | 21 +++++++-------- ...plus_copper_0.40_tough_pla_normal.inst.cfg | 20 +++++++------- ...jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg | 27 +++++++++++++++++++ ..._jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg | 27 +++++++++++++++++++ ...i_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg | 27 +++++++++++++++++++ ...jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg | 27 +++++++++++++++++++ ...uper_copper_0.40_tough_pla_coarse.inst.cfg | 18 ++++++------- ...super_copper_0.40_tough_pla_draft.inst.cfg | 18 ++++++------- ..._super_copper_0.40_tough_pla_fine.inst.cfg | 18 ++++++------- ...uper_copper_0.40_tough_pla_normal.inst.cfg | 18 ++++++------- ...yzprinting_0.40_copper_tpu_coarse.inst.cfg | 10 +++---- ...xyzprinting_0.40_copper_tpu_draft.inst.cfg | 10 +++---- .../xyzprinting_0.40_copper_tpu_fine.inst.cfg | 10 +++---- ...inting_0.40_copper_tpu_pla_normal.inst.cfg | 10 +++---- ...inci_super_copper_0.40_tpu_coarse.inst.cfg | 12 ++++----- ...vinci_super_copper_0.40_tpu_draft.inst.cfg | 12 ++++----- ..._vinci_super_copper_0.40_tpu_fine.inst.cfg | 12 ++++----- ...inci_super_copper_0.40_tpu_normal.inst.cfg | 10 +++---- ...ci_jr_pro_xeplus_global_0.10_fine.inst.cfg | 10 +++---- ..._jr_pro_xeplus_global_0.20_normal.inst.cfg | 10 +++---- ...i_jr_pro_xeplus_global_0.30_draft.inst.cfg | 10 +++---- ..._jr_pro_xeplus_global_0.40_coarse.inst.cfg | 10 +++---- ...nci_jr_pro_xplus_global_0.10_fine.inst.cfg | 10 +++---- ...i_jr_pro_xplus_global_0.20_normal.inst.cfg | 10 +++---- ...ci_jr_pro_xplus_global_0.30_draft.inst.cfg | 10 +++---- ...i_jr_pro_xplus_global_0.40_coarse.inst.cfg | 10 +++---- ...g_da_vinci_super_global_0.10_fine.inst.cfg | 10 +++---- ...da_vinci_super_global_0.20_normal.inst.cfg | 10 +++---- ..._da_vinci_super_global_0.30_draft.inst.cfg | 10 +++---- ...da_vinci_super_global_0.40_coarse.inst.cfg | 10 +++---- .../xyzprinting_global_0.10_fine.inst.cfg | 10 +++---- .../xyzprinting_global_0.20_normal.inst.cfg | 10 +++---- .../xyzprinting_global_0.30_draft.inst.cfg | 10 +++---- .../xyzprinting_global_0.40_coarse.inst.cfg | 10 +++---- 177 files changed, 1652 insertions(+), 1239 deletions(-) create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg diff --git a/resources/definitions/xyzprinting_base.def.json b/resources/definitions/xyzprinting_base.def.json index c1be41cd49..a36afd0216 100644 --- a/resources/definitions/xyzprinting_base.def.json +++ b/resources/definitions/xyzprinting_base.def.json @@ -32,7 +32,11 @@ "machine_acceleration": { "value": 500 }, "machine_max_jerk_xy": { "value": 10 }, "machine_max_jerk_z": { "value": 0.4 }, - "machine_max_jerk_e": { "value": 5 } + "machine_max_jerk_e": { "value": 5 }, + "adhesion_type": { "value": "'none' if support_enable else 'brim'" }, + "brim_width": { "value": 10.0 }, + "cool_fan_speed": { "value": 100 }, + "cool_fan_speed_0": { "value": 0 } }, diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg index 7f528d34b8..f6ab591b7b 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg @@ -11,13 +11,13 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg index 5df9d6ba1d..d5caa46fae 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg @@ -11,13 +11,13 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg index 96baf9e16e..ead453f1c8 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg @@ -11,13 +11,13 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg index 5864c1a1ae..75263de48c 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg @@ -11,13 +11,13 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg index 3265aed964..3972f39948 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg @@ -11,19 +11,17 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 speed_topbottom = 10 speed_roofing = 20 -speed_infill = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 3.0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg index 69b85ea6c2..a1c150d361 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg @@ -11,19 +11,17 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 speed_topbottom = 10 speed_roofing = 20 -speed_infill = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 3.0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg index cf1f8048f9..51e10b7ff3 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg @@ -11,19 +11,17 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 speed_topbottom = 10 speed_roofing = 20 -speed_infill = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 3.0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg index faad12eb51..0e07a2e722 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg @@ -11,19 +11,17 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 speed_topbottom = 10 speed_roofing = 20 -speed_infill = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 3.0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg index 88864f76cb..08db4b93e7 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg @@ -11,18 +11,16 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg index 639ba437c1..d7c3141c8b 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg @@ -11,18 +11,16 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg index 0c8e1cb669..cfe24d7564 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg @@ -11,18 +11,16 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg index 7c045c5bf0..7565eb57a3 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg @@ -11,18 +11,16 @@ material = generic_abs variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 90 -material_bed_temperature_layer_0 = 90 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 240 -material_print_temperature_layer_0 = 240 -material_initial_print_temperature = 240 -material_final_print_temperature = 240 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg index 66b8fa7ccd..67d6cc5a3c 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_antibact_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg index 63c793da28..66f882dfab 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_antibact_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg index 8ff9fb31a8..5b291d2d8a 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_antibact_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg index c97e219a5f..f75d2c5c83 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_antibact_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg index fe84c38030..9a8d7218e9 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg index 5b22b543d5..8a94e59909 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg index 97c60be7de..0625bd5faa 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg index 426509b57d..811218ecdf 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg index 1f2602cfd2..45cc7da185 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg index bd36138949..42c0413144 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg index 23fbb4aa1e..eb59ccf2ed 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg index 4fa1e4abee..2ee39e3604 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst new file mode 100644 index 0000000000..f608598a9e --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_antibact_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg new file mode 100644 index 0000000000..2d23116418 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_antibact_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg new file mode 100644 index 0000000000..a4b31105f3 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_antibact_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg new file mode 100644 index 0000000000..612d5bd00a --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_antibact_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg index cc413a8953..1e4a222c54 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg index 39750f6ca6..47cfbe76ca 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg index e109e3e1e7..1bce0ec0f6 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg index 26a5fea621..d0d0f2d39e 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg index f67f3fc1c8..706f9e2f47 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg index 76a6f23917..26fd559987 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg index 46bf4e101b..9f3390d1c1 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg index 319bd53c9e..6b4ca1caed 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg index 57c36b4963..0c4c311948 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg index 5d26222c30..b4dc5ceb1a 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg index d1fe0d14b8..8b8313144d 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg index d300bf3bf9..52fcd77c0c 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = 30 speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg index 86da828388..f4aea921b2 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_wall = 30 +matematerial_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 40 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg index 962f58dcd2..c039a1602e 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 40 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg index 5d9a4f2cbf..0b3b9df873 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 40 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg index b8e4ff1e27..88828e68b5 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 40 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg new file mode 100644 index 0000000000..6585f2af50 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 8.0 +retraction_speed = 50 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg new file mode 100644 index 0000000000..b9804dcf70 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 8.0 +retraction_speed = 50 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg new file mode 100644 index 0000000000..99e6738103 --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 8.0 +retraction_speed = 50 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg new file mode 100644 index 0000000000..606a5c70bd --- /dev/null +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_carbon_fiber +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 8.0 +retraction_speed = 50 +skirt_brim_speed = 15 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg index 3b31da9c54..91b5b5ee7e 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg index 4f8e480535..0664a1b579 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg index a40d5a3ab2..8d3cdbee72 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg index ae1590cd95..c78c753cee 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 215 -material_print_temperature_layer_0 = 215 -material_initial_print_temperature = 215 -material_final_print_temperature = 215 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg index 76b11c7a7d..0f4e18b7ea 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg index dce7262f47..31b7019918 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg index a70c09406b..cb56683ab3 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg index 3637b6931d..eace939e15 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg index 921668e72a..ac68b16751 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 retraction_speed = 40 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg index c4a452a8f9..a47ba48b28 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 retraction_speed = 40 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg index e949703d36..95ce01966a 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 retraction_speed = 40 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg index 041dff6125..33e90d4fd5 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 retraction_speed = 40 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg index eeca25e9f5..9f74d44e12 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg index 388df4f66d..69b36f200a 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg index e646682022..0599ad0013 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg index 6fbd4067fc..fb4975fab0 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg index b1eb6770bc..7358d17420 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg index ab1ab8abff..771a9c9348 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg index 48fa4f5da0..46f151b4ae 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg index 9335e3af63..a9fca5b7fe 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg index 12275f5721..ef80690098 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +mmaterial_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg index de704862a8..39eaef259f 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 +speed_roofing = =speed_print +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg index 844747be2e..ce1da40419 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg index 1f3abfd36d..8681c1d102 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg new file mode 100644 index 0000000000..92ec9f6523 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_bed_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg new file mode 100644 index 0000000000..1ed6e5c52a --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_bed_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg new file mode 100644 index 0000000000..1121cbaa71 --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_bed_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg new file mode 100644 index 0000000000..c7fd52290f --- /dev/null +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_metallic_pla +variant = Hardened Steel 0.4mm Nozzle + +[values] +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_bed_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.0 +retraction_speed = 40 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg index 5cc127a179..06efaa3ef8 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg index 8a99f6c7eb..3f0b2e4c2f 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg index 620c326cf7..5b33e515d6 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg index 9a2e4b82ca..28efbb88c8 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg index d719c5fde8..428169d66d 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg @@ -11,14 +11,14 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg index 43ca81c7fc..9f8c8cb4f0 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg @@ -11,14 +11,14 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg index e4e33e86fb..089798bd66 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg @@ -11,14 +11,14 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg index 466f3f542f..32dbdb7f55 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg @@ -11,14 +11,14 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 brim_width = 5.0 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg index f6bf6494ff..478ef70db4 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg @@ -11,20 +11,18 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -material_initial_print_temperature = 255 -material_final_print_temperature = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print infill_sparse_density = 0 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg index 75b97daad8..54ea0714c2 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg @@ -11,20 +11,18 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -material_initial_print_temperature = 255 -material_final_print_temperature = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print infill_sparse_density = 0 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg index d59017bbfd..332b4331de 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg @@ -11,20 +11,18 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -material_initial_print_temperature = 255 -material_final_print_temperature = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print infill_sparse_density = 0 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg index 1dd598ae88..01248dee03 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg @@ -11,20 +11,18 @@ material = generic_nylon variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 80 -material_bed_temperature_layer_0 = 80 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 255 -material_print_temperature_layer_0 = 255 -material_initial_print_temperature = 255 -material_final_print_temperature = 255 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print infill_sparse_density = 0 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg index 6b3f78922a..a7fd406a0d 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg @@ -11,13 +11,13 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg index 5dbb696034..e7996daec7 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg @@ -11,13 +11,13 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg index 8c7baeb130..8471ba8f3d 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg @@ -11,13 +11,13 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg index 03123f2bdb..9a5c94a4ea 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg @@ -11,13 +11,13 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg index de31888641..5a7cc4bd3a 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg @@ -11,19 +11,17 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg index 79ee84c808..9a05f63afb 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg @@ -11,19 +11,17 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg index a74b87acd4..256be74cc0 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg @@ -11,19 +11,17 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg index 5bf45c7a2f..71eefd0e06 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg @@ -11,19 +11,17 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg index 54d06c64e3..ddf69f02d9 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg @@ -11,21 +11,19 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 60 -material_bed_temperature_layer_0 = 60 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg index 6c8da2cdf3..a333f66d60 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg @@ -11,21 +11,19 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 60 -material_bed_temperature_layer_0 = 60 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg index e2f1d4cd47..5f3449fc81 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg @@ -11,21 +11,19 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 -material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature = 60 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg index a4056d9994..5069f85573 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg @@ -11,21 +11,19 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 60 -material_bed_temperature_layer_0 = 60 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg new file mode 100644 index 0000000000..edf0780ac9 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_petg +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 220 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 50 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg new file mode 100644 index 0000000000..3f17b31e85 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_petg +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 220 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 50 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg new file mode 100644 index 0000000000..f7f722d478 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_petg +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 220 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 50 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg new file mode 100644 index 0000000000..815897cb56 --- /dev/null +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_petg +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 220 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 50 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg index 457cccf3f1..39a7d1c603 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg @@ -11,18 +11,16 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_support \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg index bdf8feb289..188bcc1c78 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg @@ -11,18 +11,16 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_support \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg index e967c62a03..219dbd3fd7 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg @@ -11,18 +11,16 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_support \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg index bb59e41b51..3076c7d4d0 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg @@ -11,18 +11,16 @@ material = generic_petg variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 220 -material_print_temperature_layer_0 = 220 -material_initial_print_temperature = 220 -material_final_print_temperature = 220 -speed_infill = 60 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 60 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_support \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg index 52f18fc93d..134e89ceed 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg index ce1b36a236..d73b1bf0db 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg @@ -11,13 +11,12 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg index 0d772c71ab..a1ae2ab98a 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg index aea4b105d7..3880520dba 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg index 4d77c727c1..a1cacc1f15 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg index d673cd8d43..d28d33d155 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg index f4ae267456..a67a176e4b 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg index 5876f74a9f..c4e6343528 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg @@ -11,13 +11,13 @@ material = generic_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 70 -material_bed_temperature_layer_0 = 70 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg index 3bc43a6f93..68ea8e3228 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg @@ -11,19 +11,17 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg index 58dea2d15f..b6ec76d6d6 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg @@ -11,19 +11,17 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg index 88fd6ec658..71485eb982 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg @@ -11,19 +11,17 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg index d542d29a67..4682155082 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg @@ -11,19 +11,17 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg index 5ce51a9267..9331cc6c10 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg @@ -11,21 +11,19 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg index e07085afaa..161df46aed 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg @@ -11,21 +11,19 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg index 75e06584fc..ae086fe232 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg @@ -11,21 +11,19 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg index e841cbfa11..386a7bd082 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg @@ -11,21 +11,19 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..036595d2a4 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = generic_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..64c427b498 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = generic_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..2e10025007 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = generic_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..606046bbfd --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = generic_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg index d4f89c14ef..fe4f303e9d 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg @@ -11,18 +11,16 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_prin +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg index bb435de683..f6f1168457 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg @@ -11,18 +11,16 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg index 54b068c8d0..21feaa68f9 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg @@ -11,18 +11,16 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 +retraction_speed = 50 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg index bf60df401a..1a121dd0d9 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg @@ -11,18 +11,16 @@ material = generic_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg index 818fcf74af..ef9bbf5aaa 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = =speed_print +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg index eefb4009da..5c05ca32e8 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg index fb49485b93..bd02f02405 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg index 14e4bc01bf..f1d7a48a52 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg @@ -11,13 +11,13 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg index c85727a1e2..4b1cd2b291 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg index 931ffb663f..6dda00926e 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg @@ -11,19 +11,17 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg index bed7c821e0..fe130b1ca8 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg @@ -11,20 +11,18 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg index 646f54669c..ec0414b5fb 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg @@ -12,19 +12,17 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 +speed_roofing = =speed_print speed_infill = 60 -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg index dc5cc397a6..7484afdbad 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -11,20 +11,19 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg index a03fcc741c..41a9e2da78 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg @@ -11,21 +11,19 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg index 6157ed727c..4542105482 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg @@ -11,21 +11,20 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature = 200 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg index 289d0092f9..a225ea02a6 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg @@ -12,21 +12,19 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 200 -material_print_temperature_layer_0 = 200 -material_initial_print_temperature = 200 -material_final_print_temperature = 200 -speed_wall = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = 30 -speed_support = 30 +speed_roofing = =speed_print +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg new file mode 100644 index 0000000000..e6ca74eb86 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +material = xyzprinting_tough_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg new file mode 100644 index 0000000000..6d9b5e18ac --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +material = xyzprinting_tough_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg new file mode 100644 index 0000000000..71736416e3 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +material = xyzprinting_tough_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg new file mode 100644 index 0000000000..cc22b6c14c --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg @@ -0,0 +1,27 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +material = xyzprinting_tough_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +material_print_temperature = 210 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_wall = 30 +speed_print = 30 +speed_topbottom = 10 +speed_roofing = 30 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg index a42b65c43b..f33ceccce1 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg index c7a8fd489f..0f9469f4fd 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg index 7455132c5a..76bf909853 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 +retraction_speed = 50 +skirt_brim_speed = =speed_print diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg index 3457e46c38..ea7a268293 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg @@ -11,18 +11,16 @@ material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = = aterial_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -material_initial_print_temperature = 210 -material_final_print_temperature = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg index 23f99a36ae..c3c7e05480 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 +speed_infill =speed_print speed_support = 30 speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg index 54f2d7b965..4243ce5809 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg index a13df6eb01..93b329a4dc 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg index f26ab65726..e8afa9915e 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg @@ -11,14 +11,14 @@ material = xyzprinting_tough_pla variant = 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg index 8cf13553eb..783810603e 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg @@ -11,15 +11,15 @@ material = generic_tpu variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 -speed_support = 15 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg index f334cca519..eb7d4b7716 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg @@ -11,15 +11,15 @@ material = generic_tpu variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 -speed_support = 15 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg index b7b5a2d81c..54a669bc30 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg @@ -11,15 +11,15 @@ material = generic_tpu variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 -speed_support = 15 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg index 34bb1bc3ed..b965a0bb82 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg @@ -11,14 +11,14 @@ material = generic_tpu variant = Copper 0.4mm Nozzle [values] -cool_fan_speed = 100 -cool_fan_speed_0 = 0 material_bed_temperature = 45 -material_bed_temperature_layer_0 = 45 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 15 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature speed_print = 15 +speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 4.0 diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg index 1ca3778241..e06dead984 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg @@ -11,17 +11,13 @@ weight = 0 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.10 layer_height_0 = 0.20 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg index 527b10d2c4..d61eec0a11 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg @@ -11,17 +11,13 @@ weight = -1 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.2 layer_height_0 = 0.35 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg index d4489125c8..18bbfb6ac5 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg @@ -11,17 +11,13 @@ weight = -2 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.30 layer_height_0 = 0.40 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg index 5df474233b..5cddd082d8 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg @@ -11,17 +11,13 @@ weight = -3 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.4 layer_height_0 = 0.4 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg index 0ca03b0b7d..1053451f1c 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg @@ -11,17 +11,13 @@ weight = 0 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.10 layer_height_0 = 0.20 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg index ce83667725..db4ce22b86 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg @@ -11,17 +11,13 @@ weight = -1 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.2 layer_height_0 = 0.35 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg index beac51465b..1aa1a380c5 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg @@ -11,17 +11,13 @@ weight = -2 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.30 layer_height_0 = 0.40 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg index 0849adfd89..46888b94ed 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg @@ -11,17 +11,13 @@ weight = -3 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.4 layer_height_0 = 0.4 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg index b0f4d59c13..e556caf2ef 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg @@ -11,17 +11,13 @@ weight = 0 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.10 layer_height_0 = 0.20 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg index 6bf1bdc998..e322fa59e5 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg @@ -11,17 +11,13 @@ weight = -1 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.2 layer_height_0 = 0.35 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg index 5688536431..66b22b721a 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg @@ -11,17 +11,13 @@ weight = -2 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.30 layer_height_0 = 0.40 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg index 22ed077db5..fa0a7072e2 100644 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg @@ -11,17 +11,13 @@ weight = -3 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.4 layer_height_0 = 0.4 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 30 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 30 -speed_support = 30 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg index 4564c5da25..6c3d4ccd17 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg @@ -11,17 +11,13 @@ weight = 0 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.10 layer_height_0 = 0.20 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg index 93382ffcee..f782ad2a68 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg @@ -11,17 +11,13 @@ weight = -1 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.2 layer_height_0 = 0.3 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg index 3721cf5823..2628afc5db 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg @@ -11,17 +11,13 @@ weight = -2 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.30 layer_height_0 = 0.40 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg index aa68b25670..256b8fdd62 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg @@ -11,17 +11,13 @@ weight = -3 global_quality = True [values] -adhesion_type = brim -brim_width = 10.0 -cool_fan_speed = 100 -cool_fan_speed_0 = 0 layer_height = 0.4 layer_height_0 = 0.4 material_bed_temperature = 40 material_diameter = 1.75 material_print_temperature = 210 -material_print_temperature_layer_0 = 210 -speed_infill = 24 +material_print_temperature_layer_0 = =material_print_temperature speed_print = 24 -speed_support = 24 +speed_infill = =speed_print +speed_support = =speed_print speed_travel = 70 From 48b82a2d1fcde14874254f62905f56ff08110344 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Wed, 29 Sep 2021 16:52:20 +0800 Subject: [PATCH 005/135] move temperature setting in material move temperature setting in material --- .../xyzprinting_da_vinci_1p0_pro.def.json | 60 ++++++++++++++++++ .../xyzprinting_da_vinci_jr_1p0a_pro.def.json | 61 +++++++++++++++++++ ...yzprinting_da_vinci_jr_pro_xeplus.def.json | 7 ++- ...xyzprinting_da_vinci_jr_pro_xplus.def.json | 9 +-- .../xyzprinting_da_vinci_jr_w_pro.def.json | 60 ++++++++++++++++++ .../xyzprinting_da_vinci_super.def.json | 9 +-- ...nting_da_vinci_1p0_pro_extruder_0.def.json | 15 +++++ ...g_da_vinci_jr_1p0a_pro_extruder_0.def.json | 15 +++++ ...da_vinci_jr_pro_xeplus_extruder_0.def.json | 15 +++++ ...printing_da_vinci_jr_w_pro_extruder_0.json | 15 +++++ ...g_da_vinci_jr_wifi_pro_extruder_0.def.json | 15 +++++ ...i_1p0_pro_copper_0.40_abs_coarse.inst.cfg} | 20 ++++-- ...ci_1p0_pro_copper_0.40_abs_draft.inst.cfg} | 22 +++++-- ...nci_1p0_pro_copper_0.40_abs_fine.inst.cfg} | 19 ++++-- ...i_1p0_pro_copper_0.40_abs_normal.inst.cfg} | 20 ++++-- ..._pro_xplus_copper_0.40_abs_coarse.inst.cfg | 15 +++-- ...r_pro_xplus_copper_0.40_abs_draft.inst.cfg | 11 ++-- ...jr_pro_xplus_copper_0.40_abs_fine.inst.cfg | 11 ++-- ..._pro_xplus_copper_0.40_abs_normal.inst.cfg | 13 ++-- ...inci_super_copper_0.40_abs_coarse.inst.cfg | 12 +++- ...vinci_super_copper_0.40_abs_draft.inst.cfg | 12 +++- ..._vinci_super_copper_0.40_abs_fine.inst.cfg | 12 +++- ...inci_super_copper_0.40_abs_normal.inst.cfg | 13 +++- ..._pro_copper_0.40_antibact_coarse.inst.cfg} | 20 ++++-- ...0_pro_copper_0.40_antibact_draft.inst.cfg} | 20 ++++-- ...1p0_pro_copper_0.40_antibact_fine.inst.cfg | 33 ++++++++++ ...0_pro_copper_0.40_antibact_normal.inst.cfg | 33 ++++++++++ ...a_pro_copper_0.40_antibact_coarse.inst.cfg | 31 ++++++++++ ...0a_pro_copper_0.40_antibact_draft.inst.cfg | 31 ++++++++++ ...0a_pro_copper_0.40_antibact_fine.inst.cfg} | 18 ++++-- ..._pro_copper_0.40_antibact_normal.inst.cfg} | 20 ++++-- ...eplus_copper_0.40_antibact_coarse.inst.cfg | 8 ++- ...xeplus_copper_0.40_antibact_draft.inst.cfg | 8 ++- ..._xeplus_copper_0.40_antibact_fine.inst.cfg | 8 ++- ...eplus_copper_0.40_antibact_normal.inst.cfg | 8 ++- ...xplus_copper_0.40_antibact_coarse.inst.cfg | 11 ++-- ..._xplus_copper_0.40_antibact_draft.inst.cfg | 13 ++-- ...o_xplus_copper_0.40_antibact_fine.inst.cfg | 15 +++-- ...xplus_copper_0.40_antibact_normal.inst.cfg | 15 +++-- ..._jr_w_pro_ss_0.40_antibact_coarse.inst.cfg | 31 ++++++++++ ...i_jr_w_pro_ss_0.40_antibact_draft.inst.cfg | 14 +++-- ...ci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg | 16 +++-- ..._jr_w_pro_ss_0.40_antibact_normal.inst.cfg | 14 +++-- ...super_copper_0.40_antibact_coarse.inst.cfg | 14 +++-- ..._super_copper_0.40_antibact_draft.inst.cfg | 14 +++-- ...i_super_copper_0.40_antibact_fine.inst.cfg | 14 +++-- ...super_copper_0.40_antibact_normal.inst.cfg | 14 +++-- ..._pro_hs_0.40_carbon_fiber_coarse.inst.cfg} | 16 +++-- ...a_pro_hs_0.40_carbon_fiber_draft.inst.cfg} | 16 +++-- ...0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg} | 16 +++-- ..._pro_hs_0.40_carbon_fiber_normal.inst.cfg} | 16 +++-- ...eplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 16 +++-- ...xeplus_hs_0.40_carbon_fiber_draft.inst.cfg | 16 +++-- ..._xeplus_hs_0.40_carbon_fiber_fine.inst.cfg | 16 +++-- ...eplus_hs_0.40_carbon_fiber_normal.inst.cfg | 18 +++--- ...xplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 9 ++- ..._xplus_hs_0.40_carbon_fiber_draft.inst.cfg | 13 ++-- ...o_xplus_hs_0.40_carbon_fiber_fine.inst.cfg | 13 ++-- ...xplus_hs_0.40_carbon_fiber_normal.inst.cfg | 13 ++-- ...w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg | 14 +++-- ..._w_pro_hs_0.40_carbon_fiber_draft.inst.cfg | 14 +++-- ...r_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg | 14 +++-- ...w_pro_hs_0.40_carbon_fiber_normal.inst.cfg | 14 +++-- ...super_hs_0.40_carbon_fiber_coarse.inst.cfg | 14 +++-- ..._super_hs_0.40_carbon_fiber_draft.inst.cfg | 14 +++-- ...i_super_hs_0.40_carbon_fiber_fine.inst.cfg | 14 +++-- ...super_hs_0.40_carbon_fiber_normal.inst.cfg | 14 +++-- ...opper_0.40_colorinkjet_pla_coarse.inst.cfg | 31 ++++++++++ ...copper_0.40_colorinkjet_pla_draft.inst.cfg | 31 ++++++++++ ..._copper_0.40_colorinkjet_pla_fine.inst.cfg | 31 ++++++++++ ...opper_0.40_colorinkjet_pla_normal.inst.cfg | 31 ++++++++++ ...ro_ss_0.40_colorinkjet_pla_coarse.inst.cfg | 31 ++++++++++ ...pro_ss_0.40_colorinkjet_pla_draft.inst.cfg | 31 ++++++++++ ..._pro_ss_0.40_colorinkjet_pla_fine.inst.cfg | 31 ++++++++++ ...ro_ss_0.40_colorinkjet_pla_normal.inst.cfg | 31 ++++++++++ ...pper_0.40_colorinkjet_pla_coarse.inst.cfg} | 17 ++++-- ...opper_0.40_colorinkjet_pla_draft.inst.cfg} | 18 ++++-- ...copper_0.40_colorinkjet_pla_fine.inst.cfg} | 18 ++++-- ...pper_0.40_colorinkjet_pla_normal.inst.cfg} | 18 ++++-- ...super_copper_0.40_flexible_coarse.inst.cfg | 9 ++- ..._super_copper_0.40_flexible_draft.inst.cfg | 9 ++- ...i_super_copper_0.40_flexible_fine.inst.cfg | 9 ++- ...super_copper_0.40_flexible_normal.inst.cfg | 9 ++- ...1p0a_pro_hs_0.40_metallic_coarse.inst.cfg} | 16 +++-- ..._1p0a_pro_hs_0.40_metallic_draft.inst.cfg} | 16 +++-- ...r_1p0a_pro_hs_0.40_metallic_fine.inst.cfg} | 16 +++-- ...1p0a_pro_hs_0.40_metallic_normal.inst.cfg} | 16 +++-- ...ro_xeplus_hs_0.40_metallic_coarse.inst.cfg | 10 ++- ...pro_xeplus_hs_0.40_metallic_draft.inst.cfg | 12 ++-- ..._pro_xeplus_hs_0.40_metallic_fine.inst.cfg | 10 ++- ...ro_xeplus_hs_0.40_metallic_normal.inst.cfg | 10 ++- ...pro_xplus_hs_0.40_metallic_coarse.inst.cfg | 11 ++-- ..._pro_xplus_hs_0.40_metallic_draft.inst.cfg | 11 ++-- ...r_pro_xplus_hs_0.40_metallic_fine.inst.cfg | 9 ++- ...pro_xplus_hs_0.40_metallic_normal.inst.cfg | 9 ++- ..._jr_w_pro_hs_0.40_metallic_coarse.inst.cfg | 14 +++-- ...i_jr_w_pro_hs_0.40_metallic_draft.inst.cfg | 14 +++-- ...ci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg | 14 +++-- ..._jr_w_pro_hs_0.40_metallic_normal.inst.cfg | 14 +++-- ...nci_super_hs_0.40_metallic_coarse.inst.cfg | 12 +++- ...inci_super_hs_0.40_metallic_draft.inst.cfg | 12 +++- ...vinci_super_hs_0.40_metallic_fine.inst.cfg | 12 +++- ...nci_super_hs_0.40_metallic_normal.inst.cfg | 12 +++- ...ci_super_copper_0.40_nylon_coarse.inst.cfg | 11 ++-- ...nci_super_copper_0.40_nylon_draft.inst.cfg | 11 ++-- ...inci_super_copper_0.40_nylon_fine.inst.cfg | 11 ++-- ...ci_super_copper_0.40_nylon_normal.inst.cfg | 11 ++-- ...zprinting_0.40_copper_petg_coarse.inst.cfg | 23 ------- ...yzprinting_0.40_copper_petg_draft.inst.cfg | 23 ------- ...xyzprinting_0.40_copper_petg_fine.inst.cfg | 23 ------- ...zprinting_0.40_copper_petg_normal.inst.cfg | 23 ------- ..._1p0_pro_copper_0.40_petg_coarse.inst.cfg} | 19 ++++-- ...i_1p0_pro_copper_0.40_petg_draft.inst.cfg} | 19 ++++-- ...ci_1p0_pro_copper_0.40_petg_fine.inst.cfg} | 19 ++++-- ..._1p0_pro_copper_0.40_petg_normal.inst.cfg} | 19 ++++-- ...1p0a_pro_copper_0.40_petg_coarse.inst.cfg} | 21 ++++--- ..._1p0a_pro_copper_0.40_petg_draft.inst.cfg} | 19 ++++-- ...r_1p0a_pro_copper_0.40_petg_fine.inst.cfg} | 22 ++++--- ...1p0a_pro_copper_0.40_petg_normal.inst.cfg} | 20 ++++-- ...ro_xeplus_copper_0.40_petg_coarse.inst.cfg | 12 ++-- ...pro_xeplus_copper_0.40_petg_draft.inst.cfg | 12 ++-- ..._pro_xeplus_copper_0.40_petg_fine.inst.cfg | 12 ++-- ...ro_xeplus_copper_0.40_petg_normal.inst.cfg | 12 ++-- ...pro_xplus_copper_0.40_petg_coarse.inst.cfg | 13 ++-- ..._pro_xplus_copper_0.40_petg_draft.inst.cfg | 13 ++-- ...r_pro_xplus_copper_0.40_petg_fine.inst.cfg | 13 ++-- ...pro_xplus_copper_0.40_petg_normal.inst.cfg | 13 ++-- ...inci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg | 16 +++-- ...vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg | 16 +++-- ..._vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg | 16 +++-- ...inci_jr_w_pro_ss_0.40_petg_normal.inst.cfg | 16 +++-- ...nci_super_copper_0.40_petg_coarse.inst.cfg | 13 ++-- ...inci_super_copper_0.40_petg_draft.inst.cfg | 13 ++-- ...vinci_super_copper_0.40_petg_fine.inst.cfg | 13 ++-- ...nci_super_copper_0.40_petg_normal.inst.cfg | 13 ++-- .../pla/xyzprinting_0.40_pla_coarse.inst.cfg | 23 ------- .../pla/xyzprinting_0.40_pla_draft.inst.cfg | 23 ------- .../pla/xyzprinting_0.40_pla_fine.inst.cfg | 23 ------- .../pla/xyzprinting_0.40_pla_normal.inst.cfg | 23 ------- ...ci_1p0_pro_copper_0.40_pla_coarse.inst.cfg | 33 ++++++++++ ...nci_1p0_pro_copper_0.40_pla_draft.inst.cfg | 33 ++++++++++ ...inci_1p0_pro_copper_0.40_pla_fine.inst.cfg | 33 ++++++++++ ...ci_1p0_pro_copper_0.40_pla_normal.inst.cfg | 33 ++++++++++ ...r_1p0a_pro_copper_0.40_pla_coarse.inst.cfg | 31 ++++++++++ ...jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg | 31 ++++++++++ ..._jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg | 31 ++++++++++ ...r_1p0a_pro_copper_0.40_pla_normal.inst.cfg | 31 ++++++++++ ...pro_xeplus_copper_0.40_pla_coarse.inst.cfg | 12 ++-- ..._pro_xeplus_copper_0.40_pla_draft.inst.cfg | 12 ++-- ...r_pro_xeplus_copper_0.40_pla_fine.inst.cfg | 10 ++- ...pro_xeplus_copper_0.40_pla_normal.inst.cfg | 12 ++-- ..._pro_xplus_copper_0.40_pla_coarse.inst.cfg | 17 +++--- ...r_pro_xplus_copper_0.40_pla_draft.inst.cfg | 17 +++--- ...jr_pro_xplus_copper_0.40_pla_fine.inst.cfg | 15 +++-- ..._pro_xplus_copper_0.40_pla_normal.inst.cfg | 17 +++--- ...vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg | 18 +++--- ..._vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg | 18 +++--- ...a_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg | 18 +++--- ...vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg | 18 +++--- ...inci_super_copper_0.40_pla_coarse.inst.cfg | 15 +++-- ...vinci_super_copper_0.40_pla_draft.inst.cfg | 13 ++-- ..._vinci_super_copper_0.40_pla_fine.inst.cfg | 11 +++- ...inci_super_copper_0.40_pla_normal.inst.cfg | 13 ++-- ..._pro_copper_0.40_tough_pla_coarse.inst.cfg | 33 ++++++++++ ...0_pro_copper_0.40_tough_pla_draft.inst.cfg | 33 ++++++++++ ...p0_pro_copper_0.40_tough_pla_fine.inst.cfg | 33 ++++++++++ ..._pro_copper_0.40_tough_pla_normal.inst.cfg | 33 ++++++++++ ...pro_copper_0.40_tough_pla_coarse.inst.cfg} | 20 ++++-- ..._pro_copper_0.40_tough_pla_draft.inst.cfg} | 20 ++++-- ...a_pro_copper_0.40_tough_pla_fine.inst.cfg} | 20 ++++-- ...pro_copper_0.40_tough_pla_normal.inst.cfg} | 20 ++++-- ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 8 ++- ...eplus_copper_0.40_tough_pla_draft.inst.cfg | 10 ++- ...xeplus_copper_0.40_tough_pla_fine.inst.cfg | 9 ++- ...plus_copper_0.40_tough_pla_normal.inst.cfg | 11 ++-- ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 13 ++-- ...xplus_copper_0.40_tough_pla_draft.inst.cfg | 15 +++-- ..._xplus_copper_0.40_tough_pla_fine.inst.cfg | 14 +++-- ...plus_copper_0.40_tough_pla_normal.inst.cfg | 14 +++-- ...jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg | 18 +++--- ..._jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg | 18 +++--- ...i_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg | 18 +++--- ...jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg | 18 +++--- ...uper_copper_0.40_tough_pla_coarse.inst.cfg | 11 +++- ...super_copper_0.40_tough_pla_draft.inst.cfg | 11 +++- ..._super_copper_0.40_tough_pla_fine.inst.cfg | 9 ++- ...uper_copper_0.40_tough_pla_normal.inst.cfg | 13 ++-- ...yzprinting_0.40_copper_tpu_coarse.inst.cfg | 24 -------- ...xyzprinting_0.40_copper_tpu_draft.inst.cfg | 24 -------- .../xyzprinting_0.40_copper_tpu_fine.inst.cfg | 24 -------- ...inting_0.40_copper_tpu_pla_normal.inst.cfg | 24 -------- ...inci_super_copper_0.40_tpu_coarse.inst.cfg | 14 +++-- ...vinci_super_copper_0.40_tpu_draft.inst.cfg | 14 +++-- ..._vinci_super_copper_0.40_tpu_fine.inst.cfg | 14 +++-- ...inci_super_copper_0.40_tpu_normal.inst.cfg | 12 ++-- ...ci_jr_pro_xeplus_global_0.10_fine.inst.cfg | 23 ------- ..._jr_pro_xeplus_global_0.20_normal.inst.cfg | 23 ------- ...i_jr_pro_xeplus_global_0.30_draft.inst.cfg | 23 ------- ..._jr_pro_xeplus_global_0.40_coarse.inst.cfg | 23 ------- ...nci_jr_pro_xplus_global_0.10_fine.inst.cfg | 23 ------- ...i_jr_pro_xplus_global_0.20_normal.inst.cfg | 23 ------- ...ci_jr_pro_xplus_global_0.30_draft.inst.cfg | 23 ------- ...i_jr_pro_xplus_global_0.40_coarse.inst.cfg | 23 ------- ...g_da_vinci_super_global_0.10_fine.inst.cfg | 23 ------- ...da_vinci_super_global_0.20_normal.inst.cfg | 23 ------- ..._da_vinci_super_global_0.30_draft.inst.cfg | 23 ------- ...da_vinci_super_global_0.40_coarse.inst.cfg | 23 ------- .../xyzprinting_global_0.10_fine.inst.cfg | 12 +--- .../xyzprinting_global_0.20_normal.inst.cfg | 8 +-- .../xyzprinting_global_0.30_draft.inst.cfg | 12 +--- .../xyzprinting_global_0.40_coarse.inst.cfg | 8 +-- 211 files changed, 2490 insertions(+), 1271 deletions(-) create mode 100644 resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json create mode 100644 resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json create mode 100644 resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json create mode 100644 resources/extruders/xyzprinting_da_vinci_1p0_pro_extruder_0.def.json create mode 100644 resources/extruders/xyzprinting_da_vinci_jr_1p0a_pro_extruder_0.def.json create mode 100644 resources/extruders/xyzprinting_da_vinci_jr_pro_xeplus_extruder_0.def.json create mode 100644 resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.json create mode 100644 resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json rename resources/quality/xyzprinting/{pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg => abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg} (55%) rename resources/quality/xyzprinting/abs/{xyzprinting_0.40_copper_abs_draft.inst.cfg => xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg} (52%) rename resources/quality/xyzprinting/{pla/xyzprinting_0.40_copper_pla_fine.inst.cfg => abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg} (57%) rename resources/quality/xyzprinting/abs/{xyzprinting_0.40_copper_abs_normal.inst.cfg => xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg} (55%) rename resources/quality/xyzprinting/anti_bact/{xyzprinting_0.40_antibact_coarse.inst.cfg => xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg} (55%) rename resources/quality/xyzprinting/anti_bact/{xyzprinting_0.40_antibact_draft.inst.cfg => xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg} (55%) create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg rename resources/quality/xyzprinting/anti_bact/{xyzprinting_0.40_antibact_fine.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg} (56%) rename resources/quality/xyzprinting/anti_bact/{xyzprinting_0.40_antibact_normal.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg} (53%) create mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg rename resources/quality/xyzprinting/carbon_fiber/{xyzprinting_0.40_hs_carbon_coarse.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg} (61%) rename resources/quality/xyzprinting/carbon_fiber/{xyzprinting_0.40_hs_carbon_draft.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg} (61%) rename resources/quality/xyzprinting/carbon_fiber/{xyzprinting_0.40_hs_carbon_fine.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg} (61%) rename resources/quality/xyzprinting/carbon_fiber/{xyzprinting_0.40_hs_carbon_normal.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg} (61%) create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg rename resources/quality/xyzprinting/{abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg => color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg} (60%) rename resources/quality/xyzprinting/{nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg => color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg} (60%) rename resources/quality/xyzprinting/{nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg => color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg} (60%) rename resources/quality/xyzprinting/{nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg => color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg} (60%) rename resources/quality/xyzprinting/metallic_pla/{xyzprinting_0.40_hs_metallic_coarse.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg} (61%) rename resources/quality/xyzprinting/metallic_pla/{xyzprinting_0.40_hs_metallic_draft.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg} (61%) rename resources/quality/xyzprinting/metallic_pla/{xyzprinting_0.40_hs_metallic_fine.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg} (61%) rename resources/quality/xyzprinting/metallic_pla/{xyzprinting_0.40_hs_metallic_normal.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg} (61%) delete mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg delete mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg delete mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg delete mode 100644 resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg rename resources/quality/xyzprinting/{flexible/xyzprinting_0.40_flexible_coarse.inst.cfg => petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg} (57%) rename resources/quality/xyzprinting/{flexible/xyzprinting_0.40_flexible_draft.inst.cfg => petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg} (57%) rename resources/quality/xyzprinting/{flexible/xyzprinting_0.40_flexible_fine.inst.cfg => petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg} (57%) rename resources/quality/xyzprinting/{flexible/xyzprinting_0.40_flexible_normal.inst.cfg => petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg} (57%) rename resources/quality/xyzprinting/{nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg => petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg} (56%) rename resources/quality/xyzprinting/{pla/xyzprinting_0.40_copper_pla_draft.inst.cfg => petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg} (55%) rename resources/quality/xyzprinting/{abs/xyzprinting_0.40_copper_abs_fine.inst.cfg => petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg} (51%) rename resources/quality/xyzprinting/{pla/xyzprinting_0.40_copper_pla_normal.inst.cfg => petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg} (55%) delete mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg delete mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg delete mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg delete mode 100644 resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg rename resources/quality/xyzprinting/tough_pla/{xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg} (55%) rename resources/quality/xyzprinting/tough_pla/{xyzprinting_0.40_copper_tough_pla_draft.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg} (55%) rename resources/quality/xyzprinting/tough_pla/{xyzprinting_0.40_copper_tough_pla_fine.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg} (55%) rename resources/quality/xyzprinting/tough_pla/{xyzprinting_0.40_copper_tough_pla_normal.inst.cfg => xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg} (55%) delete mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg delete mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg delete mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg delete mode 100644 resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg delete mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg diff --git a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json new file mode 100644 index 0000000000..f09b5bc5c0 --- /dev/null +++ b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json @@ -0,0 +1,60 @@ +{ + "version": 2, + "name": "XYZprinting da Vinci 1.0 Pro", + "inherits": "xyzprinting_base", + "metadata": { + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", + "visible": true, + "file_formats": "text/x-gcode", + "has_machine_quality": true, + "has_materials": true, + "has_variants": true, + "supports_usb_connection": true, + "preferred_quality_type": "normal", + "quality_definition": "xyzprinting_da_vinci_1p0_pro", + "preferred_variant_name": "Copper 0.4mm Nozzle", + "variants_name": "Nozzle Type", + "machine_extruder_trains": { + "0": "xyzprinting_da_vinci_1p0_pro_extruder_0" + } + }, + + "overrides": { + "machine_name": { "default_value": "XYZprinting da Vinci 1.0 Pro" }, + "machine_shape": { "default_value": "rectangular"}, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 200.00 }, + "machine_depth": { "default_value": 200.00 }, + "machine_height": { "default_value":200.00 }, + "machine_center_is_zero": { "default_value": false }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -20, -10 ], + [ -20, 10 ], + [ 10, 10 ], + [ 10, -10 ] + ] + }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.30 }, + "infill_sparse_density": { "default_value": 10 }, + "material_flow_layer_0": {"value": 120}, + "retraction_amount": { "default_value": 5.0 }, + "retraction_speed": { "default_value": 40 }, + "speed_print": { "default_value": 30 }, + "speed_travel": { "value": 45 }, + "cool_fan_enabled": { "default_value": true }, + "cool_fan_speed_0": { "value": 100 }, + "adhesion_type": { "default_value" : "skirt" }, + "brim_line_count": { "value" : 5 }, + "skirt_line_count": { "default_value" : 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off temperature\nM105 S0; \nG28 X0 ; home X axis\nM84 ; disable motors\n" + } + } +} diff --git a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json new file mode 100644 index 0000000000..74fbcf52c4 --- /dev/null +++ b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json @@ -0,0 +1,61 @@ +{ + "version": 2, + "name": "XYZprinting da Vinci Jr. 1.0A Pro", + "inherits": "xyzprinting_base", + "metadata": { + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", + "visible": true, + "file_formats": "text/x-gcode", + "has_machine_quality": true, + "has_materials": true, + "has_variants": true, + "exclude_materials": ["generic_hips", "generic_petg", "generic_bam", "ultimaker_bam", "generic_pva", "ultimaker_pva", "generic_tough_pla", "ultimaker_tough_pla_black", "ultimaker_tough_pla_green", "ultimaker_tough_pla_red", "ultimaker_tough_pla_white", "generic_cffcpe", "generic_cffpa", "generic_gffcpe", "generic_gffpa", "structur3d_dap100silicone", "ultimaker_petg_blue", "ultimaker_petg_grey", "ultimaker_petg_black", "ultimaker_petg_green", "ultimaker_petg_white", "ultimaker_petg_orange", "ultimaker_petg_silver", "ultimaker_petg_yellow", "ultimaker_petg_transparent", "ultimaker_petg_red_translucent", "ultimaker_petg_blue_translucent", "ultimaker_petg_green_translucent", "ultimaker_petg_yellow_fluorescent", "ultimaker_petg_red" ], + "supports_usb_connection": true, + "preferred_quality_type": "normal", + "quality_definition": "xyzprinting_da_vinci_jr_1p0a_pro", + "preferred_variant_name": "Copper 0.4mm Nozzle", + "variants_name": "Nozzle Type", + "machine_extruder_trains": { + "0": "xyzprinting_da_vinci_jr_1p0a_pro_extruder_0" + } + }, + + "overrides": { + "machine_name": { "default_value": "XYZprinting da Vinci Jr. 1.0A Pro" }, + "machine_shape": { "default_value": "rectangular"}, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 175.00 }, + "machine_depth": { "default_value": 175.00 }, + "machine_height": { "default_value":175.00 }, + "machine_center_is_zero": { "default_value": false }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -20, -10 ], + [ -20, 10 ], + [ 10, 10 ], + [ 10, -10 ] + ] + }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.20 }, + "infill_sparse_density": { "default_value": 10 }, + "material_flow_layer_0": {"value": 120}, + "retraction_amount": { "default_value": 5.0 }, + "retraction_speed": { "default_value": 30 }, + "speed_print": { "default_value": 30 }, + "speed_travel": { "value": 120 }, + "cool_fan_enabled": { "default_value": true }, + "cool_fan_speed_0": { "value": 100 }, + "adhesion_type": { "default_value" : "skirt" }, + "brim_line_count": { "value" : 5 }, + "skirt_line_count": { "default_value" : 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off temperature\nM105 S0; \nG28 X0 ; home X axis\nM84 ; disable motors\n" + } + } +} diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json index 3cc95f22b0..91d03ddf96 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json @@ -3,8 +3,13 @@ "name": "XYZprinting da Vinci Jr. Pro Xe+", "inherits": "xyzprinting_base", "metadata": { + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", "visible": true, "file_formats": "text/x-gcode", + "has_machine_quality": true, + "has_materials": true, + "has_variants": true, "supports_usb_connection": true, "preferred_quality_type": "normal", "quality_definition": "xyzprinting_da_vinci_jr_pro_xeplus", @@ -34,8 +39,6 @@ "layer_height": { "default_value": 0.2 }, "layer_height_0": { "default_value": 0.30 }, "infill_sparse_density": { "default_value": 10 }, - "default_material_print_temperature": { "default_value": 210 }, - "material_print_temperature": { "value": 210 }, "material_flow_layer_0": {"value": 120}, "retraction_amount": { "default_value": 5.0 }, "retraction_speed": { "default_value": 15 }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json index 9029269d7e..30c367923d 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json @@ -3,8 +3,13 @@ "name": "XYZprinting da Vinci Jr. Pro X+", "inherits": "xyzprinting_base", "metadata": { + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", "visible": true, "file_formats": "text/x-gcode", + "has_machine_quality": true, + "has_materials": true, + "has_variants": true, "supports_usb_connection": true, "preferred_quality_type": "normal", "quality_definition": "xyzprinting_da_vinci_jr_pro_xplus", @@ -34,10 +39,6 @@ "layer_height": { "default_value": 0.2 }, "layer_height_0": { "default_value": 0.30 }, "infill_sparse_density": { "default_value": 10 }, - "default_material_print_temperature": { "default_value": 210 }, - "material_print_temperature": { "value": 210 }, - "material_bed_temperature": { "value": 45 }, - "material_bed_temperature_layer_0": { "value": 45 }, "material_flow_layer_0": {"value": 120}, "retraction_amount": { "default_value": 5.0 }, "retraction_speed": { "default_value": 15 }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json new file mode 100644 index 0000000000..01b797315f --- /dev/null +++ b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json @@ -0,0 +1,60 @@ +{ + "version": 2, + "name": "XYZprinting da Vinci Jr. WiFi Pro", + "inherits": "xyzprinting_base", + "metadata": { + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", + "visible": true, + "file_formats": "text/x-gcode", + "has_machine_quality": true, + "has_materials": true, + "has_variants": true, + "supports_usb_connection": true, + "preferred_quality_type": "normal", + "quality_definition": "xyzprinting_da_vinci_jr_w_pro", + "preferred_variant_name": "Hardened Steel 0.4mm Nozzle", + "variants_name": "Nozzle Type", + "machine_extruder_trains": { + "0": "xyzprinting_da_vinci_jr_wifi_pro_extruder_0" + } + }, + + "overrides": { + "machine_name": { "default_value": "XYZprinting da Vinci Jr. WiFi Pro" }, + "machine_shape": { "default_value": "rectangular"}, + "machine_heated_bed": { "default_value": true }, + "machine_width": { "default_value": 150.00 }, + "machine_depth": { "default_value": 150.00 }, + "machine_height": { "default_value":150.00 }, + "machine_center_is_zero": { "default_value": false }, + "machine_head_with_fans_polygon": { + "default_value": [ + [ -20, -10 ], + [ -20, 10 ], + [ 10, 10 ], + [ 10, -10 ] + ] + }, + "layer_height": { "default_value": 0.2 }, + "layer_height_0": { "default_value": 0.20 }, + "infill_sparse_density": { "default_value": 10 }, + "material_flow_layer_0": {"value": 120}, + "retraction_amount": { "default_value": 5.0 }, + "retraction_speed": { "default_value": 30 }, + "speed_print": { "default_value": 30 }, + "speed_travel": { "value": 120 }, + "cool_fan_enabled": { "default_value": true }, + "cool_fan_speed_0": { "value": 100 }, + "adhesion_type": { "default_value" : "skirt" }, + "brim_line_count": { "value" : 5 }, + "skirt_line_count": { "default_value" : 5 }, + "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, + "machine_start_gcode": { + "default_value": "G28 ; home all axes\nG1 Z15 F5000 ; lift nozzle\nG92 E0\nG1 F200 E3\n" + }, + "machine_end_gcode": { + "default_value": "M104 S0 ; turn off temperature\nM105 S0; \nG28 X0 ; home X axis\nM84 ; disable motors\n" + } + } +} diff --git a/resources/definitions/xyzprinting_da_vinci_super.def.json b/resources/definitions/xyzprinting_da_vinci_super.def.json index a9ee802099..29770c5d25 100644 --- a/resources/definitions/xyzprinting_da_vinci_super.def.json +++ b/resources/definitions/xyzprinting_da_vinci_super.def.json @@ -3,8 +3,13 @@ "name": "XYZprinting da Vinci Super", "inherits": "xyzprinting_base", "metadata": { + "author": "XYZprinting Software", + "manufacturer": "XYZprinting", "visible": true, "file_formats": "text/x-gcode", + "has_machine_quality": true, + "has_materials": true, + "has_variants": true, "supports_usb_connection": true, "preferred_quality_type": "normal", "quality_definition": "xyzprinting_da_vinci_super", @@ -34,10 +39,6 @@ "layer_height": { "default_value": 0.2 }, "layer_height_0": { "default_value": 0.35 }, "infill_sparse_density": { "default_value": 10 }, - "default_material_print_temperature": { "default_value": 210 }, - "material_print_temperature": { "value": 210 }, - "material_bed_temperature": { "value": 45 }, - "material_bed_temperature_layer_0": { "value": 45 }, "material_flow_layer_0": {"value": 120}, "retraction_amount": { "default_value": 5.5 }, "retraction_speed": { "default_value": 30 }, diff --git a/resources/extruders/xyzprinting_da_vinci_1p0_pro_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_1p0_pro_extruder_0.def.json new file mode 100644 index 0000000000..22010de7d7 --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_1p0_pro_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_1p0_pro", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/extruders/xyzprinting_da_vinci_jr_1p0a_pro_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_jr_1p0a_pro_extruder_0.def.json new file mode 100644 index 0000000000..4e9d0c8ad0 --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_jr_1p0a_pro_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_jr_1p0a_pro", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/extruders/xyzprinting_da_vinci_jr_pro_xeplus_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_jr_pro_xeplus_extruder_0.def.json new file mode 100644 index 0000000000..9ac465dda4 --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_jr_pro_xeplus_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_jr_pro_xeplus", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.json b/resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.json new file mode 100644 index 0000000000..6b1a23da45 --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_jr_w_pro", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json new file mode 100644 index 0000000000..ce653eeedd --- /dev/null +++ b/resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json @@ -0,0 +1,15 @@ +{ + "version": 2, + "name": "Extruder 1", + "inherits": "fdmextruder", + "metadata": { + "machine": "xyzprinting_da_vinci_jr_pro_xplus", + "position": "0" + }, + + "overrides": { + "extruder_nr": { "default_value": 0 }, + "machine_nozzle_size": { "default_value": 0.4 }, + "material_diameter": { "default_value": 1.75 } + } +} diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg rename to resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg index 134e89ceed..c6d06a5ab0 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg @@ -1,23 +1,33 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = coarse -material = generic_pla +weight = -3 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print -speed_travel = 120 +speed_travel = 45 +retraction_amount = 6.0 +retraction_speed = 40 +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg similarity index 52% rename from resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg rename to resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg index d5caa46fae..6b68d52b95 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg @@ -1,23 +1,33 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = draft -material = generic_abs +weight = -2 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 +speed_support = =speed_print +speed_travel = 45 +retraction_amount = 6.0 +retraction_speed = 40 +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg similarity index 57% rename from resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg rename to resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg index a1ae2ab98a..c73509c692 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg @@ -1,23 +1,32 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = fine -material = generic_pla +weight = 0 +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print -speed_travel = 120 +speed_travel = 45 +retraction_amount = 6.0 +retraction_speed = 40 +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg rename to resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg index 75263de48c..4cadf272e4 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg @@ -1,23 +1,33 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = normal -material = generic_abs +weight = -1 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print -speed_travel = 120 +speed_travel = 45 +retraction_amount = 6.0 +retraction_speed = 40 +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg index 3972f39948..f588fda838 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg @@ -7,24 +7,27 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse -material = generic_abs +weight = -3 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 -speed_topbottom = 10 -speed_roofing = 20 +speed_topbottom = 10 speed_infill = =speed_print speed_support = 30 speed_travel = 120 retraction_amount = 3.0 retraction_speed = 20 retraction_prime_speed = 15 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg index a1c150d361..4c0843ca80 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg @@ -7,20 +7,22 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft -material = generic_abs +weight = -2 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 speed_topbottom = 10 -speed_roofing = 20 speed_infill = =speed_print speed_support = 30 speed_travel = 120 @@ -28,3 +30,4 @@ retraction_amount = 3.0 retraction_speed = 20 retraction_prime_speed = 15 skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg index 51e10b7ff3..4b0b43c7b2 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg @@ -7,20 +7,22 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine -material = generic_abs +weight = 0 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 speed_topbottom = 10 -speed_roofing = 20 speed_infill = =speed_print speed_support = 30 speed_travel = 120 @@ -28,3 +30,4 @@ retraction_amount = 3.0 retraction_speed = 20 retraction_prime_speed = 15 skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg index 0e07a2e722..aa26387ae9 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg @@ -7,20 +7,22 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = normal -material = generic_abs +weight = -1 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_wall = 20 speed_print = 60 -speed_topbottom = 10 -speed_roofing = 20 +speed_topbottom = 10 speed_infill = =speed_print speed_support = 30 speed_travel = 120 @@ -28,3 +30,4 @@ retraction_amount = 3.0 retraction_speed = 20 retraction_prime_speed = 15 skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg index 08db4b93e7..2350b56987 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse -material = generic_abs +weight = -3 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 +retraction_prime_speed = =retraction_speed skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg index d7c3141c8b..a15cc0567a 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft -material = generic_abs +weight = -2 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 +retraction_prime_speed = =retraction_speed skirt_brim_speed = =speed_print +infill_sparse_density = 10 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg index cfe24d7564..041a698f47 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine -material = generic_abs +weight = 0 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 +retraction_prime_speed = =retraction_speed skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg index 7565eb57a3..1cb5eee208 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg @@ -7,20 +7,27 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal -material = generic_abs +weight = -1 +global_quality = True +material = xyzprinting_abs variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 40 +retraction_prime_speed = =retraction_speed skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg rename to resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg index 67d6cc5a3c..60090730d4 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg @@ -1,23 +1,33 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_antibact_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print -speed_travel = 120 +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg rename to resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg index 66f882dfab..01485be427 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg @@ -1,23 +1,33 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_antibact_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print -speed_travel = 120 +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg new file mode 100644 index 0000000000..3b60ef4933 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg new file mode 100644 index 0000000000..ce21a59b13 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Normla Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +retraction_prime_speed = =retraction_speed +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg new file mode 100644 index 0000000000..528b2ad188 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = =65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg new file mode 100644 index 0000000000..34229830cc --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True +material = xyzprinting_antibact_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = =65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg similarity index 56% rename from resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg rename to resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg index 5b291d2d8a..ef306c1e8d 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg @@ -1,23 +1,29 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = fine material = xyzprinting_antibact_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = =65 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg similarity index 53% rename from resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg rename to resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg index f75d2c5c83..e91c3ddd59 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_antibact_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = =65 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg index 9a8d7218e9..fac5c2f749 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg index 8a94e59909..02e45252d6 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg index 0625bd5faa..a499eb11fc 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg index 811218ecdf..c3c8a8917b 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg index 45cc7da185..82029083fa 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg index 42c0413144..a2572bdac1 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print -speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_topbottom = 10 +speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg index eb59ccf2ed..e6c4792403 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg index 2ee39e3604..e6347615df 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg new file mode 100644 index 0000000000..1a73428a65 --- /dev/null +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_antibact_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 60 +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg index 2d23116418..739f103f7b 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg index a4b31105f3..6b6d14d93f 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 -speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg index 612d5bd00a..cd138ca0ef 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg index 1e4a222c54..b496d7c77b 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = =speed_print \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg index 47cfbe76ca..5a48e8fb1b 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = =speed_print \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg index 1bce0ec0f6..9e21f784e5 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = =speed_print \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg index d0d0f2d39e..08444aee75 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 120 retraction_amount = 5.5 -retraction_speed = 80 -skirt_brim_speed = =speed_print \ No newline at end of file +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg rename to resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg index 706f9e2f47..8718c89489 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg rename to resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg index 26fd559987..0baf95ab25 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg rename to resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg index 9f3390d1c1..8341935f8d 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg rename to resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg index 6b4ca1caed..e0e3b9d379 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_0.40_hs_carbon_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 6.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg index 0c4c311948..f9fe0d4ad1 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = =40 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 -retraction_speed = 15 -skirt_brim_speed = 15 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg index b4dc5ceb1a..1644db228a 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = =40 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 -retraction_speed = 15 -skirt_brim_speed = 15 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg index 8b8313144d..6505206cbf 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = =40 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 -retraction_speed = 15 -skirt_brim_speed = 15 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg index 52fcd77c0c..e222496faf 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_wall = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = =40 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 -retraction_speed = 15 -skirt_brim_speed = 15 +retraction_amount = 8.0 +retraction_speed = 20 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg index f4aea921b2..1677d41e0f 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 matematerial_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 40 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg index c039a1602e..aa9abe090c 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 -material_print_temperature_layer_0 = =material_print_temperature +matematerial_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 40 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg index 0b3b9df873..2fd8277b01 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 -material_print_temperature_layer_0 = =material_print_temperature +matematerial_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 40 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg index 88828e68b5..ff2904e9a8 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 -material_print_temperature_layer_0 = =material_print_temperature +matematerial_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 40 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg index 6585f2af50..de01b9af4c 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 8.0 retraction_speed = 50 -skirt_brim_speed = 15 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg index b9804dcf70..99abf1a213 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 8.0 retraction_speed = 50 -skirt_brim_speed = 15 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg index 99e6738103..27fa1cd66b 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 8.0 retraction_speed = 50 -skirt_brim_speed = 15 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg index 606a5c70bd..6e1a6b496d 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 8.0 retraction_speed = 50 -skirt_brim_speed = 15 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg index 91b5b5ee7e..447e0d57c8 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 45 +speed_wall = =speed_print +speed_topbottom = 10 speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg index 0664a1b579..9e25aec746 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 45 +speed_wall = =speed_print +speed_topbottom = 10 speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg index 8d3cdbee72..639a670e17 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 45 +speed_wall = =speed_print +speed_topbottom = 10 speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg index c78c753cee..65b198a0fd 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 215 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 45 +speed_wall = =speed_print +speed_topbottom = 10 speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg new file mode 100644 index 0000000000..e95c114bb4 --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg new file mode 100644 index 0000000000..565494540a --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg new file mode 100644 index 0000000000..9a23479bc8 --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg new file mode 100644 index 0000000000..7f3affb79e --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg new file mode 100644 index 0000000000..5e2702b66a --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 60 +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg new file mode 100644 index 0000000000..039247ef36 --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 60 +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg new file mode 100644 index 0000000000..fdfdfb325b --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 60 +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg new file mode 100644 index 0000000000..af95a617f4 --- /dev/null +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True +material = xyzprinting_colorinkjet_pla +variant = Stainless Steel 0.4mm Nozzle + +[values] +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 60 +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 5.0 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg similarity index 60% rename from resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg rename to resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg index f6ab591b7b..0d5e10fb28 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg @@ -1,23 +1,32 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 17 type = quality quality_type = coarse -material = generic_abs +weight = -3 +global_quality = True +material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 5.5 +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg similarity index 60% rename from resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg rename to resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg index 9f8c8cb4f0..7a8afde951 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg @@ -1,24 +1,32 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 17 type = quality quality_type = draft -material = generic_nylon +weight = -2 +global_quality = True +material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 120 -brim_width = 5.0 \ No newline at end of file +retraction_amount = 5.5 +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg similarity index 60% rename from resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg rename to resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg index 089798bd66..eb0766de34 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg @@ -1,24 +1,32 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 17 type = quality quality_type = fine -material = generic_nylon +weight = 0 +global_quality = True +material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 -brim_width = 5.0 \ No newline at end of file +retraction_amount = 5.5 +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg similarity index 60% rename from resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg rename to resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg index 32dbdb7f55..fabb05919a 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg @@ -1,24 +1,32 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 17 type = quality quality_type = normal -material = generic_nylon +weight = -1 +global_quality = True +material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 -brim_width = 5.0 +retraction_amount = 5.5 +retraction_speed = 50 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg index ac68b16751..4eb1a0734c 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg @@ -7,19 +7,24 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg index a47ba48b28..4c96294da0 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg @@ -7,19 +7,24 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg index 95ce01966a..98d146d7c4 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg @@ -7,19 +7,24 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg index 33e90d4fd5..a6645706fe 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg @@ -7,19 +7,24 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print speed_infill = =speed_print speed_support = =speed_print +speed_topbottom = 10 speed_travel = 100 infill_sparse_density = 20 retraction_amount = 6.0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg rename to resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg index 9f74d44e12..13c2ce94ec 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg rename to resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg index 69b36f200a..b89dc6329a 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = draft +weight = 0 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg rename to resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg index 0599ad0013..6f8e1f26a9 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg similarity index 61% rename from resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg rename to resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg index fb4975fab0..c369b09231 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_0.40_hs_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 +retraction_amount = 5.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg index 7358d17420..8191b4c613 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print -speed_topbottom = 10 -speed_roofing = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg index 771a9c9348..d48a6db21e 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print -speed_topbottom = 10 -speed_roofing = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg index 46f151b4ae..34984de64e 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print -speed_topbottom = 10 -speed_roofing = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg index a9fca5b7fe..ac4c0dbc43 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print -speed_topbottom = 10 -speed_roofing = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg index ef80690098..e617efab29 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 -mmaterial_print_temperature_layer_0 = =material_print_temperature +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg index 39eaef259f..a8fea6c2d2 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = =speed_print -speed_support = 30 +speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg index ce1da40419..e4099a9d93 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg index 8681c1d102..b5df792869 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 7.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg index 92ec9f6523..aeeb68722c 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 -material_print_temperature_layer_0 = =material_bed_temperature +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg index 1ed6e5c52a..d56b8fcfea 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 -material_print_temperature_layer_0 = =material_bed_temperature +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg index 1121cbaa71..2eb5ea6cea 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 -material_print_temperature_layer_0 = =material_bed_temperature +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg index c7fd52290f..dd9f7befb5 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_print_temperature = 200 -material_print_temperature_layer_0 = =material_bed_temperature +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 4.0 retraction_speed = 40 -skirt_brim_speed = 30 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg index 06efaa3ef8..3704ef19a4 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = =speed_print -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg index 3f0b2e4c2f..2287f615a0 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = =speed_print -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg index 5b33e515d6..df36fb1088 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = =speed_print -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg index 28efbb88c8..ca554aeaf6 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg @@ -7,20 +7,26 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 6.0 retraction_speed = =speed_print -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg index 478ef70db4..b21f8ae1fa 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg @@ -7,18 +7,21 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse -material = generic_nylon +weight = -3 +global_quality = True +material = xyzprinting_nylon variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg index 54ea0714c2..eddb446b59 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg @@ -7,18 +7,21 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft -material = generic_nylon +weight = -2 +global_quality = True +material = xyzprinting_nylon variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg index 332b4331de..5a45a5e041 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg @@ -7,18 +7,21 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine -material = generic_nylon +weight = 0 +global_quality = True +material = xyzprinting_nylon variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg index 01248dee03..e5eb0644a9 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg @@ -7,18 +7,21 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal -material = generic_nylon +weight = -1 +global_quality = True +material = xyzprinting_nylon variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 8.0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg deleted file mode 100644 index a7fd406a0d..0000000000 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_coarse.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = coarse -material = generic_petg -variant = Copper 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 60 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg deleted file mode 100644 index e7996daec7..0000000000 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_draft.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Draft Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = draft -material = generic_petg -variant = Copper 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 60 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg deleted file mode 100644 index 8471ba8f3d..0000000000 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_fine.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Fine Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = fine -material = generic_petg -variant = Copper 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 60 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg deleted file mode 100644 index 9a5c94a4ea..0000000000 --- a/resources/quality/xyzprinting/petg/xyzprinting_0.40_copper_petg_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Normal Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = normal -material = generic_petg -variant = Copper 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 60 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg similarity index 57% rename from resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg index 0f4e18b7ea..f4e5bc620d 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg @@ -1,24 +1,33 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = coarse -material = xyzprinting_flexible +weight = -3 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print speed_travel = 100 -infill_sparse_density = 20 \ No newline at end of file +retraction_amount = 5.5 +retraction_speed = 25 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg similarity index 57% rename from resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg index 31b7019918..c5b3fcfcc8 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg @@ -1,24 +1,33 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = draft -material = xyzprinting_flexible +weight = -2 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print speed_travel = 100 -infill_sparse_density = 20 \ No newline at end of file +retraction_amount = 5.5 +retraction_speed = 25 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg similarity index 57% rename from resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg index cb56683ab3..73d7b70796 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg @@ -1,24 +1,33 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = fine -material = xyzprinting_flexible +weight = 0 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print speed_travel = 100 -infill_sparse_density = 20 \ No newline at end of file +retraction_amount = 5.5 +retraction_speed = 25 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg similarity index 57% rename from resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg index eace939e15..b380be322a 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_0.40_flexible_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg @@ -1,24 +1,33 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_1p0_pro [metadata] setting_version = 17 type = quality quality_type = normal -material = xyzprinting_flexible +weight = -1 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 70 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 speed_infill = =speed_print speed_support = =speed_print speed_travel = 100 -infill_sparse_density = 20 \ No newline at end of file +retraction_amount = 5.5 +retraction_speed = 25 +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg similarity index 56% rename from resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg index 428169d66d..0abb0cd7ae 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_0.40_copper_nylon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg @@ -1,24 +1,31 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = coarse -material = generic_nylon +weight = -3 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 80 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 255 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature +speed_wall = 35 speed_print = 30 -speed_infill = =speed_print +speed_topbottom = 10 +speed_infill = 50 speed_support = =speed_print speed_travel = 120 -brim_width = 5.0 \ No newline at end of file +retraction_amount = 4.5 +retraction_speed = 25 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg index d73b1bf0db..095ec69b02 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg @@ -1,22 +1,31 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = draft -material = generic_pla +weight = -2 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature +speed_wall = 35 speed_print = 30 -speed_infill = =speed_print +speed_topbottom = 10 +speed_infill = 50 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 25 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg similarity index 51% rename from resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg index ead453f1c8..b7f9adc86c 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_0.40_copper_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = fine -material = generic_abs +weight = 0 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 90 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 240 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature +speed_wall = 35 speed_print = 30 -speed_infill = =speed_print -speed_support = 30 +speed_topbottom = 10 +speed_infill = 50 +speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 25 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg rename to resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg index 3880520dba..aa92a566d9 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_copper_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = normal -material = generic_pla +weight = -1 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature +speed_wall = 35 speed_print = 30 -speed_infill = =speed_print +speed_topbottom = 10 +speed_infill = 50 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 25 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg index 5a7cc4bd3a..e4228d499a 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = coarse -material = generic_petg +weight = -3 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg index 9a05f63afb..1621e24e70 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = draft -material = generic_petg +weight = -2 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg index 256be74cc0..b17c87e223 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = fine -material = generic_petg +weight = 0 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg index 71eefd0e06..05513c51b6 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = normal -material = generic_petg +weight = -1 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg index ddf69f02d9..a9a3e2ad89 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse -material = generic_petg +weight = -3 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 60 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg index a333f66d60..2f7859f683 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft -material = generic_petg +weight = -2 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 60 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg index 5f3449fc81..8ac23b7a91 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine -material = generic_petg +weight = 0 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 60 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg index 5069f85573..9af420bc5b 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = normal -material = generic_petg +weight = -1 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 60 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 3.5 retraction_speed = 20 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg index edf0780ac9..b8650d6652 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = coarse -material = generic_petg +weight = -3 +global_quality = True +material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 50 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg index 3f17b31e85..105d35afc3 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = draft -material = generic_petg +weight = -2 +global_quality = True +material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 50 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg index f7f722d478..d6c794d63c 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = fine -material = generic_petg +weight = 0 +global_quality = True +material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 50 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg index 815897cb56..f2aef4a116 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = normal -material = generic_petg +weight = -1 +global_quality = True +material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 220 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 retraction_speed = 50 -skirt_brim_speed = 30 \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg index 39a7d1c603..41827be21b 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse -material = generic_petg +weight = -3 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 60 speed_infill = =speed_print speed_support = 30 +speed_topbottom = 10 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = =speed_support \ No newline at end of file +skirt_brim_speed = =speed_support +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg index 188bcc1c78..eef476196b 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft -material = generic_petg +weight = -2 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 60 speed_infill = =speed_print speed_support = 30 +speed_topbottom = 10 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = =speed_support \ No newline at end of file +skirt_brim_speed = =speed_support +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg index 219dbd3fd7..4ad156659e 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine -material = generic_petg +weight = 0 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 60 speed_infill = =speed_print speed_support = 30 +speed_topbottom = 10 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = =speed_support \ No newline at end of file +skirt_brim_speed = =speed_support +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg index 3076c7d4d0..77556aaf32 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal -material = generic_petg +weight = -1 +global_quality = True +material = xyzprinting_petg variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 220 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 60 speed_infill = =speed_print speed_support = 30 +speed_topbottom = 10 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 25 -skirt_brim_speed = =speed_support \ No newline at end of file +skirt_brim_speed = =speed_support +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg deleted file mode 100644 index a1cacc1f15..0000000000 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_coarse.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = coarse -material = generic_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 70 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg deleted file mode 100644 index d28d33d155..0000000000 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_draft.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Draft Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = draft -material = generic_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 70 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg deleted file mode 100644 index a67a176e4b..0000000000 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_fine.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Fine Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = fine -material = generic_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 70 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg deleted file mode 100644 index c4e6343528..0000000000 --- a/resources/quality/xyzprinting/pla/xyzprinting_0.40_pla_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Normal Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = normal -material = generic_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 70 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..f0cbd80258 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..1065c4b399 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..ae2cf07201 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..8ccfafd857 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg new file mode 100644 index 0000000000..cea142873a --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg new file mode 100644 index 0000000000..ae74792ab4 --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg new file mode 100644 index 0000000000..dbef17f6ee --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg new file mode 100644 index 0000000000..579e80628a --- /dev/null +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg @@ -0,0 +1,31 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True +material = xyzprinting_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 +speed_support = =speed_print +speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg index 68ea8e3228..99e805647b 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = coarse -material = generic_pla +weight = -3 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg index b6ec76d6d6..96cce75a91 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = draft -material = generic_pla +weight = -2 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg index 71485eb982..267d5621be 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = fine -material = generic_pla +weight = 0 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg index 4682155082..3243b4fd5a 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = normal -material = generic_pla +weight = -1 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg index 9331cc6c10..f744f4fe68 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse -material = generic_pla +weight = -3 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg index 161df46aed..a4df9766cf 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft -material = generic_pla +weight = -2 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg index ae086fe232..a4e3a608a9 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine -material = generic_pla +weight = 0 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg index 386a7bd082..a77c589cf6 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = normal -material = generic_pla +weight = -1 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg index 036595d2a4..fff3a631a7 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = coarse -material = generic_pla +weight = -3 +global_quality = True +material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg index 64c427b498..7a6d4661a3 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = draft -material = generic_pla +weight = -2 +global_quality = True +material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg index 2e10025007..3d491c8e24 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = fine -material = generic_pla +weight = 0 +global_quality = True +material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg index 606046bbfd..43c232e3d0 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = normal -material = generic_pla +weight = -1 +global_quality = True +material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg index fe4f303e9d..4fee3770f2 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse -material = generic_pla +weight = -3 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_prin +speed_topbottom = 10 +speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg index f6f1168457..3f4d5d4ba1 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft -material = generic_pla +weight = -2 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg index 21feaa68f9..535f1eb4e2 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine -material = generic_pla +weight = 0 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg index 1a121dd0d9..af19c6a752 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal -material = generic_pla +weight = -1 +global_quality = True +material = xyzprinting_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg new file mode 100644 index 0000000000..db4cda73c6 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = coarse +weight = -3 +global_quality = True +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg new file mode 100644 index 0000000000..c576c98202 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = draft +weight = -2 +global_quality = True +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg new file mode 100644 index 0000000000..78fca775e8 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = fine +weight = 0 +global_quality = True +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg new file mode 100644 index 0000000000..901e2d4676 --- /dev/null +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -0,0 +1,33 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 17 +type = quality +quality_type = normal +weight = -1 +global_quality = True +material = xyzprinting_tough_pla +variant = Copper 0.4mm Nozzle + +[values] +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_bed_temperature = =material_bed_temperature +material_bed_temperature_layer_0 = =material_bed_temperature +material_print_temperature_layer_0 = =material_print_temperature +material_initial_print_temperature = =material_print_temperature +material_final_print_temperature = =material_print_temperature +speed_print = 30 +speed_wall = =speed_print +speed_topbottom = 20 +speed_infill = =speed_print +speed_support = =speed_print +speed_travel = 100 +retraction_amount = 4.0 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg rename to resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg index ef9bbf5aaa..b159f46244 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_tough_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg rename to resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg index 5c05ca32e8..fd67ae6c34 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_tough_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg rename to resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg index bd02f02405..ee4e121cd2 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_tough_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg similarity index 55% rename from resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg rename to resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg index f1d7a48a52..cc27ebeae6 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_0.40_copper_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -1,23 +1,31 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_tough_pla -variant = 0.4mm Nozzle +variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 -speed_infill = =speed_print +speed_wall = =speed_print +speed_topbottom = 10 +speed_infill = 65 speed_support = =speed_print speed_travel = 120 +retraction_amount = 4.5 +retraction_speed = 30 +skirt_brim_speed = 30 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg index 4b1cd2b291..05232483d5 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg index 6dda00926e..da2262d0b5 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg index fe130b1ca8..94facc9c7a 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg @@ -7,22 +7,25 @@ definition = xyzprinting_da_vinci_jr_pro_xeplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print - +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg index ec0414b5fb..0697816d56 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg @@ -3,26 +3,29 @@ version = 4 name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus - [metadata] setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print speed_infill = 60 speed_support = =speed_print speed_travel = 120 retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg index 7484afdbad..e44c4f5428 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg index 41a9e2da78..b0be244e42 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg @@ -7,23 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg index 4542105482..f940fd7d1c 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg @@ -7,24 +7,26 @@ definition = xyzprinting_da_vinci_jr_pro_xplus setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print - +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg index a225ea02a6..d68ce76533 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg @@ -3,28 +3,30 @@ version = 4 name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus - [metadata] setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 200 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = =speed_print -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print speed_travel = 120 -retraction_amount = 7.0 +retraction_amount = 5.0 retraction_speed = 15 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg index e6ca74eb86..ed9faca836 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print -speed_travel = 100 +speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg index 6d9b5e18ac..21869ae654 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print -speed_travel = 100 +speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg index 71736416e3..426f9e675f 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print -speed_travel = 100 +speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg index cc22b6c14c..100634e396 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_jr_w_pro setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle [values] -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature -speed_wall = 30 speed_print = 30 +speed_wall = =speed_print speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print +speed_infill = 60 speed_support = =speed_print -speed_travel = 100 +speed_travel = 100 retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 +retraction_speed = =speed_print +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg index f33ceccce1..8d2ef865bf 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse +weight = -3 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg index 0f9469f4fd..25641d5e0d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft +weight = -2 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg index 76bf909853..c326ce1bc8 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine +weight = 0 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg index ea7a268293..75fb25195d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg @@ -7,20 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal +weight = -1 +global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = = aterial_bed_temperature -material_print_temperature = 210 +layer_height = 0.2 +layer_height_0 = 0.35 +material_diameter = 1.75 +material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 +speed_topbottom = 10 speed_infill = =speed_print speed_support = =speed_print speed_travel = 120 retraction_amount = 5.5 retraction_speed = 50 -skirt_brim_speed = =speed_print \ No newline at end of file +skirt_brim_speed = =speed_print +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg deleted file mode 100644 index c3c7e05480..0000000000 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_coarse.inst.cfg +++ /dev/null @@ -1,24 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = coarse -material = xyzprinting_tough_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 15 -speed_infill =speed_print -speed_support = 30 -speed_travel = 120 -brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg deleted file mode 100644 index 4243ce5809..0000000000 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_draft.inst.cfg +++ /dev/null @@ -1,24 +0,0 @@ -[general] -version = 4 -name = Draft Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = draft -material = xyzprinting_tough_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 15 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 -brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg deleted file mode 100644 index 93b329a4dc..0000000000 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_fine.inst.cfg +++ /dev/null @@ -1,24 +0,0 @@ -[general] -version = 4 -name = Fine Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = fine -material = xyzprinting_tough_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 15 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 -brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg deleted file mode 100644 index e8afa9915e..0000000000 --- a/resources/quality/xyzprinting/tpu/xyzprinting_0.40_copper_tpu_pla_normal.inst.cfg +++ /dev/null @@ -1,24 +0,0 @@ -[general] -version = 4 -name = Normal Quality -definition = xyzprinting_base - -[metadata] -setting_version = 17 -type = quality -quality_type = normal -material = xyzprinting_tough_pla -variant = 0.4mm Nozzle - -[values] -material_bed_temperature = 45 -material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_print = 15 -speed_infill = =speed_print -speed_support = 30 -speed_travel = 120 -brim_width = 5.0 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg index 783810603e..d9372d14e1 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = coarse -material = generic_tpu +weight = -3 +global_quality = True +material = xyzprinting_tpu variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 15 speed_infill = =speed_print -speed_support = =speed_print +speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 skirt_brim_speed = 30 -brim_width = 5.0 \ No newline at end of file +brim_width = 5.0 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg index eb7d4b7716..1af949d34f 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = draft -material = generic_tpu +weight = -2 +global_quality = True +material = xyzprinting_tpu variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 15 speed_infill = =speed_print -speed_support = =speed_print +speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 skirt_brim_speed = 30 -brim_width = 5.0 \ No newline at end of file +brim_width = 5.0 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg index 54a669bc30..b1565b6a74 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg @@ -7,21 +7,25 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = fine -material = generic_tpu +weight = 0 +global_quality = True +material = xyzprinting_tpu variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 15 speed_infill = =speed_print -speed_support = =speed_print +speed_support = 30 speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 skirt_brim_speed = 30 -brim_width = 5.0 \ No newline at end of file +brim_width = 5.0 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg index b965a0bb82..332bbc03d8 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg @@ -7,13 +7,16 @@ definition = xyzprinting_da_vinci_super setting_version = 17 type = quality quality_type = normal -material = generic_tpu +weight = -1 +global_quality = True +material = xyzprinting_tpu variant = Copper 0.4mm Nozzle [values] -material_bed_temperature = 45 +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -material_print_temperature = 210 material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature @@ -24,4 +27,5 @@ speed_travel = 120 retraction_amount = 4.0 retraction_speed = 30 skirt_brim_speed = 30 -brim_width = 5.0 \ No newline at end of file +brim_width = 5.0 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg deleted file mode 100644 index e06dead984..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.10_fine.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Fine Quality -definition = xyzprinting_da_vinci_jr_pro_xeplus - -[metadata] -setting_version = 17 -type = quality -quality_type = fine -weight = 0 -global_quality = True - -[values] -layer_height = 0.10 -layer_height_0 = 0.20 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg deleted file mode 100644 index d61eec0a11..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.20_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Normal Quality -definition = xyzprinting_da_vinci_jr_pro_xeplus - -[metadata] -setting_version = 17 -type = quality -quality_type = normal -weight = -1 -global_quality = True - -[values] -layer_height = 0.2 -layer_height_0 = 0.35 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg deleted file mode 100644 index 18bbfb6ac5..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.30_draft.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Draft Quality -definition = xyzprinting_da_vinci_jr_pro_xeplus - -[metadata] -setting_version = 17 -type = quality -quality_type = draft -weight = -2 -global_quality = True - -[values] -layer_height = 0.30 -layer_height_0 = 0.40 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg deleted file mode 100644 index 5cddd082d8..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xeplus_global_0.40_coarse.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_da_vinci_jr_pro_xeplus - -[metadata] -setting_version = 17 -type = quality -quality_type = coarse -weight = -3 -global_quality = True - -[values] -layer_height = 0.4 -layer_height_0 = 0.4 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg deleted file mode 100644 index 1053451f1c..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.10_fine.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Fine Quality -definition = xyzprinting_da_vinci_jr_pro_xplus - -[metadata] -setting_version = 17 -type = quality -quality_type = fine -weight = 0 -global_quality = True - -[values] -layer_height = 0.10 -layer_height_0 = 0.20 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg deleted file mode 100644 index db4ce22b86..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.20_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Normal Quality -definition = xyzprinting_da_vinci_jr_pro_xplus - -[metadata] -setting_version = 17 -type = quality -quality_type = normal -weight = -1 -global_quality = True - -[values] -layer_height = 0.2 -layer_height_0 = 0.35 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg deleted file mode 100644 index 1aa1a380c5..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.30_draft.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Draft Quality -definition = xyzprinting_da_vinci_jr_pro_xplus - -[metadata] -setting_version = 17 -type = quality -quality_type = draft -weight = -2 -global_quality = True - -[values] -layer_height = 0.30 -layer_height_0 = 0.40 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg deleted file mode 100644 index 46888b94ed..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xplus_global_0.40_coarse.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_da_vinci_jr_pro_xplus - -[metadata] -setting_version = 17 -type = quality -quality_type = coarse -weight = -3 -global_quality = True - -[values] -layer_height = 0.4 -layer_height_0 = 0.4 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg deleted file mode 100644 index e556caf2ef..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Fine Quality -definition = xyzprinting_da_vinci_super - -[metadata] -setting_version = 17 -type = quality -quality_type = fine -weight = 0 -global_quality = True - -[values] -layer_height = 0.10 -layer_height_0 = 0.20 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg deleted file mode 100644 index e322fa59e5..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Normal Quality -definition = xyzprinting_da_vinci_super - -[metadata] -setting_version = 17 -type = quality -quality_type = normal -weight = -1 -global_quality = True - -[values] -layer_height = 0.2 -layer_height_0 = 0.35 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg deleted file mode 100644 index 66b22b721a..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Draft Quality -definition = xyzprinting_da_vinci_super - -[metadata] -setting_version = 17 -type = quality -quality_type = draft -weight = -2 -global_quality = True - -[values] -layer_height = 0.30 -layer_height_0 = 0.40 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg deleted file mode 100644 index fa0a7072e2..0000000000 --- a/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg +++ /dev/null @@ -1,23 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_da_vinci_super - -[metadata] -setting_version = 17 -type = quality -quality_type = coarse -weight = -3 -global_quality = True - -[values] -layer_height = 0.4 -layer_height_0 = 0.4 -material_bed_temperature = 40 -material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 120 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg index 6c3d4ccd17..ff563f55a4 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg @@ -11,13 +11,7 @@ weight = 0 global_quality = True [values] -layer_height = 0.10 -layer_height_0 = 0.20 -material_bed_temperature = 40 +layer_height = 0.1 +layer_height_0 = 0.2 material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg index f782ad2a68..4d770c4fdb 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg @@ -13,11 +13,5 @@ global_quality = True [values] layer_height = 0.2 layer_height_0 = 0.3 -material_bed_temperature = 40 material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 \ No newline at end of file +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg index 2628afc5db..daaf01f285 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg @@ -11,13 +11,7 @@ weight = -2 global_quality = True [values] -layer_height = 0.30 -layer_height_0 = 0.40 -material_bed_temperature = 40 +layer_height = 0.3 +layer_height_0 = 0.4 material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg index 256b8fdd62..599437e538 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg @@ -13,11 +13,5 @@ global_quality = True [values] layer_height = 0.4 layer_height_0 = 0.4 -material_bed_temperature = 40 material_diameter = 1.75 -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -speed_print = 24 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 70 +infill_sparse_density = 10 \ No newline at end of file From 1c78452d398581b92f45d37f5cb2d1e3f6c3d749 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 1 Oct 2021 17:54:01 +0200 Subject: [PATCH 006/135] Add basis for a new material sync wizard Just the set-up with a basic page to test the window with. Contributes to issue CURA-8609. --- .../Preferences/Materials/MaterialsPage.qml | 8 +++- .../Materials/MaterialsSyncDialog.qml | 44 +++++++++++++++++++ 2 files changed, 50 insertions(+), 2 deletions(-) create mode 100644 resources/qml/Preferences/Materials/MaterialsSyncDialog.qml diff --git a/resources/qml/Preferences/Materials/MaterialsPage.qml b/resources/qml/Preferences/Materials/MaterialsPage.qml index 4de3ad918b..8f15838e0d 100644 --- a/resources/qml/Preferences/Materials/MaterialsPage.qml +++ b/resources/qml/Preferences/Materials/MaterialsPage.qml @@ -201,8 +201,7 @@ Item onClicked: { forceActiveFocus(); - exportAllMaterialsDialog.folder = base.materialManagementModel.getPreferredExportAllPath(); - exportAllMaterialsDialog.open(); + materialsSyncDialog.show(); } visible: Cura.MachineManager.activeMachine.supportsMaterialExport } @@ -400,4 +399,9 @@ Item { id: messageDialog } + + MaterialsSyncDialog + { + id: materialsSyncDialog + } } diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml new file mode 100644 index 0000000000..55a44f3ad5 --- /dev/null +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -0,0 +1,44 @@ +//Copyright (c) 2021 Ultimaker B.V. +//Cura is released under the terms of the LGPLv3 or higher. + +import QtQuick 2.1 +import QtQuick.Controls 2.1 +import QtQuick.Window 2.1 +import UM 1.2 as UM + +Window +{ + id: materialsSyncDialog + title: catalog.i18nc("@title:window", "Sync materials with printers") + minimumWidth: UM.Theme.getSize("modal_window_minimum").width + minimumHeight: UM.Theme.getSize("modal_window_minimum").height + width: minimumWidth + height: minimumHeight + + SwipeView + { + id: swipeView + anchors.fill: parent + + Rectangle + { + id: introPage + color: UM.Theme.getColor("main_background") + Column + { + Label + { + text: catalog.i18nc("@title:header", "Sync materials with printers") + font: UM.Theme.getFont("large_bold") + color: UM.Theme.getColor("text") + } + Label + { + text: catalog.i18nc("@text", "Following a few simple steps, you will be able to synchronize all your material profiles with your printers.") + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text") + } + } + } + } +} \ No newline at end of file From 4508f60ce553860f0576699789a2313ec4faaaa1 Mon Sep 17 00:00:00 2001 From: legend069 Date: Sun, 3 Oct 2021 19:43:50 +1100 Subject: [PATCH 007/135] Update ChangeAtZ.py PR --- .../PostProcessingPlugin/scripts/ChangeAtZ.py | 66 +++++++++++++++---- 1 file changed, 55 insertions(+), 11 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py index 712af63b07..dc9f171e9e 100644 --- a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py +++ b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py @@ -11,6 +11,8 @@ # Modified by Jaime van Kessel (Ultimaker), j.vankessel@ultimaker.com to make it work for 15.10 / 2.x # Modified by Ruben Dulek (Ultimaker), r.dulek@ultimaker.com, to debug. # Modified by Wes Hanney, https://github.com/novamxd, Retract Length + Speed, Clean up +# Modified by Alex Jaxon, https://github.com/legend069, Added option to modify enclosure temperature + # history / changelog: # V3.0.1: TweakAtZ-state default 1 (i.e. the plugin works without any TweakAtZ comment) @@ -33,13 +35,18 @@ # V5.0: Bugfix for fall back after one layer and doubled G0 commands when using print speed tweak, Initial version for Cura 2.x # V5.0.1: Bugfix for calling unknown property 'bedTemp' of previous settings storage and unknown variable 'speed' # V5.1: API Changes included for use with Cura 2.2 -# V5.2.0: Wes Hanney. Added support for changing Retract Length and Speed. Removed layer spread option. Fixed issue of cumulative ChangeZ +# V5.2.0: Wes Hanney. Added support for changing Retract Length and Speed. Removed layer spread option. Fixed issue of cumulative ChangeAtZ # mods so they can now properly be stacked on top of each other. Applied code refactoring to clean up various coding styles. Added comments. # Broke up functions for clarity. Split up class so it can be debugged outside of Cura. # V5.2.1: Wes Hanney. Added support for firmware based retractions. Fixed issue of properly restoring previous values in single layer option. # Added support for outputting changes to LCD (untested). Added type hints to most functions and variables. Added more comments. Created GCodeCommand # class for better detection of G1 vs G10 or G11 commands, and accessing arguments. Moved most GCode methods to GCodeCommand class. Improved wording # of Single Layer vs Keep Layer to better reflect what was happening. +# V5.2.2 Alex Jaxon, Added option to modify enclosure temperature keeping current format +# updated from "Experimental" to "Beta" +# + + # Uses - # M220 S - set speed factor override percentage @@ -56,20 +63,20 @@ from ..Script import Script import re -# this was broken up into a separate class so the main ChangeZ script could be debugged outside of Cura +# this was broken up into a separate class so the main ChangeAtZ script could be debugged outside of Cura class ChangeAtZ(Script): - version = "5.2.1" + version = "5.2.2" def getSettingDataString(self): return """{ - "name": "ChangeAtZ """ + self.version + """(Experimental)", + "name": "ChangeAtZ """ + self.version + """(Beta)", "key": "ChangeAtZ", "metadata": {}, "version": 2, "settings": { "caz_enabled": { "label": "Enabled", - "description": "Allows adding multiple ChangeZ mods and disabling them as needed.", + "description": "Allows adding multiple ChangeAtZ mods and disabling them as needed.", "type": "bool", "default_value": true }, @@ -153,7 +160,7 @@ class ChangeAtZ(Script): "minimum_value_warning": "10", "maximum_value_warning": "200", "enabled": "f1_Change_printspeed" - }, + }, "g1_Change_flowrate": { "label": "Change Flow Rate", "description": "Select if flow rate has to be changed", @@ -221,6 +228,23 @@ class ChangeAtZ(Script): "minimum_value_warning": "30", "maximum_value_warning": "120", "enabled": "h1_Change_bedTemp" + }, + "h1_Change_enclosureTemp": { + "label": "Change Enclosure Temp", + "description": "Select if Enclosure Temperature has to be changed", + "type": "bool", + "default_value": false + }, + "h2_enclosureTemp": { + "label": "Enclosure Temp", + "description": "New Enclosure Temperature", + "unit": "C", + "type": "float", + "default_value": 20, + "minimum_value": "0", + "minimum_value_warning": "10", + "maximum_value_warning": "50", + "enabled": "h1_Change_enclosureTemp" }, "i1_Change_extruderOne": { "label": "Change Extruder 1 Temp", @@ -324,8 +348,8 @@ class ChangeAtZ(Script): "minimum_value": "0", "minimum_value_warning": "0", "maximum_value_warning": "20", - "enabled": "caz_change_retractlength" - } + "enabled": "caz_change_retractlength" + } } }""" @@ -345,6 +369,8 @@ class ChangeAtZ(Script): self.setIntSettingIfEnabled(caz_instance, "g3_Change_flowrateOne", "flowrateOne", "g4_flowrateOne") self.setIntSettingIfEnabled(caz_instance, "g5_Change_flowrateTwo", "flowrateTwo", "g6_flowrateTwo") self.setFloatSettingIfEnabled(caz_instance, "h1_Change_bedTemp", "bedTemp", "h2_bedTemp") + self.setFloatSettingIfEnabled(caz_instance, "h1_Change_enclosureTemp", "enclosureTemp", "h2_enclosureTemp") + self.setFloatSettingIfEnabled(caz_instance, "i1_Change_extruderOne", "extruderOne", "i2_extruderOne") self.setFloatSettingIfEnabled(caz_instance, "i3_Change_extruderTwo", "extruderTwo", "i4_extruderTwo") self.setIntSettingIfEnabled(caz_instance, "j1_Change_fanSpeed", "fanSpeed", "j2_fanSpeed") @@ -776,6 +802,10 @@ class ChangeAtZProcessor: if "bedTemp" in values: codes.append("BedTemp: " + str(round(values["bedTemp"]))) + # looking for wait for enclosure temp + if "enclosureTemp" in values: + codes.append("EnclosureTemp: " + str(round(values["enclosureTemp"]))) + # set our extruder one temp (if specified) if "extruderOne" in values: codes.append("Extruder 1 Temp: " + str(round(values["extruderOne"]))) @@ -858,6 +888,10 @@ class ChangeAtZProcessor: if "bedTemp" in values: codes.append("M140 S" + str(values["bedTemp"])) + # looking for wait for enclosure temp + if "enclosureTemp" in values: + codes.append("M141 S" + str(values["enclosureTemp"])) + # set our extruder one temp (if specified) if "extruderOne" in values: codes.append("M104 S" + str(values["extruderOne"]) + " T0") @@ -943,7 +977,7 @@ class ChangeAtZProcessor: # nothing to do return "" - # Returns the unmodified GCODE line from previous ChangeZ edits + # Returns the unmodified GCODE line from previous ChangeAtZ edits @staticmethod def getOriginalLine(line: str) -> str: @@ -990,7 +1024,7 @@ class ChangeAtZProcessor: else: return self.currentZ >= self.targetZ - # Marks any current ChangeZ layer defaults in the layer for deletion + # Marks any current ChangeAtZ layer defaults in the layer for deletion @staticmethod def markChangesForDeletion(layer: str): return re.sub(r";\[CAZD:", ";[CAZD:DELETE:", layer) @@ -1288,7 +1322,7 @@ class ChangeAtZProcessor: # flag that we're inside our target layer self.insideTargetLayer = True - # Removes all the ChangeZ layer defaults from the given layer + # Removes all the ChangeAtZ layer defaults from the given layer @staticmethod def removeMarkedChanges(layer: str) -> str: return re.sub(r";\[CAZD:DELETE:[\s\S]+?:CAZD\](\n|$)", "", layer) @@ -1364,6 +1398,16 @@ class ChangeAtZProcessor: # move to the next command return + # handle enclosure temp changes, really shouldn't want to wait for enclousure temp mid print though. + if command.command == "M141" or command.command == "M191": + + # get our bed temp if provided + if "S" in command.arguments: + self.lastValues["enclosureTemp"] = command.getArgumentAsFloat("S") + + # move to the next command + return + # handle extruder temp changes if command.command == "M104" or command.command == "M109": From 35dd43675cb8b9c850d1bdb432dcb5355854a6bf Mon Sep 17 00:00:00 2001 From: legend069 Date: Sun, 3 Oct 2021 20:00:08 +1100 Subject: [PATCH 008/135] Update ChangeAtZ.py fixed typos and the gcode insert makes it easier to find for others "changeatz" --- .../PostProcessingPlugin/scripts/ChangeAtZ.py | 31 +++++++++---------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py index dc9f171e9e..8f41a1e3fb 100644 --- a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py +++ b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py @@ -79,7 +79,7 @@ class ChangeAtZ(Script): "description": "Allows adding multiple ChangeAtZ mods and disabling them as needed.", "type": "bool", "default_value": true - }, + }, "a_trigger": { "label": "Trigger", "description": "Trigger at height or at layer no.", @@ -126,7 +126,7 @@ class ChangeAtZ(Script): "description": "Displays the current changes to the LCD", "type": "bool", "default_value": false - }, + }, "e1_Change_speed": { "label": "Change Speed", "description": "Select if total speed (print and travel) has to be changed", @@ -160,7 +160,7 @@ class ChangeAtZ(Script): "minimum_value_warning": "10", "maximum_value_warning": "200", "enabled": "f1_Change_printspeed" - }, + }, "g1_Change_flowrate": { "label": "Change Flow Rate", "description": "Select if flow rate has to be changed", @@ -302,25 +302,25 @@ class ChangeAtZ(Script): "description": "Indicates you would like to modify retraction properties.", "type": "bool", "default_value": false - }, + }, "caz_retractstyle": { "label": "Retract Style", "description": "Specify if you're using firmware retraction or linear move based retractions. Check your printer settings to see which you're using.", "type": "enum", "options": { - "linear": "Linear Move", + "linear": "Linear Move", "firmware": "Firmware" }, "default_value": "linear", "enabled": "caz_change_retract" - }, + }, "caz_change_retractfeedrate": { "label": "Change Retract Feed Rate", "description": "Changes the retraction feed rate during print", "type": "bool", "default_value": false, "enabled": "caz_change_retract" - }, + }, "caz_retractfeedrate": { "label": "Retract Feed Rate", "description": "New Retract Feed Rate (mm/s)", @@ -370,7 +370,6 @@ class ChangeAtZ(Script): self.setIntSettingIfEnabled(caz_instance, "g5_Change_flowrateTwo", "flowrateTwo", "g6_flowrateTwo") self.setFloatSettingIfEnabled(caz_instance, "h1_Change_bedTemp", "bedTemp", "h2_bedTemp") self.setFloatSettingIfEnabled(caz_instance, "h1_Change_enclosureTemp", "enclosureTemp", "h2_enclosureTemp") - self.setFloatSettingIfEnabled(caz_instance, "i1_Change_extruderOne", "extruderOne", "i2_extruderOne") self.setFloatSettingIfEnabled(caz_instance, "i3_Change_extruderTwo", "extruderTwo", "i4_extruderTwo") self.setIntSettingIfEnabled(caz_instance, "j1_Change_fanSpeed", "fanSpeed", "j2_fanSpeed") @@ -876,7 +875,7 @@ class ChangeAtZProcessor: return "" # return our default block for this layer - return ";[CAZD:\n" + "\n".join(codes) + "\n;:CAZD]" + return ";[ChangeAtZ:\n" + "\n".join(codes) + "\n;ChangeAtZ]" # Builds the relevant GCODE lines from the given collection of values def getCodeLinesFromValues(self, values: Dict[str, any]) -> List[str]: @@ -981,8 +980,8 @@ class ChangeAtZProcessor: @staticmethod def getOriginalLine(line: str) -> str: - # get the change at z original (cazo) details - original_line = re.search(r"\[CAZO:(.*?):CAZO\]", line) + # get the change at z original (ChangeAtZ) details + original_line = re.search(r"\[ChangeAtZ:(.*?):ChangeAtZ\]", line) # if we didn't get a hit, this is the original line if original_line is None: @@ -1027,7 +1026,7 @@ class ChangeAtZProcessor: # Marks any current ChangeAtZ layer defaults in the layer for deletion @staticmethod def markChangesForDeletion(layer: str): - return re.sub(r";\[CAZD:", ";[CAZD:DELETE:", layer) + return re.sub(r";\[ChangeAtZ:", ";[ChangeAtZ:DELETE:", layer) # Grabs the current height def processLayerHeight(self, line: str): @@ -1100,8 +1099,8 @@ class ChangeAtZProcessor: self.processSetting(line) # if we haven't hit our target yet, leave the defaults as is (unmark them for deletion) - if "[CAZD:DELETE:" in line: - line = line.replace("[CAZD:DELETE:", "[CAZD:") + if "[ChangeAtZ:DELETE:" in line: + line = line.replace("[ChangeAtZ:DELETE:", "[ChangeAtZ:") # if we're targeting by Z, we want to add our values before the first linear move if "G1 " in line or "G0 " in line: @@ -1325,7 +1324,7 @@ class ChangeAtZProcessor: # Removes all the ChangeAtZ layer defaults from the given layer @staticmethod def removeMarkedChanges(layer: str) -> str: - return re.sub(r";\[CAZD:DELETE:[\s\S]+?:CAZD\](\n|$)", "", layer) + return re.sub(r";\[ChangeAtZ:DELETE:[\s\S]+?:ChangeAtZ\](\n|$)", "", layer) # Resets the class contents to defaults def reset(self): @@ -1350,7 +1349,7 @@ class ChangeAtZProcessor: # Sets the original GCODE line in a given GCODE command @staticmethod def setOriginalLine(line, original) -> str: - return line + ";[CAZO:" + original + ":CAZO]" + return line + ";[ChangeAtZ:" + original + ":ChangeAtZ]" # Tracks the change in gcode values we're interested in def trackChangeableValues(self, line: str): From 8c155e8990df8b846aac566c5410c7fd7a7b1631 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Mon, 4 Oct 2021 11:23:30 +0800 Subject: [PATCH 009/135] fix check errors remove the settings in definitions if these parameter already setting in quality --- .../definitions/xyzprinting_da_vinci_1p0_pro.def.json | 6 ------ .../definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json | 6 ------ .../xyzprinting_da_vinci_jr_pro_xeplus.def.json | 6 ------ .../xyzprinting_da_vinci_jr_pro_xplus.def.json | 6 ------ .../definitions/xyzprinting_da_vinci_jr_w_pro.def.json | 8 +------- resources/definitions/xyzprinting_da_vinci_super.def.json | 6 ------ 6 files changed, 1 insertion(+), 37 deletions(-) diff --git a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json index f09b5bc5c0..f38dad1eec 100644 --- a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json @@ -36,13 +36,7 @@ [ 10, -10 ] ] }, - "layer_height": { "default_value": 0.2 }, - "layer_height_0": { "default_value": 0.30 }, - "infill_sparse_density": { "default_value": 10 }, "material_flow_layer_0": {"value": 120}, - "retraction_amount": { "default_value": 5.0 }, - "retraction_speed": { "default_value": 40 }, - "speed_print": { "default_value": 30 }, "speed_travel": { "value": 45 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json index 74fbcf52c4..0a33fc688f 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json @@ -37,13 +37,7 @@ [ 10, -10 ] ] }, - "layer_height": { "default_value": 0.2 }, - "layer_height_0": { "default_value": 0.20 }, - "infill_sparse_density": { "default_value": 10 }, "material_flow_layer_0": {"value": 120}, - "retraction_amount": { "default_value": 5.0 }, - "retraction_speed": { "default_value": 30 }, - "speed_print": { "default_value": 30 }, "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json index 91d03ddf96..9daae57dfb 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json @@ -36,13 +36,7 @@ [ 10, -10 ] ] }, - "layer_height": { "default_value": 0.2 }, - "layer_height_0": { "default_value": 0.30 }, - "infill_sparse_density": { "default_value": 10 }, "material_flow_layer_0": {"value": 120}, - "retraction_amount": { "default_value": 5.0 }, - "retraction_speed": { "default_value": 15 }, - "speed_print": { "default_value": 30 }, "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json index 30c367923d..2c11fc1fd6 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json @@ -36,13 +36,7 @@ [ 10, -10 ] ] }, - "layer_height": { "default_value": 0.2 }, - "layer_height_0": { "default_value": 0.30 }, - "infill_sparse_density": { "default_value": 10 }, "material_flow_layer_0": {"value": 120}, - "retraction_amount": { "default_value": 5.0 }, - "retraction_speed": { "default_value": 15 }, - "speed_print": { "default_value": 30 }, "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json index 01b797315f..d1e8953149 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json @@ -36,14 +36,8 @@ [ 10, -10 ] ] }, - "layer_height": { "default_value": 0.2 }, - "layer_height_0": { "default_value": 0.20 }, - "infill_sparse_density": { "default_value": 10 }, "material_flow_layer_0": {"value": 120}, - "retraction_amount": { "default_value": 5.0 }, - "retraction_speed": { "default_value": 30 }, - "speed_print": { "default_value": 30 }, - "speed_travel": { "value": 120 }, + "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, diff --git a/resources/definitions/xyzprinting_da_vinci_super.def.json b/resources/definitions/xyzprinting_da_vinci_super.def.json index 29770c5d25..84a27356db 100644 --- a/resources/definitions/xyzprinting_da_vinci_super.def.json +++ b/resources/definitions/xyzprinting_da_vinci_super.def.json @@ -36,13 +36,7 @@ [ 10, -10 ] ] }, - "layer_height": { "default_value": 0.2 }, - "layer_height_0": { "default_value": 0.35 }, - "infill_sparse_density": { "default_value": 10 }, "material_flow_layer_0": {"value": 120}, - "retraction_amount": { "default_value": 5.5 }, - "retraction_speed": { "default_value": 30 }, - "speed_print": { "default_value": 30 }, "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, From 097a56bd9b857985d9d7086ad235971d226affd2 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Mon, 4 Oct 2021 11:48:49 +0800 Subject: [PATCH 010/135] fix check error remove speed_travel in definition due to the setting already in quality. --- resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json | 1 - resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json | 1 - .../definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json | 1 - resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json | 1 - resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json | 1 - resources/definitions/xyzprinting_da_vinci_super.def.json | 1 - 6 files changed, 6 deletions(-) diff --git a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json index f38dad1eec..a282fa261d 100644 --- a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json @@ -37,7 +37,6 @@ ] }, "material_flow_layer_0": {"value": 120}, - "speed_travel": { "value": 45 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json index 0a33fc688f..7b5199cdef 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json @@ -38,7 +38,6 @@ ] }, "material_flow_layer_0": {"value": 120}, - "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json index 9daae57dfb..697249dd21 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json @@ -37,7 +37,6 @@ ] }, "material_flow_layer_0": {"value": 120}, - "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json index 2c11fc1fd6..8fa9c7e0d9 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json @@ -37,7 +37,6 @@ ] }, "material_flow_layer_0": {"value": 120}, - "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json index d1e8953149..eb8503590d 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json @@ -37,7 +37,6 @@ ] }, "material_flow_layer_0": {"value": 120}, - "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, diff --git a/resources/definitions/xyzprinting_da_vinci_super.def.json b/resources/definitions/xyzprinting_da_vinci_super.def.json index 84a27356db..713d461329 100644 --- a/resources/definitions/xyzprinting_da_vinci_super.def.json +++ b/resources/definitions/xyzprinting_da_vinci_super.def.json @@ -37,7 +37,6 @@ ] }, "material_flow_layer_0": {"value": 120}, - "speed_travel": { "value": 120 }, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, "adhesion_type": { "default_value" : "skirt" }, From 8b5e64a4f96c1a4a0ed6211d8ff4e92feba0054b Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Mon, 4 Oct 2021 13:01:07 +0800 Subject: [PATCH 011/135] remove unnecessary default_values remove unnecessary default_values for ['adhesion_type'] --- resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json | 1 - resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json | 1 - .../definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json | 1 - resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json | 1 - resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json | 1 - resources/definitions/xyzprinting_da_vinci_super.def.json | 1 - 6 files changed, 6 deletions(-) diff --git a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json index a282fa261d..87700973b7 100644 --- a/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_1p0_pro.def.json @@ -39,7 +39,6 @@ "material_flow_layer_0": {"value": 120}, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, - "adhesion_type": { "default_value" : "skirt" }, "brim_line_count": { "value" : 5 }, "skirt_line_count": { "default_value" : 5 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json index 7b5199cdef..02a39f006e 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_1p0a_pro.def.json @@ -40,7 +40,6 @@ "material_flow_layer_0": {"value": 120}, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, - "adhesion_type": { "default_value" : "skirt" }, "brim_line_count": { "value" : 5 }, "skirt_line_count": { "default_value" : 5 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json index 697249dd21..715ac854bf 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xeplus.def.json @@ -39,7 +39,6 @@ "material_flow_layer_0": {"value": 120}, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, - "adhesion_type": { "default_value" : "skirt" }, "brim_line_count": { "value" : 5 }, "skirt_line_count": { "default_value" : 5 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json index 8fa9c7e0d9..3216929029 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_pro_xplus.def.json @@ -39,7 +39,6 @@ "material_flow_layer_0": {"value": 120}, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, - "adhesion_type": { "default_value" : "skirt" }, "brim_line_count": { "value" : 5 }, "skirt_line_count": { "default_value" : 5 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, diff --git a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json index eb8503590d..b3a5cee926 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json @@ -39,7 +39,6 @@ "material_flow_layer_0": {"value": 120}, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, - "adhesion_type": { "default_value" : "skirt" }, "brim_line_count": { "value" : 5 }, "skirt_line_count": { "default_value" : 5 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, diff --git a/resources/definitions/xyzprinting_da_vinci_super.def.json b/resources/definitions/xyzprinting_da_vinci_super.def.json index 713d461329..1fbc4ec9d0 100644 --- a/resources/definitions/xyzprinting_da_vinci_super.def.json +++ b/resources/definitions/xyzprinting_da_vinci_super.def.json @@ -39,7 +39,6 @@ "material_flow_layer_0": {"value": 120}, "cool_fan_enabled": { "default_value": true }, "cool_fan_speed_0": { "value": 100 }, - "adhesion_type": { "default_value" : "skirt" }, "brim_line_count": { "value" : 5 }, "skirt_line_count": { "default_value" : 5 }, "machine_gcode_flavor": { "default_value": "RepRap (Marlin/Sprinter)" }, From 585e32d2411d736a7e548d13f51e5f750294e16d Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Mon, 4 Oct 2021 14:10:09 +0800 Subject: [PATCH 012/135] fix errors 1.remove no-use file :xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json 2.remove "meta" in carbon_fiber quality file. --- ...nting_da_vinci_jr_wifi_pro_extruder_0.def.json | 15 --------------- ...pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 2 +- ..._pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg | 2 +- ...r_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg | 2 +- ...pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg | 2 +- 5 files changed, 4 insertions(+), 19 deletions(-) delete mode 100644 resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json diff --git a/resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json b/resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json deleted file mode 100644 index ce653eeedd..0000000000 --- a/resources/extruders/xyzprinting_da_vinci_jr_wifi_pro_extruder_0.def.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "version": 2, - "name": "Extruder 1", - "inherits": "fdmextruder", - "metadata": { - "machine": "xyzprinting_da_vinci_jr_pro_xplus", - "position": "0" - }, - - "overrides": { - "extruder_nr": { "default_value": 0 }, - "machine_nozzle_size": { "default_value": 0.4 }, - "material_diameter": { "default_value": 1.75 } - } -} diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg index 1677d41e0f..2c788cb0e0 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -17,7 +17,7 @@ layer_height = 0.4 layer_height_0 = 0.4 material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -matematerial_print_temperature_layer_0 = =material_print_temperature +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg index aa9abe090c..e66d2cf3a4 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -17,7 +17,7 @@ layer_height = 0.3 layer_height_0 = 0.4 material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -matematerial_print_temperature_layer_0 = =material_print_temperature +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg index 2fd8277b01..a152c6e9c5 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -17,7 +17,7 @@ layer_height = 0.1 layer_height_0 = 0.2 material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -matematerial_print_temperature_layer_0 = =material_print_temperature +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg index ff2904e9a8..56b145ccac 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -17,7 +17,7 @@ layer_height = 0.2 layer_height_0 = 0.3 material_diameter = 1.75 material_bed_temperature_layer_0 = =material_bed_temperature -matematerial_print_temperature_layer_0 = =material_print_temperature +material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature material_final_print_temperature = =material_print_temperature speed_print = 30 From b154e4260a4852604c73d0142ab42a53a970f348 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Mon, 4 Oct 2021 16:48:00 +0800 Subject: [PATCH 013/135] fix errors 1.setting extruder for Jr. Wifi Pro 2.setting base quality --- resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json | 2 +- .../quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg | 2 +- .../quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg | 2 +- .../quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg | 2 +- .../quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json index b3a5cee926..6289927c9c 100644 --- a/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json +++ b/resources/definitions/xyzprinting_da_vinci_jr_w_pro.def.json @@ -16,7 +16,7 @@ "preferred_variant_name": "Hardened Steel 0.4mm Nozzle", "variants_name": "Nozzle Type", "machine_extruder_trains": { - "0": "xyzprinting_da_vinci_jr_wifi_pro_extruder_0" + "0": "xyzprinting_da_vinci_jr_w_pro_extruder_0" } }, diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg index ff563f55a4..25d508e13c 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting [metadata] setting_version = 17 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg index 4d770c4fdb..69fd711730 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting [metadata] setting_version = 17 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg index daaf01f285..c3a7685412 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting [metadata] setting_version = 17 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg index 599437e538..bc1b3fb45f 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting [metadata] setting_version = 17 From 9ec731eaf62720a3a0fa25804db58c8f3fc7fe63 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 16:23:28 +0200 Subject: [PATCH 014/135] Create MaterialsSyncDialog from a Python function Rather than from the QML. This allows creating this dialogue from a message button without needing to put it in the base application. Contributes to issue CURA-8609. --- cura/Machines/Models/MaterialManagementModel.py | 17 +++++++++++++++++ .../qml/Preferences/Materials/MaterialsPage.qml | 7 +------ .../Materials/MaterialsSyncDialog.qml | 2 ++ 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index c75e16cd63..31f9bfbc92 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -10,6 +10,7 @@ import zipfile # To export all materials in a .zip archive. from UM.i18n import i18nCatalog from UM.Logger import Logger from UM.Message import Message +from UM.Resources import Resources # To find QML files. from UM.Signal import postponeSignals, CompressTechnique import cura.CuraApplication # Imported like this to prevent circular imports. @@ -28,6 +29,10 @@ class MaterialManagementModel(QObject): :param The base file of the material is provided as parameter when this emits """ + def __init__(self, parent: QObject = None): + super().__init__(parent) + self._sync_all_dialog = None # type: Optional[QObject] + @pyqtSlot("QVariant", result = bool) def canMaterialBeRemoved(self, material_node: "MaterialNode") -> bool: """Can a certain material be deleted, or is it still in use in one of the container stacks anywhere? @@ -262,6 +267,18 @@ class MaterialManagementModel(QObject): except ValueError: # Material was not in the favorites list. Logger.log("w", "Material {material_base_file} was already not a favorite material.".format(material_base_file = material_base_file)) + @pyqtSlot() + def openSyncAllWindow(self) -> None: + """ + Opens the window to sync all materials. + """ + if self._sync_all_dialog is None: + qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", "Materials", "MaterialsSyncDialog.qml") + self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) + if self._sync_all_dialog is None: # Failed to load QML file. + return + self._sync_all_dialog.show() + @pyqtSlot(result = QUrl) def getPreferredExportAllPath(self) -> QUrl: """ diff --git a/resources/qml/Preferences/Materials/MaterialsPage.qml b/resources/qml/Preferences/Materials/MaterialsPage.qml index 8f15838e0d..1d3519624d 100644 --- a/resources/qml/Preferences/Materials/MaterialsPage.qml +++ b/resources/qml/Preferences/Materials/MaterialsPage.qml @@ -201,7 +201,7 @@ Item onClicked: { forceActiveFocus(); - materialsSyncDialog.show(); + base.materialManagementModel.openSyncAllWindow(); } visible: Cura.MachineManager.activeMachine.supportsMaterialExport } @@ -399,9 +399,4 @@ Item { id: messageDialog } - - MaterialsSyncDialog - { - id: materialsSyncDialog - } } diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 55a44f3ad5..d7d92e1d5e 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -9,6 +9,8 @@ import UM 1.2 as UM Window { id: materialsSyncDialog + property variant catalog: UM.I18nCatalog { name: "cura" } + title: catalog.i18nc("@title:window", "Sync materials with printers") minimumWidth: UM.Theme.getSize("modal_window_minimum").width minimumHeight: UM.Theme.getSize("modal_window_minimum").height From b5edd5fa9c2427566ba80475b4493242663e1464 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 16:27:36 +0200 Subject: [PATCH 015/135] Make Sync dialogue modal Otherwise it appears behind other modal windows, such as the material manager. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index d7d92e1d5e..038384eb0c 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -16,6 +16,7 @@ Window minimumHeight: UM.Theme.getSize("modal_window_minimum").height width: minimumWidth height: minimumHeight + modality: Qt.ApplicationModal SwipeView { From 1e9ae92d2935cda3048ff7ef5e43f4b82fca0874 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 16:39:56 +0200 Subject: [PATCH 016/135] Add spacing and padding to first page Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 038384eb0c..d571050799 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -29,6 +29,10 @@ Window color: UM.Theme.getColor("main_background") Column { + spacing: UM.Theme.getSize("default_margin").height + anchors.fill: parent + anchors.margins: UM.Theme.getSize("default_margin").width + Label { text: catalog.i18nc("@title:header", "Sync materials with printers") From 346d9f1db29f1083658cf11a006c649650bf2115 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 17:59:16 +0200 Subject: [PATCH 017/135] Add images describing the workflow to first page Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 62 +++++++++++++++++++ .../themes/cura-light/images/3d_printer.svg | 27 ++++++++ .../cura-light/images/connected_cura.svg | 15 +++++ .../cura-light/images/material_spool.svg | 28 +++++++++ 4 files changed, 132 insertions(+) create mode 100644 resources/themes/cura-light/images/3d_printer.svg create mode 100644 resources/themes/cura-light/images/connected_cura.svg create mode 100644 resources/themes/cura-light/images/material_spool.svg diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index d571050799..303b9cfbf5 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -45,6 +45,68 @@ Window font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") } + Row + { + width: parent.width + height: parent.height * 2 / 3 + Image + { + id: spool_image + source: UM.Theme.getImage("material_spool") + width: Math.round(parent.width / 6) + anchors.bottom: parent.bottom + fillMode: Image.PreserveAspectFit + sourceSize.width: width + } + Canvas + { + width: Math.round(parent.width / 12) + height: UM.Theme.getSize("thick_lining").width + onPaint: { + var ctx = getContext("2d"); + ctx.setLineDash([2, 2]); + ctx.lineWidth = UM.Theme.getSize("thick_lining").width; + ctx.beginPath(); + ctx.moveTo(0, height / 2); + ctx.lineTo(width, height / 2); + ctx.stroke(); + } + anchors.bottom: parent.bottom + anchors.bottomMargin: spool_image.paintedHeight / 2 - height / 2 //Align to the vertical center of spool_image's real size. + } + Image + { + source: UM.Theme.getImage("connected_cura") + width: Math.round(parent.width / 3) + anchors.bottom: parent.bottom + fillMode: Image.PreserveAspectFit + sourceSize.width: width + } + Canvas + { + width: Math.round(parent.width / 12) + height: UM.Theme.getSize("thick_lining").width + onPaint: { + var ctx = getContext("2d"); + ctx.setLineDash([2, 2]); + ctx.lineWidth = UM.Theme.getSize("thick_lining").width; + ctx.beginPath(); + ctx.moveTo(0, height / 2); + ctx.lineTo(width, height / 2); + ctx.stroke(); + } + anchors.bottom: parent.bottom + anchors.bottomMargin: spool_image.paintedHeight / 2 - height / 2 //Align to the vertical center of spool_image's real size. + } + Image + { + source: UM.Theme.getImage("3d_printer") + width: Math.round(parent.width / 3) + anchors.bottom: parent.bottom + fillMode: Image.PreserveAspectFit + sourceSize.width: width + } + } } } } diff --git a/resources/themes/cura-light/images/3d_printer.svg b/resources/themes/cura-light/images/3d_printer.svg new file mode 100644 index 0000000000..76651472ec --- /dev/null +++ b/resources/themes/cura-light/images/3d_printer.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-light/images/connected_cura.svg b/resources/themes/cura-light/images/connected_cura.svg new file mode 100644 index 0000000000..ea6f0935c9 --- /dev/null +++ b/resources/themes/cura-light/images/connected_cura.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-light/images/material_spool.svg b/resources/themes/cura-light/images/material_spool.svg new file mode 100644 index 0000000000..80abb2c75c --- /dev/null +++ b/resources/themes/cura-light/images/material_spool.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + From e56076af08a55905eb22b1fea1bf8d0cd2151ea2 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 18:09:47 +0200 Subject: [PATCH 018/135] Render material spool somewhat bigger and give it a margin The image of the spool doesn't have a margin by itself, contrary to the other images which have a visual margin given by the size of the table. We have to give it a margin manually. This is one of the consequences of encoding margins inside of images that may be used all over the place. We can't just remove the margins inside of the image because the laptop image will be used in other places too. Just adding a margin would subtract from the size of the spool image making it very small. To compensate I'm making the spool image slightly bigger. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 303b9cfbf5..1b6be74f84 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -47,20 +47,32 @@ Window } Row { + /* + This is a row with 3 images, and a dashed line between each of them. + The images have various sizes, scaled to the window size: + - The computer screen and 3D printer have 1/3rd of the window size each. + - The remaining space is 2/3rds filled with the material spool image (so 2/9th in total). + - The remaining remaining space is divided equally over the two dashed lines (so 1/9th in total, or 1/18th per line). + */ width: parent.width height: parent.height * 2 / 3 - Image + Item { - id: spool_image - source: UM.Theme.getImage("material_spool") - width: Math.round(parent.width / 6) - anchors.bottom: parent.bottom - fillMode: Image.PreserveAspectFit - sourceSize.width: width + width: Math.round(parent.width * 2 / 9) + height: parent.height + Image + { + id: spool_image + source: UM.Theme.getImage("material_spool") + width: parent.width - UM.Theme.getSize("default_margin").width + anchors.bottom: parent.bottom + fillMode: Image.PreserveAspectFit + sourceSize.width: width + } } Canvas { - width: Math.round(parent.width / 12) + width: Math.round(parent.width / 18) height: UM.Theme.getSize("thick_lining").width onPaint: { var ctx = getContext("2d"); @@ -84,7 +96,7 @@ Window } Canvas { - width: Math.round(parent.width / 12) + width: Math.round(parent.width / 18) height: UM.Theme.getSize("thick_lining").width onPaint: { var ctx = getContext("2d"); From 6b0e221b73acf6975e0a1eb06193c2db347b0c71 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 4 Oct 2021 18:13:12 +0200 Subject: [PATCH 019/135] Implement word wrapping for introductory text Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 1b6be74f84..606286ab1c 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -44,6 +44,8 @@ Window text: catalog.i18nc("@text", "Following a few simple steps, you will be able to synchronize all your material profiles with your printers.") font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") + wrapMode: Text.WordWrap + width: parent.width - parent.anchors.margins * 2 } Row { From 228b97c00356ee5512ef4145e130191bfd2c4f1e Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Tue, 5 Oct 2021 10:44:21 +0800 Subject: [PATCH 020/135] Fix error 1.update setting version --- ...zprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg | 2 +- ...yzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg | 2 +- ...xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg | 2 +- ...zprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg | 2 +- ...nting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg | 2 +- ...inting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg | 2 +- ...ting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg | 2 +- ...nting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg | 2 +- ...inting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg | 2 +- ...ting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg | 2 +- ..._da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg | 2 +- ...g_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg | 2 +- ...ng_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg | 2 +- ..._da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg | 2 +- ...a_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg | 2 +- ...da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg | 2 +- ..._da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg | 2 +- ...a_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg | 2 +- ...da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg | 2 +- ..._da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg | 2 +- ...g_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg | 2 +- ...da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg | 2 +- ...xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst | 2 +- ...rinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg | 2 +- ...printing_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg | 2 +- ...zprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg | 2 +- ...rinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg | 2 +- ...inting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg | 2 +- ...rinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg | 2 +- ...printing_da_vinci_super_copper_0.40_antibact_fine.inst.cfg | 2 +- ...inting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg | 2 +- ..._da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg | 2 +- ...g_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg | 2 +- ...ng_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg | 2 +- ..._da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg | 2 +- ...a_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 2 +- ...da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg | 2 +- ..._da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg | 2 +- ...a_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg | 2 +- ...da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 2 +- ..._da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg | 2 +- ...g_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg | 2 +- ...da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg | 2 +- ...ing_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg | 2 +- ...ting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg | 2 +- ...nting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg | 2 +- ...ing_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg | 2 +- ...inting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg | 2 +- ...rinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg | 2 +- ...printing_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg | 2 +- ...inting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg | 2 +- ...ci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg | 2 +- ...nci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg | 2 +- ...inci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg | 2 +- ...ci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg | 2 +- ..._da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg | 2 +- ...g_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg | 2 +- ...ng_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg | 2 +- ..._da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg | 2 +- ...da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg | 2 +- ..._da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg | 2 +- ...g_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg | 2 +- ...da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg | 2 +- ...inting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg | 2 +- ...rinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg | 2 +- ...printing_da_vinci_super_copper_0.40_flexible_fine.inst.cfg | 2 +- ...inting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg | 2 +- ...ting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg | 2 +- ...nting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg | 2 +- ...inting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg | 2 +- ...ting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg | 2 +- ...ng_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg | 2 +- ...ng_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg | 2 +- ...nting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg | 2 +- ...rinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg | 2 +- ...printing_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg | 2 +- ...zprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg | 2 +- ...rinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg | 2 +- ...yzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg | 2 +- ...yzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg | 2 +- ...zprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg | 2 +- ...yzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg | 2 +- ...zprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg | 2 +- ...printing_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg | 2 +- ...zprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg | 2 +- ...yzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg | 2 +- ...printing_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg | 2 +- ...ting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg | 2 +- ...nting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg | 2 +- ...inting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg | 2 +- ...ting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg | 2 +- ...ng_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg | 2 +- ...ng_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg | 2 +- ...nting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg | 2 +- ...xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg | 2 +- ...xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg | 2 +- ...yzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg | 2 +- ...yzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg | 2 +- ...zprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg | 2 +- ...yzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg | 2 +- ...xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg | 2 +- ...zprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg | 2 +- ...nting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg | 2 +- ...inting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg | 2 +- ...rinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg | 2 +- ...nting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg | 2 +- ...nting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg | 2 +- ...ing_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg | 2 +- ...nting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg | 2 +- ...inting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg | 2 +- ...ting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg | 2 +- ...ing_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg | 2 +- ...ting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg | 2 +- ...nting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg | 2 +- ...ing_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg | 2 +- ...da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg | 2 +- ..._da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg | 2 +- ...g_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg | 2 +- ...da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg | 2 +- ..._vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg | 2 +- ...a_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg | 2 +- ...da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg | 2 +- ..._vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg | 2 +- ...a_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg | 2 +- ...da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg | 2 +- ..._da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg | 2 +- ...a_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg | 2 +- ...inting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg | 2 +- ...rinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg | 2 +- ...printing_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg | 2 +- ...inting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg | 2 +- ...nting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg | 2 +- ...inting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg | 2 +- ...rinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg | 2 +- ...nting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg | 2 +- ...xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg | 2 +- .../quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg | 4 ++-- .../xyzprinting/xyzprinting_global_0.20_normal.inst.cfg | 4 ++-- .../xyzprinting/xyzprinting_global_0.30_draft.inst.cfg | 4 ++-- .../xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg | 4 ++-- 177 files changed, 181 insertions(+), 181 deletions(-) diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg index c6d06a5ab0..81fb685f4b 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg index 6b68d52b95..b6e5ffbc8f 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg index c73509c692..da7acbbfeb 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg index 4cadf272e4..2e99a18493 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg index f588fda838..79890fcee0 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg index 4c0843ca80..f31218a2ab 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg index 4b0b43c7b2..d4fb855e87 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg index aa26387ae9..eac39ffd2e 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg index 2350b56987..e5cf28f4db 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg index a15cc0567a..47269d34df 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg index 041a698f47..19383b5a84 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg index 1cb5eee208..8056ae7f47 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg index 60090730d4..f7c299c3da 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg index 01485be427..738df10c16 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg index 3b60ef4933..d462bf4203 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg index ce21a59b13..1610b048cd 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normla Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg index 528b2ad188..e0d323efd1 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg index 34229830cc..193a211832 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg index ef306c1e8d..f997a21ce7 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine material = xyzprinting_antibact_pla diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg index e91c3ddd59..6adbefb8b3 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg index fac5c2f749..e7701dd165 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg index 02e45252d6..864ae2e03f 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg index a499eb11fc..d8f81b1362 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg index c3c8a8917b..707e06d949 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg index 82029083fa..db1711a728 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg index a2572bdac1..3cdeb76425 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg index e6c4792403..381828c4a0 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg index e6347615df..64d3c79311 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst index f608598a9e..28e1ee893e 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse material = xyzprinting_antibact_pla diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg index 1a73428a65..5427a20986 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg index 739f103f7b..81b56f5f20 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg index 6b6d14d93f..1917235500 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg index cd138ca0ef..48b34ea42a 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg index b496d7c77b..83f3b0d713 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg index 5a48e8fb1b..c321a427ed 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg index 9e21f784e5..fdebc73dc0 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg index 08444aee75..d70bb8ba20 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg index 8718c89489..040475bccd 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg index 0baf95ab25..22cbfc6ae6 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg index 8341935f8d..df2b559721 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg index e0e3b9d379..7b4403bea2 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg index f9fe0d4ad1..c747492e93 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg index 1644db228a..9a065bb807 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg index 6505206cbf..5875de7823 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg index e222496faf..b2c9781314 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg index 2c788cb0e0..5a4479fae8 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg index e66d2cf3a4..edd63c6ba5 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg index a152c6e9c5..c96ee388c7 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg index 56b145ccac..98cac92dd1 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg index de01b9af4c..9edbdaf7eb 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg index 99abf1a213..401a0ce684 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg index 27fa1cd66b..7b44435486 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg index 6e1a6b496d..de9dd99668 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg index 447e0d57c8..399d4aa892 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg index 9e25aec746..9722bb9f90 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg index 639a670e17..41b8e08ef4 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg index 65b198a0fd..adbb2f37fd 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg index e95c114bb4..9e8638fd64 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg index 565494540a..b22adb3c2e 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg index 9a23479bc8..51ee82575d 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg index 7f3affb79e..2aa3ca12fa 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg index 5e2702b66a..63f1bdb5ad 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg index 039247ef36..775d52411f 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg index fdfdfb325b..57fee5f95b 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg index af95a617f4..26aa5e572d 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg index 0d5e10fb28..1a46280e24 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg index 7a8afde951..8c8136baea 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg index eb0766de34..93dfba785b 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg index fabb05919a..d99e30659b 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg index 4eb1a0734c..840a04ad7e 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg index 4c96294da0..08717a1123 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg index 98d146d7c4..461d7ca019 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg index a6645706fe..801cf5f94b 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg index 13c2ce94ec..6d60893194 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg index b89dc6329a..efd0e90a4d 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = 0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg index 6f8e1f26a9..ae2d4e15df 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg index c369b09231..8e436913a2 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg index 8191b4c613..8fc5702f7c 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg index d48a6db21e..18d3e48e85 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg index 34984de64e..f3ab9865ab 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg index ac4c0dbc43..4a2782e4aa 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg index e617efab29..ad18caa3fa 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg index a8fea6c2d2..022549aff4 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg index e4099a9d93..5d37d3b2b2 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg index b5df792869..35af4f389c 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg index aeeb68722c..c0543e3272 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg index d56b8fcfea..055ae0912e 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg index 2eb5ea6cea..5aea8f16d9 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg index dd9f7befb5..2b92d00c79 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg index 3704ef19a4..a6a7d6cafc 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg index 2287f615a0..74e00adbbe 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg index df36fb1088..5b4d59b13e 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg index ca554aeaf6..ee4731ba47 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg index b21f8ae1fa..f4490fb6c9 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg index eddb446b59..cf1286c1a1 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg index 5a45a5e041..b9caa97cd9 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg index e5eb0644a9..a7c3d95525 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg index f4e5bc620d..7f347293da 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg index c5b3fcfcc8..f2950ff010 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg index 73d7b70796..8ac0f79e58 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg index b380be322a..bf6bd76767 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg index 0abb0cd7ae..27768d62dd 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg index 095ec69b02..3ca8304164 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg index b7f9adc86c..43b5629194 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg index aa92a566d9..90892e8707 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg index e4228d499a..ed54a942a5 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg index 1621e24e70..7e435e0adc 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg index b17c87e223..5ad254bc12 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg index 05513c51b6..9b6be5bfdd 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg index a9a3e2ad89..20a2fe5e2e 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg index 2f7859f683..3120c37ada 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg index 8ac23b7a91..157f1d8bc9 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg index 9af420bc5b..5dc2ba5368 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg index b8650d6652..307aa8d13c 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg index 105d35afc3..d4e6314bc5 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg index d6c794d63c..d626169cdc 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg index f2aef4a116..58b606ce91 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg index 41827be21b..e1266f501b 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg index eef476196b..acea4a8e57 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg index 4ad156659e..ad23f2096a 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg index 77556aaf32..12cafc5877 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg index f0cbd80258..56c565f11d 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg index 1065c4b399..d27585a12b 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg index ae2cf07201..e3a690b4f9 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg index 8ccfafd857..05900b5bc5 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg index cea142873a..2380b134d1 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg index ae74792ab4..ee8b10bacb 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg index dbef17f6ee..dd303dc424 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg index 579e80628a..7025c52bd4 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg index 99e805647b..3e40bcacc4 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg index 96cce75a91..033bb6ba31 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg index 267d5621be..73fad6402a 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg index 3243b4fd5a..c7087e8d5d 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg index f744f4fe68..f51fae5883 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg index a4df9766cf..9768817c13 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg index a4e3a608a9..f2d6b2ac70 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg index a77c589cf6..acd2640234 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg index fff3a631a7..4dc15d37fb 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg index 7a6d4661a3..20c59646d2 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg index 3d491c8e24..e57a675dd2 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg index 43c232e3d0..3e54a14dad 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg index 4fee3770f2..e77334ca4e 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg index 3f4d5d4ba1..92eb6376cb 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg index 535f1eb4e2..c4e77e3485 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg index af19c6a752..b34501f085 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg index db4cda73c6..437c141f65 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg index c576c98202..c7371c75c3 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg index 78fca775e8..3ff74922da 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg index 901e2d4676..5d87a5ad00 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg index b159f46244..1de1b31787 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg index fd67ae6c34..66f8dd3e04 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg index ee4e121cd2..bbb4e23cb4 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg index cc27ebeae6..6f50c1e7e0 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_1p0a_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg index 05232483d5..acfae47f0f 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg index da2262d0b5..7b22bca1fb 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg index 94facc9c7a..ce972259de 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg index 0697816d56..546a9b596d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xeplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg index e44c4f5428..860a31e4c9 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg index b0be244e42..936f83a242 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg index f940fd7d1c..6c93eb9a87 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg index d68ce76533..a555c6299c 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg index ed9faca836..b8c026ad7b 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg index 21869ae654..6910e572b6 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg index 426f9e675f..50e2b039a2 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg index 100634e396..d1f5ad7d8a 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_jr_w_pro [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg index 8d2ef865bf..2f824fc78d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg index 25641d5e0d..6dcd9c2ba3 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg index c326ce1bc8..879903b89e 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg index 75fb25195d..da115601db 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg index d9372d14e1..eaaa45d6a1 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg @@ -4,7 +4,7 @@ name = Coarse Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg index 1af949d34f..2cf2e68fad 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg @@ -4,7 +4,7 @@ name = Draft Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg index b1565b6a74..c67c821da3 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg @@ -4,7 +4,7 @@ name = Fine Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg index 332bbc03d8..8bd28d8c85 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg @@ -4,7 +4,7 @@ name = Normal Quality definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg index 25d508e13c..6b3ea6915b 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg @@ -1,10 +1,10 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting +definition = xyzprinting_base [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = fine weight = 0 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg index 69fd711730..9c7080d8da 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg @@ -1,10 +1,10 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting +definition = xyzprinting_base [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = normal weight = -1 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg index c3a7685412..dc6285b6ca 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg @@ -1,10 +1,10 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting +definition = xyzprinting_base [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = draft weight = -2 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg index bc1b3fb45f..35f7970c4b 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg @@ -1,10 +1,10 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting +definition = xyzprinting_base [metadata] -setting_version = 17 +setting_version = 19 type = quality quality_type = coarse weight = -3 From 46371025b13b764b49d1e74daad021d3cd5f7492 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Tue, 5 Oct 2021 10:54:22 +0800 Subject: [PATCH 021/135] update setting_version update setting_version --- resources/variants/xyzprinting_base_0.40.inst.cfg | 2 +- ...yzprinting_da_vinci_1p0_pro_copper_0.40.inst.cfg | 13 +++++++++++++ ...inting_da_vinci_jr_1p0a_pro_copper_0.40.inst.cfg | 13 +++++++++++++ ...yzprinting_da_vinci_jr_1p0a_pro_hs_0.40.inst.cfg | 13 +++++++++++++ ...ting_da_vinci_jr_pro_xeplus_copper_0.40.inst.cfg | 13 +++++++++++++ ...printing_da_vinci_jr_pro_xeplus_hs_0.40.inst.cfg | 13 +++++++++++++ ...nting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg | 2 +- ...zprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg | 2 +- .../xyzprinting_da_vinci_jr_w_pro_hs_0.40.inst.cfg | 13 +++++++++++++ .../xyzprinting_da_vinci_jr_w_pro_ss_0.40.inst.cfg | 13 +++++++++++++ .../xyzprinting_da_vinci_super_copper_0.40.inst.cfg | 2 +- .../xyzprinting_da_vinci_super_hs_0.40.inst.cfg | 2 +- 12 files changed, 96 insertions(+), 5 deletions(-) create mode 100644 resources/variants/xyzprinting_da_vinci_1p0_pro_copper_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_w_pro_hs_0.40.inst.cfg create mode 100644 resources/variants/xyzprinting_da_vinci_jr_w_pro_ss_0.40.inst.cfg diff --git a/resources/variants/xyzprinting_base_0.40.inst.cfg b/resources/variants/xyzprinting_base_0.40.inst.cfg index 2786f8864b..ade1dea1f1 100644 --- a/resources/variants/xyzprinting_base_0.40.inst.cfg +++ b/resources/variants/xyzprinting_base_0.40.inst.cfg @@ -4,7 +4,7 @@ version = 4 definition = xyzprinting_base [metadata] -setting_version = 17 +setting_version = 19 type = variant hardware_type = nozzle diff --git a/resources/variants/xyzprinting_da_vinci_1p0_pro_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_1p0_pro_copper_0.40.inst.cfg new file mode 100644 index 0000000000..867fa94351 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_1p0_pro_copper_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Copper 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Copper 0.4mm Nozzle \ No newline at end of file diff --git a/resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40.inst.cfg new file mode 100644 index 0000000000..79833c630c --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Copper 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Copper 0.4mm Nozzle \ No newline at end of file diff --git a/resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40.inst.cfg new file mode 100644 index 0000000000..8d542987a8 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Hardened Steel 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Hardened Steel 0.4mm Nozzle \ No newline at end of file diff --git a/resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40.inst.cfg new file mode 100644 index 0000000000..bb83d95524 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Copper 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Copper 0.4mm Nozzle diff --git a/resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40.inst.cfg new file mode 100644 index 0000000000..1cda9d703c --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Hardened Steel 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Hardened Steel 0.4mm Nozzle diff --git a/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg index 7be2df76d1..39ae593be4 100644 --- a/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg +++ b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40.inst.cfg @@ -4,7 +4,7 @@ version = 4 definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = variant hardware_type = nozzle diff --git a/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg index 0004fd88ad..2d192c729a 100644 --- a/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg +++ b/resources/variants/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40.inst.cfg @@ -4,7 +4,7 @@ version = 4 definition = xyzprinting_da_vinci_jr_pro_xplus [metadata] -setting_version = 17 +setting_version = 19 type = variant hardware_type = nozzle diff --git a/resources/variants/xyzprinting_da_vinci_jr_w_pro_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_w_pro_hs_0.40.inst.cfg new file mode 100644 index 0000000000..1cda468b70 --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_w_pro_hs_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Hardened Steel 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Hardened Steel 0.4mm Nozzle \ No newline at end of file diff --git a/resources/variants/xyzprinting_da_vinci_jr_w_pro_ss_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_jr_w_pro_ss_0.40.inst.cfg new file mode 100644 index 0000000000..aaf2d4054d --- /dev/null +++ b/resources/variants/xyzprinting_da_vinci_jr_w_pro_ss_0.40.inst.cfg @@ -0,0 +1,13 @@ +[general] +name = Stainless Steel 0.4mm Nozzle +version = 4 +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 19 +type = variant +hardware_type = nozzle + +[values] +machine_nozzle_size = 0.4 +machine_nozzle_id = Stainless Steel 0.4mm Nozzle \ No newline at end of file diff --git a/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg index c793dfdb31..e5a37cb1ed 100644 --- a/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg +++ b/resources/variants/xyzprinting_da_vinci_super_copper_0.40.inst.cfg @@ -4,7 +4,7 @@ version = 4 definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = variant hardware_type = nozzle diff --git a/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg b/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg index 3108935fb6..bd76c921ec 100644 --- a/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg +++ b/resources/variants/xyzprinting_da_vinci_super_hs_0.40.inst.cfg @@ -4,7 +4,7 @@ version = 4 definition = xyzprinting_da_vinci_super [metadata] -setting_version = 17 +setting_version = 19 type = variant hardware_type = nozzle From d8dcd0affc6f81f5e04342ed39a3ddbad5132318 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 11:44:06 +0200 Subject: [PATCH 022/135] Replace three image layout with a single unified image This new image positions all the images correctly and makes sure it all uses the correct line width even though they are scaled relatively to each other. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 80 ++--------------- .../themes/cura-light/images/3d_printer.svg | 27 ------ .../cura-light/images/connected_cura.svg | 15 ---- .../cura-light/images/material_ecosystem.svg | 89 +++++++++++++++++++ .../cura-light/images/material_spool.svg | 28 ------ 5 files changed, 95 insertions(+), 144 deletions(-) delete mode 100644 resources/themes/cura-light/images/3d_printer.svg delete mode 100644 resources/themes/cura-light/images/connected_cura.svg create mode 100644 resources/themes/cura-light/images/material_ecosystem.svg delete mode 100644 resources/themes/cura-light/images/material_spool.svg diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 606286ab1c..be95efa009 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -45,81 +45,13 @@ Window font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") wrapMode: Text.WordWrap - width: parent.width - parent.anchors.margins * 2 - } - Row - { - /* - This is a row with 3 images, and a dashed line between each of them. - The images have various sizes, scaled to the window size: - - The computer screen and 3D printer have 1/3rd of the window size each. - - The remaining space is 2/3rds filled with the material spool image (so 2/9th in total). - - The remaining remaining space is divided equally over the two dashed lines (so 1/9th in total, or 1/18th per line). - */ width: parent.width - height: parent.height * 2 / 3 - Item - { - width: Math.round(parent.width * 2 / 9) - height: parent.height - Image - { - id: spool_image - source: UM.Theme.getImage("material_spool") - width: parent.width - UM.Theme.getSize("default_margin").width - anchors.bottom: parent.bottom - fillMode: Image.PreserveAspectFit - sourceSize.width: width - } - } - Canvas - { - width: Math.round(parent.width / 18) - height: UM.Theme.getSize("thick_lining").width - onPaint: { - var ctx = getContext("2d"); - ctx.setLineDash([2, 2]); - ctx.lineWidth = UM.Theme.getSize("thick_lining").width; - ctx.beginPath(); - ctx.moveTo(0, height / 2); - ctx.lineTo(width, height / 2); - ctx.stroke(); - } - anchors.bottom: parent.bottom - anchors.bottomMargin: spool_image.paintedHeight / 2 - height / 2 //Align to the vertical center of spool_image's real size. - } - Image - { - source: UM.Theme.getImage("connected_cura") - width: Math.round(parent.width / 3) - anchors.bottom: parent.bottom - fillMode: Image.PreserveAspectFit - sourceSize.width: width - } - Canvas - { - width: Math.round(parent.width / 18) - height: UM.Theme.getSize("thick_lining").width - onPaint: { - var ctx = getContext("2d"); - ctx.setLineDash([2, 2]); - ctx.lineWidth = UM.Theme.getSize("thick_lining").width; - ctx.beginPath(); - ctx.moveTo(0, height / 2); - ctx.lineTo(width, height / 2); - ctx.stroke(); - } - anchors.bottom: parent.bottom - anchors.bottomMargin: spool_image.paintedHeight / 2 - height / 2 //Align to the vertical center of spool_image's real size. - } - Image - { - source: UM.Theme.getImage("3d_printer") - width: Math.round(parent.width / 3) - anchors.bottom: parent.bottom - fillMode: Image.PreserveAspectFit - sourceSize.width: width - } + } + Image + { + source: UM.Theme.getImage("material_ecosystem") + width: parent.width + sourceSize.width: width } } } diff --git a/resources/themes/cura-light/images/3d_printer.svg b/resources/themes/cura-light/images/3d_printer.svg deleted file mode 100644 index 76651472ec..0000000000 --- a/resources/themes/cura-light/images/3d_printer.svg +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/resources/themes/cura-light/images/connected_cura.svg b/resources/themes/cura-light/images/connected_cura.svg deleted file mode 100644 index ea6f0935c9..0000000000 --- a/resources/themes/cura-light/images/connected_cura.svg +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/resources/themes/cura-light/images/material_ecosystem.svg b/resources/themes/cura-light/images/material_ecosystem.svg new file mode 100644 index 0000000000..30cf7a6473 --- /dev/null +++ b/resources/themes/cura-light/images/material_ecosystem.svg @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/resources/themes/cura-light/images/material_spool.svg b/resources/themes/cura-light/images/material_spool.svg deleted file mode 100644 index 80abb2c75c..0000000000 --- a/resources/themes/cura-light/images/material_spool.svg +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - From cef5c5da2a6051e578f90c0ceb936117f2c6b62b Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 12:05:26 +0200 Subject: [PATCH 023/135] Add link to help and button to continue These two are aligned vertically. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index be95efa009..2a8828ca82 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -4,6 +4,7 @@ import QtQuick 2.1 import QtQuick.Controls 2.1 import QtQuick.Window 2.1 +import Cura 1.1 as Cura import UM 1.2 as UM Window @@ -54,6 +55,33 @@ Window sourceSize.width: width } } + + Cura.PrimaryButton + { + id: startButton + anchors + { + right: parent.right + rightMargin: UM.Theme.getSize("default_margin").width + bottom: parent.bottom + bottomMargin: UM.Theme.getSize("default_margin").height + } + text: catalog.i18nc("@button", "Start") + onClicked: swipeView.currentIndex += 1 + } + Cura.TertiaryButton + { + anchors + { + left: parent.left + leftMargin: UM.Theme.getSize("default_margin").width + verticalCenter: startButton.verticalCenter + } + text: catalog.i18nc("@button", "Why do I need to sync material profiles?") + iconSource: UM.Theme.getIcon("LinkExternal") + isIconOnRightSide: true + onClicked: Qt.openUrlExternally("https://ultimaker.com") + } } } } \ No newline at end of file From 3b62759ff299611b6e02268231f88a4a9d4c5400 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 13:15:40 +0200 Subject: [PATCH 024/135] Design for sign in page of material sync dialog It's not functional yet at the moment, but this is a nice layout. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 2a8828ca82..64c52fb7e0 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -3,6 +3,7 @@ import QtQuick 2.1 import QtQuick.Controls 2.1 +import QtQuick.Layouts 1.15 import QtQuick.Window 2.1 import Cura 1.1 as Cura import UM 1.2 as UM @@ -23,6 +24,7 @@ Window { id: swipeView anchors.fill: parent + interactive: false Rectangle { @@ -83,5 +85,65 @@ Window onClicked: Qt.openUrlExternally("https://ultimaker.com") } } + + Rectangle + { + id: signinPage + color: UM.Theme.getColor("main_background") + + ColumnLayout + { + spacing: UM.Theme.getSize("default_margin").height + anchors.fill: parent + anchors.margins: UM.Theme.getSize("default_margin").width + + Label + { + text: catalog.i18nc("@title:header", "Sign in") + font: UM.Theme.getFont("large_bold") + color: UM.Theme.getColor("text") + Layout.preferredHeight: height + } + Label + { + text: catalog.i18nc("@text", "To automatically sync the material profiles with all your printers connected to Digital Factory you need to be signed in in Cura.") + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text") + wrapMode: Text.WordWrap + width: parent.width + Layout.maximumWidth: width + Layout.preferredHeight: height + } + Item + { + Layout.preferredWidth: parent.width + Layout.fillHeight: true + Image + { + source: UM.Theme.getImage("first_run_ultimaker_cloud") + width: parent.width / 2 + sourceSize.width: width + anchors.verticalCenter: parent.verticalCenter + anchors.horizontalCenter: parent.horizontalCenter + } + } + Item + { + width: parent.width + height: childrenRect.height + Layout.preferredHeight: height + Cura.SecondaryButton + { + anchors.left: parent.left + text: catalog.i18nc("@button", "Sync materials with USB") + } + Cura.PrimaryButton + { + anchors.right: parent.right + text: catalog.i18nc("@button", "Sign in") + } + } + } + } } } \ No newline at end of file From c761820d520e3b38435e513ac2617efa2821516c Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 13:22:33 +0200 Subject: [PATCH 025/135] Add behaviour to sign in page buttons It will now sign you in when you press that button. It doesn't automatically proceed to the next page when signed in though. For that I reckon I'll need to build that next page first, or at least the beginnings of it. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 64c52fb7e0..ee34df3194 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -136,11 +136,13 @@ Window { anchors.left: parent.left text: catalog.i18nc("@button", "Sync materials with USB") + onClicked: swipeView.currentIndex = swipeView.count - 1 //Go to the last page, which is USB. } Cura.PrimaryButton { anchors.right: parent.right text: catalog.i18nc("@button", "Sign in") + onClicked: Cura.API.account.login() } } } From 9b1c8d1c7aad98182d4d666a0f44d027d62e5a48 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 13:26:25 +0200 Subject: [PATCH 026/135] Add beginnings of printer list page We just need this to have something to navigate to from the other pages as I implement that it automatically skips the sign in page when already signed in, and that it continues after being signed in from the sign in page. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index ee34df3194..8d7be1e119 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -147,5 +147,27 @@ Window } } } + + Rectangle + { + id: printerListPage + color: UM.Theme.getColor("main_background") + + ColumnLayout + { + spacing: UM.Theme.getSize("default_margin").height + anchors.fill: parent + anchors.margins: UM.Theme.getSize("default_margin").width + + Label + { + text: catalog.i18nc("@title:header", "The following printers will receive the new material profiles") + font: UM.Theme.getFont("large_bold") + color: UM.Theme.getColor("text") + Layout.preferredHeight: height + } + //TODO: Add contents. + } + } } } \ No newline at end of file From f2aba01eff3290dca8bb40215c63c67928eab5d6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 13:32:37 +0200 Subject: [PATCH 027/135] Reset page index to 0 when re-opening sync dialogue When the user previously opened the dialog and advanced through the pages, but closes the window, then they'll probably have to restart when they want to try it again. Contributes to issue CURA-8609. --- cura/Machines/Models/MaterialManagementModel.py | 1 + resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 ++ 2 files changed, 3 insertions(+) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 31f9bfbc92..8f1d421ffb 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -277,6 +277,7 @@ class MaterialManagementModel(QObject): self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) if self._sync_all_dialog is None: # Failed to load QML file. return + self._sync_all_dialog.setProperty("pageIndex", 0) self._sync_all_dialog.show() @pyqtSlot(result = QUrl) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 8d7be1e119..88532d20e4 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -20,6 +20,8 @@ Window height: minimumHeight modality: Qt.ApplicationModal + property alias pageIndex: swipeView.currentIndex + SwipeView { id: swipeView From 0bb0c672c5fd8a2976aa6d7c6bc55a49947e8fe3 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 14:05:08 +0200 Subject: [PATCH 028/135] Skip sign in page if already signed in Contributes to issue CURA-8609. --- .../qml/Preferences/Materials/MaterialsSyncDialog.qml | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 88532d20e4..a852095357 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -71,7 +71,16 @@ Window bottomMargin: UM.Theme.getSize("default_margin").height } text: catalog.i18nc("@button", "Start") - onClicked: swipeView.currentIndex += 1 + onClicked: { + if(Cura.API.account.isLoggedIn) + { + swipeView.currentIndex += 2; //Skip sign in page. + } + else + { + swipeView.currentIndex += 1; + } + } } Cura.TertiaryButton { From ec79961153b3d25417f8639df69fbc08b3c109d6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 14:20:50 +0200 Subject: [PATCH 029/135] Skip to next page when login is successful Contributes to issue CURA-8609. --- .../Preferences/Materials/MaterialsSyncDialog.qml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index a852095357..b4162b63e9 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -102,6 +102,18 @@ Window id: signinPage color: UM.Theme.getColor("main_background") + Connections //While this page is active, continue to the next page if the user logs in. + { + target: Cura.API.account + function onLoginStateChanged(is_logged_in) + { + if(is_logged_in && signinPage.SwipeView.isCurrentItem) + { + swipeView.currentIndex += 1; + } + } + } + ColumnLayout { spacing: UM.Theme.getSize("default_margin").height From c95de3e37943252f972267cea98f7995dcee0839 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 14:30:42 +0200 Subject: [PATCH 030/135] Add main layout for printer list page The actual printer list is not implemented yet and some of these elements may need to be swapped out if there are no printers available. But this is the basis of it. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 33 ++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index b4162b63e9..caa693c685 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -189,7 +189,38 @@ Window color: UM.Theme.getColor("text") Layout.preferredHeight: height } - //TODO: Add contents. + Rectangle + { + color: "pink" + width: parent.width + Layout.preferredWidth: width + Layout.fillHeight: true + //TODO: Add printer list. + } + Cura.TertiaryButton + { + text: catalog.i18nc("@button", "Troubleshooting") + iconSource: UM.Theme.getIcon("LinkExternal") + Layout.preferredHeight: height + } + Item + { + width: parent.width + height: childrenRect.height + Layout.preferredWidth: width + Layout.preferredHeight: height + Cura.SecondaryButton + { + anchors.left: parent.left + text: catalog.i18nc("@button", "Sync materials with USB") + onClicked: swipeView.currentIndex = swipeView.count - 1 //Go to the last page, which is USB. + } + Cura.PrimaryButton + { + anchors.right: parent.right + text: catalog.i18nc("@button", "Sync") + } + } } } } From 7a47ffb1b7ea4b65d0ff528e4a9c72b155910a50 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 16:34:45 +0200 Subject: [PATCH 031/135] Add design for cards with printers I'm adding the theme entry 'card' once and for all to hopefully unify the design we're using for cards in the toolbox, in the digital library, in the LAN connection interface, etc. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 74 +++++++++++++++++-- resources/themes/cura-light/theme.json | 1 + 2 files changed, 69 insertions(+), 6 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index caa693c685..e7e8b1f2aa 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -2,7 +2,7 @@ //Cura is released under the terms of the LGPLv3 or higher. import QtQuick 2.1 -import QtQuick.Controls 2.1 +import QtQuick.Controls 2.15 import QtQuick.Layouts 1.15 import QtQuick.Window 2.1 import Cura 1.1 as Cura @@ -146,8 +146,7 @@ Window source: UM.Theme.getImage("first_run_ultimaker_cloud") width: parent.width / 2 sourceSize.width: width - anchors.verticalCenter: parent.verticalCenter - anchors.horizontalCenter: parent.horizontalCenter + anchors.centerIn: parent } } Item @@ -189,13 +188,76 @@ Window color: UM.Theme.getColor("text") Layout.preferredHeight: height } - Rectangle + ScrollView { - color: "pink" + id: printerListScrollView width: parent.width Layout.preferredWidth: width Layout.fillHeight: true - //TODO: Add printer list. + clip: true + ScrollBar.horizontal.policy: ScrollBar.AlwaysOff + + ListView + { + width: parent.width + spacing: UM.Theme.getSize("default_margin").height + + model: Cura.GlobalStacksModel {} + delegate: Rectangle + { + border.color: UM.Theme.getColor("lining") + border.width: UM.Theme.getSize("default_lining").width + width: printerListScrollView.width + height: UM.Theme.getSize("card").height + + Cura.IconWithText + { + anchors + { + verticalCenter: parent.verticalCenter + left: parent.left + leftMargin: Math.round(parent.height - height) / 2 //Equal margin on the left as above and below. + right: parent.right + rightMargin: Math.round(parent.height - height) / 2 + } + + text: model.name + font: UM.Theme.getFont("medium") + + source: UM.Theme.getIcon("Printer", "medium") + iconColor: UM.Theme.getColor("machine_selector_printer_icon") + iconSize: UM.Theme.getSize("machine_selector_icon").width + + //Printer status badge (always cloud, but whether it's online or offline). + UM.RecolorImage + { + width: UM.Theme.getSize("printer_status_icon").width + height: UM.Theme.getSize("printer_status_icon").height + anchors + { + bottom: parent.bottom + bottomMargin: -Math.round(height / 6) + left: parent.left + leftMargin: parent.iconSize - Math.round(width * 5 / 6) + } + + source: UM.Theme.getIcon("CloudBadge", "low") + color: "red" //TODO: connectionStatus == "printer_cloud_not_available" ? UM.Theme.getColor("cloud_unavailable") : UM.Theme.getColor("primary") + + //Make a themeable circle in the background so we can change it in other themes. + Rectangle + { + anchors.centerIn: parent + width: parent.width - 1.5 //1.5 pixels smaller (at least sqrt(2), regardless of pixel scale) so that the circle doesn't show up behind the icon due to anti-aliasing. + height: parent.height - 1.5 + radius: width / 2 + color: UM.Theme.getColor("connection_badge_background") + z: parent.z - 1 + } + } + } + } + } } Cura.TertiaryButton { diff --git a/resources/themes/cura-light/theme.json b/resources/themes/cura-light/theme.json index daa12b3390..148d020f60 100644 --- a/resources/themes/cura-light/theme.json +++ b/resources/themes/cura-light/theme.json @@ -540,6 +540,7 @@ "section_icon": [2, 2], "section_icon_column": [2.5, 2.5], "rating_star": [1.0, 1.0], + "card": [25.0, 6.0], "setting": [25.0, 1.8], "setting_control": [11.0, 2.0], From 554f580f131b5db521c1a03eaaf1c2209202f564 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 17:28:26 +0200 Subject: [PATCH 032/135] Add extra card to refresh printer list Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 65 +++++++++++++++++++ .../cura-light/icons/default/EmptyInfo.svg | 3 + 2 files changed, 68 insertions(+) create mode 100644 resources/themes/cura-light/icons/default/EmptyInfo.svg diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index e7e8b1f2aa..06a26b2ad4 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -199,6 +199,7 @@ Window ListView { + id: printerList width: parent.width spacing: UM.Theme.getSize("default_margin").height @@ -257,6 +258,70 @@ Window } } } + + footer: Item + { + width: printerListScrollView.width + height: UM.Theme.getSize("card").height + UM.Theme.getSize("default_margin").height + Rectangle + { + border.color: UM.Theme.getColor("lining") + border.width: UM.Theme.getSize("default_lining").width + anchors.fill: parent + anchors.topMargin: UM.Theme.getSize("default_margin").height + + RowLayout + { + anchors + { + fill: parent + leftMargin: (parent.height - infoIcon.height) / 2 //Same margin on the left as top and bottom. + rightMargin: (parent.height - infoIcon.height) / 2 + } + spacing: UM.Theme.getSize("default_margin").width + + Rectangle //Info icon with a themeable color and background. + { + id: infoIcon + width: UM.Theme.getSize("machine_selector_icon").width + height: width + Layout.preferredWidth: width + Layout.alignment: Qt.AlignVCenter + radius: height / 2 + color: UM.Theme.getColor("warning") + + UM.RecolorImage + { + source: UM.Theme.getIcon("EmptyInfo") + anchors.fill: parent + color: UM.Theme.getColor("machine_selector_printer_icon") + } + } + + Label + { + text: catalog.i18nc("@text Asking the user whether printers are missing in a list.", "Printers missing?") + + "\n" + + catalog.i18nc("@text", "Make sure all your printers are turned ON and connected to Digital Factory.") + font: UM.Theme.getFont("medium") + elide: Text.ElideRight + + Layout.alignment: Qt.AlignVCenter + Layout.fillWidth: true + } + + Cura.SecondaryButton + { + id: refreshListButton + text: catalog.i18nc("@button", "Refresh List") + iconSource: UM.Theme.getIcon("ArrowDoubleCircleRight") + + Layout.alignment: Qt.AlignVCenter + Layout.preferredWidth: width + } + } + } + } } } Cura.TertiaryButton diff --git a/resources/themes/cura-light/icons/default/EmptyInfo.svg b/resources/themes/cura-light/icons/default/EmptyInfo.svg new file mode 100644 index 0000000000..49d67746d1 --- /dev/null +++ b/resources/themes/cura-light/icons/default/EmptyInfo.svg @@ -0,0 +1,3 @@ + + + From c8931d4c23356470f416c75d65858f82039a0495 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 17:31:27 +0200 Subject: [PATCH 033/135] Implement sync function for refresh button Quite simple. There's not a lot of feedback though when you press that button. Maybe we need to look at that. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 06a26b2ad4..0c410c996a 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -318,6 +318,8 @@ Window Layout.alignment: Qt.AlignVCenter Layout.preferredWidth: width + + onClicked: Cura.API.account.sync(true) } } } From d16217c674cb7ea379037f9b4487678bf4a20586 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 5 Oct 2021 17:44:15 +0200 Subject: [PATCH 034/135] Implement filter for printer list to only show printers with certain configured connections Because here we only want to show cloud-connected printers. Contributes to issue CURA-8609. --- cura/Machines/Models/GlobalStacksModel.py | 25 +++++++++++++++++-- .../Materials/MaterialsSyncDialog.qml | 5 +++- 2 files changed, 27 insertions(+), 3 deletions(-) diff --git a/cura/Machines/Models/GlobalStacksModel.py b/cura/Machines/Models/GlobalStacksModel.py index 712597c2e7..bcc6a81584 100644 --- a/cura/Machines/Models/GlobalStacksModel.py +++ b/cura/Machines/Models/GlobalStacksModel.py @@ -1,7 +1,7 @@ -# Copyright (c) 2018 Ultimaker B.V. +# Copyright (c) 2021 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. -from PyQt5.QtCore import Qt, QTimer +from PyQt5.QtCore import Qt, QTimer, pyqtProperty, pyqtSignal from UM.Qt.ListModel import ListModel from UM.i18n import i18nCatalog @@ -37,12 +37,29 @@ class GlobalStacksModel(ListModel): self._change_timer.setSingleShot(True) self._change_timer.timeout.connect(self._update) + self._filter_connection_type = -1 + # Listen to changes CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) CuraContainerRegistry.getInstance().containerMetaDataChanged.connect(self._onContainerChanged) CuraContainerRegistry.getInstance().containerRemoved.connect(self._onContainerChanged) self._updateDelayed() + filterConnectionTypeChanged = pyqtSignal() + + def setFilterConnectionType(self, new_filter: int) -> None: + self._filter_connection_type = new_filter + + @pyqtProperty(int, fset = setFilterConnectionType, notify = filterConnectionTypeChanged) + def filterConnectionType(self) -> int: + """ + The connection type to filter the list of printers by. + + Only printers that match this connection type will be listed in the + model. + """ + return self._filter_connection_type + def _onContainerChanged(self, container) -> None: """Handler for container added/removed events from registry""" @@ -58,6 +75,10 @@ class GlobalStacksModel(ListModel): container_stacks = CuraContainerRegistry.getInstance().findContainerStacks(type = "machine") for container_stack in container_stacks: + if self._filter_connection_type != -1: # We want to filter on connection types. + if not any((connection_type == self._filter_connection_type for connection_type in container_stack.configuredConnectionTypes)): + continue # No connection type on this printer matches the filter. + has_remote_connection = False for connection_type in container_stack.configuredConnectionTypes: diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 0c410c996a..34c263bf6b 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -203,7 +203,10 @@ Window width: parent.width spacing: UM.Theme.getSize("default_margin").height - model: Cura.GlobalStacksModel {} + model: Cura.GlobalStacksModel + { + filterConnectionType: 3 //Only show cloud connections. + } delegate: Rectangle { border.color: UM.Theme.getColor("lining") From 5db964aed10b37aa77f22281068d44333aa32bcb Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 6 Oct 2021 14:25:12 +0200 Subject: [PATCH 035/135] Link opening sync all window to the button that should open it This is a new button just merged in from the Master branch. With the window implemented, we can now properly open it. Contributes to issue CURA-8609. --- cura/Machines/Models/MaterialManagementModel.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 35b3f077ab..fda687c3ef 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -83,8 +83,7 @@ class MaterialManagementModel(QObject): def _onSyncMaterialsMessageActionTriggered(self, sync_message: Message, sync_message_action: str): if sync_message_action == "sync": - QDesktopServices.openUrl(QUrl("https://example.com/openSyncAllWindow")) - # self.openSyncAllWindow() + self.openSyncAllWindow() sync_message.hide() elif sync_message_action == "learn_more": QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-message")) From e5dc90a51917818dc57d0efd944af804ebd395be Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 6 Oct 2021 15:11:14 +0200 Subject: [PATCH 036/135] Add USB syncing page to swipe view Looks like a lot of blank space. May need to adjust sizes. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 79 +++++++++++++++++++ .../themes/cura-light/images/insert_usb.svg | 33 ++++++++ 2 files changed, 112 insertions(+) create mode 100644 resources/themes/cura-light/images/insert_usb.svg diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 34c263bf6b..215ac646ff 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -341,6 +341,7 @@ Window height: childrenRect.height Layout.preferredWidth: width Layout.preferredHeight: height + Cura.SecondaryButton { anchors.left: parent.left @@ -355,5 +356,83 @@ Window } } } + + Rectangle + { + id: removableDriveSyncPage + color: UM.Theme.getColor("main_background") + + ColumnLayout + { + spacing: UM.Theme.getSize("default_margin").height + anchors.fill: parent + anchors.margins: UM.Theme.getSize("default_margin").width + + Label + { + text: catalog.i18nc("@title:header", "Sync material profiles via USB") + font: UM.Theme.getFont("large_bold") + color: UM.Theme.getColor("text") + Layout.preferredHeight: height + } + Label + { + text: catalog.i18nc("@text In the UI this is followed by a list of steps the user needs to take.", "Follow the following steps to load the new material profiles to your printer.") + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text") + wrapMode: Text.WordWrap + width: parent.width + Layout.maximumWidth: width + Layout.preferredHeight: height + } + Row + { + width: parent.width + Layout.preferredWidth: width + Layout.fillHeight: true + spacing: UM.Theme.getSize("default_margin").width + + Image + { + source: UM.Theme.getImage("insert_usb") + width: parent.width / 4 + height: width + anchors.verticalCenter: parent.verticalCenter + sourceSize.width: width + } + Label + { + text: "1. " + catalog.i18nc("@text 'hit' as in pressing the button", "Hit the export material archive button.") + + "\n2. " + catalog.i18nc("@text", "Save the .umm file on a USB stick.") + + "\n3. " + catalog.i18nc("@text", "Insert the USB stick into your printer and launch the procedure to load new material profiles.") + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text") + wrapMode: Text.WordWrap + width: parent.width * 3 / 4 - UM.Theme.getSize("default_margin").width + anchors.verticalCenter: parent.verticalCenter + } + } + Item + { + width: parent.width + height: childrenRect.height + Layout.preferredWidth: width + Layout.preferredHeight: height + + Cura.TertiaryButton + { + anchors.left: parent.left + text: catalog.i18nc("@button", "How to load new material profiles to my printer") + iconSource: UM.Theme.getIcon("LinkExternal") + onClicked: Qt.openUrlExternally("https://www.ultimaker.com") + } + Cura.PrimaryButton + { + anchors.right: parent.right + text: catalog.i18nc("@button", "Export material archive") + } + } + } + } } } \ No newline at end of file diff --git a/resources/themes/cura-light/images/insert_usb.svg b/resources/themes/cura-light/images/insert_usb.svg new file mode 100644 index 0000000000..4a343e1477 --- /dev/null +++ b/resources/themes/cura-light/images/insert_usb.svg @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 038db1fc4f9522dd79da4b7073db3b615e6a7f19 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 6 Oct 2021 15:20:26 +0200 Subject: [PATCH 037/135] Implement functionality of export to USB button It now creates a similar dialogue of what the old button did. The dialogue is no longer necessary in the materials page, so I've moved it to here specifically. Contributes to issue CURA-8609. --- .../Models/MaterialManagementModel.py | 1 + .../Preferences/Materials/MaterialsPage.qml | 13 ------------ .../Materials/MaterialsSyncDialog.qml | 20 +++++++++++++++++++ 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index fda687c3ef..d5191988fa 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -332,6 +332,7 @@ class MaterialManagementModel(QObject): self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) if self._sync_all_dialog is None: # Failed to load QML file. return + self._sync_all_dialog.setProperty("materialManagementModel", self) self._sync_all_dialog.setProperty("pageIndex", 0) self._sync_all_dialog.show() diff --git a/resources/qml/Preferences/Materials/MaterialsPage.qml b/resources/qml/Preferences/Materials/MaterialsPage.qml index 1d3519624d..6ec23f001f 100644 --- a/resources/qml/Preferences/Materials/MaterialsPage.qml +++ b/resources/qml/Preferences/Materials/MaterialsPage.qml @@ -382,19 +382,6 @@ Item } } - FileDialog - { - id: exportAllMaterialsDialog - title: catalog.i18nc("@title:window", "Export All Materials") - selectExisting: false - nameFilters: ["Material archives (*.umm)", "All files (*)"] - onAccepted: - { - base.materialManagementModel.exportAll(fileUrl); - CuraApplication.setDefaultPath("dialog_material_path", folder); - } - } - MessageDialog { id: messageDialog diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 215ac646ff..2e9522e445 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -3,6 +3,7 @@ import QtQuick 2.1 import QtQuick.Controls 2.15 +import QtQuick.Dialogs 1.2 import QtQuick.Layouts 1.15 import QtQuick.Window 2.1 import Cura 1.1 as Cura @@ -20,6 +21,7 @@ Window height: minimumHeight modality: Qt.ApplicationModal + property variant materialManagementModel property alias pageIndex: swipeView.currentIndex SwipeView @@ -430,9 +432,27 @@ Window { anchors.right: parent.right text: catalog.i18nc("@button", "Export material archive") + onClicked: + { + exportUsbDialog.folder = materialManagementModel.getPreferredExportAllPath(); + exportUsbDialog.open(); + } } } } } } + + FileDialog + { + id: exportUsbDialog + title: catalog.i18nc("@title:window", "Export All Materials") + selectExisting: false + nameFilters: ["Material archives (*.umm)", "All files (*)"] + onAccepted: + { + materialManagementModel.exportAll(fileUrl); + CuraApplication.setDefaultPath("dialog_material_path", folder); + } + } } \ No newline at end of file From 52373c6850763f99386579b82955be39122c19c1 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 6 Oct 2021 15:46:43 +0200 Subject: [PATCH 038/135] Add correct links for troubleshooting buttons Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 2e9522e445..0eb3b30c63 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -95,7 +95,7 @@ Window text: catalog.i18nc("@button", "Why do I need to sync material profiles?") iconSource: UM.Theme.getIcon("LinkExternal") isIconOnRightSide: true - onClicked: Qt.openUrlExternally("https://ultimaker.com") + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-why") } } @@ -336,6 +336,7 @@ Window text: catalog.i18nc("@button", "Troubleshooting") iconSource: UM.Theme.getIcon("LinkExternal") Layout.preferredHeight: height + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-troubleshoot-cloud-printer") } Item { @@ -426,7 +427,7 @@ Window anchors.left: parent.left text: catalog.i18nc("@button", "How to load new material profiles to my printer") iconSource: UM.Theme.getIcon("LinkExternal") - onClicked: Qt.openUrlExternally("https://www.ultimaker.com") + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-how-usb") } Cura.PrimaryButton { From d9d83b4334a3643039ed4a23296713375ec13877 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 6 Oct 2021 16:42:56 +0200 Subject: [PATCH 039/135] Add page for when the user has no cloud printers It should show this image, instructions, and a refresh button. If the refresh button is pressed and the user now has more printers, it should automatically swap to the printer list. Or vice-versa if printers get deleted on the website. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 99 +++++++++++++++++-- .../cura-light/images/3d_printer_faded.svg | 29 ++++++ 2 files changed, 119 insertions(+), 9 deletions(-) create mode 100644 resources/themes/cura-light/images/3d_printer_faded.svg diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 0eb3b30c63..7a426b836c 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -51,7 +51,7 @@ Window text: catalog.i18nc("@text", "Following a few simple steps, you will be able to synchronize all your material profiles with your printers.") font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") - wrapMode: Text.WordWrap + wrapMode: Text.Wrap width: parent.width } Image @@ -73,7 +73,8 @@ Window bottomMargin: UM.Theme.getSize("default_margin").height } text: catalog.i18nc("@button", "Start") - onClicked: { + onClicked: + { if(Cura.API.account.isLoggedIn) { swipeView.currentIndex += 2; //Skip sign in page. @@ -134,7 +135,7 @@ Window text: catalog.i18nc("@text", "To automatically sync the material profiles with all your printers connected to Digital Factory you need to be signed in in Cura.") font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") - wrapMode: Text.WordWrap + wrapMode: Text.Wrap width: parent.width Layout.maximumWidth: width Layout.preferredHeight: height @@ -182,6 +183,7 @@ Window spacing: UM.Theme.getSize("default_margin").height anchors.fill: parent anchors.margins: UM.Theme.getSize("default_margin").width + visible: cloudPrinterList.count > 0 Label { @@ -205,10 +207,7 @@ Window width: parent.width spacing: UM.Theme.getSize("default_margin").height - model: Cura.GlobalStacksModel - { - filterConnectionType: 3 //Only show cloud connections. - } + model: cloudPrinterList delegate: Rectangle { border.color: UM.Theme.getColor("lining") @@ -358,6 +357,82 @@ Window } } } + + ColumnLayout //Placeholder for when the user has no cloud printers. + { + spacing: UM.Theme.getSize("default_margin").height + anchors.fill: parent + anchors.margins: UM.Theme.getSize("default_margin").width + visible: cloudPrinterList.count == 0 + + Label + { + text: catalog.i18nc("@title:header", "No printers found") + font: UM.Theme.getFont("large_bold") + color: UM.Theme.getColor("text") + Layout.preferredWidth: width + Layout.preferredHeight: height + } + Image + { + source: UM.Theme.getImage("3d_printer_faded") + sourceSize.width: width + fillMode: Image.PreserveAspectFit + Layout.alignment: Qt.AlignHCenter + Layout.preferredWidth: parent.width / 3 + } + Label + { + text: catalog.i18nc("@text", "It seems like you don't have access to any printers connected to Digital Factory.") + width: parent.width + horizontalAlignment: Text.AlignHCenter + wrapMode: Text.Wrap + Layout.preferredWidth: width + Layout.preferredHeight: height + } + Item + { + Layout.preferredWidth: parent.width + Layout.fillHeight: true + Cura.TertiaryButton + { + text: catalog.i18nc("@button", "Learn how to connect your printer to Digital Factory") + iconSource: UM.Theme.getIcon("LinkExternal") + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-add-cloud-printer") + anchors.horizontalCenter: parent.horizontalCenter + } + } + Item + { + width: parent.width + height: childrenRect.height + Layout.preferredWidth: width + Layout.preferredHeight: height + + Cura.SecondaryButton + { + anchors.left: parent.left + text: catalog.i18nc("@button", "Sync materials with USB") + onClicked: swipeView.currentIndex = swipeView.count - 1 //Go to the last page, which is USB. + } + Cura.PrimaryButton + { + id: disabledSyncButton + anchors.right: parent.right + text: catalog.i18nc("@button", "Sync") + enabled: false //If there are no printers, always disable this button. + } + Cura.SecondaryButton + { + anchors.right: disabledSyncButton.left + anchors.rightMargin: UM.Theme.getSize("default_margin").width + text: catalog.i18nc("@button", "Refresh") + iconSource: UM.Theme.getIcon("ArrowDoubleCircleRight") + outlineColor: "transparent" + onClicked: Cura.API.account.sync(true) + } + } + } } Rectangle @@ -383,7 +458,7 @@ Window text: catalog.i18nc("@text In the UI this is followed by a list of steps the user needs to take.", "Follow the following steps to load the new material profiles to your printer.") font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") - wrapMode: Text.WordWrap + wrapMode: Text.Wrap width: parent.width Layout.maximumWidth: width Layout.preferredHeight: height @@ -410,7 +485,7 @@ Window + "\n3. " + catalog.i18nc("@text", "Insert the USB stick into your printer and launch the procedure to load new material profiles.") font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") - wrapMode: Text.WordWrap + wrapMode: Text.Wrap width: parent.width * 3 / 4 - UM.Theme.getSize("default_margin").width anchors.verticalCenter: parent.verticalCenter } @@ -444,6 +519,12 @@ Window } } + Cura.GlobalStacksModel + { + id: cloudPrinterList + filterConnectionType: 3 //Only show cloud connections. + } + FileDialog { id: exportUsbDialog diff --git a/resources/themes/cura-light/images/3d_printer_faded.svg b/resources/themes/cura-light/images/3d_printer_faded.svg new file mode 100644 index 0000000000..001b12e266 --- /dev/null +++ b/resources/themes/cura-light/images/3d_printer_faded.svg @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 75c7d5c4f5271d62a511b9515c6e352f580b6803 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 6 Oct 2021 16:48:52 +0200 Subject: [PATCH 040/135] Link to USB page without depending on actual order of pages This is more future-proof. If someone were to add a page to the end, it wouldn't immediately break these buttons any more. An example of why self-documenting code can be good. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 7a426b836c..e038ac670d 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -161,7 +161,7 @@ Window { anchors.left: parent.left text: catalog.i18nc("@button", "Sync materials with USB") - onClicked: swipeView.currentIndex = swipeView.count - 1 //Go to the last page, which is USB. + onClicked: swipeView.currentIndex = removableDriveSyncPage.SwipeView.index } Cura.PrimaryButton { @@ -348,7 +348,7 @@ Window { anchors.left: parent.left text: catalog.i18nc("@button", "Sync materials with USB") - onClicked: swipeView.currentIndex = swipeView.count - 1 //Go to the last page, which is USB. + onClicked: swipeView.currentIndex = removableDriveSyncPage.SwipeView.index } Cura.PrimaryButton { @@ -413,7 +413,7 @@ Window { anchors.left: parent.left text: catalog.i18nc("@button", "Sync materials with USB") - onClicked: swipeView.currentIndex = swipeView.count - 1 //Go to the last page, which is USB. + onClicked: swipeView.currentIndex = removableDriveSyncPage.SwipeView.index } Cura.PrimaryButton { From 0bf4a3d944c20df0a935c8275513dcb4faafae80 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 13:49:20 +0200 Subject: [PATCH 041/135] Store online status of printer in the printer's metadata It's a little bit weird with the hidden global stack system when there's a cluster of various types of printers. But it should behave the same way. Contributes to issue CURA-8609. --- .../NetworkedPrinterOutputDevice.py | 13 +++++++---- cura/PrinterOutput/PrinterOutputDevice.py | 23 ++++++++++++++++--- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/cura/PrinterOutput/NetworkedPrinterOutputDevice.py b/cura/PrinterOutput/NetworkedPrinterOutputDevice.py index 9979354dba..42c1cd78aa 100644 --- a/cura/PrinterOutput/NetworkedPrinterOutputDevice.py +++ b/cura/PrinterOutput/NetworkedPrinterOutputDevice.py @@ -1,4 +1,4 @@ -# Copyright (c) 2018 Ultimaker B.V. +# Copyright (c) 2021 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. from UM.FileHandler.FileHandler import FileHandler #For typing. @@ -114,6 +114,11 @@ class NetworkedPrinterOutputDevice(PrinterOutputDevice): return b"".join(file_data_bytes_list) def _update(self) -> None: + """ + Update the connection state of this device. + + This is called on regular intervals. + """ if self._last_response_time: time_since_last_response = time() - self._last_response_time else: @@ -127,11 +132,11 @@ class NetworkedPrinterOutputDevice(PrinterOutputDevice): if time_since_last_response > self._timeout_time >= time_since_last_request: # Go (or stay) into timeout. if self._connection_state_before_timeout is None: - self._connection_state_before_timeout = self._connection_state + self._connection_state_before_timeout = self.connectionState self.setConnectionState(ConnectionState.Closed) - elif self._connection_state == ConnectionState.Closed: + elif self.connectionState == ConnectionState.Closed: # Go out of timeout. if self._connection_state_before_timeout is not None: # sanity check, but it should never be None here self.setConnectionState(self._connection_state_before_timeout) @@ -361,7 +366,7 @@ class NetworkedPrinterOutputDevice(PrinterOutputDevice): self._last_response_time = time() - if self._connection_state == ConnectionState.Connecting: + if self.connectionState == ConnectionState.Connecting: self.setConnectionState(ConnectionState.Connected) callback_key = reply.url().toString() + str(reply.operation()) diff --git a/cura/PrinterOutput/PrinterOutputDevice.py b/cura/PrinterOutput/PrinterOutputDevice.py index 526d713748..2939076a9a 100644 --- a/cura/PrinterOutput/PrinterOutputDevice.py +++ b/cura/PrinterOutput/PrinterOutputDevice.py @@ -1,11 +1,13 @@ -# Copyright (c) 2018 Ultimaker B.V. +# Copyright (c) 2021 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. + from enum import IntEnum from typing import Callable, List, Optional, Union from PyQt5.QtCore import pyqtProperty, pyqtSignal, QObject, QTimer, QUrl from PyQt5.QtWidgets import QMessageBox +import cura.CuraApplication # Imported like this to prevent circular imports. from UM.Logger import Logger from UM.Signal import signalemitter from UM.Qt.QtApplication import QtApplication @@ -120,11 +122,22 @@ class PrinterOutputDevice(QObject, OutputDevice): callback(QMessageBox.Yes) def isConnected(self) -> bool: - return self._connection_state != ConnectionState.Closed and self._connection_state != ConnectionState.Error + """ + Returns whether we could theoretically send commands to this printer. + :return: `True` if we are connected, or `False` if not. + """ + return self.connectionState != ConnectionState.Closed and self.connectionState != ConnectionState.Error def setConnectionState(self, connection_state: "ConnectionState") -> None: - if self._connection_state != connection_state: + """ + Store the connection state of the printer. + + Causes everything that displays the connection state to update its QML models. + :param connection_state: The new connection state to store. + """ + if self.connectionState != connection_state: self._connection_state = connection_state + cura.CuraApplication.CuraApplication.getInstance().getGlobalContainerStack().setMetaDataEntry("is_online", self.isConnected()) self.connectionStateChanged.emit(self._id) @pyqtProperty(int, constant = True) @@ -133,6 +146,10 @@ class PrinterOutputDevice(QObject, OutputDevice): @pyqtProperty(int, notify = connectionStateChanged) def connectionState(self) -> "ConnectionState": + """ + Get the connection state of the printer, e.g. whether it is connected, still connecting, error state, etc. + :return: The current connection state of this output device. + """ return self._connection_state def _update(self) -> None: From 93953630ec8347ae1f3db720a47d715c9fb48f3b Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 14:08:02 +0200 Subject: [PATCH 042/135] Update online status when updating account printer status This updates the metadata entries. Naturally this updates every 60 seconds in Cura, but it could also manually be triggered by the refresh button. Contributes to issue CURA-8609. --- .../src/Cloud/CloudOutputDeviceManager.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py index b35cd5b5f5..dfc1d3e39d 100644 --- a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py +++ b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py @@ -1,4 +1,4 @@ -# Copyright (c) 2020 Ultimaker B.V. +# Copyright (c) 2021 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. import os @@ -16,6 +16,7 @@ from UM.Util import parseBool from cura.API import Account from cura.API.Account import SyncState from cura.CuraApplication import CuraApplication +from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To update printer metadata with information received about cloud printers. from cura.Settings.CuraStackBuilder import CuraStackBuilder from cura.Settings.GlobalStack import GlobalStack from cura.UltimakerCloud.UltimakerCloudConstants import META_UM_LINKED_TO_ACCOUNT @@ -129,6 +130,8 @@ class CloudOutputDeviceManager: self._um_cloud_printers[device_id].setMetaDataEntry(META_UM_LINKED_TO_ACCOUNT, True) self._onDevicesDiscovered(new_clusters) + self._updateOnlinePrinters(all_clusters) + # Hide the current removed_printers_message, if there is any if self._removed_printers_message: self._removed_printers_message.actionTriggered.disconnect(self._onRemovedPrintersMessageActionTriggered) @@ -255,6 +258,16 @@ class CloudOutputDeviceManager: message_text = self.i18n_catalog.i18nc("info:status", "Printers added from Digital Factory:") + "
    " + device_names + "
" message.setText(message_text) + def _updateOnlinePrinters(self, printer_responses: Dict[str, CloudClusterResponse]) -> None: + """ + Update the metadata of the printers to store whether they are online or not. + :param printer_responses: The responses received from the API about the printer statuses. + """ + for container_stack in CuraContainerRegistry.getInstance().findContainerStacks(type = "machine"): + cluster_id = container_stack.getMetaDataEntry("um_cloud_cluster_id", "") + if cluster_id in printer_responses: + container_stack.setMetaDataEntry("is_online", printer_responses[cluster_id].is_online) + def _updateOutdatedMachine(self, outdated_machine: GlobalStack, new_cloud_output_device: CloudOutputDevice) -> None: """ Update the cloud metadata of a pre-existing machine that is rediscovered (e.g. if the printer was removed and From 32c63c2757f5ed6c654486ff28b41dae519b0618 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 14:09:12 +0200 Subject: [PATCH 043/135] Add isOnline role to GlobalStacksModel This way we can filter for only online printers or display whether printers are online or not in the future. Contributes to issue CURA-8609. --- cura/Machines/Models/GlobalStacksModel.py | 6 +++++- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cura/Machines/Models/GlobalStacksModel.py b/cura/Machines/Models/GlobalStacksModel.py index bcc6a81584..82ed03e935 100644 --- a/cura/Machines/Models/GlobalStacksModel.py +++ b/cura/Machines/Models/GlobalStacksModel.py @@ -20,6 +20,7 @@ class GlobalStacksModel(ListModel): MetaDataRole = Qt.UserRole + 5 DiscoverySourceRole = Qt.UserRole + 6 # For separating local and remote printers in the machine management page RemovalWarningRole = Qt.UserRole + 7 + IsOnlineRole = Qt.UserRole + 8 def __init__(self, parent = None) -> None: super().__init__(parent) @@ -31,6 +32,7 @@ class GlobalStacksModel(ListModel): self.addRoleName(self.HasRemoteConnectionRole, "hasRemoteConnection") self.addRoleName(self.MetaDataRole, "metadata") self.addRoleName(self.DiscoverySourceRole, "discoverySource") + self.addRoleName(self.IsOnlineRole, "isOnline") self._change_timer = QTimer() self._change_timer.setInterval(200) @@ -91,6 +93,7 @@ class GlobalStacksModel(ListModel): device_name = container_stack.getMetaDataEntry("group_name", container_stack.getName()) section_name = "Connected printers" if has_remote_connection else "Preset printers" section_name = self._catalog.i18nc("@info:title", section_name) + is_online = container_stack.getMetaDataEntry("is_online", False) default_removal_warning = self._catalog.i18nc( "@label {0} is the name of a printer that's about to be deleted.", @@ -103,6 +106,7 @@ class GlobalStacksModel(ListModel): "hasRemoteConnection": has_remote_connection, "metadata": container_stack.getMetaData().copy(), "discoverySource": section_name, - "removalWarning": removal_warning}) + "removalWarning": removal_warning, + "isOnline": is_online}) items.sort(key=lambda i: (not i["hasRemoteConnection"], i["name"])) self.setItems(items) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index e038ac670d..651963fa86 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -247,7 +247,7 @@ Window } source: UM.Theme.getIcon("CloudBadge", "low") - color: "red" //TODO: connectionStatus == "printer_cloud_not_available" ? UM.Theme.getColor("cloud_unavailable") : UM.Theme.getColor("primary") + color: model.isOnline ? UM.Theme.getColor("primary") : UM.Theme.getColor("cloud_unavailable") //Make a themeable circle in the background so we can change it in other themes. Rectangle From 82342762049fadc812dfb89331055af219cabc76 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 14:13:54 +0200 Subject: [PATCH 044/135] Add log entry when syncing with cloud printers Not only do I now have an interface where the user doesn't get any feedback when syncing happens, but even in the log there was nothing shown when it happens. Contributes to issue CURA-8609. --- .../UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py index dfc1d3e39d..5b1844e7cb 100644 --- a/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py +++ b/plugins/UM3NetworkPrinting/src/Cloud/CloudOutputDeviceManager.py @@ -157,6 +157,8 @@ class CloudOutputDeviceManager: self._syncing = False self._account.setSyncState(self.SYNC_SERVICE_NAME, SyncState.SUCCESS) + Logger.debug("Synced cloud printers with account.") + def _onGetRemoteClusterFailed(self, reply: QNetworkReply, error: QNetworkReply.NetworkError) -> None: self._syncing = False self._account.setSyncState(self.SYNC_SERVICE_NAME, SyncState.ERROR) From 07b2c1b7775d9147703b709f48c3ba274f9fc18e Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 14:21:03 +0200 Subject: [PATCH 045/135] Add option to only show printers that are online I have a feeling this will be abused later. But fine. We currently need it for the list of printers that we can sync materials to via the cloud. Contributes to issue CURA-8609. --- cura/Machines/Models/GlobalStacksModel.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/cura/Machines/Models/GlobalStacksModel.py b/cura/Machines/Models/GlobalStacksModel.py index 82ed03e935..0f01df6b28 100644 --- a/cura/Machines/Models/GlobalStacksModel.py +++ b/cura/Machines/Models/GlobalStacksModel.py @@ -40,6 +40,7 @@ class GlobalStacksModel(ListModel): self._change_timer.timeout.connect(self._update) self._filter_connection_type = -1 + self._filter_online_only = False # Listen to changes CuraContainerRegistry.getInstance().containerAdded.connect(self._onContainerChanged) @@ -48,7 +49,6 @@ class GlobalStacksModel(ListModel): self._updateDelayed() filterConnectionTypeChanged = pyqtSignal() - def setFilterConnectionType(self, new_filter: int) -> None: self._filter_connection_type = new_filter @@ -62,6 +62,17 @@ class GlobalStacksModel(ListModel): """ return self._filter_connection_type + filterOnlineOnlyChanged = pyqtSignal() + def setFilterOnlineOnly(self, new_filter: bool) -> None: + self._filter_online_only = new_filter + + @pyqtProperty(bool, fset = setFilterOnlineOnly, notify = filterOnlineOnlyChanged) + def filterOnlineOnly(self) -> bool: + """ + Whether to filter the global stacks to show only printers that are online. + """ + return self._filter_online_only + def _onContainerChanged(self, container) -> None: """Handler for container added/removed events from registry""" @@ -90,10 +101,13 @@ class GlobalStacksModel(ListModel): if parseBool(container_stack.getMetaDataEntry("hidden", False)): continue + is_online = container_stack.getMetaDataEntry("is_online", False) + if self._filter_online_only and not is_online: + continue + device_name = container_stack.getMetaDataEntry("group_name", container_stack.getName()) section_name = "Connected printers" if has_remote_connection else "Preset printers" section_name = self._catalog.i18nc("@info:title", section_name) - is_online = container_stack.getMetaDataEntry("is_online", False) default_removal_warning = self._catalog.i18nc( "@label {0} is the name of a printer that's about to be deleted.", From a7f172d8360b0003c6551e1dc31fe854d5e873f4 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 14:22:46 +0200 Subject: [PATCH 046/135] Only show online printers in list of printers to sync to We can only sync with printers that are currently online. We'll just send it to the account to sync with everything. But these are the ones it should arrive with. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 651963fa86..00e19ded9f 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -247,7 +247,7 @@ Window } source: UM.Theme.getIcon("CloudBadge", "low") - color: model.isOnline ? UM.Theme.getColor("primary") : UM.Theme.getColor("cloud_unavailable") + color: UM.Theme.getColor("primary") //Make a themeable circle in the background so we can change it in other themes. Rectangle @@ -523,6 +523,7 @@ Window { id: cloudPrinterList filterConnectionType: 3 //Only show cloud connections. + filterOnlineOnly: true //Only show printers that are online. } FileDialog From 599c59bd3a92ec9c7df6402110ec1cbfac6c746d Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 15:15:57 +0200 Subject: [PATCH 047/135] Add a background job to upload material archives It creates the archive now. It doesn't yet upload it. Contributes to issue CURA-8609. --- .../Models/MaterialManagementModel.py | 9 +++++++ cura/PrinterOutput/UploadMaterialsJob.py | 25 +++++++++++++++++++ .../Materials/MaterialsSyncDialog.qml | 1 + 3 files changed, 35 insertions(+) create mode 100644 cura/PrinterOutput/UploadMaterialsJob.py diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index d5191988fa..617fc5be9e 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -16,6 +16,7 @@ from UM.Signal import postponeSignals, CompressTechnique import cura.CuraApplication # Imported like this to prevent circular imports. from cura.Machines.ContainerTree import ContainerTree +from cura.PrinterOutput.UploadMaterialsJob import UploadMaterialsJob # To export materials to the output printer. from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To find the sets of materials belonging to each other, and currently loaded extruder stacks. if TYPE_CHECKING: @@ -385,3 +386,11 @@ class MaterialManagementModel(QObject): archive.writestr(filename, material.serialize()) except OSError as e: Logger.log("e", f"An error has occurred while writing the material \'{metadata['id']}\' in the file \'{filename}\': {e}.") + + @pyqtSlot() + def exportUpload(self) -> None: + """ + Export all materials and upload them to the user's account. + """ + job = UploadMaterialsJob() + job.start() diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py new file mode 100644 index 0000000000..42254d2475 --- /dev/null +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -0,0 +1,25 @@ +# Copyright (c) 2021 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. + +from PyQt5.QtCore import QUrl +import os # To delete the archive when we're done. +import tempfile # To create an archive before we upload it. + +import cura.CuraApplication # Imported like this to prevent circular imports. +from UM.Job import Job + + +class UploadMaterialsJob(Job): + """ + Job that uploads a set of materials to the Digital Factory. + """ + + def run(self): + archive_file = tempfile.NamedTemporaryFile("wb", delete = False) + archive_file.close() + + cura.CuraApplication.CuraApplication.getInstance().getMaterialManagementModel().exportAll(QUrl.fromLocalFile(archive_file.name)) + + print("Creating archive completed. Now we need to upload it.") # TODO: Upload that file. + + os.remove(archive_file.name) # Clean up. \ No newline at end of file diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 00e19ded9f..0bcafba8d2 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -354,6 +354,7 @@ Window { anchors.right: parent.right text: catalog.i18nc("@button", "Sync") + onClicked: materialManagementModel.exportUpload() } } } From 042bd46fba85bcdb77d3f325b1ccdc7f654070c8 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 15:59:42 +0200 Subject: [PATCH 048/135] Don't import CuraApplication if not type checking Otherwise we'll get unnecessary import loops here. Contributes to issue CURA-8609. --- cura/UltimakerCloud/UltimakerCloudScope.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/cura/UltimakerCloud/UltimakerCloudScope.py b/cura/UltimakerCloud/UltimakerCloudScope.py index 5477423099..c8ac35f893 100644 --- a/cura/UltimakerCloud/UltimakerCloudScope.py +++ b/cura/UltimakerCloud/UltimakerCloudScope.py @@ -1,9 +1,15 @@ +# Copyright (c) 2021 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. + from PyQt5.QtNetwork import QNetworkRequest from UM.Logger import Logger from UM.TaskManagement.HttpRequestScope import DefaultUserAgentScope from cura.API import Account -from cura.CuraApplication import CuraApplication + +from typing import TYPE_CHECKING +if TYPE_CHECKING: + from cura.CuraApplication import CuraApplication class UltimakerCloudScope(DefaultUserAgentScope): @@ -12,7 +18,7 @@ class UltimakerCloudScope(DefaultUserAgentScope): Also add the user agent headers (see DefaultUserAgentScope). """ - def __init__(self, application: CuraApplication): + def __init__(self, application: "CuraApplication"): super().__init__(application) api = application.getCuraAPI() self._account = api.account # type: Account From 2b785343b59288e738e09ef49f771223db8d0212 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 16:02:31 +0200 Subject: [PATCH 049/135] Implement basic uploading of material Steps involved are: - Create an archive of all materials. - Request the cloud API to provide a URL to upload the archive to. - Upload the archive to that API. Currently the two internet requests are asynchronous, meaning that the job will 'end' before the upload is complete. Most likely the job instance will even be deleted before we get a response from the server. So this won't work, really. Need to structure that a bit differently. But I want to save this progress because it embodies the happy path well. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 62 +++++++++++++++++++++++- 1 file changed, 60 insertions(+), 2 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 42254d2475..e675524ec4 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -4,22 +4,80 @@ from PyQt5.QtCore import QUrl import os # To delete the archive when we're done. import tempfile # To create an archive before we upload it. +import enum import cura.CuraApplication # Imported like this to prevent circular imports. +from cura.UltimakerCloud import UltimakerCloudConstants # To know where the API is. +from cura.UltimakerCloud.UltimakerCloudScope import UltimakerCloudScope # To know how to communicate with this server. from UM.Job import Job +from UM.Logger import Logger +from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. +from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope +from typing import Optional, TYPE_CHECKING +if TYPE_CHECKING: + from PyQt5.QtNetwork import QNetworkReply class UploadMaterialsJob(Job): """ Job that uploads a set of materials to the Digital Factory. """ + UPLOAD_REQUEST_URL = f"{UltimakerCloudConstants.CuraDigitalFactoryURL}/materials/profile_upload" + + class Result(enum.IntEnum): + SUCCCESS = 0 + FAILED = 1 + + def __init__(self): + super().__init__() + self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope + def run(self): archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() cura.CuraApplication.CuraApplication.getInstance().getMaterialManagementModel().exportAll(QUrl.fromLocalFile(archive_file.name)) - print("Creating archive completed. Now we need to upload it.") # TODO: Upload that file. + http = HttpRequestManager.getInstance() + http.get( + url = self.UPLOAD_REQUEST_URL, + callback = self.onUploadRequestCompleted, + error_callback = self.onError, + scope = self._scope + ) - os.remove(archive_file.name) # Clean up. \ No newline at end of file + def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): + if error is not None: + Logger.error(f"Could not request URL to upload material archive to: {error}") + self.setResult(self.Result.FAILED) + return + + response_data = HttpRequestManager.readJSON(reply) + if response_data is None: + Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") + self.setResult(self.Result.FAILED) + return + if "upload_url" not in response_data: + Logger.error(f"Invalid response to material upload request: Missing 'upload_url' field to upload archive to.") + self.setResult(self.Result.Failed) + return + + upload_url = response_data["upload_url"] + http = HttpRequestManager.getInstance() + http.put( + url = upload_url, + callback = self.onUploadCompleted, + error_callback = self.onError, + scope = self._scope + ) + + def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): + if error is not None: + Logger.error(f"Failed to upload material archive: {error}") + self.setResult(self.Result.FAILED) + return + self.setResult(self.Result.SUCCESS) + + def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): + pass # TODO: Handle errors. \ No newline at end of file From fb7e67b8ad575ca8227cee0fb56c3a19303a2f54 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 16:51:04 +0200 Subject: [PATCH 050/135] Change 'hit' to 'click' This is more consistent with other texts. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 0bcafba8d2..489bfc237a 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -481,7 +481,7 @@ Window } Label { - text: "1. " + catalog.i18nc("@text 'hit' as in pressing the button", "Hit the export material archive button.") + text: "1. " + catalog.i18nc("@text", "Click the export material archive button.") + "\n2. " + catalog.i18nc("@text", "Save the .umm file on a USB stick.") + "\n3. " + catalog.i18nc("@text", "Insert the USB stick into your printer and launch the procedure to load new material profiles.") font: UM.Theme.getFont("medium") From 9729f4f3d2320a23181b544f4188089b35a382ef Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 8 Oct 2021 17:46:10 +0200 Subject: [PATCH 051/135] Set properties immediately upon constructing Instead of afterwards. A bit more efficient. Contributes to issue CURA-8609. --- cura/Machines/Models/MaterialManagementModel.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 617fc5be9e..2994b48918 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -330,11 +330,12 @@ class MaterialManagementModel(QObject): """ if self._sync_all_dialog is None: qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", "Materials", "MaterialsSyncDialog.qml") - self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) + self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, { + "materialManagementModel": self, + "pageIndex": 0 + }) if self._sync_all_dialog is None: # Failed to load QML file. return - self._sync_all_dialog.setProperty("materialManagementModel", self) - self._sync_all_dialog.setProperty("pageIndex", 0) self._sync_all_dialog.show() @pyqtSlot(result = QUrl) From 285a4584e78290a807578d6d54f3ff92eff50ba7 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 8 Oct 2021 18:12:35 +0200 Subject: [PATCH 052/135] Improve speed of the inherit button A few unneeded conversions were done. Also moved one check to python from JS --- cura/Settings/SettingInheritanceManager.py | 4 ++++ resources/qml/Settings/SettingItem.qml | 4 ++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/cura/Settings/SettingInheritanceManager.py b/cura/Settings/SettingInheritanceManager.py index 6179e76ab7..34dfaeb616 100644 --- a/cura/Settings/SettingInheritanceManager.py +++ b/cura/Settings/SettingInheritanceManager.py @@ -61,6 +61,10 @@ class SettingInheritanceManager(QObject): result.append(key) return result + @pyqtSlot(str, str, result = bool) + def hasOverrides(self, key: str, extruder_index: str): + return key in self.getOverridesForExtruder(key, extruder_index) + @pyqtSlot(str, str, result = "QStringList") def getOverridesForExtruder(self, key: str, extruder_index: str) -> List[str]: if self._global_container_stack is None: diff --git a/resources/qml/Settings/SettingItem.qml b/resources/qml/Settings/SettingItem.qml index 98a1601b48..0470e91faa 100644 --- a/resources/qml/Settings/SettingItem.qml +++ b/resources/qml/Settings/SettingItem.qml @@ -269,7 +269,7 @@ Item } // If the setting does not have a limit_to_extruder property (or is -1), use the active stack. - if (globalPropertyProvider.properties.limit_to_extruder === null || String(globalPropertyProvider.properties.limit_to_extruder) === "-1") + if (globalPropertyProvider.properties.limit_to_extruder === null || globalPropertyProvider.properties.limit_to_extruder === "-1") { return Cura.SettingInheritanceManager.settingsWithInheritanceWarning.indexOf(definition.key) >= 0 } @@ -283,7 +283,7 @@ Item { return false } - return Cura.SettingInheritanceManager.getOverridesForExtruder(definition.key, String(globalPropertyProvider.properties.limit_to_extruder)).indexOf(definition.key) >= 0 + return Cura.SettingInheritanceManager.hasOverrides(definition.key, globalPropertyProvider.properties.limit_to_extruder) } anchors.top: parent.top From 9ca5a526597588427eef2eef710183ef1a681a3a Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 8 Oct 2021 18:35:02 +0200 Subject: [PATCH 053/135] Also speed up the expression for the value of a setting item --- resources/qml/Settings/SettingView.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/qml/Settings/SettingView.qml b/resources/qml/Settings/SettingView.qml index 074946c6bd..cb96728973 100644 --- a/resources/qml/Settings/SettingView.qml +++ b/resources/qml/Settings/SettingView.qml @@ -302,7 +302,7 @@ Item { target: provider property: "containerStackId" - when: model.settable_per_extruder || (inheritStackProvider.properties.limit_to_extruder !== null && inheritStackProvider.properties.limit_to_extruder >= 0); + when: model.settable_per_extruder || (inheritStackProvider.properties.limit_to_extruder !== undefined && inheritStackProvider.properties.limit_to_extruder >= 0); value: { // Associate this binding with Cura.MachineManager.activeMachine.id in the beginning so this @@ -315,10 +315,10 @@ Item //Not settable per extruder or there only is global, so we must pick global. return contents.activeMachineId } - if (inheritStackProvider.properties.limit_to_extruder !== null && inheritStackProvider.properties.limit_to_extruder >= 0) + if (inheritStackProvider.properties.limit_to_extruder !== undefined && inheritStackProvider.properties.limit_to_extruder >= 0) { //We have limit_to_extruder, so pick that stack. - return Cura.ExtruderManager.extruderIds[String(inheritStackProvider.properties.limit_to_extruder)]; + return Cura.ExtruderManager.extruderIds[inheritStackProvider.properties.limit_to_extruder]; } if (Cura.ExtruderManager.activeExtruderStackId) { From 3b639d21191694561e5ca71d5eb5a273f58b02b0 Mon Sep 17 00:00:00 2001 From: legend069 Date: Mon, 11 Oct 2021 19:57:42 +1100 Subject: [PATCH 054/135] Update ChangeAtZ.py updated, as suggested by https://github.com/Ultimaker/Cura/pull/10554#issuecomment-939812755 --- .../PostProcessingPlugin/scripts/ChangeAtZ.py | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py index 8f41a1e3fb..a96603e9ee 100644 --- a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py +++ b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py @@ -11,7 +11,7 @@ # Modified by Jaime van Kessel (Ultimaker), j.vankessel@ultimaker.com to make it work for 15.10 / 2.x # Modified by Ruben Dulek (Ultimaker), r.dulek@ultimaker.com, to debug. # Modified by Wes Hanney, https://github.com/novamxd, Retract Length + Speed, Clean up -# Modified by Alex Jaxon, https://github.com/legend069, Added option to modify enclosure temperature +# Modified by Alex Jaxon, https://github.com/legend069, Added option to modify Build Volume Temperature # history / changelog: @@ -42,7 +42,7 @@ # Added support for outputting changes to LCD (untested). Added type hints to most functions and variables. Added more comments. Created GCodeCommand # class for better detection of G1 vs G10 or G11 commands, and accessing arguments. Moved most GCode methods to GCodeCommand class. Improved wording # of Single Layer vs Keep Layer to better reflect what was happening. -# V5.2.2 Alex Jaxon, Added option to modify enclosure temperature keeping current format +# V5.2.2 Alex Jaxon, Added option to modify Build Volume Temperature keeping current format # updated from "Experimental" to "Beta" # @@ -229,22 +229,22 @@ class ChangeAtZ(Script): "maximum_value_warning": "120", "enabled": "h1_Change_bedTemp" }, - "h1_Change_enclosureTemp": { - "label": "Change Enclosure Temp", - "description": "Select if Enclosure Temperature has to be changed", + "h1_Change_BuildVolumeTemperature": { + "label": "Change Build Volume Temperature", + "description": "Select if Build Volume Temperature has to be changed", "type": "bool", "default_value": false }, - "h2_enclosureTemp": { - "label": "Enclosure Temp", - "description": "New Enclosure Temperature", + "h2_BuildVolumeTemperature": { + "label": "Build Volume Temperature", + "description": "New Build Volume Temperature", "unit": "C", "type": "float", "default_value": 20, "minimum_value": "0", "minimum_value_warning": "10", "maximum_value_warning": "50", - "enabled": "h1_Change_enclosureTemp" + "enabled": "h1_Change_BuildVolumeTemperature" }, "i1_Change_extruderOne": { "label": "Change Extruder 1 Temp", @@ -369,7 +369,7 @@ class ChangeAtZ(Script): self.setIntSettingIfEnabled(caz_instance, "g3_Change_flowrateOne", "flowrateOne", "g4_flowrateOne") self.setIntSettingIfEnabled(caz_instance, "g5_Change_flowrateTwo", "flowrateTwo", "g6_flowrateTwo") self.setFloatSettingIfEnabled(caz_instance, "h1_Change_bedTemp", "bedTemp", "h2_bedTemp") - self.setFloatSettingIfEnabled(caz_instance, "h1_Change_enclosureTemp", "enclosureTemp", "h2_enclosureTemp") + self.setFloatSettingIfEnabled(caz_instance, "h1_Change_BuildVolumeTemperature", "BuildVolumeTemperature", "h2_BuildVolumeTemperature") self.setFloatSettingIfEnabled(caz_instance, "i1_Change_extruderOne", "extruderOne", "i2_extruderOne") self.setFloatSettingIfEnabled(caz_instance, "i3_Change_extruderTwo", "extruderTwo", "i4_extruderTwo") self.setIntSettingIfEnabled(caz_instance, "j1_Change_fanSpeed", "fanSpeed", "j2_fanSpeed") @@ -801,9 +801,9 @@ class ChangeAtZProcessor: if "bedTemp" in values: codes.append("BedTemp: " + str(round(values["bedTemp"]))) - # looking for wait for enclosure temp - if "enclosureTemp" in values: - codes.append("EnclosureTemp: " + str(round(values["enclosureTemp"]))) + # looking for wait for Build Volume Temperature + if "BuildVolumeTemperature" in values: + codes.append("BuildVolumeTemperature: " + str(round(values["BuildVolumeTemperature"]))) # set our extruder one temp (if specified) if "extruderOne" in values: @@ -887,9 +887,9 @@ class ChangeAtZProcessor: if "bedTemp" in values: codes.append("M140 S" + str(values["bedTemp"])) - # looking for wait for enclosure temp - if "enclosureTemp" in values: - codes.append("M141 S" + str(values["enclosureTemp"])) + # looking for wait for Build Volume Temperature + if "BuildVolumeTemperature" in values: + codes.append("M141 S" + str(values["BuildVolumeTemperature"])) # set our extruder one temp (if specified) if "extruderOne" in values: @@ -1397,12 +1397,12 @@ class ChangeAtZProcessor: # move to the next command return - # handle enclosure temp changes, really shouldn't want to wait for enclousure temp mid print though. + # handle Build Volume Temperature changes, really shouldn't want to wait for enclousure temp mid print though. if command.command == "M141" or command.command == "M191": # get our bed temp if provided if "S" in command.arguments: - self.lastValues["enclosureTemp"] = command.getArgumentAsFloat("S") + self.lastValues["BuildVolumeTemperature"] = command.getArgumentAsFloat("S") # move to the next command return From e7b49ee551590ce5652d18b782350772e33e8abb Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 13:11:54 +0200 Subject: [PATCH 055/135] Disable sync button while in progress Need to show a bit more feedback I think. Let's see what the design said... Contributes to issue CURA-8609. --- .../Models/MaterialManagementModel.py | 23 +++++++++++++++---- cura/PrinterOutput/UploadMaterialsJob.py | 4 ++++ .../Materials/MaterialsSyncDialog.qml | 8 +++++++ 3 files changed, 30 insertions(+), 5 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 2994b48918..ecd809fef0 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -2,7 +2,7 @@ # Cura is released under the terms of the LGPLv3 or higher. import copy # To duplicate materials. -from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QUrl +from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QUrl from PyQt5.QtGui import QDesktopServices from typing import Any, Dict, Optional, TYPE_CHECKING import uuid # To generate new GUIDs for new materials. @@ -35,6 +35,7 @@ class MaterialManagementModel(QObject): def __init__(self, parent: QObject = None): super().__init__(parent) self._sync_all_dialog = None # type: Optional[QObject] + self._export_upload_status = "idle" self._checkIfNewMaterialsWereInstalled() def _checkIfNewMaterialsWereInstalled(self) -> None: @@ -330,12 +331,11 @@ class MaterialManagementModel(QObject): """ if self._sync_all_dialog is None: qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", "Materials", "MaterialsSyncDialog.qml") - self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, { - "materialManagementModel": self, - "pageIndex": 0 - }) + self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) if self._sync_all_dialog is None: # Failed to load QML file. return + self._sync_all_dialog.setProperty("materialManagementModel", self) + self._sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. self._sync_all_dialog.show() @pyqtSlot(result = QUrl) @@ -388,10 +388,23 @@ class MaterialManagementModel(QObject): except OSError as e: Logger.log("e", f"An error has occurred while writing the material \'{metadata['id']}\' in the file \'{filename}\': {e}.") + exportUploadStatusChanged = pyqtSignal() + + @pyqtProperty(str, notify = exportUploadStatusChanged) + def exportUploadStatus(self): + return self._export_upload_status + @pyqtSlot() def exportUpload(self) -> None: """ Export all materials and upload them to the user's account. """ + self._export_upload_status = "uploading" + self.exportUploadStatusChanged.emit() job = UploadMaterialsJob() + job.uploadCompleted.connect(self.exportUploadCompleted) job.start() + + def exportUploadCompleted(self): + self._export_upload_status = "idle" + self.exportUploadStatusChanged.emit() \ No newline at end of file diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index e675524ec4..13e97a5093 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -11,6 +11,7 @@ from cura.UltimakerCloud import UltimakerCloudConstants # To know where the API from cura.UltimakerCloud.UltimakerCloudScope import UltimakerCloudScope # To know how to communicate with this server. from UM.Job import Job from UM.Logger import Logger +from UM.Signal import Signal from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope @@ -33,6 +34,8 @@ class UploadMaterialsJob(Job): super().__init__() self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope + uploadCompleted = Signal() + def run(self): archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() @@ -78,6 +81,7 @@ class UploadMaterialsJob(Job): self.setResult(self.Result.FAILED) return self.setResult(self.Result.SUCCESS) + self.uploadCompleted.emit() def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): pass # TODO: Handle errors. \ No newline at end of file diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 489bfc237a..d3d794287d 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -355,6 +355,14 @@ Window anchors.right: parent.right text: catalog.i18nc("@button", "Sync") onClicked: materialManagementModel.exportUpload() + enabled: + { + if(!materialManagementModel) + { + return false; + } + return materialManagementModel.exportUploadStatus != "uploading"; + } } } } From da76280359794d044790c9e3e005d3fef6d5e126 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 13:38:41 +0200 Subject: [PATCH 056/135] Make USB image a bit larger This is more in line with the design. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index d3d794287d..0c6583ede5 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -357,7 +357,7 @@ Window onClicked: materialManagementModel.exportUpload() enabled: { - if(!materialManagementModel) + if(!materialManagementModel) //When the dialog is created, this is not set yet. { return false; } @@ -482,7 +482,7 @@ Window Image { source: UM.Theme.getImage("insert_usb") - width: parent.width / 4 + width: parent.width / 3 height: width anchors.verticalCenter: parent.verticalCenter sourceSize.width: width @@ -495,7 +495,7 @@ Window font: UM.Theme.getFont("medium") color: UM.Theme.getColor("text") wrapMode: Text.Wrap - width: parent.width * 3 / 4 - UM.Theme.getSize("default_margin").width + width: parent.width * 2 / 3 - UM.Theme.getSize("default_margin").width anchors.verticalCenter: parent.verticalCenter } } From 43bcd2b56a03a5d3f17d37a180934fc5bfd9972b Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 13:49:45 +0200 Subject: [PATCH 057/135] Implement info icon with UM.StatusIcon This way the sizes are consistent with the other similar icons in the UI. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 0c6583ede5..7df25d3253 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -7,7 +7,7 @@ import QtQuick.Dialogs 1.2 import QtQuick.Layouts 1.15 import QtQuick.Window 2.1 import Cura 1.1 as Cura -import UM 1.2 as UM +import UM 1.4 as UM Window { @@ -284,22 +284,14 @@ Window } spacing: UM.Theme.getSize("default_margin").width - Rectangle //Info icon with a themeable color and background. + UM.StatusIcon { id: infoIcon - width: UM.Theme.getSize("machine_selector_icon").width + width: UM.Theme.getSize("section_icon").width height: width - Layout.preferredWidth: width Layout.alignment: Qt.AlignVCenter - radius: height / 2 - color: UM.Theme.getColor("warning") - UM.RecolorImage - { - source: UM.Theme.getIcon("EmptyInfo") - anchors.fill: parent - color: UM.Theme.getColor("machine_selector_printer_icon") - } + status: UM.StatusIcon.Status.WARNING } Label From 9ffbaa772f55d1655469be8caf33bf8bd09a7997 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 13:58:05 +0200 Subject: [PATCH 058/135] Add back button to return from USB workflow to welcome screen This allows the user to see the welcome screen instructions again. Or to switch back to internet-syncing if they accidentally pressed the USB button (or were just curious). Contributes to issue CURA-8609. --- .../Preferences/Materials/MaterialsSyncDialog.qml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 7df25d3253..3b57f5c28d 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -491,6 +491,14 @@ Window anchors.verticalCenter: parent.verticalCenter } } + + Cura.TertiaryButton + { + text: catalog.i18nc("@button", "How to load new material profiles to my printer") + iconSource: UM.Theme.getIcon("LinkExternal") + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-how-usb") + } + Item { width: parent.width @@ -498,12 +506,11 @@ Window Layout.preferredWidth: width Layout.preferredHeight: height - Cura.TertiaryButton + Cura.SecondaryButton { anchors.left: parent.left - text: catalog.i18nc("@button", "How to load new material profiles to my printer") - iconSource: UM.Theme.getIcon("LinkExternal") - onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-how-usb") + text: catalog.i18nc("@button", "Back") + onClicked: swipeView.currentIndex = 0 //Reset to first page. } Cura.PrimaryButton { From 56eb694745e019cf13766491b2c1c65bd338b3d6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 14:11:28 +0200 Subject: [PATCH 059/135] Hide refresh button if there are no offline printers It's not considered a big use case when the user has already added some printers but would want to add more while syncing materials to those printers. Contributes to issue CURA-8609. --- .../qml/Preferences/Materials/MaterialsSyncDialog.qml | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 3b57f5c28d..3bbcf0fa94 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -266,7 +266,8 @@ Window footer: Item { width: printerListScrollView.width - height: UM.Theme.getSize("card").height + UM.Theme.getSize("default_margin").height + height: visible ? UM.Theme.getSize("card").height + UM.Theme.getSize("default_margin").height : 0 + visible: includeOfflinePrinterList.count - cloudPrinterList.count > 0 Rectangle { border.color: UM.Theme.getColor("lining") @@ -533,6 +534,13 @@ Window filterConnectionType: 3 //Only show cloud connections. filterOnlineOnly: true //Only show printers that are online. } + Cura.GlobalStacksModel + { + //In order to show a refresh button only when there are offline cloud printers, we need to know if there are any offline printers. + //A global stacks model without the filter for online-only printers allows this. + id: includeOfflinePrinterList + filterConnectionType: 3 //Still only show cloud connections. + } FileDialog { From ffee4a2443d09b66fb168474523f050ce3621ded Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 14:30:10 +0200 Subject: [PATCH 060/135] Show syncing spinner while syncing Rather than disabling the sync button, hide it completely and show this spinner instead. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 48 +++++++++++++++++-- 1 file changed, 45 insertions(+), 3 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 3bbcf0fa94..be9f2eb06e 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -1,7 +1,7 @@ //Copyright (c) 2021 Ultimaker B.V. //Cura is released under the terms of the LGPLv3 or higher. -import QtQuick 2.1 +import QtQuick 2.15 import QtQuick.Controls 2.15 import QtQuick.Dialogs 1.2 import QtQuick.Layouts 1.15 @@ -345,18 +345,60 @@ Window } Cura.PrimaryButton { + id: syncButton anchors.right: parent.right text: catalog.i18nc("@button", "Sync") onClicked: materialManagementModel.exportUpload() - enabled: + visible: { if(!materialManagementModel) //When the dialog is created, this is not set yet. { - return false; + return true; } return materialManagementModel.exportUploadStatus != "uploading"; } } + Item + { + anchors.right: parent.right + width: childrenRect.width + height: syncButton.height + + visible: !syncButton.visible + + UM.RecolorImage + { + id: syncingIcon + height: UM.Theme.getSize("action_button_icon").height + width: height + anchors.right: syncingLabel.left + anchors.rightMargin: UM.Theme.getSize("narrow_margin").width + anchors.verticalCenter: parent.verticalCenter + + source: UM.Theme.getIcon("ArrowDoubleCircleRight") + color: UM.Theme.getColor("primary") + + RotationAnimator + { + target: syncingIcon + from: 0 + to: 360 + duration: 1000 + loops: Animation.Infinite + running: !syncButton.visible //Don't run while invisible. Would be a waste of render updates. + } + } + Label + { + id: syncingLabel + anchors.right: parent.right + anchors.verticalCenter: parent.verticalCenter + + text: catalog.i18nc("@button", "Syncing") + color: UM.Theme.getColor("primary") + font: UM.Theme.getFont("medium") + } + } } } From ffd3277854969b0b06c1cc0f6dc93578443373af Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 14:57:21 +0200 Subject: [PATCH 061/135] Show error if the upload failed Contributes to issue CURA-8609. --- cura/Machines/Models/MaterialManagementModel.py | 4 +++- cura/PrinterOutput/UploadMaterialsJob.py | 10 ++++++---- .../Preferences/Materials/MaterialsSyncDialog.qml | 14 ++++++++++++++ 3 files changed, 23 insertions(+), 5 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index ecd809fef0..f18a5c302c 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -405,6 +405,8 @@ class MaterialManagementModel(QObject): job.uploadCompleted.connect(self.exportUploadCompleted) job.start() - def exportUploadCompleted(self): + def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result): + if job_result == UploadMaterialsJob.Result.FAILED: + self._sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Something went wrong when sending the materials to the printers.")) self._export_upload_status = "idle" self.exportUploadStatusChanged.emit() \ No newline at end of file diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 13e97a5093..45ac653337 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -79,9 +79,11 @@ class UploadMaterialsJob(Job): if error is not None: Logger.error(f"Failed to upload material archive: {error}") self.setResult(self.Result.FAILED) - return - self.setResult(self.Result.SUCCESS) - self.uploadCompleted.emit() + else: + self.setResult(self.Result.SUCCESS) + self.uploadCompleted.emit(self.getResult()) def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): - pass # TODO: Handle errors. \ No newline at end of file + Logger.error(f"Failed to upload material archive: {error}") + self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult()) \ No newline at end of file diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index be9f2eb06e..69d30167c2 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -23,6 +23,7 @@ Window property variant materialManagementModel property alias pageIndex: swipeView.currentIndex + property alias syncStatusText: syncStatusLabel.text SwipeView { @@ -358,6 +359,19 @@ Window return materialManagementModel.exportUploadStatus != "uploading"; } } + Label + { + id: syncStatusLabel + + anchors.right: syncButton.left + anchors.rightMargin: UM.Theme.getSize("default_margin").width + anchors.verticalCenter: parent.verticalCenter + + visible: syncButton.visible + text: "" + color: UM.Theme.getColor("text") + font: UM.Theme.getFont("default") + } Item { anchors.right: parent.right From 8ae93c6bc12b1a1cf66dcdcabfe4d43f43c25c6d Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 15:19:06 +0200 Subject: [PATCH 062/135] Resolve binding loops in sync spinner Contributes to issue CURA-8609. --- .../qml/Preferences/Materials/MaterialsSyncDialog.qml | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 69d30167c2..07a225054b 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -365,7 +365,6 @@ Window anchors.right: syncButton.left anchors.rightMargin: UM.Theme.getSize("default_margin").width - anchors.verticalCenter: parent.verticalCenter visible: syncButton.visible text: "" @@ -385,9 +384,7 @@ Window id: syncingIcon height: UM.Theme.getSize("action_button_icon").height width: height - anchors.right: syncingLabel.left - anchors.rightMargin: UM.Theme.getSize("narrow_margin").width - anchors.verticalCenter: parent.verticalCenter + anchors.verticalCenter: syncingLabel.verticalCenter source: UM.Theme.getIcon("ArrowDoubleCircleRight") color: UM.Theme.getColor("primary") @@ -405,8 +402,8 @@ Window Label { id: syncingLabel - anchors.right: parent.right - anchors.verticalCenter: parent.verticalCenter + anchors.left: syncingIcon.right + anchors.leftMargin: UM.Theme.getSize("narrow_margin").width text: catalog.i18nc("@button", "Syncing") color: UM.Theme.getColor("primary") From c3d392c5cf77eea2086d1776b764e7678dd52d56 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 11 Oct 2021 15:27:54 +0200 Subject: [PATCH 063/135] Show upload error or success in header once completed According to the brand new design. Contributes to issue CURA-8609. --- .../Models/MaterialManagementModel.py | 4 +- .../Materials/MaterialsSyncDialog.qml | 68 +++++++++++++++---- 2 files changed, 56 insertions(+), 16 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index f18a5c302c..55bf0e65e6 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -408,5 +408,7 @@ class MaterialManagementModel(QObject): def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result): if job_result == UploadMaterialsJob.Result.FAILED: self._sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Something went wrong when sending the materials to the printers.")) - self._export_upload_status = "idle" + self._export_upload_status = "error" + else: + self._export_upload_status = "success" self.exportUploadStatusChanged.emit() \ No newline at end of file diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 07a225054b..39d0dfe457 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -186,12 +186,62 @@ Window anchors.margins: UM.Theme.getSize("default_margin").width visible: cloudPrinterList.count > 0 + Row + { + Layout.preferredHeight: childrenRect.height + spacing: UM.Theme.getSize("default_margin").width + + states: [ + State + { + name: "idle" + when: typeof materialManagementModel === "undefined" || materialManagementModel.exportUploadStatus == "idle" || materialManagementModel.exportUploadStatus == "uploading" + PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "The following printers will receive the new material profiles:") } + PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.NEUTRAL } + }, + State + { + name: "error" + when: typeof materialManagementModel !== "undefined" && materialManagementModel.exportUploadStatus == "error" + PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "Something went wrong when sending the materials to the printers.") } + PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.ERROR } + }, + State + { + name: "success" + when: typeof materialManagementModel !== "undefined" && materialManagementModel.exportUploadStatus == "success" + PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "Material profiles successfully synced with the following printers:") } + PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.POSITIVE } + } + ] + + UM.StatusIcon + { + id: printerListHeaderIcon + width: UM.Theme.getSize("section_icon").width + height: width + anchors.verticalCenter: parent.verticalCenter + } + Label + { + id: printerListHeader + anchors.verticalCenter: parent.verticalCenter + //Text is always defined by the states above. + font: UM.Theme.getFont("large_bold") + color: UM.Theme.getColor("text") + } + } Label { - text: catalog.i18nc("@title:header", "The following printers will receive the new material profiles") - font: UM.Theme.getFont("large_bold") + id: syncStatusLabel + + anchors.right: syncButton.left + anchors.rightMargin: UM.Theme.getSize("default_margin").width + + visible: text !== "" + text: "" color: UM.Theme.getColor("text") - Layout.preferredHeight: height + font: UM.Theme.getFont("medium") } ScrollView { @@ -359,18 +409,6 @@ Window return materialManagementModel.exportUploadStatus != "uploading"; } } - Label - { - id: syncStatusLabel - - anchors.right: syncButton.left - anchors.rightMargin: UM.Theme.getSize("default_margin").width - - visible: syncButton.visible - text: "" - color: UM.Theme.getColor("text") - font: UM.Theme.getFont("default") - } Item { anchors.right: parent.right From 4661b02e4c42a0d47a3078bfe79aaac4b19bb1b9 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 09:43:21 +0200 Subject: [PATCH 064/135] Move code and status related to uploading materials to separate class There's quite a lot of status to track, errors and progress. It's better kept separate. Contributes to issue CURA-8609. --- .../Models/MaterialManagementModel.py | 150 +---------------- cura/PrinterOutput/UploadMaterialsJob.py | 6 +- cura/UltimakerCloud/CloudMaterialSync.py | 154 ++++++++++++++++++ .../Materials/MaterialsSyncDialog.qml | 18 +- 4 files changed, 176 insertions(+), 152 deletions(-) create mode 100644 cura/UltimakerCloud/CloudMaterialSync.py diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 55bf0e65e6..61d8e23acd 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -2,22 +2,19 @@ # Cura is released under the terms of the LGPLv3 or higher. import copy # To duplicate materials. -from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QUrl -from PyQt5.QtGui import QDesktopServices +from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject from typing import Any, Dict, Optional, TYPE_CHECKING import uuid # To generate new GUIDs for new materials. -import zipfile # To export all materials in a .zip archive. from UM.i18n import i18nCatalog from UM.Logger import Logger -from UM.Message import Message from UM.Resources import Resources # To find QML files. from UM.Signal import postponeSignals, CompressTechnique import cura.CuraApplication # Imported like this to prevent circular imports. from cura.Machines.ContainerTree import ContainerTree -from cura.PrinterOutput.UploadMaterialsJob import UploadMaterialsJob # To export materials to the output printer. from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To find the sets of materials belonging to each other, and currently loaded extruder stacks. +from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync if TYPE_CHECKING: from cura.Machines.MaterialNode import MaterialNode @@ -34,61 +31,7 @@ class MaterialManagementModel(QObject): def __init__(self, parent: QObject = None): super().__init__(parent) - self._sync_all_dialog = None # type: Optional[QObject] - self._export_upload_status = "idle" - self._checkIfNewMaterialsWereInstalled() - - def _checkIfNewMaterialsWereInstalled(self) -> None: - """ - Checks whether new material packages were installed in the latest startup. If there were, then it shows - a message prompting the user to sync the materials with their printers. - """ - application = cura.CuraApplication.CuraApplication.getInstance() - for package_id, package_data in application.getPackageManager().getPackagesInstalledOnStartup().items(): - if package_data["package_info"]["package_type"] == "material": - # At least one new material was installed - self._showSyncNewMaterialsMessage() - break - - def _showSyncNewMaterialsMessage(self) -> None: - sync_materials_message = Message( - text = catalog.i18nc("@action:button", - "Please sync the material profiles with your printers before starting to print."), - title = catalog.i18nc("@action:button", "New materials installed"), - message_type = Message.MessageType.WARNING, - lifetime = 0 - ) - - sync_materials_message.addAction( - "sync", - name = catalog.i18nc("@action:button", "Sync materials with printers"), - icon = "", - description = "Sync your newly installed materials with your printers.", - button_align = Message.ActionButtonAlignment.ALIGN_RIGHT - ) - - sync_materials_message.addAction( - "learn_more", - name = catalog.i18nc("@action:button", "Learn more"), - icon = "", - description = "Learn more about syncing your newly installed materials with your printers.", - button_align = Message.ActionButtonAlignment.ALIGN_LEFT, - button_style = Message.ActionButtonStyle.LINK - ) - sync_materials_message.actionTriggered.connect(self._onSyncMaterialsMessageActionTriggered) - - # Show the message only if there are printers that support material export - container_registry = cura.CuraApplication.CuraApplication.getInstance().getContainerRegistry() - global_stacks = container_registry.findContainerStacks(type = "machine") - if any([stack.supportsMaterialExport for stack in global_stacks]): - sync_materials_message.show() - - def _onSyncMaterialsMessageActionTriggered(self, sync_message: Message, sync_message_action: str): - if sync_message_action == "sync": - self.openSyncAllWindow() - sync_message.hide() - elif sync_message_action == "learn_more": - QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-message")) + self._material_sync = CloudMaterialSync(parent = self) @pyqtSlot("QVariant", result = bool) def canMaterialBeRemoved(self, material_node: "MaterialNode") -> bool: @@ -329,86 +272,11 @@ class MaterialManagementModel(QObject): """ Opens the window to sync all materials. """ - if self._sync_all_dialog is None: + if self._material_sync.sync_all_dialog is None: qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", "Materials", "MaterialsSyncDialog.qml") - self._sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) - if self._sync_all_dialog is None: # Failed to load QML file. + self._material_sync.sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) + if self._material_sync.sync_all_dialog is None: # Failed to load QML file. return - self._sync_all_dialog.setProperty("materialManagementModel", self) - self._sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. - self._sync_all_dialog.show() - - @pyqtSlot(result = QUrl) - def getPreferredExportAllPath(self) -> QUrl: - """ - Get the preferred path to export materials to. - - If there is a removable drive, that should be the preferred path. Otherwise it should be the most recent local - file path. - :return: The preferred path to export all materials to. - """ - cura_application = cura.CuraApplication.CuraApplication.getInstance() - device_manager = cura_application.getOutputDeviceManager() - devices = device_manager.getOutputDevices() - for device in devices: - if device.__class__.__name__ == "RemovableDriveOutputDevice": - return QUrl.fromLocalFile(device.getId()) - else: # No removable drives? Use local path. - return cura_application.getDefaultPath("dialog_material_path") - - @pyqtSlot(QUrl) - def exportAll(self, file_path: QUrl) -> None: - """ - Export all materials to a certain file path. - :param file_path: The path to export the materials to. - """ - registry = CuraContainerRegistry.getInstance() - - try: - archive = zipfile.ZipFile(file_path.toLocalFile(), "w", compression = zipfile.ZIP_DEFLATED) - except OSError as e: - Logger.log("e", f"Can't write to destination {file_path.toLocalFile()}: {type(e)} - {str(e)}") - error_message = Message( - text = catalog.i18nc("@message:text", "Could not save material archive to {}:").format(file_path.toLocalFile()) + " " + str(e), - title = catalog.i18nc("@message:title", "Failed to save material archive"), - message_type = Message.MessageType.ERROR - ) - error_message.show() - return - for metadata in registry.findInstanceContainersMetadata(type = "material"): - if metadata["base_file"] != metadata["id"]: # Only process base files. - continue - if metadata["id"] == "empty_material": # Don't export the empty material. - continue - material = registry.findContainers(id = metadata["id"])[0] - suffix = registry.getMimeTypeForContainer(type(material)).preferredSuffix - filename = metadata["id"] + "." + suffix - try: - archive.writestr(filename, material.serialize()) - except OSError as e: - Logger.log("e", f"An error has occurred while writing the material \'{metadata['id']}\' in the file \'{filename}\': {e}.") - - exportUploadStatusChanged = pyqtSignal() - - @pyqtProperty(str, notify = exportUploadStatusChanged) - def exportUploadStatus(self): - return self._export_upload_status - - @pyqtSlot() - def exportUpload(self) -> None: - """ - Export all materials and upload them to the user's account. - """ - self._export_upload_status = "uploading" - self.exportUploadStatusChanged.emit() - job = UploadMaterialsJob() - job.uploadCompleted.connect(self.exportUploadCompleted) - job.start() - - def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result): - if job_result == UploadMaterialsJob.Result.FAILED: - self._sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Something went wrong when sending the materials to the printers.")) - self._export_upload_status = "error" - else: - self._export_upload_status = "success" - self.exportUploadStatusChanged.emit() \ No newline at end of file + self._material_sync.sync_all_dialog.setProperty("syncModel", self._material_sync) + self._material_sync.sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. + self._material_sync.sync_all_dialog.show() \ No newline at end of file diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 45ac653337..2e7a2c1575 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -18,6 +18,7 @@ from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope from typing import Optional, TYPE_CHECKING if TYPE_CHECKING: from PyQt5.QtNetwork import QNetworkReply + from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync class UploadMaterialsJob(Job): """ @@ -30,8 +31,9 @@ class UploadMaterialsJob(Job): SUCCCESS = 0 FAILED = 1 - def __init__(self): + def __init__(self, material_sync: "CloudMaterialSync"): super().__init__() + self._material_sync = material_sync self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope uploadCompleted = Signal() @@ -40,7 +42,7 @@ class UploadMaterialsJob(Job): archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() - cura.CuraApplication.CuraApplication.getInstance().getMaterialManagementModel().exportAll(QUrl.fromLocalFile(archive_file.name)) + self._material_sync.exportAll(QUrl.fromLocalFile(archive_file.name)) http = HttpRequestManager.getInstance() http.get( diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py new file mode 100644 index 0000000000..60dfd963e7 --- /dev/null +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -0,0 +1,154 @@ +# Copyright (c) 2021 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. + +from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QUrl +from PyQt5.QtGui import QDesktopServices +from typing import Optional +import zipfile # To export all materials in a .zip archive. + +import cura.CuraApplication # Imported like this to prevent circular imports. +from cura.PrinterOutput.UploadMaterialsJob import UploadMaterialsJob # To export materials to the output printer. +from cura.Settings.CuraContainerRegistry import CuraContainerRegistry +from UM.i18n import i18nCatalog +from UM.Logger import Logger +from UM.Message import Message + +catalog = i18nCatalog("cura") + +class CloudMaterialSync(QObject): + """ + Handles the synchronisation of material profiles with cloud accounts. + """ + + def __init__(self, parent: QObject = None): + super().__init__(parent) + self.sync_all_dialog = None # type: Optional[QObject] + self._export_upload_status = "idle" + self._checkIfNewMaterialsWereInstalled() + + def _checkIfNewMaterialsWereInstalled(self) -> None: + """ + Checks whether new material packages were installed in the latest startup. If there were, then it shows + a message prompting the user to sync the materials with their printers. + """ + application = cura.CuraApplication.CuraApplication.getInstance() + for package_id, package_data in application.getPackageManager().getPackagesInstalledOnStartup().items(): + if package_data["package_info"]["package_type"] == "material": + # At least one new material was installed + self._showSyncNewMaterialsMessage() + break + + def _showSyncNewMaterialsMessage(self) -> None: + sync_materials_message = Message( + text = catalog.i18nc("@action:button", + "Please sync the material profiles with your printers before starting to print."), + title = catalog.i18nc("@action:button", "New materials installed"), + message_type = Message.MessageType.WARNING, + lifetime = 0 + ) + + sync_materials_message.addAction( + "sync", + name = catalog.i18nc("@action:button", "Sync materials with printers"), + icon = "", + description = "Sync your newly installed materials with your printers.", + button_align = Message.ActionButtonAlignment.ALIGN_RIGHT + ) + + sync_materials_message.addAction( + "learn_more", + name = catalog.i18nc("@action:button", "Learn more"), + icon = "", + description = "Learn more about syncing your newly installed materials with your printers.", + button_align = Message.ActionButtonAlignment.ALIGN_LEFT, + button_style = Message.ActionButtonStyle.LINK + ) + sync_materials_message.actionTriggered.connect(self._onSyncMaterialsMessageActionTriggered) + + # Show the message only if there are printers that support material export + container_registry = cura.CuraApplication.CuraApplication.getInstance().getContainerRegistry() + global_stacks = container_registry.findContainerStacks(type = "machine") + if any([stack.supportsMaterialExport for stack in global_stacks]): + sync_materials_message.show() + + def _onSyncMaterialsMessageActionTriggered(self, sync_message: Message, sync_message_action: str): + if sync_message_action == "sync": + self.openSyncAllWindow() + sync_message.hide() + elif sync_message_action == "learn_more": + QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-message")) + + @pyqtSlot(result = QUrl) + def getPreferredExportAllPath(self) -> QUrl: + """ + Get the preferred path to export materials to. + + If there is a removable drive, that should be the preferred path. Otherwise it should be the most recent local + file path. + :return: The preferred path to export all materials to. + """ + cura_application = cura.CuraApplication.CuraApplication.getInstance() + device_manager = cura_application.getOutputDeviceManager() + devices = device_manager.getOutputDevices() + for device in devices: + if device.__class__.__name__ == "RemovableDriveOutputDevice": + return QUrl.fromLocalFile(device.getId()) + else: # No removable drives? Use local path. + return cura_application.getDefaultPath("dialog_material_path") + + @pyqtSlot(QUrl) + def exportAll(self, file_path: QUrl) -> None: + """ + Export all materials to a certain file path. + :param file_path: The path to export the materials to. + """ + registry = CuraContainerRegistry.getInstance() + + try: + archive = zipfile.ZipFile(file_path.toLocalFile(), "w", compression = zipfile.ZIP_DEFLATED) + except OSError as e: + Logger.log("e", f"Can't write to destination {file_path.toLocalFile()}: {type(e)} - {str(e)}") + error_message = Message( + text = catalog.i18nc("@message:text", "Could not save material archive to {}:").format(file_path.toLocalFile()) + " " + str(e), + title = catalog.i18nc("@message:title", "Failed to save material archive"), + message_type = Message.MessageType.ERROR + ) + error_message.show() + return + for metadata in registry.findInstanceContainersMetadata(type = "material"): + if metadata["base_file"] != metadata["id"]: # Only process base files. + continue + if metadata["id"] == "empty_material": # Don't export the empty material. + continue + material = registry.findContainers(id = metadata["id"])[0] + suffix = registry.getMimeTypeForContainer(type(material)).preferredSuffix + filename = metadata["id"] + "." + suffix + try: + archive.writestr(filename, material.serialize()) + except OSError as e: + Logger.log("e", f"An error has occurred while writing the material \'{metadata['id']}\' in the file \'{filename}\': {e}.") + + exportUploadStatusChanged = pyqtSignal() + + @pyqtProperty(str, notify = exportUploadStatusChanged) + def exportUploadStatus(self): + return self._export_upload_status + + @pyqtSlot() + def exportUpload(self) -> None: + """ + Export all materials and upload them to the user's account. + """ + self._export_upload_status = "uploading" + self.exportUploadStatusChanged.emit() + job = UploadMaterialsJob(self) + job.uploadCompleted.connect(self.exportUploadCompleted) + job.start() + + def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result): + if job_result == UploadMaterialsJob.Result.FAILED: + self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Something went wrong when sending the materials to the printers.")) + self._export_upload_status = "error" + else: + self._export_upload_status = "success" + self.exportUploadStatusChanged.emit() \ No newline at end of file diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 39d0dfe457..44cf047bc9 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -21,7 +21,7 @@ Window height: minimumHeight modality: Qt.ApplicationModal - property variant materialManagementModel + property variant syncModel property alias pageIndex: swipeView.currentIndex property alias syncStatusText: syncStatusLabel.text @@ -195,21 +195,21 @@ Window State { name: "idle" - when: typeof materialManagementModel === "undefined" || materialManagementModel.exportUploadStatus == "idle" || materialManagementModel.exportUploadStatus == "uploading" + when: typeof syncModel === "undefined" || syncModel.exportUploadStatus == "idle" || syncModel.exportUploadStatus == "uploading" PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "The following printers will receive the new material profiles:") } PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.NEUTRAL } }, State { name: "error" - when: typeof materialManagementModel !== "undefined" && materialManagementModel.exportUploadStatus == "error" + when: typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "error" PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "Something went wrong when sending the materials to the printers.") } PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.ERROR } }, State { name: "success" - when: typeof materialManagementModel !== "undefined" && materialManagementModel.exportUploadStatus == "success" + when: typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "success" PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "Material profiles successfully synced with the following printers:") } PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.POSITIVE } } @@ -399,14 +399,14 @@ Window id: syncButton anchors.right: parent.right text: catalog.i18nc("@button", "Sync") - onClicked: materialManagementModel.exportUpload() + onClicked: syncModel.exportUpload() visible: { - if(!materialManagementModel) //When the dialog is created, this is not set yet. + if(!syncModel) //When the dialog is created, this is not set yet. { return true; } - return materialManagementModel.exportUploadStatus != "uploading"; + return syncModel.exportUploadStatus != "uploading"; } } Item @@ -610,7 +610,7 @@ Window text: catalog.i18nc("@button", "Export material archive") onClicked: { - exportUsbDialog.folder = materialManagementModel.getPreferredExportAllPath(); + exportUsbDialog.folder = syncModel.getPreferredExportAllPath(); exportUsbDialog.open(); } } @@ -641,7 +641,7 @@ Window nameFilters: ["Material archives (*.umm)", "All files (*)"] onAccepted: { - materialManagementModel.exportAll(fileUrl); + syncModel.exportAll(fileUrl); CuraApplication.setDefaultPath("dialog_material_path", folder); } } From 052e33e66b2c741502f37ada34e1480fa973277a Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 10:17:03 +0200 Subject: [PATCH 065/135] Don't anchor status label to button any more It's now in a completely different place. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 3 --- 1 file changed, 3 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 44cf047bc9..04f496d29a 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -235,9 +235,6 @@ Window { id: syncStatusLabel - anchors.right: syncButton.left - anchors.rightMargin: UM.Theme.getSize("default_margin").width - visible: text !== "" text: "" color: UM.Theme.getColor("text") From 025ef743ee06d81b43ac3d000ae3b64eb06b119d Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 10:24:07 +0200 Subject: [PATCH 066/135] Track progress from export job This way we can show a progress bar. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 3 ++- cura/UltimakerCloud/CloudMaterialSync.py | 30 ++++++++++++++++++++---- 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 2e7a2c1575..3560b32a70 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -37,12 +37,13 @@ class UploadMaterialsJob(Job): self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope uploadCompleted = Signal() + uploadProgressChanged = Signal() def run(self): archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() - self._material_sync.exportAll(QUrl.fromLocalFile(archive_file.name)) + self._material_sync.exportAll(QUrl.fromLocalFile(archive_file.name), notify_progress = self.uploadProgressChanged) http = HttpRequestManager.getInstance() http.get( diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index 60dfd963e7..f2bee1ac74 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -3,7 +3,7 @@ from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QUrl from PyQt5.QtGui import QDesktopServices -from typing import Optional +from typing import Optional, TYPE_CHECKING import zipfile # To export all materials in a .zip archive. import cura.CuraApplication # Imported like this to prevent circular imports. @@ -13,6 +13,8 @@ from UM.i18n import i18nCatalog from UM.Logger import Logger from UM.Message import Message +if TYPE_CHECKING: + from UM.Signal import Signal catalog = i18nCatalog("cura") class CloudMaterialSync(QObject): @@ -25,6 +27,7 @@ class CloudMaterialSync(QObject): self.sync_all_dialog = None # type: Optional[QObject] self._export_upload_status = "idle" self._checkIfNewMaterialsWereInstalled() + self._export_progress = 0 def _checkIfNewMaterialsWereInstalled(self) -> None: """ @@ -97,13 +100,14 @@ class CloudMaterialSync(QObject): return cura_application.getDefaultPath("dialog_material_path") @pyqtSlot(QUrl) - def exportAll(self, file_path: QUrl) -> None: + def exportAll(self, file_path: QUrl, notify_progress: Optional["Signal"] = None) -> None: """ Export all materials to a certain file path. :param file_path: The path to export the materials to. """ registry = CuraContainerRegistry.getInstance() + # Create empty archive. try: archive = zipfile.ZipFile(file_path.toLocalFile(), "w", compression = zipfile.ZIP_DEFLATED) except OSError as e: @@ -115,7 +119,12 @@ class CloudMaterialSync(QObject): ) error_message.show() return - for metadata in registry.findInstanceContainersMetadata(type = "material"): + + materials_metadata = registry.findInstanceContainersMetadata(type = "material") + for index, metadata in enumerate(materials_metadata): + if notify_progress is not None: + progress = index / len(materials_metadata) + notify_progress.emit(progress) if metadata["base_file"] != metadata["id"]: # Only process base files. continue if metadata["id"] == "empty_material": # Don't export the empty material. @@ -131,7 +140,7 @@ class CloudMaterialSync(QObject): exportUploadStatusChanged = pyqtSignal() @pyqtProperty(str, notify = exportUploadStatusChanged) - def exportUploadStatus(self): + def exportUploadStatus(self) -> str: return self._export_upload_status @pyqtSlot() @@ -142,6 +151,7 @@ class CloudMaterialSync(QObject): self._export_upload_status = "uploading" self.exportUploadStatusChanged.emit() job = UploadMaterialsJob(self) + job.uploadProgressChanged.connect(self.setExportProgress) job.uploadCompleted.connect(self.exportUploadCompleted) job.start() @@ -151,4 +161,14 @@ class CloudMaterialSync(QObject): self._export_upload_status = "error" else: self._export_upload_status = "success" - self.exportUploadStatusChanged.emit() \ No newline at end of file + self.exportUploadStatusChanged.emit() + + exportProgressChanged = pyqtSignal(float) + + def setExportProgress(self, progress: float) -> None: + self._export_progress = progress + self.exportProgressChanged.emit(self._export_progress) + + @pyqtProperty(float, fset = setExportProgress, notify = exportProgressChanged) + def exportProgress(self) -> float: + return self._export_progress \ No newline at end of file From 125c80430b1231901ca7bb8105235fc9676a5d4b Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 11:30:12 +0200 Subject: [PATCH 067/135] Show more information about errors we're getting Show the error code we received in the GUI, and allow expansion for different types of errors. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 12 ++++++++++-- cura/UltimakerCloud/CloudMaterialSync.py | 9 ++++++--- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 3560b32a70..57f6332755 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -81,12 +81,20 @@ class UploadMaterialsJob(Job): def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): if error is not None: Logger.error(f"Failed to upload material archive: {error}") + self.setError(UploadMaterialsError(error)) self.setResult(self.Result.FAILED) else: self.setResult(self.Result.SUCCESS) - self.uploadCompleted.emit(self.getResult()) + self.uploadCompleted.emit(self.getResult(), self.getError()) def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): Logger.error(f"Failed to upload material archive: {error}") self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult()) \ No newline at end of file + self.setError(UploadMaterialsError(error)) + self.uploadCompleted.emit(self.getResult(), self.getError()) + +class UploadMaterialsError(Exception): + """ + Marker class to indicate something went wrong while uploading. + """ + pass \ No newline at end of file diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index f2bee1ac74..d3cc479a0a 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -7,7 +7,7 @@ from typing import Optional, TYPE_CHECKING import zipfile # To export all materials in a .zip archive. import cura.CuraApplication # Imported like this to prevent circular imports. -from cura.PrinterOutput.UploadMaterialsJob import UploadMaterialsJob # To export materials to the output printer. +from cura.PrinterOutput.UploadMaterialsJob import UploadMaterialsJob, UploadMaterialsError # To export materials to the output printer. from cura.Settings.CuraContainerRegistry import CuraContainerRegistry from UM.i18n import i18nCatalog from UM.Logger import Logger @@ -155,9 +155,12 @@ class CloudMaterialSync(QObject): job.uploadCompleted.connect(self.exportUploadCompleted) job.start() - def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result): + def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result, job_error: Optional[Exception]): if job_result == UploadMaterialsJob.Result.FAILED: - self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Something went wrong when sending the materials to the printers.")) + if isinstance(job_error, UploadMaterialsError): + self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Error sending materials to the Digital Factory:") + " " + str(job_error)) + else: # Could be "None" + self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Unknown error.")) self._export_upload_status = "error" else: self._export_upload_status = "success" From d5e3ed4c0e9d626fbf569a8d48a0a924fbc54571 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 11:39:26 +0200 Subject: [PATCH 068/135] New material API endpoint URL This is the new URL they have settled on. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 57f6332755..e500d8d407 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -25,7 +25,7 @@ class UploadMaterialsJob(Job): Job that uploads a set of materials to the Digital Factory. """ - UPLOAD_REQUEST_URL = f"{UltimakerCloudConstants.CuraDigitalFactoryURL}/materials/profile_upload" + UPLOAD_REQUEST_URL = f"{UltimakerCloudConstants.CuraCloudAPIRoot}/connect/v1/materials/upload" class Result(enum.IntEnum): SUCCCESS = 0 From f0d69cbef271c4ac31a37c5e027deb1f9780e2c7 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 12:56:19 +0200 Subject: [PATCH 069/135] Add file data to PUT request The main point of the whole request, really. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index e500d8d407..6acac515fe 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -35,6 +35,7 @@ class UploadMaterialsJob(Job): super().__init__() self._material_sync = material_sync self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope + self._archive_filename = None # type: Optional[str] uploadCompleted = Signal() uploadProgressChanged = Signal() @@ -42,8 +43,9 @@ class UploadMaterialsJob(Job): def run(self): archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() + self._archive_filename = archive_file.name - self._material_sync.exportAll(QUrl.fromLocalFile(archive_file.name), notify_progress = self.uploadProgressChanged) + self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.uploadProgressChanged) http = HttpRequestManager.getInstance() http.get( @@ -70,9 +72,11 @@ class UploadMaterialsJob(Job): return upload_url = response_data["upload_url"] + file_data = open(self._archive_filename, "rb").read() http = HttpRequestManager.getInstance() http.put( url = upload_url, + data = file_data, callback = self.onUploadCompleted, error_callback = self.onError, scope = self._scope From bdc269f8abe463349933e5cbc02456a5e65ee7b1 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 13:00:08 +0200 Subject: [PATCH 070/135] Provide file size and an arbitrary name to the upload request Apparently the Cloud will need to know the file size before it gets uploaded. It is used as a redundancy code to verify that it's not corrupt there. Perhaps they should ask for a CRC instead, being more reliable against an upload containing only null bytes or whatever, but that is not up to me to decide. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 6acac515fe..7cad115bb1 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -46,10 +46,11 @@ class UploadMaterialsJob(Job): self._archive_filename = archive_file.name self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.uploadProgressChanged) + file_size = os.path.getsize(self._archive_filename) http = HttpRequestManager.getInstance() http.get( - url = self.UPLOAD_REQUEST_URL, + url = self.UPLOAD_REQUEST_URL + f"?file_size={file_size}&file_name=cura.umm", # File name can be anything as long as it's .umm. It's not used by Cloud or firmware. callback = self.onUploadRequestCompleted, error_callback = self.onError, scope = self._scope From 4ccd4caaad92d1333f7f5288982ca5db5dbc46d6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 13:04:22 +0200 Subject: [PATCH 071/135] Store material profile ID received from the upload request We'll need this later to be able to tell the server which material archive it should send to certain printers. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 7cad115bb1..def7ff261f 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -36,6 +36,7 @@ class UploadMaterialsJob(Job): self._material_sync = material_sync self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope self._archive_filename = None # type: Optional[str] + self._archive_remote_id = None # type: Optional[str] # ID that the server gives to this archive. Used to communicate about the archive to the server. uploadCompleted = Signal() uploadProgressChanged = Signal() @@ -69,10 +70,15 @@ class UploadMaterialsJob(Job): return if "upload_url" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'upload_url' field to upload archive to.") - self.setResult(self.Result.Failed) + self.setResult(self.Result.FAILED) + return + if "material_profile_id" not in response_data: + Logger.error(f"Invalid response to material upload request: Missing 'material_profile_id' to communicate about the materials with the server.") + self.setResult(self.Result.FAILED) return upload_url = response_data["upload_url"] + self._archive_remote_id = response_data["material_profile_id"] file_data = open(self._archive_filename, "rb").read() http = HttpRequestManager.getInstance() http.put( From a6b6b075ea9911568819f503c742fbf8a0644893 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 13:16:28 +0200 Subject: [PATCH 072/135] Always provide error message if upload failed Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index def7ff261f..2beb8057b7 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -9,12 +9,15 @@ import enum import cura.CuraApplication # Imported like this to prevent circular imports. from cura.UltimakerCloud import UltimakerCloudConstants # To know where the API is. from cura.UltimakerCloud.UltimakerCloudScope import UltimakerCloudScope # To know how to communicate with this server. +from UM.i18n import i18nCatalog from UM.Job import Job from UM.Logger import Logger from UM.Signal import Signal from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope +catalog = i18nCatalog("cura") + from typing import Optional, TYPE_CHECKING if TYPE_CHECKING: from PyQt5.QtNetwork import QNetworkReply @@ -66,14 +69,17 @@ class UploadMaterialsJob(Job): response_data = HttpRequestManager.readJSON(reply) if response_data is None: Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory appears to be corrupted."))) self.setResult(self.Result.FAILED) return if "upload_url" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'upload_url' field to upload archive to.") + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) self.setResult(self.Result.FAILED) return if "material_profile_id" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'material_profile_id' to communicate about the materials with the server.") + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) self.setResult(self.Result.FAILED) return @@ -92,7 +98,7 @@ class UploadMaterialsJob(Job): def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): if error is not None: Logger.error(f"Failed to upload material archive: {error}") - self.setError(UploadMaterialsError(error)) + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.setResult(self.Result.FAILED) else: self.setResult(self.Result.SUCCESS) @@ -101,7 +107,7 @@ class UploadMaterialsJob(Job): def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): Logger.error(f"Failed to upload material archive: {error}") self.setResult(self.Result.FAILED) - self.setError(UploadMaterialsError(error)) + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.uploadCompleted.emit(self.getResult(), self.getError()) class UploadMaterialsError(Exception): From f677b338fdbfd316d1eb4d232ff5406c5fad7f1c Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 13:19:09 +0200 Subject: [PATCH 073/135] Always provide error message if upload failed Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 2beb8057b7..940a848a9e 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -63,7 +63,9 @@ class UploadMaterialsJob(Job): def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): if error is not None: Logger.error(f"Could not request URL to upload material archive to: {error}") + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult(), self.getError()) return response_data = HttpRequestManager.readJSON(reply) @@ -71,16 +73,19 @@ class UploadMaterialsJob(Job): Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory appears to be corrupted."))) self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult(), self.getError()) return if "upload_url" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'upload_url' field to upload archive to.") self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult(), self.getError()) return if "material_profile_id" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'material_profile_id' to communicate about the materials with the server.") self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult(), self.getError()) return upload_url = response_data["upload_url"] @@ -100,6 +105,10 @@ class UploadMaterialsJob(Job): Logger.error(f"Failed to upload material archive: {error}") self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.setResult(self.Result.FAILED) + return + + + else: self.setResult(self.Result.SUCCESS) self.uploadCompleted.emit(self.getResult(), self.getError()) From d4d17095bbdacb0017b2a2f7257d524c8cf4c418 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 13:39:04 +0200 Subject: [PATCH 074/135] Implement confirming for all printers to send material sync We need to make this request for every printer. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 31 ++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 940a848a9e..5591e3b8e8 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -5,8 +5,10 @@ from PyQt5.QtCore import QUrl import os # To delete the archive when we're done. import tempfile # To create an archive before we upload it. import enum +import functools import cura.CuraApplication # Imported like this to prevent circular imports. +from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To find all printers to upload to. from cura.UltimakerCloud import UltimakerCloudConstants # To know where the API is. from cura.UltimakerCloud.UltimakerCloudScope import UltimakerCloudScope # To know how to communicate with this server. from UM.i18n import i18nCatalog @@ -29,6 +31,7 @@ class UploadMaterialsJob(Job): """ UPLOAD_REQUEST_URL = f"{UltimakerCloudConstants.CuraCloudAPIRoot}/connect/v1/materials/upload" + UPLOAD_CONFIRM_URL = UltimakerCloudConstants.CuraCloudAPIRoot + "/connect/v1/clusters/{cluster_id}/printers/{cluster_printer_id}/action/confirm_material_upload" class Result(enum.IntEnum): SUCCCESS = 0 @@ -105,12 +108,36 @@ class UploadMaterialsJob(Job): Logger.error(f"Failed to upload material archive: {error}") self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult(), self.getError()) return + for container_stack in CuraContainerRegistry.getInstance().findContainerStacksMetadata(type = "machine"): + if container_stack.get("connection_type", -1) != 3: # Not a cloud printer. + continue # Only upload to cloud printers. + if not container_stack.get("is_online", False): # Not online. + continue # Only upload to online printers. + if "host_guid" not in container_stack or "um_cloud_cluster_id" not in container_stack: + continue # Incomplete information about cloud printer. + cluster_id = container_stack["um_cloud_cluster_id"] + printer_id = container_stack["host_guid"] + http = HttpRequestManager.getInstance() + http.get( + url = self.UPLOAD_CONFIRM_URL.format(cluster_id = cluster_id, cluster_printer_id = printer_id), + callback = functools.partialmethod(self.onUploadConfirmed, printer_id), + error_callback = self.onError, + scope = self._scope + ) - else: - self.setResult(self.Result.SUCCESS) + def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + if error is not None: + Logger.error(f"Failed to confirm uploading material archive to printer {printer_id}: {error}") + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) + self.setResult(self.Result.FAILED) + self.uploadCompleted.emit(self.getResult(), self.getError()) + return + + self.setResult(self.Result.SUCCCESS) self.uploadCompleted.emit(self.getResult(), self.getError()) def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): From 54d51536b0d60d0e3502691502d311297be233b9 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 13:55:03 +0200 Subject: [PATCH 075/135] Improve error-handling per printer We can now know which printers failed to sync and which succeeded. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 45 +++++++++++++++--------- 1 file changed, 28 insertions(+), 17 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 5591e3b8e8..9d4011b91e 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -18,13 +18,14 @@ from UM.Signal import Signal from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope -catalog = i18nCatalog("cura") - from typing import Optional, TYPE_CHECKING if TYPE_CHECKING: from PyQt5.QtNetwork import QNetworkReply from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync +catalog = i18nCatalog("cura") + + class UploadMaterialsJob(Job): """ Job that uploads a set of materials to the Digital Factory. @@ -43,6 +44,9 @@ class UploadMaterialsJob(Job): self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope self._archive_filename = None # type: Optional[str] self._archive_remote_id = None # type: Optional[str] # ID that the server gives to this archive. Used to communicate about the archive to the server. + self._num_synced_printers = 0 + self._completed_printers = set() # The printers that have successfully completed the upload. + self._failed_printers = set() uploadCompleted = Signal() uploadProgressChanged = Signal() @@ -111,13 +115,15 @@ class UploadMaterialsJob(Job): self.uploadCompleted.emit(self.getResult(), self.getError()) return - for container_stack in CuraContainerRegistry.getInstance().findContainerStacksMetadata(type = "machine"): - if container_stack.get("connection_type", -1) != 3: # Not a cloud printer. - continue # Only upload to cloud printers. - if not container_stack.get("is_online", False): # Not online. - continue # Only upload to online printers. - if "host_guid" not in container_stack or "um_cloud_cluster_id" not in container_stack: - continue # Incomplete information about cloud printer. + online_cloud_printers = CuraContainerRegistry.getInstance().findContainerStacksMetadata( + type = "machine", + connection_type = 3, # Only cloud printers. + is_online = True, # Only online printers. Otherwise the server gives an error. + host_guid = "*", # Required metadata field. Otherwise we get a KeyError. + um_cloud_cluster_id = "*" # Required metadata field. Otherwise we get a KeyError. + ) + self._num_synced_printers = len(online_cloud_printers) + for container_stack in online_cloud_printers: cluster_id = container_stack["um_cloud_cluster_id"] printer_id = container_stack["host_guid"] @@ -125,20 +131,24 @@ class UploadMaterialsJob(Job): http.get( url = self.UPLOAD_CONFIRM_URL.format(cluster_id = cluster_id, cluster_printer_id = printer_id), callback = functools.partialmethod(self.onUploadConfirmed, printer_id), - error_callback = self.onError, + error_callback = functools.partialmethod(self.onUploadConfirmed, printer_id), # Let this same function handle the error too. scope = self._scope ) def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: if error is not None: Logger.error(f"Failed to confirm uploading material archive to printer {printer_id}: {error}") - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) - self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult(), self.getError()) - return + self._failed_printers.add(printer_id) + else: + self._completed_printers.add(printer_id) - self.setResult(self.Result.SUCCCESS) - self.uploadCompleted.emit(self.getResult(), self.getError()) + if len(self._completed_printers) + len(self._failed_printers) >= self._num_synced_printers: # This is the last response to be processed. + if self._failed_printers: + self.setResult(self.Result.FAILED) + self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory to sync materials with some of the printers."))) + else: + self.setResult(self.Result.SUCCESS) + self.uploadCompleted.emit(self.getResult(), self.getError()) def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): Logger.error(f"Failed to upload material archive: {error}") @@ -146,8 +156,9 @@ class UploadMaterialsJob(Job): self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.uploadCompleted.emit(self.getResult(), self.getError()) + class UploadMaterialsError(Exception): """ Marker class to indicate something went wrong while uploading. """ - pass \ No newline at end of file + pass From 8607eb5cffc7addf316e612b7548e9a4bf8163bd Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 15:49:43 +0200 Subject: [PATCH 076/135] Store printer sync status flag per printer Because we'll need to display it per printer. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 40 +++++++++++++----------- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 9d4011b91e..f53476ccb2 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -18,7 +18,7 @@ from UM.Signal import Signal from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope -from typing import Optional, TYPE_CHECKING +from typing import Dict, Optional, TYPE_CHECKING if TYPE_CHECKING: from PyQt5.QtNetwork import QNetworkReply from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync @@ -44,14 +44,23 @@ class UploadMaterialsJob(Job): self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope self._archive_filename = None # type: Optional[str] self._archive_remote_id = None # type: Optional[str] # ID that the server gives to this archive. Used to communicate about the archive to the server. - self._num_synced_printers = 0 - self._completed_printers = set() # The printers that have successfully completed the upload. - self._failed_printers = set() + self._printer_sync_status = {} + self._printer_metadata = {} uploadCompleted = Signal() uploadProgressChanged = Signal() def run(self): + self._printer_metadata = CuraContainerRegistry.getInstance().findContainerStacksMetadata( + type = "machine", + connection_type = 3, # Only cloud printers. + is_online = True, # Only online printers. Otherwise the server gives an error. + host_guid = "*", # Required metadata field. Otherwise we get a KeyError. + um_cloud_cluster_id = "*" # Required metadata field. Otherwise we get a KeyError. + ) + for printer in self._printer_metadata: + self._printer_sync_status[printer["host_guid"]] = "uploading" + archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() self._archive_filename = archive_file.name @@ -115,15 +124,7 @@ class UploadMaterialsJob(Job): self.uploadCompleted.emit(self.getResult(), self.getError()) return - online_cloud_printers = CuraContainerRegistry.getInstance().findContainerStacksMetadata( - type = "machine", - connection_type = 3, # Only cloud printers. - is_online = True, # Only online printers. Otherwise the server gives an error. - host_guid = "*", # Required metadata field. Otherwise we get a KeyError. - um_cloud_cluster_id = "*" # Required metadata field. Otherwise we get a KeyError. - ) - self._num_synced_printers = len(online_cloud_printers) - for container_stack in online_cloud_printers: + for container_stack in self._printer_metadata: cluster_id = container_stack["um_cloud_cluster_id"] printer_id = container_stack["host_guid"] @@ -138,12 +139,12 @@ class UploadMaterialsJob(Job): def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: if error is not None: Logger.error(f"Failed to confirm uploading material archive to printer {printer_id}: {error}") - self._failed_printers.add(printer_id) + self._printer_sync_status[printer_id] = "failed" else: - self._completed_printers.add(printer_id) + self._printer_sync_status[printer_id] = "success" - if len(self._completed_printers) + len(self._failed_printers) >= self._num_synced_printers: # This is the last response to be processed. - if self._failed_printers: + if "uploading" not in self._printer_sync_status.values(): # This is the last response to be processed. + if "failed" in self._printer_sync_status.values(): self.setResult(self.Result.FAILED) self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory to sync materials with some of the printers."))) else: @@ -156,9 +157,12 @@ class UploadMaterialsJob(Job): self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) self.uploadCompleted.emit(self.getResult(), self.getError()) + def getPrinterSyncStatus(self) -> Dict[str, str]: + return self._printer_sync_status + class UploadMaterialsError(Exception): """ - Marker class to indicate something went wrong while uploading. + Class to indicate something went wrong while uploading. """ pass From 0fa6f650f6b3b3f686b692d3ea79db87b8b7956c Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 16:06:53 +0200 Subject: [PATCH 077/135] Expose printer status updates via progress update signal This way we can ask the printer status from QML even if it's updated via a job on a different thread and different class and all that. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 12 ++++++++++-- cura/UltimakerCloud/CloudMaterialSync.py | 21 ++++++++++++++++++--- 2 files changed, 28 insertions(+), 5 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index f53476ccb2..a65406aaf1 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -46,8 +46,10 @@ class UploadMaterialsJob(Job): self._archive_remote_id = None # type: Optional[str] # ID that the server gives to this archive. Used to communicate about the archive to the server. self._printer_sync_status = {} self._printer_metadata = {} + self.processProgressChanged.connect(self._onProcessProgressChanged) uploadCompleted = Signal() + processProgressChanged = Signal() uploadProgressChanged = Signal() def run(self): @@ -65,7 +67,7 @@ class UploadMaterialsJob(Job): archive_file.close() self._archive_filename = archive_file.name - self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.uploadProgressChanged) + self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.processProgressChanged) file_size = os.path.getsize(self._archive_filename) http = HttpRequestManager.getInstance() @@ -143,7 +145,10 @@ class UploadMaterialsJob(Job): else: self._printer_sync_status[printer_id] = "success" - if "uploading" not in self._printer_sync_status.values(): # This is the last response to be processed. + still_uploading = len([val for val in self._printer_sync_status.values() if val == "uploading"]) + self.uploadProgressChanged.emit(0.8 + (len(self._printer_sync_status) - still_uploading) / len(self._printer_sync_status), self.getPrinterSyncStatus()) + + if still_uploading == 0: # This is the last response to be processed. if "failed" in self._printer_sync_status.values(): self.setResult(self.Result.FAILED) self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory to sync materials with some of the printers."))) @@ -160,6 +165,9 @@ class UploadMaterialsJob(Job): def getPrinterSyncStatus(self) -> Dict[str, str]: return self._printer_sync_status + def _onProcessProgressChanged(self, progress: float) -> None: + self.uploadProgressChanged.emit(progress * 0.8, self.getPrinterSyncStatus()) # The processing is 80% of the progress bar. + class UploadMaterialsError(Exception): """ diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index d3cc479a0a..99282d7eb1 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -3,7 +3,7 @@ from PyQt5.QtCore import pyqtProperty, pyqtSignal, pyqtSlot, QObject, QUrl from PyQt5.QtGui import QDesktopServices -from typing import Optional, TYPE_CHECKING +from typing import Dict, Optional, TYPE_CHECKING import zipfile # To export all materials in a .zip archive. import cura.CuraApplication # Imported like this to prevent circular imports. @@ -28,6 +28,7 @@ class CloudMaterialSync(QObject): self._export_upload_status = "idle" self._checkIfNewMaterialsWereInstalled() self._export_progress = 0 + self._printer_status = {} def _checkIfNewMaterialsWereInstalled(self) -> None: """ @@ -151,10 +152,14 @@ class CloudMaterialSync(QObject): self._export_upload_status = "uploading" self.exportUploadStatusChanged.emit() job = UploadMaterialsJob(self) - job.uploadProgressChanged.connect(self.setExportProgress) + job.uploadProgressChanged.connect(self._onUploadProgressChanged) job.uploadCompleted.connect(self.exportUploadCompleted) job.start() + def _onUploadProgressChanged(self, progress: float, printers_status: Dict[str, str]): + self.setExportProgress(progress) + self.setPrinterStatus(printers_status) + def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result, job_error: Optional[Exception]): if job_result == UploadMaterialsJob.Result.FAILED: if isinstance(job_error, UploadMaterialsError): @@ -174,4 +179,14 @@ class CloudMaterialSync(QObject): @pyqtProperty(float, fset = setExportProgress, notify = exportProgressChanged) def exportProgress(self) -> float: - return self._export_progress \ No newline at end of file + return self._export_progress + + printerStatusChanged = pyqtSignal() + + def setPrinterStatus(self, new_status: Dict[str, str]) -> None: + self._printer_status = new_status + self.printerStatusChanged.emit() + + @pyqtProperty("QVariantMap", fset = setPrinterStatus, notify = printerStatusChanged) + def printerStatus(self) -> Dict[str, str]: + return self._printer_status \ No newline at end of file From 3ffffad1ed4e5da7f68d1e9b8a6483e8badeeeb6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 16:15:58 +0200 Subject: [PATCH 078/135] Send progress update when failed And update all of the printer statuses to make them appear failed, if we have a general failure in an earlier stage. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 53 +++++++++++++----------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index a65406aaf1..6fb7dca583 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -26,6 +26,13 @@ if TYPE_CHECKING: catalog = i18nCatalog("cura") +class UploadMaterialsError(Exception): + """ + Class to indicate something went wrong while uploading. + """ + pass + + class UploadMaterialsJob(Job): """ Job that uploads a set of materials to the Digital Factory. @@ -81,29 +88,21 @@ class UploadMaterialsJob(Job): def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): if error is not None: Logger.error(f"Could not request URL to upload material archive to: {error}") - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) - self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult(), self.getError()) + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) return response_data = HttpRequestManager.readJSON(reply) if response_data is None: Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory appears to be corrupted."))) - self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult(), self.getError()) + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory appears to be corrupted."))) return if "upload_url" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'upload_url' field to upload archive to.") - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) - self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult(), self.getError()) + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) return if "material_profile_id" not in response_data: Logger.error(f"Invalid response to material upload request: Missing 'material_profile_id' to communicate about the materials with the server.") - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) - self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult(), self.getError()) + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) return upload_url = response_data["upload_url"] @@ -121,9 +120,7 @@ class UploadMaterialsJob(Job): def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): if error is not None: Logger.error(f"Failed to upload material archive: {error}") - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) - self.setResult(self.Result.FAILED) - self.uploadCompleted.emit(self.getResult(), self.getError()) + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) return for container_stack in self._printer_metadata: @@ -158,19 +155,25 @@ class UploadMaterialsJob(Job): def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): Logger.error(f"Failed to upload material archive: {error}") - self.setResult(self.Result.FAILED) - self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) - self.uploadCompleted.emit(self.getResult(), self.getError()) + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) def getPrinterSyncStatus(self) -> Dict[str, str]: return self._printer_sync_status + def failed(self, error: UploadMaterialsError) -> None: + """ + Helper function for when we have a general failure. + + This sets the sync status for all printers to failed, sets the error on + the job and the result of the job to FAILED. + :param error: An error to show to the user. + """ + self.setResult(self.Result.FAILED) + self.setError(error) + for printer_id in self._printer_sync_status: + self._printer_sync_status[printer_id] = "failed" + self.uploadProgressChanged.emit(1.0, self.getPrinterSyncStatus()) + self.uploadCompleted.emit(self.getResult(), self.getError()) + def _onProcessProgressChanged(self, progress: float) -> None: self.uploadProgressChanged.emit(progress * 0.8, self.getPrinterSyncStatus()) # The processing is 80% of the progress bar. - - -class UploadMaterialsError(Exception): - """ - Class to indicate something went wrong while uploading. - """ - pass From 2b6a82ecf1ef8000cc49846d77cc2bd8f9b0ceec Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:08:58 +0200 Subject: [PATCH 079/135] Match on strings for metadata It doesn't automatically cast these in the query. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 6fb7dca583..994971c8d0 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -62,8 +62,8 @@ class UploadMaterialsJob(Job): def run(self): self._printer_metadata = CuraContainerRegistry.getInstance().findContainerStacksMetadata( type = "machine", - connection_type = 3, # Only cloud printers. - is_online = True, # Only online printers. Otherwise the server gives an error. + connection_type = "3", # Only cloud printers. + is_online = "True", # Only online printers. Otherwise the server gives an error. host_guid = "*", # Required metadata field. Otherwise we get a KeyError. um_cloud_cluster_id = "*" # Required metadata field. Otherwise we get a KeyError. ) From bfb39cf9890be9bbedac7b06148b566067b2d6a6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:09:54 +0200 Subject: [PATCH 080/135] Add spinners and status icons per printer These make use of the per-printer sync status to show either nothing, a spinner, a cross or a checkmark. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 47 ++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 04f496d29a..a3a06f6242 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -258,11 +258,22 @@ Window model: cloudPrinterList delegate: Rectangle { + id: delegateContainer border.color: UM.Theme.getColor("lining") border.width: UM.Theme.getSize("default_lining").width width: printerListScrollView.width height: UM.Theme.getSize("card").height + property string syncStatus: + { + var printer_id = model.metadata["host_guid"] + if(syncModel.printerStatus[printer_id] === undefined) //No status information available. Could be added after we started syncing. + { + return "idle"; + } + return syncModel.printerStatus[printer_id]; + } + Cura.IconWithText { anchors @@ -309,6 +320,40 @@ Window } } } + + UM.RecolorImage + { + width: UM.Theme.getSize("section_icon").width + height: width + anchors.verticalCenter: parent.verticalCenter + anchors.right: parent.right + anchors.rightMargin: Math.round((parent.height - height) / 2) //Same margin on the right as above and below. + + visible: delegateContainer.syncStatus === "uploading" + source: UM.Theme.getIcon("ArrowDoubleCircleRight") + color: UM.Theme.getColor("primary") + + RotationAnimator + { + target: printerStatusSyncingIcon + from: 0 + to: 360 + duration: 1000 + loops: Animation.Infinite + running: true + } + } + UM.StatusIcon + { + width: UM.Theme.getSize("section_icon").width + height: width + anchors.verticalCenter: parent.verticalCenter + anchors.right: parent.right + anchors.rightMargin: Math.round((parent.height - height) / 2) //Same margin on the right as above and below. + + visible: delegateContainer.syncStatus === "failed" || delegateContainer.syncStatus === "success" + status: delegateContainer.syncStatus === "success" ? UM.StatusIcon.Status.POSITIVE : UM.StatusIcon.Status.ERROR + } } footer: Item @@ -431,7 +476,7 @@ Window to: 360 duration: 1000 loops: Animation.Infinite - running: !syncButton.visible //Don't run while invisible. Would be a waste of render updates. + running: true } } Label From cf860829c7a4d817757a3af921c21041ac302c35 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:21:25 +0200 Subject: [PATCH 081/135] Provide upload request metadata as body of a PUT request Apparently the API is now a PUT request rather than a GET request. It needs a bit more metadata which can be hard-coded for our client. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 994971c8d0..8664e5b714 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -1,11 +1,12 @@ # Copyright (c) 2021 Ultimaker B.V. # Cura is released under the terms of the LGPLv3 or higher. -from PyQt5.QtCore import QUrl -import os # To delete the archive when we're done. -import tempfile # To create an archive before we upload it. import enum import functools +import json # To serialise metadata for API calls. +import os # To delete the archive when we're done. +from PyQt5.QtCore import QUrl +import tempfile # To create an archive before we upload it. import cura.CuraApplication # Imported like this to prevent circular imports. from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To find all printers to upload to. @@ -77,9 +78,20 @@ class UploadMaterialsJob(Job): self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.processProgressChanged) file_size = os.path.getsize(self._archive_filename) + request_metadata = { + "data": { + "file_size": file_size, + "file_name": "cura.umm", # File name can be anything as long as it's .umm. It's not used by anyone. + "content_type": "application/zip", # This endpoint won't receive files of different MIME types. + "origin": "cura" # Some identifier against hackers intercepting this upload request, apparently. + } + } + request_payload = json.dumps(request_metadata).encode("UTF-8") + http = HttpRequestManager.getInstance() - http.get( - url = self.UPLOAD_REQUEST_URL + f"?file_size={file_size}&file_name=cura.umm", # File name can be anything as long as it's .umm. It's not used by Cloud or firmware. + http.put( + url = self.UPLOAD_REQUEST_URL, + data = request_payload, callback = self.onUploadRequestCompleted, error_callback = self.onError, scope = self._scope From c2057c94db469652235146a5a27602ca8c69ef0e Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:28:09 +0200 Subject: [PATCH 082/135] Only show troubleshooting link if there is an error And show it next to the error. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 38 ++++++++++++------- 1 file changed, 25 insertions(+), 13 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index a3a06f6242..49ac522b1f 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -231,14 +231,33 @@ Window color: UM.Theme.getColor("text") } } - Label + Row { - id: syncStatusLabel + Layout.preferredWidth: parent.width + Layout.preferredHeight: contentRect.height - visible: text !== "" - text: "" - color: UM.Theme.getColor("text") - font: UM.Theme.getFont("medium") + Label + { + id: syncStatusLabel + + width: parent.width - UM.Theme.getSize("default_margin").width - troubleshootingLink.width + anchors.verticalCenter: troubleshootingLink.verticalCenter + + elide: Text.ElideRight + visible: text !== "" + text: "" + color: UM.Theme.getColor("text") + font: UM.Theme.getFont("medium") + } + Cura.TertiaryButton + { + id: troubleshootingLink + text: catalog.i18nc("@button", "Troubleshooting") + visible: typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "error" + iconSource: UM.Theme.getIcon("LinkExternal") + Layout.preferredHeight: height + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-troubleshoot-cloud-printer") + } } ScrollView { @@ -416,13 +435,6 @@ Window } } } - Cura.TertiaryButton - { - text: catalog.i18nc("@button", "Troubleshooting") - iconSource: UM.Theme.getIcon("LinkExternal") - Layout.preferredHeight: height - onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-troubleshoot-cloud-printer") - } Item { width: parent.width From 5b14792c769d396bd97790e1942873514b5f42f0 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:30:20 +0200 Subject: [PATCH 083/135] Use 'try again' as button text if the first attempt failed Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 49ac522b1f..83195611f2 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -452,7 +452,7 @@ Window { id: syncButton anchors.right: parent.right - text: catalog.i18nc("@button", "Sync") + text: (typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "error") ? catalog.i18nc("@button", "Try again") : catalog.i18nc("@button", "Sync") onClicked: syncModel.exportUpload() visible: { From bfb8d9ddf177e94c02f4f8d523d29a7b78d429e7 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:34:34 +0200 Subject: [PATCH 084/135] Show 'Done' button when sync was successful And make it close the window when pressed then. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 83195611f2..8e51cd2dd7 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -452,8 +452,29 @@ Window { id: syncButton anchors.right: parent.right - text: (typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "error") ? catalog.i18nc("@button", "Try again") : catalog.i18nc("@button", "Sync") - onClicked: syncModel.exportUpload() + text: + { + if(typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "error") + { + return catalog.i18nc("@button", "Try again"); + } + if(typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "success") + { + return catalog.i18nc("@button", "Done"); + } + return catalog.i18nc("@button", "Sync"); + } + onClicked: + { + if(typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "success") + { + materialsSyncDialog.close(); + } + else + { + syncModel.exportUpload(); + } + } visible: { if(!syncModel) //When the dialog is created, this is not set yet. From 2d53a548dca55af8e81bc49102004e230c09e03d Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:38:47 +0200 Subject: [PATCH 085/135] Remove superfluous error handling If there is an error, it'll go into onError and handle the error there. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 8664e5b714..0c80ec94dc 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -98,11 +98,6 @@ class UploadMaterialsJob(Job): ) def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): - if error is not None: - Logger.error(f"Could not request URL to upload material archive to: {error}") - self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) - return - response_data = HttpRequestManager.readJSON(reply) if response_data is None: Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") @@ -130,11 +125,6 @@ class UploadMaterialsJob(Job): ) def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): - if error is not None: - Logger.error(f"Failed to upload material archive: {error}") - self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) - return - for container_stack in self._printer_metadata: cluster_id = container_stack["um_cloud_cluster_id"] printer_id = container_stack["host_guid"] From a703e6b882fffdf923cf21fd0f8625659b45dcd9 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Tue, 12 Oct 2021 17:47:05 +0200 Subject: [PATCH 086/135] Use lambdas instead of functools Partialmethod is not callable apparently. I think the problem is that it's calling the method outside of the scope of the class here. I'm probably not using it right. Lambas are easier since they automatically take their scope along with them. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 0c80ec94dc..d000d1ba2d 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -2,7 +2,6 @@ # Cura is released under the terms of the LGPLv3 or higher. import enum -import functools import json # To serialise metadata for API calls. import os # To delete the archive when we're done. from PyQt5.QtCore import QUrl @@ -132,8 +131,8 @@ class UploadMaterialsJob(Job): http = HttpRequestManager.getInstance() http.get( url = self.UPLOAD_CONFIRM_URL.format(cluster_id = cluster_id, cluster_printer_id = printer_id), - callback = functools.partialmethod(self.onUploadConfirmed, printer_id), - error_callback = functools.partialmethod(self.onUploadConfirmed, printer_id), # Let this same function handle the error too. + callback = lambda reply, error: self.onUploadConfirmed(printer_id, reply, error), + error_callback = lambda reply, error: self.onUploadConfirmed(printer_id, reply, error), # Let this same function handle the error too. scope = self._scope ) From af54316690eecba8ee09aabeaabd9dff9fed1694 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 13 Oct 2021 10:00:22 +0200 Subject: [PATCH 087/135] Typing fixes Some things the CI is complaining about. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 11 ++++++----- cura/UltimakerCloud/CloudMaterialSync.py | 6 ++++-- cura/UltimakerCloud/UltimakerCloudScope.py | 2 +- 3 files changed, 11 insertions(+), 8 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index d000d1ba2d..b082b47cbb 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -18,7 +18,7 @@ from UM.Signal import Signal from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope -from typing import Dict, Optional, TYPE_CHECKING +from typing import Any, Dict, Optional, TYPE_CHECKING if TYPE_CHECKING: from PyQt5.QtNetwork import QNetworkReply from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync @@ -42,7 +42,7 @@ class UploadMaterialsJob(Job): UPLOAD_CONFIRM_URL = UltimakerCloudConstants.CuraCloudAPIRoot + "/connect/v1/clusters/{cluster_id}/printers/{cluster_printer_id}/action/confirm_material_upload" class Result(enum.IntEnum): - SUCCCESS = 0 + SUCCESS = 0 FAILED = 1 def __init__(self, material_sync: "CloudMaterialSync"): @@ -51,8 +51,8 @@ class UploadMaterialsJob(Job): self._scope = JsonDecoratorScope(UltimakerCloudScope(cura.CuraApplication.CuraApplication.getInstance())) # type: JsonDecoratorScope self._archive_filename = None # type: Optional[str] self._archive_remote_id = None # type: Optional[str] # ID that the server gives to this archive. Used to communicate about the archive to the server. - self._printer_sync_status = {} - self._printer_metadata = {} + self._printer_sync_status = {} # type: Dict[str, str] + self._printer_metadata = {} # type: Dict[str, Any] self.processProgressChanged.connect(self._onProcessProgressChanged) uploadCompleted = Signal() @@ -113,7 +113,8 @@ class UploadMaterialsJob(Job): upload_url = response_data["upload_url"] self._archive_remote_id = response_data["material_profile_id"] - file_data = open(self._archive_filename, "rb").read() + with open(self._archive_filename, "rb") as f: + file_data = f.read() http = HttpRequestManager.getInstance() http.put( url = upload_url, diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index 99282d7eb1..3a9402c36e 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -27,8 +27,8 @@ class CloudMaterialSync(QObject): self.sync_all_dialog = None # type: Optional[QObject] self._export_upload_status = "idle" self._checkIfNewMaterialsWereInstalled() - self._export_progress = 0 - self._printer_status = {} + self._export_progress = 0.0 + self._printer_status = {} # type: Dict[str, str] def _checkIfNewMaterialsWereInstalled(self) -> None: """ @@ -161,6 +161,8 @@ class CloudMaterialSync(QObject): self.setPrinterStatus(printers_status) def exportUploadCompleted(self, job_result: UploadMaterialsJob.Result, job_error: Optional[Exception]): + if not self.sync_all_dialog: # Shouldn't get triggered before the dialog is open, but better to check anyway. + return if job_result == UploadMaterialsJob.Result.FAILED: if isinstance(job_error, UploadMaterialsError): self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Error sending materials to the Digital Factory:") + " " + str(job_error)) diff --git a/cura/UltimakerCloud/UltimakerCloudScope.py b/cura/UltimakerCloud/UltimakerCloudScope.py index c8ac35f893..bbcc8e2aa9 100644 --- a/cura/UltimakerCloud/UltimakerCloudScope.py +++ b/cura/UltimakerCloud/UltimakerCloudScope.py @@ -5,11 +5,11 @@ from PyQt5.QtNetwork import QNetworkRequest from UM.Logger import Logger from UM.TaskManagement.HttpRequestScope import DefaultUserAgentScope -from cura.API import Account from typing import TYPE_CHECKING if TYPE_CHECKING: from cura.CuraApplication import CuraApplication + from cura.API.Account import Account class UltimakerCloudScope(DefaultUserAgentScope): From 24cd2046f8e936fc1d30bea46df8a59e2859a125 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 13 Oct 2021 10:13:06 +0200 Subject: [PATCH 088/135] Initialise _printer_metadata as a list instead of a dict It should become a list later on, in any case. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index b082b47cbb..ff273c06c0 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -18,7 +18,7 @@ from UM.Signal import Signal from UM.TaskManagement.HttpRequestManager import HttpRequestManager # To call the API. from UM.TaskManagement.HttpRequestScope import JsonDecoratorScope -from typing import Any, Dict, Optional, TYPE_CHECKING +from typing import Any, cast, Dict, List, Optional, TYPE_CHECKING if TYPE_CHECKING: from PyQt5.QtNetwork import QNetworkReply from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync @@ -52,7 +52,7 @@ class UploadMaterialsJob(Job): self._archive_filename = None # type: Optional[str] self._archive_remote_id = None # type: Optional[str] # ID that the server gives to this archive. Used to communicate about the archive to the server. self._printer_sync_status = {} # type: Dict[str, str] - self._printer_metadata = {} # type: Dict[str, Any] + self._printer_metadata = [] # type: List[Dict[str, Any]] self.processProgressChanged.connect(self._onProcessProgressChanged) uploadCompleted = Signal() @@ -113,7 +113,7 @@ class UploadMaterialsJob(Job): upload_url = response_data["upload_url"] self._archive_remote_id = response_data["material_profile_id"] - with open(self._archive_filename, "rb") as f: + with open(cast(str, self._archive_filename), "rb") as f: file_data = f.read() http = HttpRequestManager.getInstance() http.put( From a399bacab380ff016d4377e372b22eb92d9a92d9 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 13 Oct 2021 10:34:59 +0200 Subject: [PATCH 089/135] Patch CuraApplication away while running tests for output devices It needs CuraApplication because it wants to set metadata on the printer. But this is not relevant for the tests. Contributes to issue CURA-8609. --- .../TestNetworkedPrinterOutputDevice.py | 13 ++++++++----- tests/PrinterOutput/TestPrinterOutputDevice.py | 8 +++++--- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/tests/PrinterOutput/TestNetworkedPrinterOutputDevice.py b/tests/PrinterOutput/TestNetworkedPrinterOutputDevice.py index 84ad7f0473..2a5cc8a2d5 100644 --- a/tests/PrinterOutput/TestNetworkedPrinterOutputDevice.py +++ b/tests/PrinterOutput/TestNetworkedPrinterOutputDevice.py @@ -1,3 +1,6 @@ +# Copyright (c) 2021 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. + import time from unittest.mock import MagicMock, patch @@ -122,8 +125,9 @@ def test_put(): def test_timeout(): with patch("UM.Qt.QtApplication.QtApplication.getInstance"): - output_device = NetworkedPrinterOutputDevice(device_id="test", address="127.0.0.1", properties={}) - output_device.setConnectionState(ConnectionState.Connected) + output_device = NetworkedPrinterOutputDevice(device_id = "test", address = "127.0.0.1", properties = {}) + with patch("cura.CuraApplication.CuraApplication.getInstance"): + output_device.setConnectionState(ConnectionState.Connected) assert output_device.connectionState == ConnectionState.Connected output_device._update() @@ -131,9 +135,8 @@ def test_timeout(): output_device._last_response_time = time.time() - 15 # But we did recently ask for a response! output_device._last_request_time = time.time() - 5 - output_device._update() + with patch("cura.CuraApplication.CuraApplication.getInstance"): + output_device._update() # The connection should now be closed, since it went into timeout. assert output_device.connectionState == ConnectionState.Closed - - diff --git a/tests/PrinterOutput/TestPrinterOutputDevice.py b/tests/PrinterOutput/TestPrinterOutputDevice.py index 7a9e4e2cc5..7913e156b0 100644 --- a/tests/PrinterOutput/TestPrinterOutputDevice.py +++ b/tests/PrinterOutput/TestPrinterOutputDevice.py @@ -1,7 +1,8 @@ -from unittest.mock import MagicMock +# Copyright (c) 2021 Ultimaker B.V. +# Cura is released under the terms of the LGPLv3 or higher. import pytest -from unittest.mock import patch +from unittest.mock import MagicMock, patch from cura.PrinterOutput.Models.ExtruderConfigurationModel import ExtruderConfigurationModel from cura.PrinterOutput.Models.MaterialOutputModel import MaterialOutputModel @@ -33,7 +34,8 @@ def test_getAndSet(data, printer_output_device): setattr(model, data["attribute"] + "Changed", MagicMock()) # Attempt to set the value - getattr(model, "set" + attribute)(data["value"]) + with patch("cura.CuraApplication.CuraApplication.getInstance"): + getattr(model, "set" + attribute)(data["value"]) # Check if signal fired. signal = getattr(model, data["attribute"] + "Changed") From 34c531123b5ca4a5a55d32fb08eff66f9b029630 Mon Sep 17 00:00:00 2001 From: AnnaKang0219 Date: Thu, 14 Oct 2021 13:52:07 +0800 Subject: [PATCH 090/135] remove wrong bed_temperature setting remove wrong bed_temperature setting --- ...inting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg | 2 +- ...yzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg | 1 - ...xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg | 1 - .../xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg | 1 - ...yzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg | 1 - ...xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg | 1 - .../xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg | 1 - .../xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg | 1 - ...xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg | 1 - ...nting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg | 1 - ...inting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg | 1 - ...rinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg | 1 - ...nting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg | 1 - 13 files changed, 1 insertion(+), 13 deletions(-) diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg index 1610b048cd..e012d1ef68 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg @@ -1,6 +1,6 @@ [general] version = 4 -name = Normla Quality +name = Normal Quality definition = xyzprinting_da_vinci_1p0_pro [metadata] diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg index 7f347293da..105751b87e 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.4 layer_height_0 = 0.4 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg index f2950ff010..6be3b0843b 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.3 layer_height_0 = 0.4 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg index 8ac0f79e58..c81973a404 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.1 layer_height_0 = 0.2 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg index bf6bd76767..11543c1d6f 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.2 layer_height_0 = 0.35 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg index 56c565f11d..eb2cb76b4e 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.4 layer_height_0 = 0.4 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg index d27585a12b..3a5ad5823a 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.3 layer_height_0 = 0.4 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg index e3a690b4f9..0ccc620a33 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.1 layer_height_0 = 0.2 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg index 05900b5bc5..0daa204f9e 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.2 layer_height_0 = 0.35 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg index 437c141f65..df7e677e35 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.4 layer_height_0 = 0.4 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg index c7371c75c3..830074f3af 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.3 layer_height_0 = 0.4 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg index 3ff74922da..5780059f51 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.1 layer_height_0 = 0.2 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg index 5d87a5ad00..fc34b0eb74 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -16,7 +16,6 @@ variant = Copper 0.4mm Nozzle layer_height = 0.2 layer_height_0 = 0.35 material_diameter = 1.75 -material_bed_temperature = =material_bed_temperature material_bed_temperature_layer_0 = =material_bed_temperature material_print_temperature_layer_0 = =material_print_temperature material_initial_print_temperature = =material_print_temperature From 2b4a31c9deba1fc59494f8372decad74bb57025b Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 14:35:07 +0200 Subject: [PATCH 091/135] Change type of filter to Optional[ConnectionType] It's a bit more semantic this way. Contributes to issue CURA-8609. --- cura/Machines/Models/GlobalStacksModel.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/cura/Machines/Models/GlobalStacksModel.py b/cura/Machines/Models/GlobalStacksModel.py index 0f01df6b28..cfe8c7587a 100644 --- a/cura/Machines/Models/GlobalStacksModel.py +++ b/cura/Machines/Models/GlobalStacksModel.py @@ -2,6 +2,7 @@ # Cura is released under the terms of the LGPLv3 or higher. from PyQt5.QtCore import Qt, QTimer, pyqtProperty, pyqtSignal +from typing import Optional from UM.Qt.ListModel import ListModel from UM.i18n import i18nCatalog @@ -39,7 +40,7 @@ class GlobalStacksModel(ListModel): self._change_timer.setSingleShot(True) self._change_timer.timeout.connect(self._update) - self._filter_connection_type = -1 + self._filter_connection_type = None # type: Optional[ConnectionType] self._filter_online_only = False # Listen to changes @@ -49,7 +50,7 @@ class GlobalStacksModel(ListModel): self._updateDelayed() filterConnectionTypeChanged = pyqtSignal() - def setFilterConnectionType(self, new_filter: int) -> None: + def setFilterConnectionType(self, new_filter: Optional[ConnectionType]) -> None: self._filter_connection_type = new_filter @pyqtProperty(int, fset = setFilterConnectionType, notify = filterConnectionTypeChanged) @@ -60,7 +61,7 @@ class GlobalStacksModel(ListModel): Only printers that match this connection type will be listed in the model. """ - return self._filter_connection_type + return int(self._filter_connection_type) filterOnlineOnlyChanged = pyqtSignal() def setFilterOnlineOnly(self, new_filter: bool) -> None: @@ -88,7 +89,7 @@ class GlobalStacksModel(ListModel): container_stacks = CuraContainerRegistry.getInstance().findContainerStacks(type = "machine") for container_stack in container_stacks: - if self._filter_connection_type != -1: # We want to filter on connection types. + if self._filter_connection_type is not None: # We want to filter on connection types. if not any((connection_type == self._filter_connection_type for connection_type in container_stack.configuredConnectionTypes)): continue # No connection type on this printer matches the filter. From dfcefe11cc4cd6e76c07ae96c65a053a00579064 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 14:51:07 +0200 Subject: [PATCH 092/135] Use enum for printer status constants This indicates how we're using it, and also allows for use of symbols in the code rather than strings, which integrate better with tooling. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index ff273c06c0..7d2a98ff11 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -45,6 +45,11 @@ class UploadMaterialsJob(Job): SUCCESS = 0 FAILED = 1 + class PrinterStatus(enum.Enum): + UPLOADING = "uploading" + SUCCESS = "success" + FAILED = "failed" + def __init__(self, material_sync: "CloudMaterialSync"): super().__init__() self._material_sync = material_sync @@ -68,7 +73,7 @@ class UploadMaterialsJob(Job): um_cloud_cluster_id = "*" # Required metadata field. Otherwise we get a KeyError. ) for printer in self._printer_metadata: - self._printer_sync_status[printer["host_guid"]] = "uploading" + self._printer_sync_status[printer["host_guid"]] = self.PrinterStatus.UPLOADING.value archive_file = tempfile.NamedTemporaryFile("wb", delete = False) archive_file.close() @@ -140,15 +145,15 @@ class UploadMaterialsJob(Job): def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: if error is not None: Logger.error(f"Failed to confirm uploading material archive to printer {printer_id}: {error}") - self._printer_sync_status[printer_id] = "failed" + self._printer_sync_status[printer_id] = self.PrinterStatus.FAILED.value else: - self._printer_sync_status[printer_id] = "success" + self._printer_sync_status[printer_id] = self.PrinterStatus.SUCCESS.value - still_uploading = len([val for val in self._printer_sync_status.values() if val == "uploading"]) + still_uploading = len([val for val in self._printer_sync_status.values() if val == self.PrinterStatus.UPLOADING.value]) self.uploadProgressChanged.emit(0.8 + (len(self._printer_sync_status) - still_uploading) / len(self._printer_sync_status), self.getPrinterSyncStatus()) if still_uploading == 0: # This is the last response to be processed. - if "failed" in self._printer_sync_status.values(): + if self.PrinterStatus.FAILED.value in self._printer_sync_status.values(): self.setResult(self.Result.FAILED) self.setError(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory to sync materials with some of the printers."))) else: @@ -173,7 +178,7 @@ class UploadMaterialsJob(Job): self.setResult(self.Result.FAILED) self.setError(error) for printer_id in self._printer_sync_status: - self._printer_sync_status[printer_id] = "failed" + self._printer_sync_status[printer_id] = self.PrinterStatus.FAILED.value self.uploadProgressChanged.emit(1.0, self.getPrinterSyncStatus()) self.uploadCompleted.emit(self.getResult(), self.getError()) From 4262dfaf5dcb1ece926285a3cd076203a3c612a9 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 15:17:59 +0200 Subject: [PATCH 093/135] Better handle errors in local part of upload job It could be that the archive fails to save because the user doesn't have access to its own temporary folder, the firewall quarantines the archive, there's not enough disk space, whatever. These errors need to be handled and not crash Cura. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 7d2a98ff11..79affeabd3 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -75,12 +75,22 @@ class UploadMaterialsJob(Job): for printer in self._printer_metadata: self._printer_sync_status[printer["host_guid"]] = self.PrinterStatus.UPLOADING.value - archive_file = tempfile.NamedTemporaryFile("wb", delete = False) - archive_file.close() - self._archive_filename = archive_file.name + try: + archive_file = tempfile.NamedTemporaryFile("wb", delete = False) + archive_file.close() + self._archive_filename = archive_file.name + self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.processProgressChanged) + except OSError as e: + Logger.error(f"Failed to create archive of materials to sync with printers: {type(e)} - {e}") + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to create archive of materials to sync with printers."))) + return - self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.processProgressChanged) - file_size = os.path.getsize(self._archive_filename) + try: + file_size = os.path.getsize(self._archive_filename) + except OSError as e: + Logger.error(f"Failed to load the archive of materials to sync it with printers: {type(e)} - {e}") + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to load the archive of materials to sync it with printers."))) + return request_metadata = { "data": { From e05fa87b4885a809c8c2b1a0746de85fd3b4da74 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 15:24:05 +0200 Subject: [PATCH 094/135] Handle errors reading material archive back in It could be that this archive is not accessible any more for whatever reason. Write-only file systems, quarantined files, etc. Whatever the reason, Cura shouldn't crash on this because it's not in Cura's control. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 79affeabd3..34e92ac8ef 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -128,8 +128,13 @@ class UploadMaterialsJob(Job): upload_url = response_data["upload_url"] self._archive_remote_id = response_data["material_profile_id"] - with open(cast(str, self._archive_filename), "rb") as f: - file_data = f.read() + try: + with open(cast(str, self._archive_filename), "rb") as f: + file_data = f.read() + except OSError as e: + Logger.error(f"Failed to load archive back in for sending to cloud: {type(e)} - {e}") + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to load the archive of materials to sync it with printers."))) + return http = HttpRequestManager.getInstance() http.put( url = upload_url, From 889000242d59c964bfbe18cb7bce37505e67ee72 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 15:42:12 +0200 Subject: [PATCH 095/135] Document UploadMaterialsJob class better Including all of its signals and methods. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 65 +++++++++++++++++++++--- 1 file changed, 58 insertions(+), 7 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 34e92ac8ef..0181a87c01 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -36,6 +36,13 @@ class UploadMaterialsError(Exception): class UploadMaterialsJob(Job): """ Job that uploads a set of materials to the Digital Factory. + + The job has a number of stages: + - First, it generates an archive of all materials. This typically takes a lot of processing power during which the + GIL remains locked. + - Then it requests the API to upload an archive. + - Then it uploads the archive to the URL given by the first request. + - Then it tells the API that the archive can be distributed to the printers. """ UPLOAD_REQUEST_URL = f"{UltimakerCloudConstants.CuraCloudAPIRoot}/connect/v1/materials/upload" @@ -60,11 +67,14 @@ class UploadMaterialsJob(Job): self._printer_metadata = [] # type: List[Dict[str, Any]] self.processProgressChanged.connect(self._onProcessProgressChanged) - uploadCompleted = Signal() - processProgressChanged = Signal() - uploadProgressChanged = Signal() + uploadCompleted = Signal() # Triggered when the job is really complete, including uploading to the cloud. + processProgressChanged = Signal() # Triggered when we've made progress creating the archive. + uploadProgressChanged = Signal() # Triggered when we've made progress with the complete job. This signal emits a progress fraction (0-1) as well as the status of every printer. - def run(self): + def run(self) -> None: + """ + Generates an archive of materials and starts uploading that archive to the cloud. + """ self._printer_metadata = CuraContainerRegistry.getInstance().findContainerStacksMetadata( type = "machine", connection_type = "3", # Only cloud printers. @@ -111,7 +121,14 @@ class UploadMaterialsJob(Job): scope = self._scope ) - def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): + def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + """ + Triggered when we successfully requested to upload a material archive. + + We then need to start uploading the material archive to the URL that the request answered with. + :param reply: The reply from the server to our request to upload an archive. + :param error: An error code (Qt enum) if the request failed. Failure is handled by `onError` though. + """ response_data = HttpRequestManager.readJSON(reply) if response_data is None: Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") @@ -144,7 +161,13 @@ class UploadMaterialsJob(Job): scope = self._scope ) - def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): + def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + """ + When we've successfully uploaded the archive to the cloud, we need to notify the API to start syncing that + archive to every printer. + :param reply: The reply from the cloud storage when the upload succeeded. + :param error: An error message if the upload failed. Errors are handled by the `onError` function though. + """ for container_stack in self._printer_metadata: cluster_id = container_stack["um_cloud_cluster_id"] printer_id = container_stack["host_guid"] @@ -158,6 +181,16 @@ class UploadMaterialsJob(Job): ) def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + """ + Triggered when we've got a confirmation that the material is synced with the printer, or that syncing failed. + + If syncing succeeded we mark this printer as having the status "success". If it failed we mark the printer as + "failed". If this is the last upload that needed to be completed, we complete the job with either a success + state (every printer successfully synced) or a failed state (any printer failed). + :param printer_id: The printer host_guid that we completed syncing with. + :param reply: The reply that the server gave to confirm. + :param error: If the request failed, this error gives an indication what happened. + """ if error is not None: Logger.error(f"Failed to confirm uploading material archive to printer {printer_id}: {error}") self._printer_sync_status[printer_id] = self.PrinterStatus.FAILED.value @@ -175,11 +208,24 @@ class UploadMaterialsJob(Job): self.setResult(self.Result.SUCCESS) self.uploadCompleted.emit(self.getResult(), self.getError()) - def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]): + def onError(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + """ + Used as callback from HTTP requests when the request failed. + + The given network error from the `HttpRequestManager` is logged, and the job is marked as failed. + :param reply: The main reply of the server. This reply will most likely not be valid. + :param error: The network error (Qt's enum) that occurred. + """ Logger.error(f"Failed to upload material archive: {error}") self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "Failed to connect to Digital Factory."))) def getPrinterSyncStatus(self) -> Dict[str, str]: + """ + For each printer, identified by host_guid, this gives the current status of uploading the material archive. + + The possible states are given in the PrinterStatus enum. + :return: A dictionary with printer host_guids as keys, and their status as values. + """ return self._printer_sync_status def failed(self, error: UploadMaterialsError) -> None: @@ -198,4 +244,9 @@ class UploadMaterialsJob(Job): self.uploadCompleted.emit(self.getResult(), self.getError()) def _onProcessProgressChanged(self, progress: float) -> None: + """ + When we progress in the process of uploading materials, we not only signal the new progress (float from 0 to 1) + but we also signal the current status of every printer. These are emitted as the two parameters of the signal. + :param progress: The progress of this job, between 0 and 1. + """ self.uploadProgressChanged.emit(progress * 0.8, self.getPrinterSyncStatus()) # The processing is 80% of the progress bar. From f56e43874761b5d4eaa206604e2f4f3021b2450d Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 15:52:54 +0200 Subject: [PATCH 096/135] Fix broken references Just some things that the QML is complaining about. This actually did fix the spinning of the spinners. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 8e51cd2dd7..5d0f0dd922 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -234,7 +234,7 @@ Window Row { Layout.preferredWidth: parent.width - Layout.preferredHeight: contentRect.height + Layout.preferredHeight: childrenRect.height Label { @@ -342,6 +342,7 @@ Window UM.RecolorImage { + id: printerSpinner width: UM.Theme.getSize("section_icon").width height: width anchors.verticalCenter: parent.verticalCenter @@ -354,7 +355,7 @@ Window RotationAnimator { - target: printerStatusSyncingIcon + target: printerSpinner from: 0 to: 360 duration: 1000 From 0583814dfa053b62ea51d642a0704cb74029ca94 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 16:00:54 +0200 Subject: [PATCH 097/135] Fix HttpNetworkManager not providing error parameter if there is no error Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 0181a87c01..9ef05bd3d7 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -121,13 +121,12 @@ class UploadMaterialsJob(Job): scope = self._scope ) - def onUploadRequestCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + def onUploadRequestCompleted(self, reply: "QNetworkReply") -> None: """ Triggered when we successfully requested to upload a material archive. We then need to start uploading the material archive to the URL that the request answered with. :param reply: The reply from the server to our request to upload an archive. - :param error: An error code (Qt enum) if the request failed. Failure is handled by `onError` though. """ response_data = HttpRequestManager.readJSON(reply) if response_data is None: @@ -161,12 +160,11 @@ class UploadMaterialsJob(Job): scope = self._scope ) - def onUploadCompleted(self, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + def onUploadCompleted(self, reply: "QNetworkReply") -> None: """ When we've successfully uploaded the archive to the cloud, we need to notify the API to start syncing that archive to every printer. :param reply: The reply from the cloud storage when the upload succeeded. - :param error: An error message if the upload failed. Errors are handled by the `onError` function though. """ for container_stack in self._printer_metadata: cluster_id = container_stack["um_cloud_cluster_id"] @@ -180,7 +178,7 @@ class UploadMaterialsJob(Job): scope = self._scope ) - def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"]) -> None: + def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"] = None) -> None: """ Triggered when we've got a confirmation that the material is synced with the printer, or that syncing failed. From 0378531f13b989c6fe4bc22e2fbc14cce55c1dab Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 15 Oct 2021 16:24:43 +0200 Subject: [PATCH 098/135] Handle QML exposing of filterConnectionType if not filtering It should expose it as -1 then. Contributes to issue CURA-8609. --- cura/Machines/Models/GlobalStacksModel.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/cura/Machines/Models/GlobalStacksModel.py b/cura/Machines/Models/GlobalStacksModel.py index cfe8c7587a..586bd11819 100644 --- a/cura/Machines/Models/GlobalStacksModel.py +++ b/cura/Machines/Models/GlobalStacksModel.py @@ -61,7 +61,9 @@ class GlobalStacksModel(ListModel): Only printers that match this connection type will be listed in the model. """ - return int(self._filter_connection_type) + if self._filter_connection_type is None: + return -1 + return self._filter_connection_type.value filterOnlineOnlyChanged = pyqtSignal() def setFilterOnlineOnly(self, new_filter: bool) -> None: From bf6dd443b2daeb9b916b485539e099bcd861a397 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 18 Oct 2021 12:59:32 +0200 Subject: [PATCH 099/135] Add material profile writing permission The API needs this new scope name. Contributes to issue CURA-8609. --- cura/API/Account.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/API/Account.py b/cura/API/Account.py index a85e2c64c5..86cd094f11 100644 --- a/cura/API/Account.py +++ b/cura/API/Account.py @@ -61,7 +61,7 @@ class Account(QObject): CLIENT_SCOPES = "account.user.read drive.backup.read drive.backup.write packages.download " \ "packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write " \ "library.project.read library.project.write cura.printjob.read cura.printjob.write " \ - "cura.mesh.read cura.mesh.write" + "cura.mesh.read cura.mesh.write cura.material.write" def __init__(self, application: "CuraApplication", parent = None) -> None: super().__init__(parent) From 5ed57e403c082d5d78c0f311c489b98368d974f6 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 18 Oct 2021 13:17:22 +0200 Subject: [PATCH 100/135] Delete existing log-in information to force the user to log in again Otherwise they won't be able to sync material profiles. Contributes to issue CURA-8609. --- .../VersionUpgrade411to412.py | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/plugins/VersionUpgrade/VersionUpgrade411to412/VersionUpgrade411to412.py b/plugins/VersionUpgrade/VersionUpgrade411to412/VersionUpgrade411to412.py index 4fb18486c2..2ae94a11f7 100644 --- a/plugins/VersionUpgrade/VersionUpgrade411to412/VersionUpgrade411to412.py +++ b/plugins/VersionUpgrade/VersionUpgrade411to412/VersionUpgrade411to412.py @@ -3,6 +3,7 @@ import configparser import io +import json import os.path from typing import List, Tuple @@ -49,6 +50,28 @@ class VersionUpgrade411to412(VersionUpgrade): # Update version number. parser["metadata"]["setting_version"] = "19" + # If the account scope in 4.11 is outdated, delete it so that the user is enforced to log in again and get the + # correct permissions. + new_scopes = {"account.user.read", + "drive.backup.read", + "drive.backup.write", + "packages.download", + "packages.rating.read", + "packages.rating.write", + "connect.cluster.read", + "connect.cluster.write", + "library.project.read", + "library.project.write", + "cura.printjob.read", + "cura.printjob.write", + "cura.mesh.read", + "cura.mesh.write", + "cura.material.write"} + if "ultimaker_auth_data" in parser["general"]: + ultimaker_auth_data = json.loads(parser["general"]["ultimaker_auth_data"]) + if new_scopes - set(ultimaker_auth_data["scope"].split(" ")): + parser["general"]["ultimaker_auth_data"] = "{}" + result = io.StringIO() parser.write(result) return [filename], [result.getvalue()] From c9d53cbbde38fa978351d134cebc991ade7287db Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 18 Oct 2021 15:15:05 +0200 Subject: [PATCH 101/135] Renamed OAuth scope This got renamed since the API was communicated to us. Contributes to issue CURA-8609. --- cura/API/Account.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cura/API/Account.py b/cura/API/Account.py index 86cd094f11..f922c89977 100644 --- a/cura/API/Account.py +++ b/cura/API/Account.py @@ -59,9 +59,9 @@ class Account(QObject): updatePackagesEnabledChanged = pyqtSignal(bool) CLIENT_SCOPES = "account.user.read drive.backup.read drive.backup.write packages.download " \ - "packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write " \ + "packages.rating.read packages.rating.write connect.cluster.read connect.cluster.write connect.material.write " \ "library.project.read library.project.write cura.printjob.read cura.printjob.write " \ - "cura.mesh.read cura.mesh.write cura.material.write" + "cura.mesh.read cura.mesh.write" def __init__(self, application: "CuraApplication", parent = None) -> None: super().__init__(parent) From 8bd6fe7c2b3072a99c33e6a7d4390482b7bb7b36 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 18 Oct 2021 15:15:37 +0200 Subject: [PATCH 102/135] API changed: material_profile_name instead of file_name Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 9ef05bd3d7..99484a4430 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -105,7 +105,7 @@ class UploadMaterialsJob(Job): request_metadata = { "data": { "file_size": file_size, - "file_name": "cura.umm", # File name can be anything as long as it's .umm. It's not used by anyone. + "material_profile_name": "cura.umm", # File name can be anything as long as it's .umm. It's not used by anyone. "content_type": "application/zip", # This endpoint won't receive files of different MIME types. "origin": "cura" # Some identifier against hackers intercepting this upload request, apparently. } From 00120870e1cbf48ed3f2ebb3fed2cb3c3dfe4ede Mon Sep 17 00:00:00 2001 From: 10r3n20 Date: Tue, 26 Oct 2021 13:01:15 +0200 Subject: [PATCH 103/135] add dark themed images to the dark theme --- .../images/first_run_ultimaker_cloud.svg | 36 +++++++++++++++++++ .../themes/cura-dark/images/welcome_cura.svg | 27 ++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg create mode 100644 resources/themes/cura-dark/images/welcome_cura.svg diff --git a/resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg b/resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg new file mode 100644 index 0000000000..8cd749305e --- /dev/null +++ b/resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-dark/images/welcome_cura.svg b/resources/themes/cura-dark/images/welcome_cura.svg new file mode 100644 index 0000000000..f92f032a2a --- /dev/null +++ b/resources/themes/cura-dark/images/welcome_cura.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + From 1c6ad019a3e9fd35999edc838b1296701ae358dc Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 27 Oct 2021 13:16:39 +0200 Subject: [PATCH 104/135] Response data is contained in sub-field 'data' The entire response is contained in a lone 'data' field in the response. Why this is necessary I don't know, because indeed everything the server can tell us is data so everything would be in a 'data' field. But that's how the API reacts so that's how we'll have to parse it. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 99484a4430..73352258d4 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -133,17 +133,21 @@ class UploadMaterialsJob(Job): Logger.error(f"Invalid response to material upload request. Could not parse JSON data.") self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory appears to be corrupted."))) return - if "upload_url" not in response_data: + if "data" not in response_data: + Logger.error(f"Invalid response to material upload request: Missing 'data' field that contains the entire response.") + self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) + return + if "upload_url" not in response_data["data"]: Logger.error(f"Invalid response to material upload request: Missing 'upload_url' field to upload archive to.") self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) return - if "material_profile_id" not in response_data: + if "material_profile_id" not in response_data["data"]: Logger.error(f"Invalid response to material upload request: Missing 'material_profile_id' to communicate about the materials with the server.") self.failed(UploadMaterialsError(catalog.i18nc("@text:error", "The response from Digital Factory is missing important information."))) return - upload_url = response_data["upload_url"] - self._archive_remote_id = response_data["material_profile_id"] + upload_url = response_data["data"]["upload_url"] + self._archive_remote_id = response_data["data"]["material_profile_id"] try: with open(cast(str, self._archive_filename), "rb") as f: file_data = f.read() From f99fedc58b28d2c94dca3afb7ce1cf413c1cb01a Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 27 Oct 2021 13:38:58 +0200 Subject: [PATCH 105/135] Fix API misalignments with confirm material upload action The API endpoint got renamed (without my awareness). It also needed to be a POST request, probably since the beginning. And apparently it needs everything to be in a sub-field called 'data' for some reason. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index 73352258d4..ebadb35257 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -46,7 +46,7 @@ class UploadMaterialsJob(Job): """ UPLOAD_REQUEST_URL = f"{UltimakerCloudConstants.CuraCloudAPIRoot}/connect/v1/materials/upload" - UPLOAD_CONFIRM_URL = UltimakerCloudConstants.CuraCloudAPIRoot + "/connect/v1/clusters/{cluster_id}/printers/{cluster_printer_id}/action/confirm_material_upload" + UPLOAD_CONFIRM_URL = UltimakerCloudConstants.CuraCloudAPIRoot + "/connect/v1/clusters/{cluster_id}/printers/{cluster_printer_id}/action/import_material" class Result(enum.IntEnum): SUCCESS = 0 @@ -175,11 +175,12 @@ class UploadMaterialsJob(Job): printer_id = container_stack["host_guid"] http = HttpRequestManager.getInstance() - http.get( + http.post( url = self.UPLOAD_CONFIRM_URL.format(cluster_id = cluster_id, cluster_printer_id = printer_id), - callback = lambda reply, error: self.onUploadConfirmed(printer_id, reply, error), + callback = lambda reply: self.onUploadConfirmed(printer_id, reply, None), error_callback = lambda reply, error: self.onUploadConfirmed(printer_id, reply, error), # Let this same function handle the error too. - scope = self._scope + scope = self._scope, + data = json.dumps({"data": {"material_profile_id": self._archive_remote_id}}).encode("UTF-8") ) def onUploadConfirmed(self, printer_id: str, reply: "QNetworkReply", error: Optional["QNetworkReply.NetworkError"] = None) -> None: From 116046a8b2a90b3e71ad0522831b0e23438c0065 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 27 Oct 2021 14:06:04 +0200 Subject: [PATCH 106/135] Fix binding printer_id to response callbacks With the lambda it would capture the variable of printer_id. It wouldn't actually store the value of printer_id in teh created lambda. As a result, it was using the current value of printer_id when the lambda executes, rather than the value of printer_id when the lambda is constructed. A bit weird how that works in Python's lambdas. With partial functions it works properly. Contributes to issue CURA-8609. --- cura/PrinterOutput/UploadMaterialsJob.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cura/PrinterOutput/UploadMaterialsJob.py b/cura/PrinterOutput/UploadMaterialsJob.py index ebadb35257..166b692ea5 100644 --- a/cura/PrinterOutput/UploadMaterialsJob.py +++ b/cura/PrinterOutput/UploadMaterialsJob.py @@ -2,6 +2,7 @@ # Cura is released under the terms of the LGPLv3 or higher. import enum +import functools # For partial methods to use as callbacks with information pre-filled. import json # To serialise metadata for API calls. import os # To delete the archive when we're done. from PyQt5.QtCore import QUrl @@ -177,8 +178,8 @@ class UploadMaterialsJob(Job): http = HttpRequestManager.getInstance() http.post( url = self.UPLOAD_CONFIRM_URL.format(cluster_id = cluster_id, cluster_printer_id = printer_id), - callback = lambda reply: self.onUploadConfirmed(printer_id, reply, None), - error_callback = lambda reply, error: self.onUploadConfirmed(printer_id, reply, error), # Let this same function handle the error too. + callback = functools.partial(self.onUploadConfirmed, printer_id), + error_callback = functools.partial(self.onUploadConfirmed, printer_id), # Let this same function handle the error too. scope = self._scope, data = json.dumps({"data": {"material_profile_id": self._archive_remote_id}}).encode("UTF-8") ) From 273e93314581c5d78ce3291167ebaaf3b8800128 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 27 Oct 2021 14:13:49 +0200 Subject: [PATCH 107/135] Reset sync status when closing and re-opening sync window Otherwise when you want to sync again, it'll just say that you're done. Not what a user would expect, I reckon. Contributes to issue CURA-8609. --- cura/Machines/Models/MaterialManagementModel.py | 4 +++- cura/UltimakerCloud/CloudMaterialSync.py | 8 +++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index 61d8e23acd..3595d3025a 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -272,6 +272,8 @@ class MaterialManagementModel(QObject): """ Opens the window to sync all materials. """ + self._material_sync.reset() + if self._material_sync.sync_all_dialog is None: qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", "Materials", "MaterialsSyncDialog.qml") self._material_sync.sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) @@ -279,4 +281,4 @@ class MaterialManagementModel(QObject): return self._material_sync.sync_all_dialog.setProperty("syncModel", self._material_sync) self._material_sync.sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. - self._material_sync.sync_all_dialog.show() \ No newline at end of file + self._material_sync.sync_all_dialog.show() diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index 3a9402c36e..05f65bb822 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -191,4 +191,10 @@ class CloudMaterialSync(QObject): @pyqtProperty("QVariantMap", fset = setPrinterStatus, notify = printerStatusChanged) def printerStatus(self) -> Dict[str, str]: - return self._printer_status \ No newline at end of file + return self._printer_status + + def reset(self) -> None: + self.setPrinterStatus({}) + self.setExportProgress(0.0) + self._export_upload_status = "idle" + self.exportUploadStatusChanged.emit() From 79117d5898b77c2c9645fbb8ffa47c6b18d5770e Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Wed, 27 Oct 2021 14:42:00 +0200 Subject: [PATCH 108/135] Fix merge mistakes CURA-8609 --- cura/Machines/Models/MaterialManagementModel.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index fd32f26089..de91703ecf 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -2,10 +2,12 @@ # Cura is released under the terms of the LGPLv3 or higher. import copy # To duplicate materials. -from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject +from PyQt5.QtCore import pyqtSignal, pyqtSlot, QObject, QUrl +from PyQt5.QtGui import QDesktopServices from typing import Any, Dict, Optional, TYPE_CHECKING import uuid # To generate new GUIDs for new materials. +from UM.Message import Message from UM.i18n import i18nCatalog from UM.Logger import Logger from UM.Resources import Resources # To find QML files. @@ -29,13 +31,9 @@ class MaterialManagementModel(QObject): :param The base file of the material is provided as parameter when this emits """ -<<<<<<< HEAD - def __init__(self, parent: QObject = None): - super().__init__(parent) - self._material_sync = CloudMaterialSync(parent = self) -======= def __init__(self, parent: Optional[QObject] = None) -> None: super().__init__(parent = parent) + self._material_sync = CloudMaterialSync(parent=self) self._checkIfNewMaterialsWereInstalled() def _checkIfNewMaterialsWereInstalled(self) -> None: @@ -91,7 +89,7 @@ class MaterialManagementModel(QObject): sync_message.hide() elif sync_message_action == "learn_more": QDesktopServices.openUrl(QUrl("https://support.ultimaker.com/hc/en-us/articles/360013137919?utm_source=cura&utm_medium=software&utm_campaign=sync-material-printer-message")) ->>>>>>> master + @pyqtSlot("QVariant", result = bool) def canMaterialBeRemoved(self, material_node: "MaterialNode") -> bool: From 8f1cf4a9637276ac8096bae52cba3a776cefa875 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Thu, 28 Oct 2021 09:43:12 +0200 Subject: [PATCH 109/135] Move openSYncAllWindow to the right class CURA-8609 --- cura/Machines/Models/MaterialManagementModel.py | 12 ++---------- cura/UltimakerCloud/CloudMaterialSync.py | 16 ++++++++++++++++ 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/cura/Machines/Models/MaterialManagementModel.py b/cura/Machines/Models/MaterialManagementModel.py index de91703ecf..76b2c5b444 100644 --- a/cura/Machines/Models/MaterialManagementModel.py +++ b/cura/Machines/Models/MaterialManagementModel.py @@ -13,7 +13,7 @@ from UM.Logger import Logger from UM.Resources import Resources # To find QML files. from UM.Signal import postponeSignals, CompressTechnique -import cura.CuraApplication # Imported like this to prevent circular imports. +import cura.CuraApplication # Imported like this to prevent cirmanagecular imports. from cura.Machines.ContainerTree import ContainerTree from cura.Settings.CuraContainerRegistry import CuraContainerRegistry # To find the sets of materials belonging to each other, and currently loaded extruder stacks. from cura.UltimakerCloud.CloudMaterialSync import CloudMaterialSync @@ -330,13 +330,5 @@ class MaterialManagementModel(QObject): """ Opens the window to sync all materials. """ - self._material_sync.reset() + self._material_sync.openSyncAllWindow() - if self._material_sync.sync_all_dialog is None: - qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", "Materials", "MaterialsSyncDialog.qml") - self._material_sync.sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent(qml_path, {}) - if self._material_sync.sync_all_dialog is None: # Failed to load QML file. - return - self._material_sync.sync_all_dialog.setProperty("syncModel", self._material_sync) - self._material_sync.sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. - self._material_sync.sync_all_dialog.show() diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index 05f65bb822..df5730e7c8 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -7,6 +7,7 @@ from typing import Dict, Optional, TYPE_CHECKING import zipfile # To export all materials in a .zip archive. import cura.CuraApplication # Imported like this to prevent circular imports. +from UM.Resources import Resources from cura.PrinterOutput.UploadMaterialsJob import UploadMaterialsJob, UploadMaterialsError # To export materials to the output printer. from cura.Settings.CuraContainerRegistry import CuraContainerRegistry from UM.i18n import i18nCatalog @@ -42,6 +43,21 @@ class CloudMaterialSync(QObject): self._showSyncNewMaterialsMessage() break + def openSyncAllWindow(self): + + self.reset() + + if self.sync_all_dialog is None: + qml_path = Resources.getPath(cura.CuraApplication.CuraApplication.ResourceTypes.QmlFiles, "Preferences", + "Materials", "MaterialsSyncDialog.qml") + self.sync_all_dialog = cura.CuraApplication.CuraApplication.getInstance().createQmlComponent( + qml_path, {}) + if self.sync_all_dialog is None: # Failed to load QML file. + return + self.sync_all_dialog.setProperty("syncModel", self) + self.sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. + self.sync_all_dialog.show() + def _showSyncNewMaterialsMessage(self) -> None: sync_materials_message = Message( text = catalog.i18nc("@action:button", From 59be3e195dfb55f9198252a1fec162a80b08c280 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Thu, 28 Oct 2021 13:48:09 +0200 Subject: [PATCH 110/135] Use category as fallback translation for intents instead of "unkown" --- cura/Machines/Models/IntentCategoryModel.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Machines/Models/IntentCategoryModel.py b/cura/Machines/Models/IntentCategoryModel.py index 09a71b8ed6..d4f28a78e9 100644 --- a/cura/Machines/Models/IntentCategoryModel.py +++ b/cura/Machines/Models/IntentCategoryModel.py @@ -107,7 +107,7 @@ class IntentCategoryModel(ListModel): qualities = IntentModel() qualities.setIntentCategory(category) result.append({ - "name": IntentCategoryModel.translation(category, "name", catalog.i18nc("@label", "Unknown")), + "name": IntentCategoryModel.translation(category, "name", category), "description": IntentCategoryModel.translation(category, "description", None), "intent_category": category, "weight": list(IntentCategoryModel._get_translations().keys()).index(category), From 61c43fb765d74997922789d8bd2c3558f212cd9e Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Thu, 28 Oct 2021 13:53:52 +0200 Subject: [PATCH 111/135] Only show "can't find location message" when it couldn't find location Bit of a silly mistake, but easy enough to fix! CURA-8649 --- cura/Arranging/Nest2DArrange.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Arranging/Nest2DArrange.py b/cura/Arranging/Nest2DArrange.py index ebe96202f2..c29a0648df 100644 --- a/cura/Arranging/Nest2DArrange.py +++ b/cura/Arranging/Nest2DArrange.py @@ -159,4 +159,4 @@ def arrange(nodes_to_arrange: List["SceneNode"], grouped_operation, not_fit_count = createGroupOperationForArrange(nodes_to_arrange, build_volume, fixed_nodes, factor, add_new_nodes_in_scene) grouped_operation.push() - return not_fit_count != 0 + return not_fit_count == 0 From 86875580afa00e931dead827b631135434de1dbc Mon Sep 17 00:00:00 2001 From: 10r3n20 Date: Tue, 26 Oct 2021 13:01:15 +0200 Subject: [PATCH 112/135] add dark themed images to the dark theme --- .../images/first_run_ultimaker_cloud.svg | 36 +++++++++++++++++++ .../themes/cura-dark/images/welcome_cura.svg | 27 ++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg create mode 100644 resources/themes/cura-dark/images/welcome_cura.svg diff --git a/resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg b/resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg new file mode 100644 index 0000000000..8cd749305e --- /dev/null +++ b/resources/themes/cura-dark/images/first_run_ultimaker_cloud.svg @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + + + diff --git a/resources/themes/cura-dark/images/welcome_cura.svg b/resources/themes/cura-dark/images/welcome_cura.svg new file mode 100644 index 0000000000..f92f032a2a --- /dev/null +++ b/resources/themes/cura-dark/images/welcome_cura.svg @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + From 87db24f14c162f48c69556eed4a8cbf679b0db34 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 29 Oct 2021 10:39:00 +0200 Subject: [PATCH 113/135] Don't check validation for settings in error state CURA-8656 --- plugins/CuraEngineBackend/StartSliceJob.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/plugins/CuraEngineBackend/StartSliceJob.py b/plugins/CuraEngineBackend/StartSliceJob.py index 9e53ce8b3a..7e01e96b06 100644 --- a/plugins/CuraEngineBackend/StartSliceJob.py +++ b/plugins/CuraEngineBackend/StartSliceJob.py @@ -123,6 +123,9 @@ class StartSliceJob(Job): Job.yieldThread() for changed_setting_key in changed_setting_keys: + if not stack.getProperty(changed_setting_key, "enabled"): + continue + validation_state = stack.getProperty(changed_setting_key, "validationState") if validation_state is None: From c58d03ad4c42215b88b55889543831a9e8c9c71c Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 29 Oct 2021 15:06:44 +0200 Subject: [PATCH 114/135] Change button to 'done' once USB export has completed Also important to keep in mind: It won't change to 'done' if the user cancelled the file dialogue. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 5d0f0dd922..310727ccf0 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -682,12 +682,22 @@ Window } Cura.PrimaryButton { + id: exportUsbButton anchors.right: parent.right - text: catalog.i18nc("@button", "Export material archive") + + property bool hasExported: false + text: hasExported ? catalog.i18nc("@button", "Done") : catalog.i18nc("@button", "Export material archive") onClicked: { - exportUsbDialog.folder = syncModel.getPreferredExportAllPath(); - exportUsbDialog.open(); + if(!hasExported) + { + exportUsbDialog.folder = syncModel.getPreferredExportAllPath(); + exportUsbDialog.open(); + } + else + { + materialsSyncDialog.close(); + } } } } @@ -719,6 +729,7 @@ Window { syncModel.exportAll(fileUrl); CuraApplication.setDefaultPath("dialog_material_path", folder); + exportUsbButton.hasExported = true; } } } \ No newline at end of file From ce4117a3eea95e8518b3ac57eb65417aa300978a Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 29 Oct 2021 15:12:16 +0200 Subject: [PATCH 115/135] Reset export USB button when re-opening window To do that, I moved the property to track that state to the root of the window. Contributes to issue CURA-8609. --- cura/UltimakerCloud/CloudMaterialSync.py | 1 + .../qml/Preferences/Materials/MaterialsSyncDialog.qml | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index df5730e7c8..f803708a1e 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -56,6 +56,7 @@ class CloudMaterialSync(QObject): return self.sync_all_dialog.setProperty("syncModel", self) self.sync_all_dialog.setProperty("pageIndex", 0) # Return to first page. + self.sync_all_dialog.setProperty("hasExportedUsb", False) # If the user exported USB before, reset that page. self.sync_all_dialog.show() def _showSyncNewMaterialsMessage(self) -> None: diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 310727ccf0..1f9b5aa513 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -24,6 +24,7 @@ Window property variant syncModel property alias pageIndex: swipeView.currentIndex property alias syncStatusText: syncStatusLabel.text + property bool hasExportedUsb: false SwipeView { @@ -686,10 +687,10 @@ Window anchors.right: parent.right property bool hasExported: false - text: hasExported ? catalog.i18nc("@button", "Done") : catalog.i18nc("@button", "Export material archive") + text: materialsSyncDialog.hasExportedUsb ? catalog.i18nc("@button", "Done") : catalog.i18nc("@button", "Export material archive") onClicked: { - if(!hasExported) + if(!materialsSyncDialog.hasExportedUsb) { exportUsbDialog.folder = syncModel.getPreferredExportAllPath(); exportUsbDialog.open(); @@ -729,7 +730,7 @@ Window { syncModel.exportAll(fileUrl); CuraApplication.setDefaultPath("dialog_material_path", folder); - exportUsbButton.hasExported = true; + materialsSyncDialog.hasExportedUsb = true; } } } \ No newline at end of file From cd286a006ebbf575083b5ff1e70500524a4a8cd5 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Fri, 29 Oct 2021 15:18:40 +0200 Subject: [PATCH 116/135] Add missing colours, fixing dark theme Don't just use white rectangles or black text. Use the theme where appropriate. And these rectangles are just outlines. Contributes to issue CURA-8609. --- .../qml/Preferences/Materials/MaterialsSyncDialog.qml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 1f9b5aa513..7c2bfbdbbb 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -279,6 +279,7 @@ Window delegate: Rectangle { id: delegateContainer + color: "transparent" border.color: UM.Theme.getColor("lining") border.width: UM.Theme.getSize("default_lining").width width: printerListScrollView.width @@ -384,11 +385,13 @@ Window visible: includeOfflinePrinterList.count - cloudPrinterList.count > 0 Rectangle { - border.color: UM.Theme.getColor("lining") - border.width: UM.Theme.getSize("default_lining").width anchors.fill: parent anchors.topMargin: UM.Theme.getSize("default_margin").height + border.color: UM.Theme.getColor("lining") + border.width: UM.Theme.getSize("default_lining").width + color: "transparent" + RowLayout { anchors @@ -415,6 +418,7 @@ Window + "\n" + catalog.i18nc("@text", "Make sure all your printers are turned ON and connected to Digital Factory.") font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text") elide: Text.ElideRight Layout.alignment: Qt.AlignVCenter From 366ef4ca06818eb9bc6d33b1a9b98666c6ba650e Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Sun, 31 Oct 2021 17:21:51 +0100 Subject: [PATCH 117/135] Fix undo and redo for support blocker The translate wasn't done via an operation, so it wouldn't go back to the same state after an undo / redo Fixes #10648 --- plugins/SupportEraser/SupportEraser.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/SupportEraser/SupportEraser.py b/plugins/SupportEraser/SupportEraser.py index 35f597dcc5..b64a0f4eed 100644 --- a/plugins/SupportEraser/SupportEraser.py +++ b/plugins/SupportEraser/SupportEraser.py @@ -6,6 +6,7 @@ from PyQt5.QtWidgets import QApplication from UM.Application import Application from UM.Math.Vector import Vector +from UM.Operations.TranslateOperation import TranslateOperation from UM.Tool import Tool from UM.Event import Event, MouseEvent from UM.Mesh.MeshBuilder import MeshBuilder @@ -120,8 +121,8 @@ class SupportEraser(Tool): # First add node to the scene at the correct position/scale, before parenting, so the eraser mesh does not get scaled with the parent op.addOperation(AddSceneNodeOperation(node, self._controller.getScene().getRoot())) op.addOperation(SetParentOperation(node, parent)) + op.addOperation(TranslateOperation(node, position, set_position = True)) op.push() - node.setPosition(position, CuraSceneNode.TransformSpace.World) CuraApplication.getInstance().getController().getScene().sceneChanged.emit(node) From 67d76e3af8024e96940a263bce888199f3e82bc3 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Mon, 1 Nov 2021 11:50:24 +0100 Subject: [PATCH 118/135] Change version in citation file to 4.12 --- CITATION.cff | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CITATION.cff b/CITATION.cff index 808a403e1a..b97fdf7c49 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -7,5 +7,5 @@ license: "LGPL-3.0" message: "If you use this software, please cite it using these metadata." repository-code: "https://github.com/ultimaker/cura/" title: "Ultimaker Cura" -version: "4.10.0" -... \ No newline at end of file +version: "4.12.0" +... From fd79b76f07551af7a4d5bf11ad0413b0a26c404f Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 1 Nov 2021 18:18:56 +0100 Subject: [PATCH 119/135] Add troubleshooting link to footer It's moving there now. However if there are any errors syncing with the printers, the troubleshooting link has to disappear from there. This makes the layout quite complex, since the icon on the left and the button on the right are no longer vertically centred. The text used to be vertically centred too, but can't do that any more since the text is not the determiner of the height any more, with there being a horizontally aligned button below it. It's all a bit complex now. Contributes to issue CURA-8609. --- .../Materials/MaterialsSyncDialog.qml | 63 +++++++++++++------ 1 file changed, 45 insertions(+), 18 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 7c2bfbdbbb..56b41d96b0 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -381,7 +381,18 @@ Window footer: Item { width: printerListScrollView.width - height: visible ? UM.Theme.getSize("card").height + UM.Theme.getSize("default_margin").height : 0 + height: { + if(!visible) + { + return 0; + } + let h = UM.Theme.getSize("card").height + UM.Theme.getSize("default_margin").height; //1 margin between content and footer. + if(printerListTroubleshooting.visible) + { + h += printerListTroubleshooting.height + UM.Theme.getSize("default_margin").height; //Height increases if there's a troubleshooting link. + } + return h; + } visible: includeOfflinePrinterList.count - cloudPrinterList.count > 0 Rectangle { @@ -392,13 +403,12 @@ Window border.width: UM.Theme.getSize("default_lining").width color: "transparent" - RowLayout + Row { anchors { fill: parent - leftMargin: (parent.height - infoIcon.height) / 2 //Same margin on the left as top and bottom. - rightMargin: (parent.height - infoIcon.height) / 2 + margins: Math.round(UM.Theme.getSize("card").height - UM.Theme.getSize("machine_selector_icon").width) / 2 //Same margin as in other cards. } spacing: UM.Theme.getSize("default_margin").width @@ -407,33 +417,50 @@ Window id: infoIcon width: UM.Theme.getSize("section_icon").width height: width - Layout.alignment: Qt.AlignVCenter + //Fake anchor.verticalCenter: printersMissingText.verticalCenter, since we can't anchor to things that aren't siblings. + anchors.top: parent.top + anchors.topMargin: Math.round(printersMissingText.height / 2 - height / 2) status: UM.StatusIcon.Status.WARNING } - Label + Column { - text: catalog.i18nc("@text Asking the user whether printers are missing in a list.", "Printers missing?") - + "\n" - + catalog.i18nc("@text", "Make sure all your printers are turned ON and connected to Digital Factory.") - font: UM.Theme.getFont("medium") - color: UM.Theme.getColor("text") - elide: Text.ElideRight + //Fill the total width. Can't use layouts because we need the anchors for vertical alignment. + width: parent.width - infoIcon.width - refreshListButton.width - parent.spacing * 2 - Layout.alignment: Qt.AlignVCenter - Layout.fillWidth: true + spacing: UM.Theme.getSize("default_margin").height + + Label + { + id: printersMissingText + text: catalog.i18nc("@text Asking the user whether printers are missing in a list.", "Printers missing?") + + "\n" + + catalog.i18nc("@text", "Make sure all your printers are turned ON and connected to Digital Factory.") + font: UM.Theme.getFont("medium") + color: UM.Theme.getColor("text") + elide: Text.ElideRight + } + Cura.TertiaryButton + { + id: printerListTroubleshooting + + text: catalog.i18nc("@button", "Troubleshooting") + visible: typeof syncModel !== "undefined" && syncModel.exportUploadStatus !== "error" + iconSource: UM.Theme.getIcon("LinkExternal") + onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-troubleshoot-cloud-printer") + } } Cura.SecondaryButton { id: refreshListButton + //Fake anchor.verticalCenter: printersMissingText.verticalCenter, since we can't anchor to things that aren't siblings. + anchors.top: parent.top + anchors.topMargin: Math.round(printersMissingText.height / 2 - height / 2) + text: catalog.i18nc("@button", "Refresh List") iconSource: UM.Theme.getIcon("ArrowDoubleCircleRight") - - Layout.alignment: Qt.AlignVCenter - Layout.preferredWidth: width - onClicked: Cura.API.account.sync(true) } } From e7e513bb16033d7ca52ffe03973f860bed3c85eb Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 1 Nov 2021 18:27:38 +0100 Subject: [PATCH 120/135] Reduce width to 0 if the icon is neutral Because with our default theme, the neutral icon is empty. This causes the alignment of the label next to it to appear off. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index 56b41d96b0..f3555d5fd4 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -198,7 +198,7 @@ Window name: "idle" when: typeof syncModel === "undefined" || syncModel.exportUploadStatus == "idle" || syncModel.exportUploadStatus == "uploading" PropertyChanges { target: printerListHeader; text: catalog.i18nc("@title:header", "The following printers will receive the new material profiles:") } - PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.NEUTRAL } + PropertyChanges { target: printerListHeaderIcon; status: UM.StatusIcon.Status.NEUTRAL; width: 0 } }, State { From 67cae04a24eda3d6befadfadd8b337f8710c4266 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 1 Nov 2021 18:29:36 +0100 Subject: [PATCH 121/135] Remove message explaining what caused the error It doesn't matter to the user. Only the error message matters. Contributes to issue CURA-8609. --- cura/UltimakerCloud/CloudMaterialSync.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/UltimakerCloud/CloudMaterialSync.py b/cura/UltimakerCloud/CloudMaterialSync.py index f803708a1e..6fd3a43e51 100644 --- a/cura/UltimakerCloud/CloudMaterialSync.py +++ b/cura/UltimakerCloud/CloudMaterialSync.py @@ -182,7 +182,7 @@ class CloudMaterialSync(QObject): return if job_result == UploadMaterialsJob.Result.FAILED: if isinstance(job_error, UploadMaterialsError): - self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Error sending materials to the Digital Factory:") + " " + str(job_error)) + self.sync_all_dialog.setProperty("syncStatusText", str(job_error)) else: # Could be "None" self.sync_all_dialog.setProperty("syncStatusText", catalog.i18nc("@text", "Unknown error.")) self._export_upload_status = "error" From a35fcf493a422b9cd83f2e2c0d95c38d07b304c5 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 1 Nov 2021 18:59:06 +0100 Subject: [PATCH 122/135] Allow word wrapping for error message This prevents being able to align the text vertically with the troubleshooting button though. The text may become the larger of the two, in which case the text should be leading the height. Qt can do this with a Layout, however it then can't automatically adjust the width of the layout there since that would create a polish loop in the layout. Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index f3555d5fd4..ebefdeb430 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -242,8 +242,8 @@ Window id: syncStatusLabel width: parent.width - UM.Theme.getSize("default_margin").width - troubleshootingLink.width - anchors.verticalCenter: troubleshootingLink.verticalCenter + wrapMode: Text.Wrap elide: Text.ElideRight visible: text !== "" text: "" @@ -256,7 +256,6 @@ Window text: catalog.i18nc("@button", "Troubleshooting") visible: typeof syncModel !== "undefined" && syncModel.exportUploadStatus == "error" iconSource: UM.Theme.getIcon("LinkExternal") - Layout.preferredHeight: height onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-troubleshoot-cloud-printer") } } From 89ab394dc017e622fb07570f1bb9fb8c185ece09 Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Tue, 2 Nov 2021 09:09:02 +0100 Subject: [PATCH 123/135] Code-style, revert unilateral descisions. - Capitalization for camelCase. - Indentation. - We don't really even _have_ a concept of what a 'Beta' for a script is, and this was a unilateral descision from a single contributor instead of validated by the proper channels like QA, V&V, etc. - Pretty sure that while those labels aren't used _within_ Cura proper, other people (and maybe plugins?) rely on them for (further)post-processing. Also the distinction between CAZO and CAZD was lost. part of CURA-8655 --- .../PostProcessingPlugin/scripts/ChangeAtZ.py | 67 +++++++++---------- 1 file changed, 33 insertions(+), 34 deletions(-) diff --git a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py index 17b8fefb64..72b26b13f6 100644 --- a/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py +++ b/plugins/PostProcessingPlugin/scripts/ChangeAtZ.py @@ -42,8 +42,7 @@ # Added support for outputting changes to LCD (untested). Added type hints to most functions and variables. Added more comments. Created GCodeCommand # class for better detection of G1 vs G10 or G11 commands, and accessing arguments. Moved most GCode methods to GCodeCommand class. Improved wording # of Single Layer vs Keep Layer to better reflect what was happening. -# V5.2.2 Alex Jaxon, Added option to modify Build Volume Temperature keeping current format -# updated from "Experimental" to "Beta" +# V5.3.0 Alex Jaxon, Added option to modify Build Volume Temperature keeping current format # @@ -65,11 +64,11 @@ import re # this was broken up into a separate class so the main ChangeAtZ script could be debugged outside of Cura class ChangeAtZ(Script): - version = "5.2.2" + version = "5.3.0" def getSettingDataString(self): return """{ - "name": "ChangeAtZ """ + self.version + """(Beta)", + "name": "ChangeAtZ """ + self.version + """(Experimental)", "key": "ChangeAtZ", "metadata": {}, "version": 2, @@ -229,22 +228,22 @@ class ChangeAtZ(Script): "maximum_value_warning": "120", "enabled": "h1_Change_bedTemp" }, - "h1_Change_BuildVolumeTemperature": { - "label": "Change Build Volume Temperature", - "description": "Select if Build Volume Temperature has to be changed", - "type": "bool", - "default_value": false + "h1_Change_buildVolumeTemperature": { + "label": "Change Build Volume Temperature", + "description": "Select if Build Volume Temperature has to be changed", + "type": "bool", + "default_value": false }, - "h2_BuildVolumeTemperature": { - "label": "Build Volume Temperature", - "description": "New Build Volume Temperature", - "unit": "C", - "type": "float", - "default_value": 20, - "minimum_value": "0", - "minimum_value_warning": "10", - "maximum_value_warning": "50", - "enabled": "h1_Change_BuildVolumeTemperature" + "h2_buildVolumeTemperature": { + "label": "Build Volume Temperature", + "description": "New Build Volume Temperature", + "unit": "C", + "type": "float", + "default_value": 20, + "minimum_value": "0", + "minimum_value_warning": "10", + "maximum_value_warning": "50", + "enabled": "h1_Change_buildVolumeTemperature" }, "i1_Change_extruderOne": { "label": "Change Extruder 1 Temp", @@ -348,7 +347,7 @@ class ChangeAtZ(Script): "minimum_value": "0", "minimum_value_warning": "0", "maximum_value_warning": "20", - "enabled": "caz_change_retractlength" + "enabled": "caz_change_retractlength" } } }""" @@ -369,7 +368,7 @@ class ChangeAtZ(Script): self.setIntSettingIfEnabled(caz_instance, "g3_Change_flowrateOne", "flowrateOne", "g4_flowrateOne") self.setIntSettingIfEnabled(caz_instance, "g5_Change_flowrateTwo", "flowrateTwo", "g6_flowrateTwo") self.setFloatSettingIfEnabled(caz_instance, "h1_Change_bedTemp", "bedTemp", "h2_bedTemp") - self.setFloatSettingIfEnabled(caz_instance, "h1_Change_BuildVolumeTemperature", "BuildVolumeTemperature", "h2_BuildVolumeTemperature") + self.setFloatSettingIfEnabled(caz_instance, "h1_Change_buildVolumeTemperature", "buildVolumeTemperature", "h2_buildVolumeTemperature") self.setFloatSettingIfEnabled(caz_instance, "i1_Change_extruderOne", "extruderOne", "i2_extruderOne") self.setFloatSettingIfEnabled(caz_instance, "i3_Change_extruderTwo", "extruderTwo", "i4_extruderTwo") self.setIntSettingIfEnabled(caz_instance, "j1_Change_fanSpeed", "fanSpeed", "j2_fanSpeed") @@ -802,8 +801,8 @@ class ChangeAtZProcessor: codes.append("BedTemp: " + str(round(values["bedTemp"]))) # looking for wait for Build Volume Temperature - if "BuildVolumeTemperature" in values: - codes.append("BuildVolumeTemperature: " + str(round(values["BuildVolumeTemperature"]))) + if "buildVolumeTemperature" in values: + codes.append("buildVolumeTemperature: " + str(round(values["buildVolumeTemperature"]))) # set our extruder one temp (if specified) if "extruderOne" in values: @@ -875,7 +874,7 @@ class ChangeAtZProcessor: return "" # return our default block for this layer - return ";[ChangeAtZ:\n" + "\n".join(codes) + "\n;ChangeAtZ]" + return ";[CAZD:\n" + "\n".join(codes) + "\n;:CAZD]" # Builds the relevant GCODE lines from the given collection of values def getCodeLinesFromValues(self, values: Dict[str, any]) -> List[str]: @@ -888,8 +887,8 @@ class ChangeAtZProcessor: codes.append("M140 S" + str(values["bedTemp"])) # looking for wait for Build Volume Temperature - if "BuildVolumeTemperature" in values: - codes.append("M141 S" + str(values["BuildVolumeTemperature"])) + if "buildVolumeTemperature" in values: + codes.append("M141 S" + str(values["buildVolumeTemperature"])) # set our extruder one temp (if specified) if "extruderOne" in values: @@ -980,8 +979,8 @@ class ChangeAtZProcessor: @staticmethod def getOriginalLine(line: str) -> str: - # get the change at z original (ChangeAtZ) details - original_line = re.search(r"\[ChangeAtZ:(.*?):ChangeAtZ\]", line) + # get the change at z original (cazo) details + original_line = re.search(r"\[CAZO:(.*?):CAZO\]", line) # if we didn't get a hit, this is the original line if original_line is None: @@ -1026,7 +1025,7 @@ class ChangeAtZProcessor: # Marks any current ChangeAtZ layer defaults in the layer for deletion @staticmethod def markChangesForDeletion(layer: str): - return re.sub(r";\[ChangeAtZ:", ";[ChangeAtZ:DELETE:", layer) + return re.sub(r";\[CAZD:", ";[CAZD:DELETE:", layer) # Grabs the current height def processLayerHeight(self, line: str): @@ -1099,8 +1098,8 @@ class ChangeAtZProcessor: self.processSetting(line) # if we haven't hit our target yet, leave the defaults as is (unmark them for deletion) - if "[ChangeAtZ:DELETE:" in line: - line = line.replace("[ChangeAtZ:DELETE:", "[ChangeAtZ:") + if "[CAZD:DELETE:" in line: + line = line.replace("[CAZD:DELETE:", "[CAZD:") # if we're targeting by Z, we want to add our values before the first linear move if "G1 " in line or "G0 " in line: @@ -1324,7 +1323,7 @@ class ChangeAtZProcessor: # Removes all the ChangeAtZ layer defaults from the given layer @staticmethod def removeMarkedChanges(layer: str) -> str: - return re.sub(r";\[ChangeAtZ:DELETE:[\s\S]+?:ChangeAtZ\](\n|$)", "", layer) + return re.sub(r";\[CAZD:DELETE:[\s\S]+?:CAZD\](\n|$)", "", layer) # Resets the class contents to defaults def reset(self): @@ -1349,7 +1348,7 @@ class ChangeAtZProcessor: # Sets the original GCODE line in a given GCODE command @staticmethod def setOriginalLine(line, original) -> str: - return line + ";[ChangeAtZ:" + original + ":ChangeAtZ]" + return line + ";[CAZO:" + original + ":CAZO]" # Tracks the change in gcode values we're interested in def trackChangeableValues(self, line: str): @@ -1402,7 +1401,7 @@ class ChangeAtZProcessor: # get our bed temp if provided if "S" in command.arguments: - self.lastValues["BuildVolumeTemperature"] = command.getArgumentAsFloat("S") + self.lastValues["buildVolumeTemperature"] = command.getArgumentAsFloat("S") # move to the next command return From 112f61e32fdc78432b31ec4e654ba21c41235a6f Mon Sep 17 00:00:00 2001 From: Remco Burema Date: Tue, 2 Nov 2021 16:54:07 +0100 Subject: [PATCH 124/135] Fix URL's for the update checker for Beta's. part of CURA-CURA-8647 --- cura/CuraApplication.py | 1 + 1 file changed, 1 insertion(+) diff --git a/cura/CuraApplication.py b/cura/CuraApplication.py index 3d4ec1209f..337797ecf6 100755 --- a/cura/CuraApplication.py +++ b/cura/CuraApplication.py @@ -162,6 +162,7 @@ class CuraApplication(QtApplication): self.default_theme = "cura-light" self.change_log_url = "https://ultimaker.com/ultimaker-cura-latest-features?utm_source=cura&utm_medium=software&utm_campaign=cura-update-features" + self.beta_change_log_url = "https://ultimaker.com/ultimaker-cura-beta-features?utm_source=cura&utm_medium=software&utm_campaign=cura-update-features" self._boot_loading_time = time.time() From e02b179fae1278b3e7edcb0ff6f18b958532c874 Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Tue, 2 Nov 2021 16:54:10 +0100 Subject: [PATCH 125/135] Fix toggle indicator camera view Setting the checked state in the javascript caused the binding to be broken. Stupid mistake and I should have known better... CURA-8664 --- resources/qml/Menus/ViewMenu.qml | 2 -- 1 file changed, 2 deletions(-) diff --git a/resources/qml/Menus/ViewMenu.qml b/resources/qml/Menus/ViewMenu.qml index af1a4c3be4..c46e9a9f08 100644 --- a/resources/qml/Menus/ViewMenu.qml +++ b/resources/qml/Menus/ViewMenu.qml @@ -51,7 +51,6 @@ Menu onTriggered: { UM.Preferences.setValue("general/camera_perspective_mode", "perspective") - checked = cameraViewMenu.cameraMode == "perspective" } exclusiveGroup: group } @@ -63,7 +62,6 @@ Menu onTriggered: { UM.Preferences.setValue("general/camera_perspective_mode", "orthographic") - checked = cameraViewMenu.cameraMode == "orthographic" } exclusiveGroup: group } From afb78544643348c1eedad15920a55b69ab754971 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 3 Nov 2021 10:38:28 +0100 Subject: [PATCH 126/135] Don't show infill line directions setting for Gyroid and Cross patterns It doesn't work for those patterns at the moment. For Gyroid it could be made to work. For Cross and Cross 3D it's a bit more difficult due to the pre-calculations and density image done for those. Contributes to issue PP-55. Done as a 5 minute fix. --- resources/definitions/fdmprinter.def.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/definitions/fdmprinter.def.json b/resources/definitions/fdmprinter.def.json index 9cb20b3ec0..52114209e8 100644 --- a/resources/definitions/fdmprinter.def.json +++ b/resources/definitions/fdmprinter.def.json @@ -1943,7 +1943,7 @@ "description": "A list of integer line directions to use. Elements from the list are used sequentially as the layers progress and when the end of the list is reached, it starts at the beginning again. The list items are separated by commas and the whole list is contained in square brackets. Default is an empty list which means use the traditional default angles (45 and 135 degrees for the lines and zig zag patterns and 45 degrees for all other patterns).", "type": "[int]", "default_value": "[ ]", - "enabled": "infill_pattern != 'lightning' and infill_pattern != 'concentric' and infill_sparse_density > 0", + "enabled": "infill_pattern not in ('concentric', 'cross', 'cross_3d', 'gyroid', 'lightning') and infill_sparse_density > 0", "limit_to_extruder": "infill_extruder_nr", "settable_per_mesh": true }, From 9c684cbc4d6aab2cfecb5f831cd588f82d9c2b26 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 3 Nov 2021 11:26:28 +0100 Subject: [PATCH 127/135] Hide entire footer when the user started syncing If they started syncing, most likely the list of printers is just complete and the user won't need this any more. Contributes to issue CURA-8609. --- .../qml/Preferences/Materials/MaterialsSyncDialog.qml | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index ebefdeb430..bfb064cd5b 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -385,14 +385,10 @@ Window { return 0; } - let h = UM.Theme.getSize("card").height + UM.Theme.getSize("default_margin").height; //1 margin between content and footer. - if(printerListTroubleshooting.visible) - { - h += printerListTroubleshooting.height + UM.Theme.getSize("default_margin").height; //Height increases if there's a troubleshooting link. - } + let h = UM.Theme.getSize("card").height + printerListTroubleshooting.height + UM.Theme.getSize("default_margin").height * 2; //1 margin between content and footer, 1 for troubleshooting link. return h; } - visible: includeOfflinePrinterList.count - cloudPrinterList.count > 0 + visible: includeOfflinePrinterList.count - cloudPrinterList.count > 0 && typeof syncModel !== "undefined" && syncModel.exportUploadStatus === "idle" Rectangle { anchors.fill: parent @@ -445,7 +441,6 @@ Window id: printerListTroubleshooting text: catalog.i18nc("@button", "Troubleshooting") - visible: typeof syncModel !== "undefined" && syncModel.exportUploadStatus !== "error" iconSource: UM.Theme.getIcon("LinkExternal") onClicked: Qt.openUrlExternally("https://support.ultimaker.com/hc/en-us/articles/360012019239?utm_source=cura&utm_medium=software&utm_campaign=sync-material-wizard-troubleshoot-cloud-printer") } From 1b36bc2e812269d14a51bfe423d82b936a94cbc4 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 3 Nov 2021 13:46:47 +0100 Subject: [PATCH 128/135] Remove padding on troubleshooting button Contributes to issue CURA-8609. --- resources/qml/Preferences/Materials/MaterialsSyncDialog.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml index bfb064cd5b..d0cf9fafd6 100644 --- a/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml +++ b/resources/qml/Preferences/Materials/MaterialsSyncDialog.qml @@ -439,6 +439,7 @@ Window Cura.TertiaryButton { id: printerListTroubleshooting + leftPadding: 0 //Want to visually align this to the text. text: catalog.i18nc("@button", "Troubleshooting") iconSource: UM.Theme.getIcon("LinkExternal") From 6a08fab2b52e6e3c192764861181d6b4d1db2f2c Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 3 Nov 2021 17:13:15 +0100 Subject: [PATCH 129/135] Fix global level profiles for XYZPrinting printers The global profiles weren't used because these printers don't have xyzprinting_base as their quality definition. And they can't use that because they do have different settings per printer in their quality profiles. Instead it was using quality profiles from other materials, since those quality profiles, even though they were material-specific, were marked as global profiles. Both of those issues are fixed now. Contributes to issue CURA-8630. --- ...ci_1p0_pro_copper_0.40_abs_coarse.inst.cfg | 1 - ...nci_1p0_pro_copper_0.40_abs_draft.inst.cfg | 1 - ...ci_1p0_pro_copper_0.40_abs_normal.inst.cfg | 1 - ..._pro_xplus_copper_0.40_abs_coarse.inst.cfg | 1 - ...r_pro_xplus_copper_0.40_abs_draft.inst.cfg | 1 - ...jr_pro_xplus_copper_0.40_abs_fine.inst.cfg | 1 - ..._pro_xplus_copper_0.40_abs_normal.inst.cfg | 1 - ...inci_super_copper_0.40_abs_coarse.inst.cfg | 1 - ...vinci_super_copper_0.40_abs_draft.inst.cfg | 1 - ..._vinci_super_copper_0.40_abs_fine.inst.cfg | 1 - ...inci_super_copper_0.40_abs_normal.inst.cfg | 1 - ...0_pro_copper_0.40_antibact_coarse.inst.cfg | 1 - ...p0_pro_copper_0.40_antibact_draft.inst.cfg | 1 - ...1p0_pro_copper_0.40_antibact_fine.inst.cfg | 1 - ...0_pro_copper_0.40_antibact_normal.inst.cfg | 1 - ...a_pro_copper_0.40_antibact_coarse.inst.cfg | 1 - ...0a_pro_copper_0.40_antibact_draft.inst.cfg | 1 - ...a_pro_copper_0.40_antibact_normal.inst.cfg | 1 - ...eplus_copper_0.40_antibact_coarse.inst.cfg | 1 - ...xeplus_copper_0.40_antibact_draft.inst.cfg | 1 - ..._xeplus_copper_0.40_antibact_fine.inst.cfg | 1 - ...eplus_copper_0.40_antibact_normal.inst.cfg | 1 - ...xplus_copper_0.40_antibact_coarse.inst.cfg | 1 - ..._xplus_copper_0.40_antibact_draft.inst.cfg | 1 - ...o_xplus_copper_0.40_antibact_fine.inst.cfg | 1 - ...xplus_copper_0.40_antibact_normal.inst.cfg | 1 - ...inci_jr_w_pro_ss_0.40_antibact_coarse.inst | 27 ------------------- ..._jr_w_pro_ss_0.40_antibact_coarse.inst.cfg | 1 - ...i_jr_w_pro_ss_0.40_antibact_draft.inst.cfg | 1 - ...ci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg | 1 - ..._jr_w_pro_ss_0.40_antibact_normal.inst.cfg | 1 - ...super_copper_0.40_antibact_coarse.inst.cfg | 1 - ..._super_copper_0.40_antibact_draft.inst.cfg | 1 - ...i_super_copper_0.40_antibact_fine.inst.cfg | 1 - ...super_copper_0.40_antibact_normal.inst.cfg | 1 - ...a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg | 1 - ...0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg | 1 - ...p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg | 1 - ...a_pro_hs_0.40_carbon_fiber_normal.inst.cfg | 1 - ...eplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 1 - ...xeplus_hs_0.40_carbon_fiber_draft.inst.cfg | 1 - ..._xeplus_hs_0.40_carbon_fiber_fine.inst.cfg | 1 - ...eplus_hs_0.40_carbon_fiber_normal.inst.cfg | 1 - ...xplus_hs_0.40_carbon_fiber_coarse.inst.cfg | 1 - ..._xplus_hs_0.40_carbon_fiber_draft.inst.cfg | 1 - ...o_xplus_hs_0.40_carbon_fiber_fine.inst.cfg | 1 - ...xplus_hs_0.40_carbon_fiber_normal.inst.cfg | 1 - ...w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg | 1 - ..._w_pro_hs_0.40_carbon_fiber_draft.inst.cfg | 1 - ...r_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg | 1 - ...w_pro_hs_0.40_carbon_fiber_normal.inst.cfg | 1 - ...super_hs_0.40_carbon_fiber_coarse.inst.cfg | 1 - ..._super_hs_0.40_carbon_fiber_draft.inst.cfg | 1 - ...i_super_hs_0.40_carbon_fiber_fine.inst.cfg | 1 - ...super_hs_0.40_carbon_fiber_normal.inst.cfg | 1 - ...opper_0.40_colorinkjet_pla_coarse.inst.cfg | 1 - ...copper_0.40_colorinkjet_pla_draft.inst.cfg | 1 - ..._copper_0.40_colorinkjet_pla_fine.inst.cfg | 1 - ...opper_0.40_colorinkjet_pla_normal.inst.cfg | 1 - ...ro_ss_0.40_colorinkjet_pla_coarse.inst.cfg | 1 - ...pro_ss_0.40_colorinkjet_pla_draft.inst.cfg | 1 - ..._pro_ss_0.40_colorinkjet_pla_fine.inst.cfg | 1 - ...ro_ss_0.40_colorinkjet_pla_normal.inst.cfg | 1 - ...opper_0.40_colorinkjet_pla_coarse.inst.cfg | 1 - ...copper_0.40_colorinkjet_pla_draft.inst.cfg | 1 - ..._copper_0.40_colorinkjet_pla_fine.inst.cfg | 1 - ...opper_0.40_colorinkjet_pla_normal.inst.cfg | 1 - ...super_copper_0.40_flexible_coarse.inst.cfg | 1 - ..._super_copper_0.40_flexible_draft.inst.cfg | 1 - ...i_super_copper_0.40_flexible_fine.inst.cfg | 1 - ...super_copper_0.40_flexible_normal.inst.cfg | 1 - ..._1p0a_pro_hs_0.40_metallic_coarse.inst.cfg | 1 - ...r_1p0a_pro_hs_0.40_metallic_draft.inst.cfg | 1 - ...jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg | 1 - ..._1p0a_pro_hs_0.40_metallic_normal.inst.cfg | 1 - ...ro_xeplus_hs_0.40_metallic_coarse.inst.cfg | 1 - ...pro_xeplus_hs_0.40_metallic_draft.inst.cfg | 1 - ..._pro_xeplus_hs_0.40_metallic_fine.inst.cfg | 1 - ...ro_xeplus_hs_0.40_metallic_normal.inst.cfg | 1 - ...pro_xplus_hs_0.40_metallic_coarse.inst.cfg | 1 - ..._pro_xplus_hs_0.40_metallic_draft.inst.cfg | 1 - ...r_pro_xplus_hs_0.40_metallic_fine.inst.cfg | 1 - ...pro_xplus_hs_0.40_metallic_normal.inst.cfg | 1 - ..._jr_w_pro_hs_0.40_metallic_coarse.inst.cfg | 1 - ...i_jr_w_pro_hs_0.40_metallic_draft.inst.cfg | 1 - ...ci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg | 1 - ..._jr_w_pro_hs_0.40_metallic_normal.inst.cfg | 1 - ...nci_super_hs_0.40_metallic_coarse.inst.cfg | 1 - ...inci_super_hs_0.40_metallic_draft.inst.cfg | 1 - ...vinci_super_hs_0.40_metallic_fine.inst.cfg | 1 - ...nci_super_hs_0.40_metallic_normal.inst.cfg | 1 - ...ci_super_copper_0.40_nylon_coarse.inst.cfg | 1 - ...nci_super_copper_0.40_nylon_draft.inst.cfg | 1 - ...inci_super_copper_0.40_nylon_fine.inst.cfg | 1 - ...ci_super_copper_0.40_nylon_normal.inst.cfg | 1 - ...i_1p0_pro_copper_0.40_petg_coarse.inst.cfg | 1 - ...ci_1p0_pro_copper_0.40_petg_draft.inst.cfg | 1 - ...nci_1p0_pro_copper_0.40_petg_fine.inst.cfg | 1 - ...i_1p0_pro_copper_0.40_petg_normal.inst.cfg | 1 - ..._1p0a_pro_copper_0.40_petg_coarse.inst.cfg | 1 - ...r_1p0a_pro_copper_0.40_petg_draft.inst.cfg | 1 - ...jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg | 1 - ..._1p0a_pro_copper_0.40_petg_normal.inst.cfg | 1 - ...ro_xeplus_copper_0.40_petg_coarse.inst.cfg | 1 - ...pro_xeplus_copper_0.40_petg_draft.inst.cfg | 1 - ..._pro_xeplus_copper_0.40_petg_fine.inst.cfg | 1 - ...ro_xeplus_copper_0.40_petg_normal.inst.cfg | 1 - ...pro_xplus_copper_0.40_petg_coarse.inst.cfg | 1 - ..._pro_xplus_copper_0.40_petg_draft.inst.cfg | 1 - ...r_pro_xplus_copper_0.40_petg_fine.inst.cfg | 1 - ...pro_xplus_copper_0.40_petg_normal.inst.cfg | 1 - ...inci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg | 1 - ...vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg | 1 - ..._vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg | 1 - ...inci_jr_w_pro_ss_0.40_petg_normal.inst.cfg | 1 - ...nci_super_copper_0.40_petg_coarse.inst.cfg | 1 - ...inci_super_copper_0.40_petg_draft.inst.cfg | 1 - ...vinci_super_copper_0.40_petg_fine.inst.cfg | 1 - ...nci_super_copper_0.40_petg_normal.inst.cfg | 1 - ...ci_1p0_pro_copper_0.40_pla_coarse.inst.cfg | 1 - ...nci_1p0_pro_copper_0.40_pla_draft.inst.cfg | 1 - ...inci_1p0_pro_copper_0.40_pla_fine.inst.cfg | 1 - ...ci_1p0_pro_copper_0.40_pla_normal.inst.cfg | 1 - ...r_1p0a_pro_copper_0.40_pla_coarse.inst.cfg | 1 - ...jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg | 1 - ..._jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg | 1 - ...r_1p0a_pro_copper_0.40_pla_normal.inst.cfg | 1 - ...pro_xeplus_copper_0.40_pla_coarse.inst.cfg | 1 - ..._pro_xeplus_copper_0.40_pla_draft.inst.cfg | 1 - ...r_pro_xeplus_copper_0.40_pla_fine.inst.cfg | 1 - ...pro_xeplus_copper_0.40_pla_normal.inst.cfg | 1 - ..._pro_xplus_copper_0.40_pla_coarse.inst.cfg | 1 - ...r_pro_xplus_copper_0.40_pla_draft.inst.cfg | 1 - ...jr_pro_xplus_copper_0.40_pla_fine.inst.cfg | 1 - ..._pro_xplus_copper_0.40_pla_normal.inst.cfg | 1 - ...vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg | 1 - ..._vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg | 1 - ...a_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg | 1 - ...vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg | 1 - ...inci_super_copper_0.40_pla_coarse.inst.cfg | 1 - ...vinci_super_copper_0.40_pla_draft.inst.cfg | 1 - ..._vinci_super_copper_0.40_pla_fine.inst.cfg | 1 - ...inci_super_copper_0.40_pla_normal.inst.cfg | 1 - ..._pro_copper_0.40_tough_pla_coarse.inst.cfg | 1 - ...0_pro_copper_0.40_tough_pla_draft.inst.cfg | 1 - ...p0_pro_copper_0.40_tough_pla_fine.inst.cfg | 1 - ..._pro_copper_0.40_tough_pla_normal.inst.cfg | 1 - ..._pro_copper_0.40_tough_pla_coarse.inst.cfg | 1 - ...a_pro_copper_0.40_tough_pla_draft.inst.cfg | 1 - ...0a_pro_copper_0.40_tough_pla_fine.inst.cfg | 1 - ..._pro_copper_0.40_tough_pla_normal.inst.cfg | 1 - ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 1 - ...eplus_copper_0.40_tough_pla_draft.inst.cfg | 1 - ...xeplus_copper_0.40_tough_pla_fine.inst.cfg | 1 - ...plus_copper_0.40_tough_pla_normal.inst.cfg | 1 - ...plus_copper_0.40_tough_pla_coarse.inst.cfg | 1 - ...xplus_copper_0.40_tough_pla_draft.inst.cfg | 1 - ..._xplus_copper_0.40_tough_pla_fine.inst.cfg | 1 - ...plus_copper_0.40_tough_pla_normal.inst.cfg | 1 - ...jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg | 1 - ..._jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg | 1 - ...i_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg | 1 - ...jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg | 1 - ...uper_copper_0.40_tough_pla_coarse.inst.cfg | 1 - ...super_copper_0.40_tough_pla_draft.inst.cfg | 1 - ..._super_copper_0.40_tough_pla_fine.inst.cfg | 1 - ...uper_copper_0.40_tough_pla_normal.inst.cfg | 1 - ...inci_super_copper_0.40_tpu_coarse.inst.cfg | 1 - ...vinci_super_copper_0.40_tpu_draft.inst.cfg | 1 - ..._vinci_super_copper_0.40_tpu_fine.inst.cfg | 1 - ...inci_super_copper_0.40_tpu_normal.inst.cfg | 1 - ...da_vinci_1p0_pro_global_0.10_fine.inst.cfg | 17 ++++++++++++ ..._vinci_1p0_pro_global_0.20_normal.inst.cfg | 17 ++++++++++++ ...a_vinci_1p0_pro_global_0.30_draft.inst.cfg | 17 ++++++++++++ ..._vinci_1p0_pro_global_0.40_coarse.inst.cfg | 17 ++++++++++++ ...inci_jr_1p0a_pro_global_0.10_fine.inst.cfg | 17 ++++++++++++ ...ci_jr_1p0a_pro_global_0.20_normal.inst.cfg | 17 ++++++++++++ ...nci_jr_1p0a_pro_global_0.30_draft.inst.cfg | 17 ++++++++++++ ...ci_jr_1p0a_pro_global_0.40_coarse.inst.cfg | 17 ++++++++++++ ...vinci_jr_pro_xep_global_0.10_fine.inst.cfg | 17 ++++++++++++ ...nci_jr_pro_xep_global_0.20_normal.inst.cfg | 17 ++++++++++++ ...inci_jr_pro_xep_global_0.30_draft.inst.cfg | 17 ++++++++++++ ...nci_jr_pro_xep_global_0.40_coarse.inst.cfg | 17 ++++++++++++ ..._vinci_jr_pro_xp_global_0.10_fine.inst.cfg | 17 ++++++++++++ ...inci_jr_pro_xp_global_0.20_normal.inst.cfg | 17 ++++++++++++ ...vinci_jr_pro_xp_global_0.30_draft.inst.cfg | 17 ++++++++++++ ...inci_jr_pro_xp_global_0.40_coarse.inst.cfg | 17 ++++++++++++ ...a_vinci_jr_w_pro_global_0.10_fine.inst.cfg | 17 ++++++++++++ ...vinci_jr_w_pro_global_0.20_normal.inst.cfg | 17 ++++++++++++ ..._vinci_jr_w_pro_global_0.30_draft.inst.cfg | 17 ++++++++++++ ...vinci_jr_w_pro_global_0.40_coarse.inst.cfg | 17 ++++++++++++ ..._da_vinci_super_global_0.10_fine.inst.cfg} | 2 +- ...a_vinci_super_global_0.20_normal.inst.cfg} | 2 +- ...da_vinci_super_global_0.30_draft.inst.cfg} | 2 +- ...a_vinci_super_global_0.40_coarse.inst.cfg} | 2 +- 195 files changed, 344 insertions(+), 201 deletions(-) delete mode 100644 resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.40_coarse.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.10_fine.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.20_normal.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.30_draft.inst.cfg create mode 100644 resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.40_coarse.inst.cfg rename resources/quality/xyzprinting/{xyzprinting_global_0.10_fine.inst.cfg => xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg} (85%) rename resources/quality/xyzprinting/{xyzprinting_global_0.20_normal.inst.cfg => xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg} (86%) rename resources/quality/xyzprinting/{xyzprinting_global_0.30_draft.inst.cfg => xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg} (86%) rename resources/quality/xyzprinting/{xyzprinting_global_0.40_coarse.inst.cfg => xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg} (86%) diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg index 81fb685f4b..4715473ad9 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg index b6e5ffbc8f..979106dddd 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg index 2e99a18493..9dba686692 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_1p0_pro_copper_0.40_abs_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg index 79890fcee0..5959e3b336 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg index f31218a2ab..7556fc2f3f 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg index d4fb855e87..48abace00d 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg index eac39ffd2e..6ac05604e4 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_abs_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg index e5cf28f4db..cfc0cd6731 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg index 47269d34df..d87a3cec64 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg index 19383b5a84..0fd1cf6b91 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg index 8056ae7f47..d5b2a28b14 100644 --- a/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg +++ b/resources/quality/xyzprinting/abs/xyzprinting_da_vinci_super_copper_0.40_abs_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_abs variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg index f7c299c3da..8c6460ce04 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg index 738df10c16..dc52fbeb9b 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg index d462bf4203..e38fc61eaf 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg index e012d1ef68..b781d3eb86 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_1p0_pro_copper_0.40_antibact_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg index e0d323efd1..e76a4f5df5 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg index 193a211832..f3b2f4b0c7 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg index 6adbefb8b3..3e048b3c9d 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_antibact_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg index e7701dd165..cea21e93fc 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg index 864ae2e03f..eac9bd1604 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg index d8f81b1362..a5b9f1ba30 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg index 707e06d949..7856ee7d03 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_antibact_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg index db1711a728..8cd4fd0bc2 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg index 3cdeb76425..68ead2475c 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg index 381828c4a0..cf3c82a3cf 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg index 64d3c79311..ca3860ad7e 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_antibact_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst deleted file mode 100644 index 28e1ee893e..0000000000 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst +++ /dev/null @@ -1,27 +0,0 @@ -[general] -version = 4 -name = Coarse Quality -definition = xyzprinting_da_vinci_jr_w_pro - -[metadata] -setting_version = 19 -type = quality -quality_type = coarse -material = xyzprinting_antibact_pla -variant = Stainless Steel 0.4mm Nozzle - -[values] -material_print_temperature = 210 -material_print_temperature_layer_0 = =material_print_temperature -material_initial_print_temperature = =material_print_temperature -material_final_print_temperature = =material_print_temperature -speed_wall = 30 -speed_print = 30 -speed_topbottom = 10 -speed_roofing = 30 -speed_infill = =speed_print -speed_support = =speed_print -speed_travel = 100 -retraction_amount = 5.0 -retraction_speed = 30 -skirt_brim_speed = 30 \ No newline at end of file diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg index 5427a20986..fe174bccc8 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg index 81b56f5f20..8ea09fb8b4 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg index 1917235500..97ff193c00 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg index 48b34ea42a..124620e6a0 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_jr_w_pro_ss_0.40_antibact_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_antibact_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg index 83f3b0d713..008e6c2715 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg index c321a427ed..4a70583723 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg index fdebc73dc0..bcc9278d05 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg index d70bb8ba20..2a87039f0c 100644 --- a/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg +++ b/resources/quality/xyzprinting/anti_bact/xyzprinting_da_vinci_super_copper_0.40_antibact_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_antibact_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg index 040475bccd..4022f8e7b9 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg index 22cbfc6ae6..d0bca05b7a 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg index df2b559721..509931fe6a 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg index 7b4403bea2..3fcfc291fa 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg index c747492e93..7cf513e9f9 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg index 9a065bb807..faa98a333b 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg index 5875de7823..b95a6e093e 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg index b2c9781314..ce0acf723e 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg index 5a4479fae8..bf603d73ad 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg index edd63c6ba5..3d524c0d6f 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg index c96ee388c7..07c58edd6a 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg index 98cac92dd1..a21795ec88 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_carbon_fiber_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg index 9edbdaf7eb..9e778b2ba3 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg index 401a0ce684..97f6de0a6b 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg index 7b44435486..1d69fbad4e 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg index de9dd99668..a7518b9165 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_jr_w_pro_hs_0.40_carbon_fiber_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg index 399d4aa892..efa2343ef7 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg index 9722bb9f90..8c8719c2ed 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg index 41b8e08ef4..882b5e020f 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg index adbb2f37fd..a731931b1b 100644 --- a/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg +++ b/resources/quality/xyzprinting/carbon_fiber/xyzprinting_da_vinci_super_hs_0.40_carbon_fiber_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_carbon_fiber variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg index 9e8638fd64..c0fd14a2bc 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg index b22adb3c2e..8d0a1d48b9 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg index 51ee82575d..6bebb3d706 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg index 2aa3ca12fa..ec1ac6e945 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_colorinkjet_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg index 63f1bdb5ad..7a7196e95c 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg index 775d52411f..37462f7ee0 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg index 57fee5f95b..1ed81effae 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg index 26aa5e572d..948691680a 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_colorinkjet_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg index 1a46280e24..b8e45ecb27 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg index 8c8136baea..ee2d6bc5a4 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg index 93dfba785b..1f0c5e654e 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg index d99e30659b..7356f4a39f 100644 --- a/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/color_pla/xyzprinting_da_vinci_super_copper_0.40_colorinkjet_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_colorinkjet_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg index 840a04ad7e..009a232b6b 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg index 08717a1123..3424449e8c 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg index 461d7ca019..cd37ef504a 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg index 801cf5f94b..96ea38b3d7 100644 --- a/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg +++ b/resources/quality/xyzprinting/flexible/xyzprinting_da_vinci_super_copper_0.40_flexible_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_flexible variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg index 6d60893194..98a573cfff 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg index efd0e90a4d..c9ed3ef6c8 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = 0 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg index ae2d4e15df..934e6ccc14 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg index 8e436913a2..11a7fc100f 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_1p0a_pro_hs_0.40_metallic_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg index 8fc5702f7c..a0894899db 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg index 18d3e48e85..09027e6aa7 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg index f3ab9865ab..20696a1c53 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg index 4a2782e4aa..0478b12cfb 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xeplus_hs_0.40_metallic_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg index ad18caa3fa..92647a35c0 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg index 022549aff4..2dfe27abb5 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg index 5d37d3b2b2..1b69b2c680 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg index 35af4f389c..d384f1c461 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_pro_xplus_hs_0.40_metallic_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg index c0543e3272..1d76ce8b0b 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg index 055ae0912e..99943e8d5e 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg index 5aea8f16d9..2379e379a2 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg index 2b92d00c79..b842e33472 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_jr_w_pro_hs_0.40_metallic_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg index a6a7d6cafc..bebd6da8be 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg index 74e00adbbe..864607a918 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg index 5b4d59b13e..0ec1ae0596 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg index ee4731ba47..24fa6852de 100644 --- a/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg +++ b/resources/quality/xyzprinting/metallic_pla/xyzprinting_da_vinci_super_hs_0.40_metallic_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_metallic_pla variant = Hardened Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg index f4490fb6c9..d978a2c4ce 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_nylon variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg index cf1286c1a1..504ca405f2 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_nylon variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg index b9caa97cd9..5866b1cd9e 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_nylon variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg index a7c3d95525..bc24b127da 100644 --- a/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg +++ b/resources/quality/xyzprinting/nylon/xyzprinting_da_vinci_super_copper_0.40_nylon_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_nylon variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg index 105751b87e..92233ea283 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg index 6be3b0843b..94b245b752 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg index c81973a404..2ee10b585f 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg index 11543c1d6f..5eab80c575 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_1p0_pro_copper_0.40_petg_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg index 27768d62dd..39bdce2a73 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg index 3ca8304164..2b604f0574 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg index 43b5629194..407a5b5a1f 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg index 90892e8707..897fd75421 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_petg_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg index ed54a942a5..e6b547b571 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg index 7e435e0adc..cf82a0ff43 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg index 5ad254bc12..80398c3905 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg index 9b6be5bfdd..047928bf59 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_petg_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg index 20a2fe5e2e..ca65aecc3c 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg index 3120c37ada..bccc7000f5 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg index 157f1d8bc9..e3b3b8ca84 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg index 5dc2ba5368..9944b65f17 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_petg_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg index 307aa8d13c..c2e182a292 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg index d4e6314bc5..a82a71aa88 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg index d626169cdc..48b8837f5a 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg index 58b606ce91..ac2f07f066 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_jr_w_pro_ss_0.40_petg_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_petg variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg index e1266f501b..02d35cfe2e 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg index acea4a8e57..20b6790bbf 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg index ad23f2096a..94ad6f0a72 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg index 12cafc5877..b070e16059 100644 --- a/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg +++ b/resources/quality/xyzprinting/petg/xyzprinting_da_vinci_super_copper_0.40_petg_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_petg variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg index eb2cb76b4e..4666ba3ea3 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg index 3a5ad5823a..5987389b80 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg index 0ccc620a33..738e119ff6 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg index 0daa204f9e..de4ba3160f 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg index 2380b134d1..2b25eee6c3 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg index ee8b10bacb..ee5c9019b7 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg index dd303dc424..66427ad13d 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg index 7025c52bd4..9103825e26 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg index 3e40bcacc4..2c1b7ecb46 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg index 033bb6ba31..7b0d47b11e 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg index 73fad6402a..ecc0484c42 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg index c7087e8d5d..82fbd49cc6 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg index f51fae5883..28e395f849 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg index 9768817c13..851e1d167e 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg index f2d6b2ac70..30f81b6797 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg index acd2640234..aa102dd9a4 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg index 4dc15d37fb..e8fd8e062d 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg index 20c59646d2..34590cab0b 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg index e57a675dd2..b07650d9e6 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg index 3e54a14dad..ac013f0343 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg index e77334ca4e..0482e36e61 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg index 92eb6376cb..8123deb58a 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg index c4e77e3485..b7bcec1d73 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg index b34501f085..d3efb9f586 100644 --- a/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/pla/xyzprinting_da_vinci_super_copper_0.40_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg index df7e677e35..399b7db820 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg index 830074f3af..b9f85dcd3f 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg index 5780059f51..e6b2e48b13 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg index fc34b0eb74..bc2a638077 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_1p0_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg index 1de1b31787..e27de06402 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg index 66f8dd3e04..dfe0724569 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg index bbb4e23cb4..6e572f9fb1 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg index 6f50c1e7e0..d4efcdee7d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_1p0a_pro_copper_0.40_tough_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg index acfae47f0f..41dbf46e9c 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg index 7b22bca1fb..df57ca2d5f 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg index ce972259de..fbbeca7bb8 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg index 546a9b596d..5bb0cf8f0c 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xeplus_copper_0.40_tough_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg index 860a31e4c9..64af004e74 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg index 936f83a242..f8c25551d6 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg index 6c93eb9a87..5c267c3c94 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg index a555c6299c..08e8d08c8f 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_pro_xplus_copper_0.40_tough_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg index b8c026ad7b..1ddf6713e1 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg index 6910e572b6..a9f33805c1 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg index 50e2b039a2..cdac51a11d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg index d1f5ad7d8a..2f2f84feae 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_jr_w_pro_ss_0.40_tough_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tough_pla variant = Stainless Steel 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg index 2f824fc78d..23301eaa67 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg index 6dcd9c2ba3..527a868504 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg index 879903b89e..fdaaf3677d 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg index da115601db..f52c567e7c 100644 --- a/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg +++ b/resources/quality/xyzprinting/tough_pla/xyzprinting_da_vinci_super_copper_0.40_tough_pla_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tough_pla variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg index eaaa45d6a1..88a1bff389 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_coarse.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = coarse weight = -3 -global_quality = True material = xyzprinting_tpu variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg index 2cf2e68fad..5d3b3f2290 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_draft.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = draft weight = -2 -global_quality = True material = xyzprinting_tpu variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg index c67c821da3..9b14b7a7ec 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_fine.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = fine weight = 0 -global_quality = True material = xyzprinting_tpu variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg index 8bd28d8c85..d354173c9f 100644 --- a/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg +++ b/resources/quality/xyzprinting/tpu/xyzprinting_da_vinci_super_copper_0.40_tpu_normal.inst.cfg @@ -8,7 +8,6 @@ setting_version = 19 type = quality quality_type = normal weight = -1 -global_quality = True material = xyzprinting_tpu variant = Copper 0.4mm Nozzle diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..22d4f080f6 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.10_fine.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..e4bba6ef43 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.20_normal.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..43732d22bc --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.30_draft.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..59851849f2 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_1p0_pro_global_0.40_coarse.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_1p0_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..759d92c12d --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.10_fine.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..f0b985cbbc --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.20_normal.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..887658e75b --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.30_draft.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..df36350350 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_1p0a_pro_global_0.40_coarse.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_1p0a_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..927bf458ab --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.10_fine.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 19 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..711a072e8d --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.20_normal.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 19 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..d7c9059a53 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.30_draft.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 19 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..d0d05d205c --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xep_global_0.40_coarse.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xeplus + +[metadata] +setting_version = 19 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..5f56c8eb12 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.10_fine.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 19 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..97790a58d1 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.20_normal.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 19 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..23fb57ee4c --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.30_draft.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 19 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..f3af960d25 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_pro_xp_global_0.40_coarse.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_pro_xplus + +[metadata] +setting_version = 19 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.10_fine.inst.cfg new file mode 100644 index 0000000000..d10765c9b5 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.10_fine.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Fine Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = fine +weight = 0 +global_quality = True + +[values] +layer_height = 0.1 +layer_height_0 = 0.2 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.20_normal.inst.cfg new file mode 100644 index 0000000000..5f02e6e862 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.20_normal.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Normal Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = normal +weight = -1 +global_quality = True + +[values] +layer_height = 0.2 +layer_height_0 = 0.3 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.30_draft.inst.cfg new file mode 100644 index 0000000000..4e046542fe --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.30_draft.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Draft Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = draft +weight = -2 +global_quality = True + +[values] +layer_height = 0.3 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.40_coarse.inst.cfg new file mode 100644 index 0000000000..b091961142 --- /dev/null +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_jr_w_pro_global_0.40_coarse.inst.cfg @@ -0,0 +1,17 @@ +[general] +version = 4 +name = Coarse Quality +definition = xyzprinting_da_vinci_jr_w_pro + +[metadata] +setting_version = 19 +type = quality +quality_type = coarse +weight = -3 +global_quality = True + +[values] +layer_height = 0.4 +layer_height_0 = 0.4 +material_diameter = 1.75 +infill_sparse_density = 10 \ No newline at end of file diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg similarity index 85% rename from resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg rename to resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg index 6b3ea6915b..020671bcbf 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.10_fine.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.10_fine.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Fine Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 19 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg similarity index 86% rename from resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg rename to resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg index 9c7080d8da..abc8b5d167 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.20_normal.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.20_normal.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Normal Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 19 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg similarity index 86% rename from resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg rename to resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg index dc6285b6ca..1d779df02b 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.30_draft.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.30_draft.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Draft Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 19 diff --git a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg similarity index 86% rename from resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg rename to resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg index 35f7970c4b..0b7e1313e1 100644 --- a/resources/quality/xyzprinting/xyzprinting_global_0.40_coarse.inst.cfg +++ b/resources/quality/xyzprinting/xyzprinting_da_vinci_super_global_0.40_coarse.inst.cfg @@ -1,7 +1,7 @@ [general] version = 4 name = Coarse Quality -definition = xyzprinting_base +definition = xyzprinting_da_vinci_super [metadata] setting_version = 19 From 8f7ffba1f965461e5d9295032db4c1ab0076c683 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Wed, 3 Nov 2021 17:27:49 +0100 Subject: [PATCH 130/135] Fix file extension Contributes to issue CURA-8630. --- ...r_0.json => xyzprinting_da_vinci_jr_w_pro_extruder_0.def.json} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename resources/extruders/{xyzprinting_da_vinci_jr_w_pro_extruder_0.json => xyzprinting_da_vinci_jr_w_pro_extruder_0.def.json} (100%) diff --git a/resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.json b/resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.def.json similarity index 100% rename from resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.json rename to resources/extruders/xyzprinting_da_vinci_jr_w_pro_extruder_0.def.json From b31e4e81cee78a13ee352c1941fb83b163f53eae Mon Sep 17 00:00:00 2001 From: fvrmr <77000924+fvrmr@users.noreply.github.com> Date: Thu, 4 Nov 2021 14:49:06 +0100 Subject: [PATCH 131/135] Update readme Updated the readme with a new img --- README.md | 2 +- cura-logo.PNG | Bin 0 -> 531969 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 cura-logo.PNG diff --git a/README.md b/README.md index 345a55d12f..1f58dc09a1 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ Cura ==== Ultimaker Cura is a state-of-the-art slicer application to prepare your 3D models for printing with a 3D printer. With hundreds of settings and hundreds of community-managed print profiles, Ultimaker Cura is sure to lead your next project to a success. -![Screenshot](screenshot.png) +![Screenshot](cura-logo.PNG) Logging Issues ------------ diff --git a/cura-logo.PNG b/cura-logo.PNG new file mode 100644 index 0000000000000000000000000000000000000000..52da8203a8cf7a82a76c9464fa8bbead9702a089 GIT binary patch literal 531969 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%0D? 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�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�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%0D||R|eZTHpgA3y~Z_Qr;G!+JguoR5v`V? zppzqE<|DQgCM|DDo$pf5q8u!T`MbI;?zMe@Js*4eXB=M{Iw}0J!ztidz$cz8YI3AK zBuAxalJ@i!{Dzlkb2$?X`tvf{+2m{RlLwI&z(a_+!_Zm-g^gSHXf!K)g*kYW6DHjd zQGKcRuOsnS{iq2!*8=wGubak2BPqH^Bl_Dz0Q7NR3BRaJT(0hMZkhx^qD&r{Aw8av z`d%z`wvOw&6x?W20n)m))@Qx`QM&6AWl_GGcoX;DFe^mO`G*xB$$4H<^GNJG_SOl* zzQH$0;>M#ES8*?N2MtABCr3d-m!8t%(J zQ+bU%860CwJ8xE2SPfoKQRun-ZI)ZAEkjH8SwhVQ-*Cmol3yI=wRTD_$94zF;ibk)Gk7!y4CZ$5XU2(BXA&?m^m>F4&PkVeok zHS^@D6P<)wQyz6qxVtVd)y$C;+IG=a9_r$VRcutx%9)7_UHwpSD0**1sf9ACXO4FH zsS=nVKOP}7<`7|AO2o~vmrGCDGz{9gtf9tN`fDtPLdzL@^=J?N0YBLHO-~kGLb!y? zk5(}SkD6!N5xEEN-VfK(rJ&(tG}6P-vCfp<$gpx(5z?DAx6^n|y-zsVkZlYfzK7Yo zjEhJUr?bnvcDO8oW@o0>BZ3cuxXVUP=Is?wRl>)RxHtu#(#2C;8m_9NY^+@LC>g+6 zaZos(bGqS|k}%~6ZoMc^_;j2XsnQYmA;qx6H^JZT20XV+ye!OYHSXGByk*~Ce<#`q zBIJo_Hwiv-VS9?8t(ktB*yAjth(+6OYC_0=J!y0SReDt9`AJ7KNlkheozGZ+-fTn;2dbth z=7_hY0Q!zN4Sy-wCRT>By$)!NL28U9zc5FVfBpT6va|q48a>X3B4nL$mp;kO zc=ihV)k?G7LUQWRWqC1Qd)+2?wDU%2?*yRvQqBP43T;AvOwdv*FgyIL#lGS3GvL6L z=Z@2tmMYUY8h@qHXya%2r$-~m_fQJ_q2Yc63A6PLDQDZ@o~kZxD)CE!Pi}14s`~mT z@O)fzvIVSc?DLUn_xr7G$$ica8BRh8hfIULbSb<{ZN4p@wibIi_iGbs{2K18%-U%1 z#u&Xg+joU~=v!WSND@-?OW3T-+RKd>Y=f}r=qy?~jlJ2GAYGmzPbS{hi zeXQM7~tuRgQcKg*xF8td+pWH-&;L}{M*q5@^ZtWoAC4Hyz7`!lnLS|XsYsZ%fZo$23aR`dXBx12SXL(bm_s2k?>f9}BYFv2J z=jA{q0q@-6NxKqox!Rpg!1KZN0{@b}9&v&{av%(%8= zIZ;k4{s|n^RY36F64e>PT+HhK4Eph*n075^?FnvZt=lxvNne*}S3wL7I1*;txILD^ z<;1=m>wu(C7VU z>CL}nk~?~uzYeoUSq!4ZYX zZi7eU9^bNBBI3=Y1VRXnQ0c#>k%&-9oNqR~8Zb5(BKUTtR~?;Jv2}b{3?xCl4`oz~ zdsiBvOxOaRzF1`#3AQ)~9S{#7*y5N|(yjg%n<`KE#E1i|8rI_FGN1=-8ghyT?$LH= z76x02->#peTgu)hBE{N3fG8;08s(2?<(Jg-8a}7`>7v|>?vU2QNTm9AalKgjRT3w^ z*0KH2^)s_P(V7(Ut0;D}uJp(kPpy_U%gMRi=IG0p+-t@C!rF|D0%FBg^N>o+pkNb7 zDC|~+z2CRcV1>*HfZdY3MwA>ev*sSk-GF|1RS`_^(Z@^&{$iqa?jdu0g2{2c@DHRrdlmxD)UyyiElmDj-++1*m`N)hw(d`@Fd~~WuA=kDBqQ2%SfyAA6*G>nvdbTKlD9l z3GiiBsBA&tm}(P^N$9?Kos1*|+=>ut=K&@6QC`55k00%*Z)RB)UwuW)Rw%2uQcgL{ z?AN;{*Iq`AOekseC}y6JHzq%H?gyoHTbyyFn?j#oOHXWv=k2VlfEedFn#Ma~NtnWl z6hu)F6;vK`MJX*?-6HpgzKul8@?H1pS1IrQGE6T~TGUd-HXgYEc$9;vbO0YzsoPWm zFvc`$A5*JJwf2ogHJxm?m4Um&dvq(Ac8%$BfTwWt z^&AfjL*2Ga7KRR?K-N{MiPL`0CIJTvlC6AY&|*ZF0T7~apG2iNO|$!I^)3&~`NzG% z-i6n%G0Z1uw6d6ZO2r5riA|^cu*POD_Xz}sZg{^Ho2U)M*O7r8VKgPu&&Ku^^7~fN zANW-r?WZ1bugUox!|D8ebX{A@;0J=1>G} zGoyxX)_DFF$;kzX#B}w9!%3ym*txZ+2>Ibl-}1q{*_y{YDoPW2ab|aN-+UQ4PI`0) zebA6Njft$5ei1l;49*Z$F;39RSv%yEYdkgLbhs!KnaOmxkh1?os?#{7jaIk3ceP?` zC&us1(tGHel~y-rntKE5lNVjm0I@NX!{wueJ?5F)FNg(#edsA?md?Q{uWJ?rw(#$j z#d66im)9J6ES;i(Z*6 zv!z`hv|osCEX%s}PzuQmy+yo@$+Y{fBmcr~zc}_gcE!0`tZYG8^}e5_X4MmcFq(fp zO#^SJUGaOjZp63^iP}+fLWcPA-D>2@{_b9V9B!|9tvgMdiasl!;KIB7Qi%7TxSIv4 zHnfdKC|BUBiP#Psa`lojb_qdMT?{iOBpVW}VbI{zQ>_IGfz+|QwVbC^m7lbmyfw4V9a1G$*$QG~1+H9zb}edt?VODCm@eu9 z67f+ztZ`}d&qB)K-V)Ny`vAA}#s2D{lCR$BG)n32!Peb&x#eN;A`XCp2n01PfoCbwuH_X64;KtO^&6?8jC>TL zO9bv4cJL^#{f5j;Uor3MGQxx0G^KtyJPz{UvG{;44tfV`^6ub)Bs-{)1O~4A@{LVt zv3RbxYYg=yleN;QFOIt9eBwaUonhO3vZ%tT_dPwG)NOva2*Jv3hF}i!Qsy5-INe$4 zy{Mbsul#@Nv&8jdXt{>apH`c0Np7B8O3Nk>R1G;T9&aB4Wn*$Q@|#rT`iy;X;%xHqVRoKXl2n4;JXf4ij5^|d6mH`~r2+=+qN;#9Yk31xZW zVePNQqR+?59rs$vd+M8~*q7xU&fM2(XTNo`{3$3dh?5@XQUDnM4sDZ||H`_YCOTE$-E9 z+a$xcUEbLoTYrDaen2PjOD7Ylw?>vBo^jvuNq(|F ziU-Vsmep-L*=}kQU#sj%p3*{E4|Ty3wCoIc@QK#FRw=&hvsakskh?=Dy+yd~R*i4l z4-Rj1UfCs>1IW@4X}zAaSktKvb{Ug~mS#sgL~@@2>6PWqUnW()O%Gy<41AxL5#)Jz zGV!!XtVg^~k~B$p86jRIc`RQhl~M<8_Im@&F17jrSTLnS`8+H2#;>V!Pty3~do(yx z?h37wPOMFz_!wZkL&0ij)u;a?xSEf&ExkpBmN4;bYfAnZSPUt&>e^hfxEJ;VlZ?^Z z!%cf`<@}hCR##L{Pl4)X&>=UhYrj`*Y6}Sn5-LY*kG}0z6ADS-NStDO7K3KNaK@gF zDevy_TTO(B{2Squ;V@ldrL1Ra)*Y9qgs)*1`9r>Z6Za2R<;BZAp1XNeq-h(VM!Q*3 z$L?zWxZVP*8~!jG^oGiT2ADl9!<0;{{=)GJ+2Blss1#!ir^EB(pu>sXz1SLRy1+Vx zhl@w%Z?dqT`*?;%lrg94iQp!~{e!Dr_gY^rt$$NW2~rpO)eiL1E>XvfdSJ|w`3HTl z9_isuW!#x_Du>3aHPV4TMv7-qfcUDc`MnEbdrj|EYirf}*?`#j8Q|e$dCP~3vlF)h zF5vUvSiAP~Ow0th_pyn1XVT0PMLoy84J(6JMkz4B1Z&Y&z*R+VH$wWMlG zuYr@AVNmn2X03kwGZ4KgQ9bA#6wvWl>E7N8sP=Kpf00vwc3t8;s=Z1zz~wnr%H=;| zI%}(Z_63-sUi$T3k2shPoONjVaI!VB{axDjs*E7}!(Keaj2fFyyo3^U$b$gt4jv1% z=FiY)tAvrneJ2frtBE2?+P{ld&C=o>EOV{hlV9uqqIPQ%2@jBhNHJ#GKg%cyoD1CEGK~igT&To3)5(zfTd4N8czduE1>mbpK55 z0$%yJ)($O)8DoNuQTuxcOSdpjcw^>LyNZT8vmJVV{6QAEAC70+29)+tub^ZtAF|Nc zdFj<|PS)JXMC1Y*vAq@jfV4AF<}#&x@zo~$lJ@MouG@b7!?3N6v(z^70XG5eIejxg zFmn3U=Ke^Bo{GmGv=ZdQAN0=7fWFtF<7DkbiYe)=Vwt;s1*Z40}maa?&fq>)1h9e%-7ztlNshup#=3h1c zzWc-6diwjGOHNmV6s}k@%_d4bok1zyK0(WaCRU-x!F%M3jeKyUw-HQVo#&y7$-26o zZCRdk0JJS_!sb$pa<}Ym;>MZ=uFzbjK1OmC*Nr^7LW-|!O9IoM6M9wFYBx3lWh3MS zH@eatYc&-K!DllOrF@H2ZakCT_P{d z*q2OfH|(^=@W5~#HfWQ^UDIU)Eb2(+`^3LgrUXMR^AEurNOoMj?QB&`?0mqml4F|4 zai_Lm2mhKOkZDZ)IRSN^i#`q4 z*!xjgPS>s+9Uz;(A*XL%iQi(}rz-#1ctO9V`yk zjpnBvyhI6`0WiIG`I*S&Htls|Fdg_wmm%K~_;z@<-}9w)m7pVC=lYKm9zfFALcRWf zh1kF#%+sigR{h&BeVvGgeaQ{!JQ^L_^SxiP&PTHzE=;*)RMU3ulNnyyei@v^ztl4p ze%pUNr+rA6_NhqQhE_G9hEU|l|})sk?Xw;3*NS6+^d|! zz~-a*s>(bBr)tlm$0SpLp=p2a&6kgkLbyo{Qhen{V!$zu0AxZ2{i5TG=UK)_HH4Ag zPq}VF2dfaY1J&*{NgLQ#9h#^bY7(rx_e0EIzO3C0Qf>I`?za);@9!_Yv?=_341lCV z2b_sIl4;S)%-)1>x(_=|7w4W`(Q*gu2DXUf0nbqpl^toAKz?B0dSO6VU`SHC!L=a5 zEYo`)D4BYzO!=hH^AFv^;(~Acx#La?>2~Nv33)+I>}qpDo+nB`R#6LyVdF`*;x(Oj(hr}&OWxU{d7BL9v z)mXdDB<0yc1ygvap1RYXxmVgj&&)yJirzzC8DC@PKA3KLT?RDYPj4w{igpiSLSkFc z`3l6LA2Znj%*l|d9KuSB{rG64%+fvAgr9iz zO02I{B)80?OYsaAoOta@N?1>xKyZ$bbopDcp1aa-{Ph+W0#o+Sj`D@7!9gn{q+PVk|+KfFzh5xi*QV_^EXoQY8J)>&K}c2oXR2yiKXmeg(ks-1aXO!Bn%-?K;D zWv+fir>Te4$l0!VbINCX*a@@wFj8D0p;r4N!GyOwMkx6f%xGDfJj7zDs(kZX*P3(s zN0n0of6KYIJ_>xC;D^_owaXH#j5d?Dz}R2&+mViU21X(GOkl@6ZIFT!lI5oSI^ zgUEE5S+gaz2oLI?{jFGBI}csG-!lBl7Lb=oHW5t>{@1&?ufa3Hq=a+aYOmW~^qdMj zX_cTj(SU)N#`5>XDRHKjcN9j#R95nZk_BA1TUHm4BNAN8(%zLFO57CbAsXh*v@np9 zRPj}2O}>}}tszw6U`{mS$?cGq8G$&8fc!-(ol!Pv{zR(Lh(0bxLY$nUmAZ8m(<&j0 z{s@#lsu57#xnDwlhIM-+DH6+U$;HcYdXu~M$u0aSvzhHa`J21<2-ew~Xx+HNT6v5? zA#KWF_uPMvDr$g0;>Erzholc38MZkGmWEI5&l7pD{A_KGf|9q(ip#I$FcWk(VXEXgI)x{-r4=}hX! zPA3Ma`oQMb!@pGczTJKBK_SGLscX4FsObEx0@jLUFhYO8S!P3MVUKi3H0U*kE)=WmVP z#mnUeOZw{tU7V2|d5&GEPGbX)!nQJ;Rhom|j5>&FbI=?S`?vdKh>vW~1yxj$p$=+S z)1vnIO{n^6se0oFL9ZoeJGDXi7-6NvPe15X8BASE9P}WWwzlpbQQ=qI@cqxd-@4Pg zVeZaWHspXRqmjg2tQ%dU{-vEwbw8js5W(WV-j~TKQ8)Y zDV5n1HCfcB^XV6aGK)+;Xx`4Egq`>B`5Bxs)=e{+jwKE9UYecU|4uovHfI zw+dgs_gQEqDW-GuH+$$qYW9vWxz+dq;Wrw?_(IH7&*J82lydrE=H5QMdbxEU*t@B; z1}vv9Zd0E3t8@9MfuwBnGiI6=1FSAE9|J~X{Clr&Wl>ilhHXY2uD9SdG#o%2Ik_R+ z_*7&OEVgv=YOXj;mfz@MSV{ZpYj+1KXX3*Y+-v{PME|o+W5<&`R__rtSg8m#P}^xQ zRGF@S6-262pN_g<=fPhNz|#4}aSJB8Mjc;~OFBcbNc+EA+`|GIkFv4vwoCXlHTY1n7msl6;8dDb z_gEx8-ho$c1+Cs|g>!a$5+=(fZBvRqOcpRWm|{1}@<{s)8@$*5OQN3pjzbq4C?I;r zcr{}&&~p^ERSZ9|S)@7pVGxLhU;1{vV3=IF{wAWiB;ZKB*JJje+hA*kCLmHmcBl2> z+DwPh-f5o>sNJbAMV!K7%GZh~-CeJ&BKeQEXh0PkJtxXmn{`(m=~BKdf+pEp6$PB# zc`AC$5lxnc;Ct=v)sE1ycdQuC_5`iE#D%cqNDHH}Wvg zaL`yJKx8x(p~RZ>eCGp0z*>go`p)9@T7|doGmF=Hy{TT4u59i6^{GAEM^Tlsr9G~p z@dnk`y|TSL@B2_(TK9_c;+Wm0FGv5GB&wc1s$-m`nl`9(VECWX{P{E+qeQyjmuX%8 z^7~}1FkR(IJ+q`Zju^Jhv;z&A0H<{isx}Un_*TCTjF_&{>_WkR z?CY}wzu-4zmzlVPKC36Whd8j@3YO;Y^RaQkZH{%KMCmx?jWgZ9sqV?mXR`@3u+br? zd4!;pMxpxc*rjK#Sy>Mlf~(f=_yS8_t@0kqu-*rHJQ1;DH}fS!#0yk!VHl(Ph2bGI zQ139IAqPD6S5cX68~wc}A>yiSWYyp5)^h(Vi~&;at?q@gKi^OiQZL?Jk`vc2MetN z>%c-QKj`^rr7-0f00*5iGW}2!lWEa^9AoxG+6~Vh=SW+bEMp+pp-E*~rQRpk$Q&EL z+^2_isYl|}a9#hV6jd3ZudUp(KLw6lg)`r~#M#ER{@#Gyv1r(nMg+pMg?-^o2&1Ee zG%4TMI6y3a8SF?s=dah3`aDQ)H*$&De;se!HEig&R%bWKw)U+x(c!j4vQ<7V5oc&) zkt0F`=2>QL$^!7CzxD0^lHRymQBHAA*IQ^m$k>p!6NZ9PD+e=Jpzbj{8WMxxn=plBQ&}p;XHDs80 z&ZNK&=I$i1d)1Fh=R&~rwAg^8;Y86k;f(oww!-jPB+->7j=o8an!TY^CkFq}+?oig zl!VUM*sd?pa+Nk29o0l%qF`2{bn9S!l?+NvfZ-C(>KuHX-{qvG5!V$=wKFaJFC^R~ zOyo7HHnyo(C)m^u9=D&{Bh;B2rlRIY8~S{b4E2AK`MB3jWIw-=m)dZE7ACohRDIq3 z0hE@NquKTfZ0DjTCh@hJG2|Q)p!P-k0V)aoiG{>fgr5bFBhNor@rRT9CuepSPtQSuGig({eO7+>;CurD=feMpWD}6f>cfX$*!aa1^J)%`s*EAtg4h*;mPLZO#P? ztpqc{#~mmmOs=Jj2#+Z}qa9soBK@?y5F2UJEIs?~7j-&>i#$TCX=ujY%Rfahye`Vv z8CrmA=be50rL4lT$ndp8Y_>4~2k~m3KkW9cHCG%?=(^t=@a0=eb>Qq_mG5reXIAgC zt|{(!2Bh*M?)PJ_GxAOrOoR}pzwO{9SeLUrtk*opRyS*PMeiJ(Cd?6ho*i5mSarKu zp3!v3w@~>($fUGRrZp|#Fi_#gJZfh7yiAS=lW)BmmdI^82B!PW%G!HhQ&8_JMs-%K z`@rp&yj_gEO|A(ALO13GqOsYB35gEW_XZ0g5^)skE=42yLqF40RuCPm`Ke)|aa@C& z=#OpaoU0b{U(f$JSDEP5D;)9Y`I&oA9QDb$ z73P7c+Fmr8QE+QZT6KJ(!-wP#*!80yp}gC}g@_nq7am&`=PKIwE=$zh2WY+m3cKfv z;4}qr;4V6i`@Hv!jTg~i)lNT!(Xc&5;O)XI(-@E546g(5{`6BaQF>_eM06yyI?FO zEWk3C{#NEri2oWr%)xScyIiC6s4Dh3_RCwt)>o?`cF<~?Vt5BxKn^O6<8DH=+9Pg!!T zOzAsl{#HPsBNgsM!_L_NsbA+2ZM&_XjeQRy+1zM}pfCItSqRc;Wy7c|)inCt)Q*A> z7p>qBGnf3lwtv}roGn_Sf~~fK^va&3;F0?AL&Ac$>j>=~L@u2qv1@R_OhX&gw8o$` z#DJ(muSah7G{lBLkJ`h4%ti8)FZtQbq};RwH)m-@i?+i*+iHwpLcVw5|W zeoopu*@Xqp$Zgj}kylkzY9#7Ojmq2E?oGg|6ux`#0>#{X(Q;-f(lZC_Pg`eeOf2zv zDwSF3>yfyEvZ=9t3kx9EQvy!lR~~0j8TM2XgE8SE1CQJ?Bnh`Tp&8o?VXtSlwYqbWN6zt^slE;kwp@;ubI@k=x8pz(lcUf> z(l$SNet`d8Rb2M>=Cy4uRFOe%e5yO*!WmlH5H4zk7;Fb$<%7Qnj8#s^@rl1nT%%>k zd?$q9W54&p?#kYSy49JsZ;l67Qr27C<}_WbQCRr}np1}G4I!Q6wDt{#_lx;$86?VJ zkXq}L29J~3R?P->PXoCW8fuI5W}bKaM3H69XL72!lVZrEkhsVj+J$eh zjLG{h;^!mnX_~JSvNFf0`q7BH4`-&{YWC*RlGGakVtHI2J-&LI39(ptLC!u{r z=E{^RqEWsXc)KsU$C~-0{8UnL9knyKKe|8P&=xd-!R4r z!HJiF=6+fdQa;LDfO>@5q#boEp;Xw_G0DBk!L>du4E4S8+vG4ENAFL3BpH7qeE+d5 zAt@s+U9Jr<&72v&T~7`8JI>a2T0=T;_HWt=aho_TKH=t--3E%XjfyS=SAry~9jO+6FVwDYUmWzbll3jFkIEwWb8<9MH zsr4+e^>Xaum4xbIXoLI|`*$sFtemHYq@6x9(mI@XYfZ#l=yjx7pZYAlOAqT``r5vS z*Vc9tA~)6zeVWVRtAzMy_YWx?p$Z=WX^o@jhVQ{+`4JX~AWA&$Lrh&lWaZ7i(FcK; z5aUHAiM2?FZ&6q`C}hO{KXYIWpe<8r+bK>^IY)ijvR^#1Ir&!?voY|)sri07clx{6 zZOFs69i=UR8Q}tZmbSGjW;@F$yS0B>BmPw!f17a##ja~tZI~<(&#-`}aon!B>GozL zFge$~@eXZeT71_+4K0lJF9BWG*sp*{{Nl&rO3t>AL3=BW*41j)QZNHY)zhNNy!A+H zcZWg9F|hTBZwUl{QNLA+2Kq}sz&)N5$;9@s`@C-SDjsWQO}HFqBR&wY+ONHPzex+$ z4?QAuWgK?0&VFTF?)~Q2Rs$SS;06pmBW_?JDT0IBF*V>Ok~jz)WWdck*o@-1v-m0} zjsgaH&cGaqh-GOmjARN<9bEx3_zRLieio^k{51LHL|f}&7|#K7!JPX}%h`^u-29I% z#i>H8qL#Bw$cMfTI>y>2+u8SGmZgIy`=Ru3Tx9s2Ts*bJ42aq~(Xjuv)^^zocG@Zp%tCV+Fu2deKV~2qy7k2)Q;GYqT0?8P)sxr2Pz}^gV$za{8AnU$xooR8vzpk)QbQNmXZW{f3=J^v- zJ6@H5&x4H-vVLpx528|$5iVW(;U7W%Ll^BqzBy+DbEHnjnuy9EMbjk_RA_2O;hrL< zlwEMlHj|ha_WJTVTV{t;$RzC)!94V5%9p@(kd3^Af8*Hzl%DfT&RY6!SVYIqR`U2W zn{LvlLQsB?;zk;2=hBJqZW*Iqhw514g}`-%BKwB*$eBr1wx(qHl0Eo0=@C1Vw*j=Q zH_Fb`FB{0z2E@_$qk0TM80YeQL;Q@!!O#@Wz z-S?x+q?Y;RpHQk|Lu4y8sba$LY|NU00>UDJUsFDLEzS=qUW9rQpYLqdkBgYNoYLIt zcOxg7eGMxv!O%PRpQP*TevG(6me0AFCBNz+dQt;$FPwWEQ0RIy!ZSTVve*>MZ9&)6 zfLKw2XzyYJT%L360C&fH+TbgzxNy+x%fD$_Y`zi~HF(zO6)Wq|Rlx`e`NMGT63uH? z$Lxv;_xRZ=$82y?IeB=(lfzB-po!Ex3R(R<&<5LBB2ZHXr4ngOBXz$3N7U;{JITPGV@n0L z6wOrLq*c{0``1a=UYSYSp6+c*E-D>PwTxlEpAQT{oe6QjUpfRd`U9RAxn}J15uKk_ z+C4;?wzf4?>Z7vyrT+6g1qzL$D=N!psb`%La`H79f#pZ_g{^J9y))(8BM^gfYZzrs&!zJwj(XOUw^=%fVj9Q)Y;f{ssu{b!aKJiCs+E9%d^QHzm*w3tkWZZVDMQGJ za^EKLd-dnx8z)buT%pU)UNrE>`Wt)sE=38&cYb-uI@ga0OMKu)e8>v5bIEY;K7K*R z#I#%!X1Ohq)uJ9M6jQN>&C&D65!-VraKO67m8v)bzR|HEDAL z%T1o2Y;8oyyFFh}8p?53=w{`n$wU~qp-le?Fk@WdO4S%T!<+$qW^Gw{Lcfb7>d8Fe zn_Q!JtU5w>j)D0VU9=Mn!fF6E#j ztY|}4*gOc&J-DE+7eqDF-Sj(b`iZGi#pB*QC7GTc4Y%h=e=JDFn{OEZ1E(m-R?n9z zFv-V&;^Y8>7fYMh*K0e-8xmR`*~w-jvA5hb;eYcj#U2R8J&uN?JeqeORyrFynOtOS;>fW77srULI@9r0)I+XAY)7o@t_kUSLy~`D z7EMKB-=~r!e+`AIkBXY0fSCoO6k(?Be8QDqiRB|sNBu0&d-);yyY=5`?{Xt8s-xo68K6^^#q zsqRvZU?fNjCi$Zap$LNa5aWwmsK;kh#vVE_yDN+j{>42*fRf%IdJ; z9G(cg=&>kU(_fo)Hg1{5vLQlMpAD9#6jZ_C2P$5tw!<+WEeV-4F~v$*gB?;N>>0ST zEC`QU0qQ1#34r=XHhQSv!dn}-d^fLK0Q7jf4}HA9%DJI->^6;hd{C)T4^90q9ilqD z)mpdX+1Trypfa-G=jmjDX0b&I46`vB5$JhCUIhAsy^O+g7Dl7%gsr!n z2!q4Z_hGER(YW#7*S}i+&G^%CchAU}&@G}rRCaP`A7^GPb#E8tWr=ey zkk<*NTp6J>0|YRCE0|g6`t_yc(TM_THW3hT#7*vyYxy_153ox=8jSUz8V1J#^y3Tx z+5Ajpa?vT&E~7LKS)7mVZ3nyKuoK+SEJXk4U0*)7Yb^x>*wWxcgDYU64?~+=P5ZZJ z3{=|aiz3#!n34V2LIx{heU&!`Y+C9TJWZLmX`cfAiiF@UjyYgj8AJLi_?`WNxDUpt zt2(npsD^)yR`o0mQI?myD<2>`_hs)B)LGfMMWF0EdB>E$A zgm|joF}H!j5+cDV zX(De^F2BM&)61N2qRlKl8O{2gly|=eSzKl@@(+-R0Ty+JrmdOP?mv|Nv$nR8YB7q8 zYG(kwevUNdIN7QZt9!=93?-;8#@dYO%C5Ltoos?%j;lA?N|Kun{}B~4{bw<+iKuVSl*XQKc)XX*UGc+*Zr^)||B-@dfL zX4Wb(dS)Bo_`@$By;>x7O>KM%2E`%+W(usXO=ofF!kA?=N1fW{Wm}?763o4M*(~8W z`<`bBTI(Xl%eE+5Jy|_TtNY4MIR*ifSn1-!aIDWmI+o7TWV5L&oDX8;g%+pGdkh>y z62L*7M-XVv`d zys_%2n2Kc zU(y^0S|)(b=zqq0a`>eB=z5-wNeJ-82Om?lUrlh3-2_r-5VwbZi-ovCIUlr(xZZgB zYO4vIOT8e!qN+3mqvCUB1nDnrDy;UU8wK@ZnlF==E`vl^SND(a5*Ga1S@VtBpGnix z$hjymZ_B3yLVUeBuxehAH2S}sHqTvBnoW$1()vJqngn(Tr2JEgd}ywK8YC95^T;$V zBf`05I(Zt7-cM0)0aNojCFOLxxmt=sLkh*zBB#y);l*C`a)y%Nla4cC%`9E-z6M;@ z`J7K`O$puVH>c|2U)0<(E-%GiO1t;`t48Qli8Z&hc@#J=a%V2B5@rO<&;ILe3g!K= zn*peOvp_g#A#6ZbcHxJRlR%98=*F)Wy?k18tk7N$9MZ)3sy0NUxj~}`7h@xZ@n0TT z{1jopJ^gzdf0TCD?*2)yj^yM({A8;_%=h?Zq;I@-imP3ijK`QbvMVXEZ1DrHo+$#bS44dp_ZJDIZ&PVkCTPLnHfv^p%MZm=5HPUmLJ9;Y z4Lk`Aa&0(DHyh7WZ1Z4@ebg~1w>V>D0UCfAkk%G@9WcYBQbf?fc&k!sHG^b*K`bQY zY1;G~_9PQQ7FDWKNR`)n#jW}?Li=1+NlnUNwry?lf(&t(n`kYoyD8`wnwDL$B|Cf7 zqj$TH%DmsGO;FvxAr=r?JFfpaNyGt&W} zadR1Nz%}o&5C8|3=_f#So0G9#TxxtqFaev5TyGF)PrZkdj=zeiG9SK-GMEIFMzye+ zC!|ufHvbIj;>WiAXIwG~OiA5p92n}7Z+4xvNiQKIAKP@j*vq%t;5Cp6rk)3}$yAy& zo4c(w#|->Zm_(;5u(LufG0`nF`O{jZ2UEnFN%*4dtjCyzmziXL zT;#@#OpJZxd5WdZK9%(Y4n9G`R??q}rv(td0+RMSe#`0%i7iPjkg1T;?6GfQdD;{A(|TjSA*6OTT)74aa@TIvE!KiX5dXKI)>{dP<-Je2`M-3Ycf*gH zy;oekEw0K7Aif(@Eqh<_g2-ab;U;BgUC7j{OxiyYT>}+gsbA>X(8^II$nPQUp8TG3 zUknJ#t#|F+y3;!k(Rc?S|27UFZvvO0E0}w3#AVJ)i^9T%0;ySGZ7X?)nbqo!-n3U< zmp37S!P3euf8T{gSkjm6Uva{GPW)a;aG4un)wn;23SZt#O?)NwJDvAYdo$oD`7l$H zFL_Gnym=b$650a{{=Tp)YQLhFNY#jm?Q$V7Kdm_ zq4t?aF;_LxRZr5HzFLs)CMGa&qJ2WA5*(SW=zJ0%;}U4Ns|@LoLfk<)VCtLWpB6!M z6*Jf8(2(QkWi|Lw+V@ZQXp-$d&)-CD^5G>M30t_{x|C{bd3U`K0MIlhV$laZVg(H3xgKII6+m> zj%O$K$W8LP!%r%o_T0rhm6(*Wcf%imsqkoxBv zDoW5T{zgX7!2`$Gc`uHFKYzFt3ht|2c$BPb(2*@A7}8rG0dH)2nu*By$NwBG(l#O} zo;@6#tjAaOh{&%gN$F(rO?EE3FiYHQ@6=XlUmO~EqMtHfabZhFT38`hbg+dsEF!U) zQ%^|8#hx`c5fy9^ex=<^ zs2ps3{?o_n_S|BYg*cP&RK)LTT6dz*OqSv#79A1&BG?S$k!coHoU+eu2~fMjl`WoX zvFA>Yw;ayRo}{st0L^~gS>JN=D#I;l&as5~Ta)(X8YosU{&u3% z4(!6g#sSUf^ft;@(t05JLY2;9-Ql}i^33pD8YZ*sShGDSzVdbq5PRJrt%y~xCy3oa zF(_M4xP$AZ1tZGP2~Hk4B_2zy{97?({_g~}UKTkE;tz+E-{C!dk0JiIBv|cacWVLUDi4pK` z-)PK=>>E17)AsCFEWfeGU7(Vf^rly{UjJTj!MRqfLfyWrAqtx*S6=#BZVsAC9AjJ< zRSZ64@^J1SD3$_g5^H%BC!d~aiiA}Vr(QjoQ}STmc)_{!lT*xQ^8k2mq!NkT2>;G*P3<%D)s*nlkw#&?Yy8CgAAL`E{2h z=n|AJHaOg!0n9nmPTk917C+z?P{wMozte30CTRcocOvWnGo0`d4tIH;`S@U@D;E>E zRWrGHlJWAN_1~zKk2u_bUdnYt7V0v)5htQK(}Q%82CK!Jel*#-s`nDKt#XtD3IFCo zG_0!=Re@GQW`ZY%%H{FmO`RmO(8c3W+R0jT&ot>3|5%bij)7i-Z)sR1+v)fN$5e!$ zi*&Va>t^b&yTe{iqV?%@e1+IfHeMPn4YsuS^rYr!CCt0mv5Um70UfD% zSsp5%fn(C5*ADXayhma*x#mGc;81wZKGEJYVrZoA-=)%s4ZNx!iZ+11Au55ZjmyK? zH<6w!`L zQYn)!fy{(KN~~iwHoWB=Z-M(1XnDn?l1+X$9IjpH+;&E4&Cg^vP^!N;__Wo@0A8>9 z%gxne3tza=?p(Vj81QHQT`$)Rup7A#<^Q`us+qk;C~G?>w=g!N!TKm#*qRECqlp~_ zlJ;`9@O*H`QcDi_S>TW_n)JQ{e=USlpFd37!~*}n{B8gFp1=vV(11i`jru%?FPR;9 z?Z+bGPc=Y`9$Yx!+Isr0ec*|C>@Q0mJ9MdAPifRFjs@Afm4{>TGihvjSB^4uZYhya zBHkp?hT86)-}Xa^+k2ce_56xA>ue(j_MYS_5HHhxk6N@5*FJx`9vp8b^(4tZdGZp$ zD|+#0cp!bIS8{;i;6-(kS(2Cu4Y{V$4S@5rxdaU)e(!RviQ6Cq7!536Zes+;>=`d5lqua7jVWb12v=vA@t3y*kQng zs>SkuP6rzk%Asrd_`EF6EMuyba@ReIUi(wy(f7l3X4w8DgH)4y>)qMfahJ`st9+`q z9W&&jTFKpMBAorMLjthsfeIZLq}&m~JqG(3c&!*h$(wWKwwo{H4<0k(`pvvfQ$i?m zOs+HW%#IVcjPdANK}hEZqA>-$DCe2dJZCI>8D5Yf^>0fC!BGJC+z07!$ z{^2AePSLkImdR26FcLAv-rGd7?r&8q#R_?tG7)Dz2d-VcEc3_iivw%YQsgF~Gy8+& zZHgm9jfVG4R*1ZG&4*M6T9ODS&vwl~o48mCyH$w$EiA#bgQmCHBbrC%$drO2)-Ck? zsqnz9gv(!}fqaSDNxb%ECR1~T9IK<5+tqp>SrlnyhogIQ61>vqkm)+3kc0DP|m{xa>0t0d_x)o$^mG5-W zyA%;+?v-ga;mXJ~aEEr6RNY{6`NzM(rsj;p4F)n&h^2)}*cupctuEVneVchY^GD73 z07Unnu}bMpZRfSk%4odk*=ME^weX4o^tsJ;v`{`@>YtAV%8&$Y;*Vc$q#HAyvn7h= zR4dOPhMP&bGsG0BBxv_U_kouA{DDiA;jyWocL;UT{6PS4%PIm~2foxXMC!9or6V?G zBPn}?V7yGn1K%fS1vr)_;9=Ibq-5${3=baQ<@f~reU)tM75@Sk3U=(aNT`l98T8VB^mE5`yoP+l<*^?buj*oy^YUfNj&$Jt6AI%7!PKPO4@jB{GC*7r0&odo3>;( zv&$kkEQNiia(|Q3_$Y)6+q5posaB#Ev6xiNGQUc-8075q1zJB{RD+rksw)N^^ z%UBGH;jEX*(6{@!u>&{f>{G8gwXUQ%4Q~#7n8e@42jMzX=DJ|JOSix3?Is3tH5lrH z!L$Slp}_E0Eu7HSn0Mj71Y}+TCj+$1Jm0eVk!0>JEw}YJwN=cefLsEFZzvsjb1*O% zaCkQfWlu9Ggh(B^F}4o`?q+42rkIJ-a;9pp-}=3M3%2)t#TqU~pQ>e-BXnx(7j}o4 z!vE;Y{6F?4Dogi;?qH~y|3fbX`7bSD4hoM?M(-!;K!6T@6#tZ~XENlHA8#eNDojYTSnd+Arv#Rm z8yx3|L?dvWc=`W7K_m;7^!xbT$H=?8<8f*%JsVA;CA+x#QY58cjzOMX#0e z4|!8v))aH@fQYX*(8aw`1nQFYCD8 z+8VZE77V#96l3rb8kNA4CPCHzoKb}yni26g9{OJJcYA=BD6M^bq?GnyT?&r3KDG*B zZQ<(4pDMq0oWRx~7W;D-1p5D|ded;I|M2bKK1nDl$ugC-i0tcFQe-cRWEo}8zOOU3 zqOy-=vJDcF>|3@$GWMNpVQkqM%#1M%_vicj9ryo#+)q552ae-&9oPFh&+~Og@UaN4 zjb@&d{2SUkIyl~0CBv18YdHEQ%F#l7Yx|Kv4J(hgkGaEz3*FJpI^vF>(RVALEP^4A zY3Fe}H(!mgcIV>~#nTg+(XP4M`b5B@I=uQjJu1eHnoA_xlnQIL7^@$*XN-8nmM!lO zZNhys^?AwrL=&&qwfS93eAjzsgR=$qEkUkzR|HC=nc}%2=6@zay8cdnn5mU4`|XI~ z6dl&jMhmAA3 z{$kDB;>-$e%zf=Te!IMa5~s^y0zl0i?hHjZ}U+0wGe? z_jEyqUyWC1E)y_ZSpuBx%^QW<+}y(i+}7>h#fP#)s!xSxR&@1ys1#qf`> zr@FLpp}JNdVixcFMT6>$0(8W1!}XQwt+<@B1@N2JA_UQvO?`fX1GE42d_!p2tH(+cFOoR9HnP(gM0!zAjw)~= zvYNZrzKA|am+3P|(csEjjGGe(mmV}+XHuPswWu1A%@~dvfE3_ty~nKxa%I`_gyQzgFQnWD*Lj5~v6X3zRonG3J0&$fkpciHRj5L{CQ2wH_}h_dU&(i+bmm8-8UdsmpOBZfQR%t| zZ&RNy1-YXzSub!4BJT3C^{)qydmE+OE+y+d7s|6?9ZVW!l|qZEH|BXICOM(FwH~ww<$>uW^(}iye z&wH=k@4fIuzJ+ELMx1X_%F3F#IKGsksp+_6{kF&>ch=Y7r9x_!vClWA`V$h~oJETJ zEUo5CK67+#l*?iXRbSp*@NP@_P+Ah*qR-ra{IX!tvC*1B4bq-|-LccNlm2lX($g;rNsnYh!GLn2dF zFXKHdrs%}>igKEye#^1R8&Y^V_ulZ+>c<#b1l`2ua!D2m^^MC#A3<-hQ?!G>yY|A= z93BI1W?c7DRZg{db1p(?O})*Rt6znvk#5q+4Hpb6Lnx66e5=l2@zoH4(v@&4MsC-W zOy;IS*D6}uFK#^<@P09K*NKT4V~vF^T^+Xv%X^>Drv3C9Vf+{B_RG;9LwkgDk3v%2 z>*xHOW?ifG4WCat4`v2aqu~i|KEJKH1$sca;3wlw<`KGTUw>F%7zp4i8P|>Y96Mrp zz{)zkASyYarxZjiVJ2WBn^tHN?1EMt_paY^vaC}d1pY~LvCMhqFrYjvWQ02EO|}); z$ke(F62vl)o^5~WL3NkpaCbhUS^MlBJC`;ao4zeI>&cj4@SR9R+{uLI#;f!cUCA7m zDWu&5BDt(uX@{yg3QSCcXM2i)**|bsHS5fh_@#F8T6~z?5no2Gyy681$chc_Le=!E zZreDla5e}z(bO+=KhDvCezHLH3m}sySADCd7g0_>A=t1o$Qk8FYZ_T^wSiZ zxn=Ix<5nAIfX7SNI2tc7RG#oR#yxZXfhMP%Ms)bra4uutTIifiV%T#3Lfpa`R0ReZAEPOC`hJBZPN z3uGp>*nU)a1%}~A20Q+ry4@V-(aqGsDjGoBaHbPS)+}B2xY?T?Ao0PN(3|VwiJ)?@ zIXzm4SFPu%@}0i~c+$Un{zJ6g1?dH{SSh^Tot3j`xNUtU7gO2yBhu@i>+dq=++5YmEV%<#hr_@? zd=>u#(t60yuvsG|~v^3I%_B3<15eK8GKCMLMnweRRt|wwEX<^Y8`ApS!Ow7JIR27}5)*(@6qk8}x~s$&ZsLEazU7JqRc<<)2FJGv zQ?m#uvfa?-O$c3#W$9j=4v&fr?7bRlU$Ud@;8*YabGjA&-ko?!h|)m|9SIi4Ko4XYrG+&mfiEZQMq{|IPW-D-!N48%^9oTxal zm6H-*5Aii&=pnAFk<6a2N@}rW6adJ1n9V7YYSD9@Kccw^2ut2O4?GErk zYl`owA@`Mr-fDL%Lx+Eh?Z+Cl<|}gcjjZogHR$|Glxmug z#Ko)@`Pg8`?$1bpfOQ*l4-V!P4PG^c$%`N}ow|}o}Hd2eOxgoicE}wF+k9AQ( z0b_2q(y!t#a%5mVcr5^%s(5NYDy`-oWQ^4U&j}Hlw%5#|i_SPf;-uywNF&!ze}YiF8awUPfhOfs~0&OXg$<0p{;)8 zxt+vPh48HB0b144H67}V{2vy7cs^2ys%K@nBjj6J`)AW`F;JKzDa<`&W;!}Q6 ztTkOuSia)!>6gfAI(a~Z_#z*?sywX~Q@u9uM&UiY>Vs&5kIBOy zIpPZ?xh^Zda;{4qZ;~@D*0mH^v|M|m$bl`go6NYh-?-- zgRjT(;7@sv0Am#0+ZlCMi{3G*tO5`L?;gyX{&>ByPKqU>|M~YyDRR#ZJ(IA~cSm%A zBz1=#T9(QEgzHB^3%odTZ;`Fvz8Ptl*-+reu=awQS-`N`^^rg}+fVCCNm>|>s`pKs z$q8X*ZB9@Xd^jR0zgJN_SY*1bG;UM3Y&kl%MtjXeQ7c)|Q7!*45PAG-R?~RrzKTgw zv4fh+O2b)!#>rQ0(ZQTh{U)!oQ*{53s5$i8;kC(v=(9H_J($Ss!Fi|XdG~G0)vZkX ztl<*ueAKx8`>D%3(DimMPHJU`ACe+sb@76AMHe!r3~e(iIiNBo1yI|930=8m{jCdf_uJQ$uHHUoj#TcvrV@qBYEUe6=1$&$68K8?V8tI*R;U0>Uu}wX|!P zZhnCPuVID9G3a-uRk-HPNN@Sn0u8(U5m)#(@6J@yx^yXf0|D59i+7vh(4tWF);*_h zrAslQh`*m=PrsL6YRoSeH8$2dA%Etyl4V%%VV6Q(93r72_dh<2wlzo9+tuS4hQiQ? z#qm|`$!M%QMVOeK?kd81P|?%C@!V?nv-ZYnn`LA+xvJbQ#(T}`k64S3+uo7?e4vA& z&qy_03I}c4VW33CfUNnE+4D?yv{Q~u-3)fNf=}9sizn}HkW}@+_U>r4mp$W`?Cox) zH5n_1OOZmdv0AcHLG6fwun{TFRMh@XV^tr^L49*ji|=GMpl;p*W`n*pO*z1J)O|%M zV-%?v$8ra}(Z?oSh9oN zBmaOF9&~Q1n>-x-;c(q1p;ikVSOa>5dnx#44=Gn(_bTVb8||+H4X$r`U%wNNZ~khy za!>dhRoj)o71sw?x_jmZx4V)oL=roSBnNv~dC+%A`8ip`D#!Z?ej!=TbxRfz%yHNe zE$~*n^361Uj<9%yIM0PoSw(aGA3kbiTT_q@IkP+tnJpbxP@3|H?z}EhN*im-3+rDB zVv0E0EMUQIjbU*O?i0PeUw%&PB!-^ton^woIXKhYmvzSSzYMoK70&1dU8c4#k@$}I zX)(UfWs_}+QGY$%3^Tp97r(c?j~$PJ{~G!kLVcX48%)C$#?t=dfE4a+u|@(Co#+vj zvk_MR7_;cK>0aPs5GuVE@5(?o!aJ`)uu4l68cOg+K@QkhICwP%EWiHM z@vh>Rwe8ys;*=*}X`2DO;@tm0(ng+?Ir^)Z@_o-7IITyAB@ z4%Tz(GA&-%*Ex?4eM^VAsDT<@T*YK;O9`PIS1O6WZBxY=wr!9}YR{~zjYfXy2((2= z{3L(fkCW7K;KpbmN9}Z+57!GwS~r zx-bu=_|8(F>`m@bBwo+81|CCR3*ow=l~m9F6<06t2r2@dSZ6i3x8yyM_tk?cMLR8% zDC5u;Y2d;cYL9(=UIG-iQnnpbw+s|6x9v9Vpw*BM&610+gtYB0cudu>VI5?$b=Eo2uT}y zUUvspE}C{7u~?G*HEp-2?kJDXxu& zbidMjI!3O?PIay9qHXzm?uM$8r}8aXxTOqMzH6x2(r)0+L(E^3Rvnj2Ii+)tnh!(g z778>t06b8Wr+gRXudkxE>fKijL>~b#bFk&GhW04npD6^rI z(aVnTioPt=#^Z;Z=o9b_QXki;j)6e>1Dzj=^$Q;sha`b{yhu=)=bh8$2VvP|4&)TvFkHZ+?PnSA#rp?gm$zK3`4>jEjmcj_ z8^5nyJxRODU%#2a5>g3py)tmcWhViAT;Y^d(?M{=-y`Cdom9I-Rl4V_2*i2pvsF*= zGwarXB~F%HF+ku!x-FcyCy?QOD$;FH`^C(49b#<(xK}kPE>SsFWi!LFnFV}a1rB6R z@#TuFZkGgBUP^d;5&n|6Vr=@%k9}jFN!>Nv_1}evtnU&G2ISX=E3O@ZHcG*Sk7w6F zO?q!Oljbo$DOJZe6Yi_tZ;3n9G{7slb*Y)TimPDwZ`&3BH8hkjhLMxOT)XMonRLmG z%ZlRD@qGm(&$1mlV(N;S#SlxC2zUJ0(5c;dVy8LlRC#?T!-0i%Rovi+g%{6W@@C{s zn{Kt%KL(Jkas8@NgpRgBplpbHMP>f{`Mi3X6lMjnay5O_lAtjuW%78)mN|>|!1hoL z;yNBssFI~dkqQm;>+%KgR-1&a8_05-kXZHlHR>$eWI+58FTfD=u3IU>PNw$iI#`vy zx;FM;vgLY|eRagzr4V~+Mr&OSb*b71xE`F+-&TK|F2B+7CHr!SWNa5JEAe#w0ZX~0 zed~;zO$syDxoe2Q8t1~H-Lqv-c0Tp_@>8E&85=z-om9i+EDJS=P)@+XM`8z6aSXj_=vKn3W8~`)Y=+E)Socj*ra@R{L*i^BKfCuRizcX9Y50ch?-Q>UkiB zjTmVLRZ)YATie7K=;`Uv7p7ee7KIwu>Yci|XB@XCxPlG-*=U5_xh-&c>1A1edd)NZ z?PK&8+A?`kzT7JP zwb**kCzX^OS%=F*5~_e-z6({9#mhsd(qvr-aTxroG1<^3WL` zB(oXgSKO^DA%qF0phP9e&jUFR7C>J&lcverpME@8YtG2(#mV}P36y#KU(K=Ke4rmR z?d48XPXFjPyWHOBoKDw5k{5V^En(&hU!&1vI16F@DdZ$5+k3ZsW<;x{b<*Em`S!E+ zH~X~frQ~}Q5p!7c`UmFB+6<~1HhEihQ}UmWs!9#+2uN^I_Vo#IRD@8~U5nif4VOHc zuKsUNz&8MDXk8^&ErejE^mDF%2-o=CNd@g4udB%mOOeKq1Z&-+|D$;sk-|>o*UY z0&=*gwsKjrv2k$aobL&hTBpKL`LJo#L$TIo7;Zhkkuo9G25ScBY&o%A$sTsWGc=vh z9{M?-0@cLF+ZFbzc1}b?1Nq9(`$Jwzz8%IGWl&J8L+_GSlVkYF8Hjfsx;eJcg6-`K z*P8LxSj^a1v-@*Tq{eJtj>Xx+oB7|BGag zhNQsW=rta_ddPpvn&?E%2nq3HSt|ChaBvBxsK^Rwe>UW-#xvSvm?dG|^MigN>1>HJ%KIRcJuE^g`Y_BD zhi4DUnL*JXXl=)y#`|)w&QL*GxrO4zK^rw=2H<$(Q1{01CcyAI3ptu!V1M56o)>RWAVkH#HqsR#m(yNi(&?T3P(T-g)!^)25#IKn%xX^@L=kW=7W!{ zshG2#g)^>kUWH_hnY%TVZat0onz16h%;=tF)7qwRx|yGSpQNN6*?F`d5hJx@&CVT) zcTA3*D(AedG?YH(`q(mFdYY>0B7|{s%zjA5hB}v}53MY# zt05P*(-}Y(GBIrmoY8~*G;O9nNzP|tvrO~D>!`Zh*>ZaaXbzs1Wsm`3BHu8C-q1zx z;6|bzb!MC>pYiF$OVf{Ee?>>>T(Ea9E}GTkI%absXE$=z3tZTYi9}Ee9D+3-^FC%j z?Ja1DEyqW;;;Kh;OSW}292~2rTOm0qcQde@FS&MwivIz|NfFLA*JRi5w*ZohyfrH` zX)$}mSIwwsE}Kv2xjkH9EN&E6bQ)gtxg z?=zRtQp2M1iJ#FXR0%=kwq!%dbQuqd8U6forLb=Eckzwn2_*jm>Br@cIypLEHDf~F zU9aoYyf^XQu;)DZd%A|U%Oc+#y;w{qJY5n7v z0VtXuHk5LbA&lb%bY>UadEE zQ+LF#P6!-sa^$XbVm1|Y#mG(GUZ!%eZ+L_!H>xT*=ugLM!Sr$)^!4EXE);-Ag6`~e zF?HLCa3c7l&9-m?e1ZRqfy(iU-ybsv-y-U%Os%T7k<7B|gACXJO8|Heo6c1XtF8co zghac@O;N@rwNtoMX@3QxhKBo|bOW@HcI0>7$H;41R~@&=?N>^Q&#jTSsTMz=d=A8c zd@avk9trnr3Wiyt?S*DqtGVR&>H@u%3D(%#u!j3iCpyvcAtJi#mlFxdXnNHqa zYDdSLEzjcF>mN29|I3`=K;z!u)hiV*SKR!T-^eFaq33aAak6T*hJVE1a6d8ZOi1-u z+i*QRk|oGo2|uh6G`l&fWR{?m=;+bL*!9yzK4vo_!`E)_lDp@mS@6F*fqDCudqGEc zie4(=n0V#W>_xE5R_^hJ%KPuoqBYp^bF%lGSl24eX|}Z>KFgQb&{AsYpFXz3+QMxj z`9hqq&(6(KbJfuCi?e(T*ly|)DCg3FiK2Fqr{(lQ&%7OX2z63!KcpQL%>{Qam`3@r zP1)6rEh)c8di@-UF7z7ix!e9wHoeYen>g$4?yj`n1|N{H%2A<|#!ugi5Kz7_CAwxDcvoFLKp+ zIYrn`i~G)SJaA1)u8+V+F96nwhmBeAP4=f%fnp2X^V`a4bU{yfQ!Kh)c>I>_d4D#H zY}7v6$nP-h@+2y(5j}^5{>Btu^s3d~>tvnB{o=)nDq`{GUi;>h*@bms_(=sEcSrA4$V_WwHinpyp{(#fT zQ*;z3B=hp)*+4=5%ah{&!{2f~LFUo!Y_}_zBQLzs>0~`tFnlOUY1)4C+nCUE^9T_l z7ZrqlYYN6SzY1KHBcKc17CqXYHQob~Rn*8fc){aSY+T%WS8v<1YQOQwNc~@tCacpk zldXX+Cv7JSv#l?0zz_DL@OwI#cY?X_jZXv1S_(UjnuBDcS|mDUZCl<@1#K;L;@@(} z(;}+!O9NrOvct`@t<$n0YwYzbUL`vrp%o~9+AhNEFSnjYp8ZJKrUvSBKiDffF~I|- zrL3dLMk{7Ry&ObWEfiy=M30Ed3912DmV=c&iI2_dcnsYiL;VY&(H@m^x#M z7ml?P-`${fagiK*`#-}%kjkn@uf#ODCZoS5D7CF!{^+mwEJrJ;6L?}|N$Q@foJ^6DkS6|X7Ws}1iUlWVt$W!Xv{gFk)NuUA90<~oYia<|@VZK(gUJV? z!rv_O_)Mx>278h)!M+}$oY6srwX9nd+O{kOZ?em+!5h)s&o8Uluk_v))EK;vR@iq$ z^f!=}VuH=u7O#HYL7(ta;_j`bX#g2@U&_E%VWyiTopVVo5F&5t^Ew;=IC~b}zUBTv z9~yzk|E@dIqNd{+y=_;|DtDR}Q=23!jnqI|qH@TXrLS+73<|_ey@u z0QydgK@8m|aog!1pU>o%@J@dg@OIy;9fmdny4%C;tG?9}t_cV7wTyZUxTx1?k0wbd zFi2)z`mHcHsGIv!;~`!*FyJ)%}2uddW(@@TY8{Bp=qnO;GQ6m5BONvKmn+(63^wPi%2rH)WUgg6SiyXN}aN~M2XzA^cthriv5 z&73T+OqM(CZ8VYGH-`@RB=Csdh_G;fPggY)CA9n^t-aD|&4mfF`OCPDLm|PQz#pc+ z6k(B{%s;CWuU4@a_dG6dHx-pKA~yXq8tnHZYP~}-Fng)&+JPc3tAE+ZJ&Fc&7i-tzD)=0^-w?{*{yhp0CFXF@0L{ zqSdm8tS~%+Zz$q4N}Tvh7JGCI|7c$Ko|l*+5FTislBHRPbY3xEW@}h#|7muh6c4-LXO&Znfn<2+E?^o!YM^CBIW6i;mmjSlfVS@-d!gNB zkh|>#)>|O?6#B}RsrM2?H)yfg%)ee+uC(QS`1Gpv5i9DOJ@;$=@yV};sVb)8224TI zMdW=g%^pS4mz*gp+vM_b1E9n9e>a!5zJZz`ng2O=wCGg)*j`gT5A;`Q+n%nTT~j$~ zP~rQ?&WK4iq0j1zlbiqP+Cum<*Kkl5t6`m;Z->I!}X z;+FHTty{=AY)bxpck!KPH+FLHnyJNn(R8GjM;PbrEZ$66_sZkKx%5N1BGy*!DS&oe z=B~4;8%jeuBNRGcuhA8+O<9TX8&q(p2fnAgz)yIx>|tG*0HV8itakAeD^0#r*yO z6iaG4tyGwfia~S>!`j>rutB+BH~ly0f%+K0DW9k1(A66rYA5*5_X=LVt3r1t)#oW# z-`7f6;Ij6cNO(6(Hqg!?h?=X%cNZP&{wYvWTwU@0xu`{ZGR893RQ3Z~WB-t3e(TPK zus#`l$9o3fZgnd1aHPHN+?+jgJNegprjuLS%x9|rz(Lg#en!tx2VhwyX%`(pAz85C z!x~W%#Q~ z2KIfI41sb_YhjbbsH)o>M(W@WJJ&f=dUXECO(@W$Uz!F zhV;4X4~t;G{bqgF3_wAPuTOd#3sGK+e5`@ZOHROmd##P$#PYDn+7y0R+05<$dRrVi zFxHd&MsBUkgJ|wg@E~hdx}3BZJN0|>u0#VR7Ig{+qTX3IVy~)p`Pf8KrTNQ9`To0s zpYDJ4tWjn;b7iuSw2%&iqx z5arS2bWG1d>74)U3#M#8*w<~727Cdo@P6X{cZ9Ksuf=Y%-2C`!sk;fND?IH-A)zLX ztv!NVzKz&-y5`;QMF7q3Dr$2f*Ja4JihB>aL0g%g*L^4OUTEhvQ-c1E>9#Jb2*6Wy zw3RaZZoVc{Cz7vB0USsEtinaEp$Uj>&V&}cMD-w&J-m?x@66X6j~c-13&jXInyz!j zi8pWUifXrr!G8-N`*)y9EkPA)|3iv)s7vABlr?u(n4%<8I!Be_<$t(VoCQ%j5o<`5 zA;0fnvOoz=dzTLiV#PnwnrPjR|5F84EUv8Y3sLjzDL~f6$<9;=*)2{ADwu-5p_3$J zcSd0Z_akio6rz;=mLQl?Iu7FH}$1;gwFoRBZMyFztVH1B3Z=s6)6+Gc_73*fX4%@MY3&%Oo!>;jYv-(N(FKU#6ll4nB(@5dpBI zW|y$1q)r{<_;|}=VP+$X!{F!e$U!+c?pk`ZP%aA>o$YqxfeT||sbZOvc;ijhM@H!N zp8*#b25Ndm@ew7>CFJ?hfp6QhOSBIvR`OpH1&~DNlPFLw7h72o(4%&!Z}-f z$ojI!e^WATEb{>G79t_yIIBL{`*?CQ)}?Tz0PbSHKP?aFsa3Z6Rx*ND_1lyAZ$cK^ zrOZNQHJxZ#4g{AyKkRJirq=XTOIG#7Ft{Qrw;qGxDgLF7UO(+mr8A{>IFXt?bxZmR z*4%X|N$1w(cNyoH7{G;lGQM3rFsB70TBto?u~T!aXLup+lDg@OK--#BKaA7bQ)2 z^&LgH4B3=}G>k`Fx9{L6Jk+@M>OXC~30&k>K&YZvJ!m|H+;HV2sl~3eTfC)=5 z4YR2L?z?q-3CdOC3e@#~y>!pBS?1sAifXfYYGT@d2pdewKY7&5-NwgwSRf87R^l#a zkiR$U-U?e_|0Q|{>m1(7nN=VJdi9o-Y4A!>P(i8*FAZXKR%!lt5bg3V-+3r`7(a!5 zKq;h*sZz#DzQh>Uo>RNK0vq(p9CbYKla)~9@0oyQ{YH({FsYtmdB9jFZ46= z%qTqkywOJmjYJT7XoA{h6mbtMF}Kw9Xdv+qnm3uYBSb!Cc`8j_58-z5%{G_qw8x%J zhMv4Re{)9&9&*m1wRkt^^sRXKJBm@&a~-O?)OHQ?Hk6X5DyAq{5HAnS?a31r)*MjZSpWK@f2#LV;qQNca0Nd@qzP{+w3HKU*^zw%~ zGOmJApYhEXhXA%8CRLYM@d+%jVwW$D!YC@`O%BywPS#j1w*0lM!xG|t0_^9c`6&AS zp!$AfXpl$Q=@SewuV*`aLy|>*v3PyIR&(`e&S8(*fi1^Y&uaTx`KGhGTEhj7Fpa=d z`SSsH)b1%&qrFsEtjMB_n-tp79~%zBbKcq3%8eDIfX*?36t=S>(BC8G@SjL3L`cNx zOi|aoe&xah*~)luK#>r`8?K^YzpZRVPSDH`K%BmU7Vb&61-RdwO^2t)<;SV z*V(pJE-0XRD$dam^`ibKm}8?`if_hblD9eobfCsL+j#$~JULh;COTHV56}M-4jVt2 zpPdzfV@It7BDyCUwx&fk-^(rwqaKcZQx&!e83F&*=n^*=FtumBxh*Qm!XiyK^hAq9 zJ;P@zAEN>b&mOs*fqO-$vE#)Wb6a74@(YbB)|coYxx0fQi?kB zgGgJc_-;FCtM_tt{crj??rPcOw1_O9OdH0;p$TCWkdEfiyY749S3kM=kS6@%+I={< z%$lJXd(CAH6cROyX(GvX!PlB71(B<3i$X)cHXA9B`a zWSFk&5&y5A>vLI(JeU8iz$~rxHRhs)A zRJPjTef`mV-9%J#n&x7(aipoi^@aeOS5owfw_>07-W0=-mi!`r9F2Et+NWJ!6G;jF0G^ z`p@|~G_4?XBeq#D0gF&DE1Ucb_gdbDflZca{H`$71C0)}nd9=5w~NBWW^Q%wm<&A2 z)PuT})^I!Adr;e+od(c^34)(5jXxWNRio%W)6lEIS3fYx(%IQ+4YjE#AN|dS7?ic_ zlF`x_moz5v#;>8UXKc9X+aA{W=#U1$+gEQ1GQZaC);GSpa(3XT9%>8~W88H%NiAxdG3*aUrkk0Uu{TRoFO zOWKu(X)_w2^xWx&V8_X*lO%5%nE>5?Y07TEP=hRnI|KTQ zbYkUMS-X0^8I9?GB#}Hw(%W0-Klxt1^K0j6t8KSmHZpdR&(P0`fO{p&XZ;>L92Yix zri2k)cEA*_1yL;^zp_x=&L$@D2{aZy`vS05>FTGvyqJ5AcuRuc%0 z$s3}RUbfk(t*TUQ%-@^(B(YXc3qxAM19PS|%kVMLo5&S5P6wzUVf`-UmTW!?YW+f} zOYDz*foFv*>83PVmIPkz^`nsQ1-ZVg@(xlf#*&3f(v{S?u$>o{(t-*poOQcNQdYPy zfBAjeY2rnV)*6fYndhyfVmKoi&hTmHSiF4*N z!gnGOmBH)JLrHQ1F&tvz&!L&8xxu>)<&gcACAkrdC*n7Ow4?e^SG5sPJ;27_DQCMUWk*Eo z{7g(`o%dV$4@yDvyJ_nH6KB?nO8)PfeV-?y#}vqaxeQKxm)~N(;QiI$ge>neHwcsz zm7M-xqLohY0kw5uDo5dI*giJ~{N{hbIrOnYr7j-m1^5XeEFaVrNo(!&=RJqjR5n<5 zx^2P~ItRz+g9+1+)sUBPd$T-ASsTz;vdQ^5are-tlc`cM?v^9fB0qLEBsy+ za~NtaEtlnS7O86cfui(ssglW{g(LCL$K#N(vAMe0>7C(0!Re`84F8pP{0M$Yw&^GQ zvu)YAYZ4!zZ%s& zq|-nMsidd2GiJwhRYZBH7VBuj>c<_Cy(BL3n+<0hmZsiq49Iv;^AwXGFGr5hRkt@! zkC}ohf~HA3CKeiwM*$nMI!;=b3H?|f!Y zQIM>VOzfS%zRM`wVg(#hhC(3~2w3lRF$;O+({A_ZF#|}gq40ku+Ky+gw<-YZj98?1 z=5CYNQ?cfhYfqN7s6;R8S#L_s2kPwBGicaen^JUu3M^2Ac%^?>RC?W%WeJ_VfZoIi zp?>hb0SJ3(qGqF}Va0}FB`T4Z)hnr=GCy>it?-;Goi2xj{(=h9zrDP8!>-p#`XEs# zvg*e}j|8{%w%T>atYLh8P`1NFq&WNB15wwISI1vPE$V92r~c_59qAA2SN&+&C{($1 zFioj-o+OlGIpsMY1Y{4Pjk@ZoTbREZDobRpn@=xInA|AtvZgka2?z+;VuvA|_bX!> z;kZKPjxJcT6@vulyK%TQaDu(jllxo7i>qG`yuMl+bMxJ|CWPtRoRH0pMQkL?<`jd_ z&lR+!PkyudhxP&a2ffAtzSl60vFt*eD@z^xuNle$c`ky9TvbO*C#BRWex@^!neUgZ5pQMiX)q>p-mExHh&^;+H4*Py+dH?HN7{8I)JgR|s&+N|CP zaeBmygk*^%^Re@jDlR5~N7DGK?&fHZBT@2qDcJl6Q3+5&+tvHcnZMt$x4gV&8}ULl zoHb{zzH0B2NcnE0>j^%$%b-Rnvo@#M>v8>JeuCB14#NG9>SycUB354xH`s;NI}*e! z_!6`o%jXB(UEA-8+P&7g9D4rBuM`~XS>wR$CO6E4OTtGOF~p?4NBn_p6iV*frFRQY=M~IFA>BpF3)XBxBD08bbIL(YJgpkdCe$yGB9)Sj}>#G_yYaD-PlV%WBLP3 zaNujYbh5osK}HSYEx;IlWhXG8_lm;kP4&-=yk0IdDcYYYN2=Di zx1V6@A7;#I$Mvu++b8CvGqep zSlXf44=_m>E)u-0_{x9men%1DidVTS?fhpOEjjooQ(Hu2^WPw(#_&%2_Kb4}vPU6V zXp;w2#(9D9mB{e*Z%SSHZC67X#veP(pVD_6gU_Cp9DcLP>Cs4rS?xFw3`iOmg;jk@TyUh4)b=lTvTmCPnC)6jnf{8V$?tm5a5?klyJsJEjDGtG&YREjas@>RPPS<@c5E#BP>7 zHeEKADp=<)XTKSeh;$k3(O5IWXKSy;aqX=KzNNRCF_>Ww!9Ka|2AtaLT^dNNnDqYr zEp)J;LU$xI8NMmhMBU<@DI#tW@O&sg_FxwYIesA?vbry4h6@+uwT_MUD?tJT(5uWx z-5r?MPDXYen7EEl?1qlgZ}_&2tk&RsplM7?GtS7X<0Yprxf5xcz)RW5hq3#Je0|IA z1NN?1S{ZEG-CgB5O=}6g4z6~5+u2j4lJ{K10Ncr6UCyG61&S+?-ts2Fk_zuR8U>4j zu#a+vYMUAAty)L-p7bKiZMz&N0`;@Lfnem~#x0KcymmM1WOY9mG38Vq=>H+=+@qQB z~5J7_LKa5+}ywZ z$uZ%=hMa2w9BF8iYSJniK%BGv)*)*vC4_B2h zB5;Sr_n(*7sqPmMU!&iWETI|IUnuNSW#uf5ly=5~m!ZiG%!Q%_w9D?VIptXQ7OccK zXxegMTk>qvtq|g~1O$=Tm@@TOH5A<*Lul!=4&N$GZD#RetpvjW@7bZLS@#p0^uFXf z+xyt7pGUJMx&CG@X=aDNap^iEh^Fu0=Rj2?V&EUDtTD#MTYg!5U_){zC z(?av!z(#wBw>xXHK!W-=RTN}5+GrouW}3yL7shxF)9N5IDVlS+XDsKzmCXx3X2&+uOz*0Vi&j-4^^YwRH zE$P9bJiJ5dg8{?lHXfV)g~A@P7r3r|U$QF7F%HvY?$S4O)MOt(^14q4-HZw`Iivo~nzo{$~@5Rto; zrm`MuDEq-2Z8p3tk9@TJM9boI{+Cbfvuo*>+E^R$<*C*$AgJ25{sT5MzqPNgjh4Lx zns{MRVmMNSt6j!9m-44t7S-$g21h4z{Z2Sm!TG1YR*lH-qlr?=U7+j;XMlL6@p_R{ zof1tWyDKat58G%AA$IPib^DRI~q$xK@Ezz75Z0`QC=o5||RJKpOH4`A^vKeB&6YTUE6k~}|JaNZu}@94;pnyAgXliKFrxbZkx zMMqG9kX!D2(z`21%F#Z_uXrjcg*ezi2;OPfU&Yk5p0q5W&i=7t;NwV%QeZ z+t?+DRO9?&DsSCjSl}`iaLh|{5Jzt0yRS~&OdV4{b3pdoEYwqMj?W(0qBwrvL>r_} z)zGjZ%$e0D6*^=kl_(S;uNitD1KoVyu+C6~F#hA?==|RiA^VC}oFEGC%f32L5^3+C z$xLM7+g{lls54Wgh4-A1g9z&0Xc^_64uN32wzAziBJ7fItEW`>>*Xh`FW4TkIe0qc z$G7#UIwl(2O`V@|7diJu23I5V`-UlQz3i<6 z%X41;cnc2HDH)ShWMPI$+s}aK?e(HQiFScpc+8K@y3HpEbIZ~1V{@z@rrd^=mw#d0 z^x-)9E~Ew%X1G;d{e_RNuOOJ=Yjw0f$I$rCxeOp(dIr34jaQ0nn1#2zNwb>NbGWJ` zG;JCNk=mnNzacluzs!YbO;*|y7yCormvSfHeNZ5pU&$w0e9rb$WThxqjnq+xvuI-C zsAwkhQg>jGi_XC0UD#Z6UwV`?pHoG)%;d z3P1T{D=2jzyD)_`Qj81AF~JddJPvxZxFpZu$6Of4R`LO%)E!aBzJ69Vy*r55?OUjw z27Avf7yC<^W!!DvX+Gk}CUeJ#GJTAQ z*&|*iImuF!@q==>QLdm-DMfx#WQ=RRm$%kjmELN5ug$^Oa$@DF)9`1It|}7OW)}Q> zw9c#6xH&4WTFmoXIN$&ofKol;%kr-TcMf#EJib(oGiVwM2#p~sE}jTKPb|&RFzWrz zc`SQRoqHAk{G48js0ShU&GYA2GX^*!DvktST^Hs2y^w&-NxMIA@nK~K7`obg)FF<3Er_W#xje6OvOb!yvA3%BSRiEiwR(~MIzv?9r0^XO zgh1URJ8he(1^${^e*n*qQJdL_5pe!~73yJH7yS_TNIu{|3OClNGjMDx^LlAq@FLK0 zNHc0ig4xxPX0$?OR;eEL`^*Lo24#ZN#VL#7su-MN&^PPqF)1}GP9ul&+`%_BX#A{- z?jc_D$;n3BJqlod;^}1UMtOABh;xF(*1LU-NP$w~TLp7@XoL}IQTkeev}ZZOTZM5v zyW=NbJkDqpUJjmbo?`mF@bn(&Gw#XpHD+p&!1rQ-XW5GXw{W1H3U1jDa?N>+{GEEY zb<~6?tzT&wz=jMIJ0>+7Cx_0oZV4-VVN?hk(WP&jtFsl$Mh%!eZqEr3V+dt5rq8-~ zI&_7wQs`|QCNE)hb|o*)Xz$jCX$Z?y_A7NWrpqQgmY#QpuGF*4x<1KNp>^)CB|VFC zmQ2pPKUHX|dM!zYjzu6eKqT$%j-Q|T_$Jz z*nA7SO`1M$h9kYx6`+r@uy@aqXJOx%|E2g2Eg6Y#w`bZ!LOq!%#KO__gm*1{a_8>w zZ#TJ*miulQPzq1;)mlpsg?+Yo;2hZ(I0j8t4?-U0FaY=sRTfCJDgfS106~sY7i6=k zorFWRKv&Qu3%M0JiSQTdH7xw#~mxgZZi>0?!Q|U3t2L;>Z*Lb9Y3aOPqv&t z4wwYxtnmvVl(Rb{tv0(9gBAuG9?6@%aN9yo7&{3uO3ZPKS#NmSx+z@s5KE57xbXi*U;mmQSi^!?M5JZ{Xx10 zaIAIdziR0K%Nl7Eyco71w2JWX@3U||jFv$8R(h#)Je--j3Y&i~hI_tMeXv`a2~zSD z_(S;8Gd``3c~{-4PsE6l9O*K!A^Ia7e=oyi-Wt~~@Pi!=Uz>vy270SIXs4jsag7g2 zc>J`^aErKj_jyZ;eYV{idOHd?nm*<=GAtpyYx3yT7A; zdHM@8`1BFp;rxxph&tkS(qGfoM%(*S(DEGTiPX$H(WZI&TXL2z0^cI>8VFdGIDhHc-Ib$ zB(c6*&6R6-{@^7CR4oh8^Rq7}Pz$3Nz`yUsHwcNjErQ3yrU8djjZlwoGk#@R%=2j5@INRILkn9YfA~<#f<^%y&b}CG5oa} zNW5yq)Mi%f5*45-kIZwhYb7$;e{~!eg5hhK+Ps$qVHrH&82#?r&A76Wl5ymrkV8B@GN%~;X>MUhR8MVWz+%O6;Dd+enod51^xU_4ryp& z?I3v)E(f#fW`)hqi?@vSAL8PT5O3)F9WwhH$E6!MfNsVD%b{^zKJk|YcSA+HW`{fi zzT0aI3W1l3_ZOtMIvSLQlxbr2lPtYnB9DubHs-0X(0K802aoD2p?3};I^`9; z&E?qlnR~OfFXo&^rXa@VKRZGn-^ z-?wBBpW@>4%R?CgKAOSq?56K&RYId;8h2TNN@1Ec><1@-|8G<|qCW*`5iBmrOVue( z-4Byc_hbbWgniQuJDmg49qcjwWa0_q4@fGu)oGJ{o=^~0sT-yin$RZI{+7v&i|%6b z(7ms2DRmyL*dFI;udqYf|{F;ROj7(#D3Ue7dtFw_pEUuCf`Hju90Ua^3ZGOBMNALaA#UJTrk#!A**UYC3olE z0X7bL7k(NR$40x}r%!D0IQv*$r$ME>Jr;ZB1K=_j#KElK5qH4GU-enA!`3xDLI``{ zZ@LZ#&C=g@AM`UyDuuZc+q+bC6d5$JZNEdKDqAao;pf3-;hx?X{Z_pl=I1lmfeJb7 zM>weH^jIdgaP!6zAKPi~k`?W496}c z0(;w6ZUlU0spxofeJ}fDZy_u$IL}Dmf|4?E%mIXd17w%$Pycq%E{~>gfk_>JWBibG zKqgYNDOuNCRI9lxk|XmfcsH{`%|A!^rO8Qt>d)dR#()*)PElVC?JKbP7(lJ9O!(<~ zB+rX+a9`P}5=n|y(!iLZ{=cGVP>z;Y=?hYBvf)(yyAHotV4D^Dcz4jWmbUe;Ca*(t zPW6b2XE<>a$V`I}tyqpW)wQ6Qx*-Qn(-dUvA`Ri6v7y!d9Y63tEfrVs<<6@dE5anE zbke`e=_Jq9T}z`w7TIEVTcPvz6bBAmn|x!RHa+>`A0K(2*1)wv#ISjJFs-^-3pB7k zEJmyY^N_CF8Izb-1sN*MXU#{4=48@h9eQOG4NYUdfd1}x#sKgIX=+s$yE&awEg|)-SAS~(95cQ4&VxFdZhp^ zFOC)AUreSo;DA3<^l2wMbi~VVr9A#n5*=wVt?zdLkm{oIEnopC-gyJ`+;yg{! zr6iwujhUbh*dE2iO}5q?=OSPJRM6;~1!(=TrJukL7;dhjmDFv^nI2~pWguF9?8ljh zwqXPMn&N(f3{Jo8G@h)~t;@MjjM|uR-&ubaDbO9fl>Ptvek?8g&QNHZwrK{#wE-B@8FdE6_gt26uZZ+m`--$31fx5mo5IL@T zXp8sm5guk&gx+fTws6p7wnJOPQ|9S76*8#x471?gO2}X6gHopmMzpTB+zzva*#V-! z;|FqR00Pf|DNs9(Ua$u#B1mmCO%C+N?s<*CeNu0Jj>VJAc0JKq8Em}LX!FWvXeuANNZ;;(*P8MbW)eu?B#_2zK*#$!XSIdQ@J2F->Z6>Kv7D|GHg z4}Kww+#llexz_&Ca82_5%-cCS;Z^*+-elUFFj6A5W`)6MW-S7e2E3D-1>HPAmwxl`~rXN*+Mv+*V|Dut{I1W}8r-VM3TDy+Gii&t-SA{iCuQQrPm~u{>f%(vHQIygXmT7o;#d+2LhqJt zrW~eAmaQ{r-~ZRI3|H71Goh94r}h}c>8Ue$p1OrNtaa)x;ApCC=hL4X^Y7#-p%`#$ zZ;BR6jah~};pUslFns|@UWQp6KQ^Utoo2psZbz~9c0$KKJ*+_QL``P*DIOT%dUmDU z7nXG5ubyL{9F2*AwZ7|FhWb|R-61>zZlevZLg9uV&{=bFr1vmOanAnFRT zT@I%Z)hFm?>!v0pDerpM8uvINMy9-Muj7{@TlIOFMFueb+4S%Cv~!5R-Dxi9h*vOR ze^}zhE9PoTFrUNj~@lmrRY& zLFG?fpwOCk4^jtDs|tK~r&Z>3zvB}*I0XDwzRPVg!s0;YbxGUIlMgh#|FUHi~WP zMQ+DW>r$;NLy<$nexr7x10CAGI0o#j;G~u5%mTL;`H5)9?Z1=O+|bLNak=o!+He48 zjqzmm28T?(K^)*-SpV|!vzHfF%iD9kaL;!gk|vgnRAwnk0Yl;PY>Bb~5v^&DJq^LD z>qy&8tMt1!k~T&wBu>1_no-Q}H17xgajeW}iGg&igOTe?%RFiLXKK091=6eI;AIRz zr3jSuzok4ieaz5MktHazEXx$yNz zdga!kNMSl?YcR&+WD9sQ$2^#(%HLo+OK3eiI@?C6J>GdY(KMBFRgFnA4A=ZIfv%FN zhvhqa7^AztVMwMrH!cHZM1*>E}+rmn9~+4qRTVqtuAR zCC|G~$q_KK9n9l?D7IC+;E>@MX z;10rc&C^Sf^DSu;sudakYhpRK?uw5iX3ShsQr1E0lWY1Gv9EVa_oa1Imc50*h2>1BfCdg zI+nHB<5H#UI7|K6`E+OiVaX~$c;rWyIedOWe)TvlHSyfkhl;=j)YLx?OmcVap{aOZ zigae>U++CBOpz;UBe0yz$tlo!Fr2H;KX;@JA$J;%<#Cna9%{3&E2Z1 z)*bJbpgB2D`-gmOOxRkg8NBOqp4gc-8h8?ix2G(ZDa?-^6hZMc#V^nqZ@x_#>6b8&-%IgV^JGG zzbbVcj`P(*hfox!k;0qjvv49yxAYDrmh!FSdxhAwU=hz1`9o&b=L=Eji$KZglK7f; zcX18}@y~pht^?A%w^gWGpzeQRF(;zJ$LbSMw)COEvK`449|a0aW;+Y`7jxRaMdjzM z>r_!+BzAUrkXih1@!?8F5Rw>{a$t9n882ahEXYH4lwLq zP%KvN+IIl(P*M%HUszYGfIaAZ{|Yb}clRqsE8w85!J8?49%K=2Vu!57rZoP`YF<8& zSJ?#kQx4?!A=dgz(d@j-D?nWc*;xKX+4=NM%!<2DhnA}7ai_@9tRHl);L4fkqm|76 zcL440$fxequMKENoq2Y#?i6pLH8~KvX{ps@&V+f=w#lMs4r@$ zuM+T49x>a@J#--q9?(T6jTAMTBLQ3K^>i+YKOs6$rd-VrT$d%6N^K3wmnCw%uniA- z-_Lf%q*h;fZ|%9OIW1Z;06CGuq&jDf51w~oDX;ocV{7IS6&pxj&3DQCiMZ|F(cgwB z-+-bltoM3h!G3#elE9}}$h%ule!qWT8H`PzcaIvd#5Q=Y^innN`JAi+^|fGERCL4a zRIn*+q=r}CG>s|2Zn9EDKqz|a%jkwG8s>W<;8%V9xYn)M@K1?_ENq7Od{8+xR*m|8 zfis)r5A~7R`5-h!cZP@Da{#fSbXgwmJ`InHi76X5vypC>o@u)ldvJBir~Pg-aN6YS zg)+{sqw01VWxdjEPLd7-vr0@i!N-Fid7!RU@*irS;o3M@wEIQ^;(4T+n>c`lOx)|9 z^UUljj61kc&*d-KGdYg7f!;uIzU#Lz!G8gn`frX)+x7i-#~RDAT`ROT=P2Ef+{l`4 zn}DsQ4G^crVr})hneMf}>eLEw?7|}7(wE=O>g;L=HDPip%obeniPc7$*=Q2;wGd6( z+$2(0y+{944TiRbN|R+Qehp;5 zswV6t2}v3zOI!Xq(y^>u#z7ubMYotX*nQ6yc}9d_>IHBjg6boLctBy|7yt`@ujo+&1qvuXXIq`#4e=n?LrdN*4?C zc*vvP99Q2R+~eIRRd*0P^vHfZvo^Dq7XswjLfpL*ly8tfmzt5`**YNbYHrtl%d<6V zXC@6`Q{_8Tjr9nc5C)g&jQ>cCC|yQBipAIZUz|gK^gsJ|a?)F9nI?d;39`?2p!9Q@ zAG(@#kc@v!$O05e^LCR7zc3PlSF7vWT;Za=q!;!6Zb_%>LqD`&go(DVG&NSDP9-T4 zPitT2c7o5ExH(I9S#sa_qqirSuxj(WBgB8Ao(03*I8P+f~Ip6oT_MdEsrkk=#mZ;N`KT!jEG7j zltwr8Y>_`0OpSdoAPcxz0xt)?-xdbjpCpP>4D2wVk8VL<7n2L?7uQXTBa2ZDweG|n zjf+In49EPF|9#AC#bQ27g17JU`*@I(dH!co+52j3BtNLlJwJ)ge(zsD28Ez(2*UY? z=^ve&W;J+`np3H}@%_`Cb-go@_O9tU>fr*-KCq22zmg|>_nqTf&DZLpmg~ZvU+-V$ zcU-|xf@~#+E{l(Q2CI)OM1h8B=Ku3y33O`}-N8+6=SK<)vZlls6E%4R_8)48B%f2| z6HR#2N;$OIu9$;N(VsO79wgT_J1Wo~)(%6i%%+y~c={fgQs|o&C8~i3zIUGZ{p<^I z8vd@Sx^u{B-ZwRm3z_viwus_a5gAo*c_67SthiaQyIjrX$R}|erXy-iF!Anjvt2;b z4TZE{r!lfM0LmpvK~D8<6tdlnfjql8wB>dEVsCLI&aC24Ys0y-|9(x7G<|^HJyectIsBUoApY$}1@_*`RZ%>(K6mI~yV-ah z1ojs0(KOF2bF@v(X=ZY2{|CU34}d4d94Ch?Rn6e{$u!txp}(0U6K?>YO`~7^4}B)k zQr?fyOAwjRgo!{l@xSurHA)5OYZeSDl@+wRXfLyI+r%&HtMcH}17}16&FDo)KNrLf z>De^pQ%S8R>WT)K1oMA2P5;_iPx@If;}TV%UzQl7WX=s*-UXufisDdmMbod9SH@Q+ z+6)z29lJ?4M?V;trI*u^H*~0cjQQJhM=XD6AjyIq`I@fR$c<8PgXi;Uf*G~2U~+dL z=#m57jvi8Px-EF6mzL6-zBwmPn*@#vEwF11pX`r|E(rNER_RCb%x$~9f=qoZ5aRhg z7s--FtNc$B1ChvuO#p!C^u!XUf~a8;7<-TMI(Qw$6m|C=OTle;{-TlUuxe`BlTykz zorz72nbeFTQ^9r{i-3i1*IM6;O$?ojh`Mmf2aT0Kyl=?pxM;|?C9=ie-;-n>*|X@r zbpc9h15gu1P(=JKjjTX&mh#|!l7<}1xup&X2J(K;K3A4ZDx=ZF@D1}xk8Q^)7qBou z!0`b{pnZ<9H+`;J4|;rYE33m=(IluXsG zLZNcw@b@~;kld2y8AG6}&l?)OckfY(gUpsboL>%CRV0PtAzxGayO^rz`x#sN_Rj$w z?e0iZt;I~dL9kieGWfEJ-@qp122=XF>$0XYnE#m7wblQYlJUY*^tsl2X?UB>chD)W zU}rrtCVEAFD+7B%Dh0kLdZ&DPywM8610(`E5sdr!*-6_s5*$_4xtqWapK|bJY zc1}{gG-6Z6r`#_9AIjD{$`DZ1D2G;PUP+nBS;}GdlrR!?>xw_bg zSh;Us<4`*#2;x~dUFRxi@gKf&KkX5DHx4n@ z_g{wy{MVm8vB&y+Txdut>m%Ugc{%F|*}vrpruMb_%#=Pv(0}Mg5K-&Nn_tQ8ULfJx zb{ZyXyCMcqO>n-Fq-rM9?)S$cm94)`ku!F)zk!?-k&abl82Ayf@conYTJ~^l2b*=& zGcxu|==~RWAF#R;zjI|(^7`#3sjue6Voc7DEi6sX9nX4fR&?*9*ke!N4j$&si36W_ zj)t#f6uT$HVZ9nXAccXR4tEbC7eHvr3=LjyxDl>G?qysxoGIIVinP2EOrD2*L=lW@ zGvE$kVruGsBrwU5xi=^M+-Mahg(jS!Mo4qU-8JTUu`dE(3)cpl`(=R{`sR(BAB&_Y zB}oS@X+V%|Q$_6aXGH0Sg;68`nkkePmGAfG#Zrt0+k zSw(lPH_#4+Zgd`*>g7RwXgJK5M!1or&yLl6;VqF@f(+`?d%!QP$e!$=^5r~w@r$x1UANJ=;iM8x^D^vh#o(g^}+Sp zU%_nT97ZE`=SU%?=Oo{GzXz;tcKLYbuu4}8OxHz?q&(7g=`CpHdSKH+Z95s}Ib z;3@5xXsE16FUabS+9Q3oWmv-cDq&gqcU?O&W15dtcedRw3A(gL4mv?KCCR#Kxwl`4 zo=v)}|I^s2sS@&vsE3giv#fG!=(Y@VlqkB}xmVB_%bIIK0>I3zszc z7Ficm>)K7P7Eu+L5AwVU?nM_Ku;!x{mw;4){Xu^LDC|icwoe5_a>KgS#HFpFlap%6zE$d z-T(eREYWLAdG3Vj(elTr) zEBJfLBm4IM$hv5+wN#35P-^f#!iF~aJe%De8XM;^n*IB(=9LpI)80^25WSbV!&YpL z%4(F^H$A816aBI~M?6rwWy{Td1J%;x_|x|I7@Y>nJt9z2NPi6yi6}&-YM$rK<%VPO~fMFX{UtIjYW9; zMw@Y5&hT~qIi^0aUQdd=@q5;V?Dq6UR*FyEPhf`lnm&h>g3>hnt1Ii4$%# z;f~y*ePdbT!A3AUVa)kbH~?p8`1jjJGn2o|u>(5#JuM5&Pd5wJ)qi$vXuLC%JyNwF zvHV5*J6y2}fPYOSb)=wGPFK(NkG1?(V*}RSdU_Ul z%e~AnS1;ZYXAm=8yd2Eo<`ihH;~-N`p=oASPNN2cYDY)7Nq1g(8t+Aj77X#mv6a_+ zS+`#vhGZfcjEIT)=qvAz-GfJ&YjY`1SJH!EbC66mgy-vwdP&H#kSx4}d|h6E2Q*bM z@dQOPH!hq4g343;+8!(FSXB2058r{z-!(LJyn>bK(Cupn;@0W_)T^9Hf) z=jnAd3BU}EuWlvQeMl)F;^U242!FUUmhwp+)TMuYlYdg3Gr*?Q2%i=ALy-j`bYJIl zTADZOKNl=31N^i1Lp|QZ0Vw%FI5VAdX282{mPG&e29s91#*GPLl4ml3TpzTqe zkPOMAQ`}87{zUEcE%eo@T}tf(Eu~_XLJ}GtUC~=${mVu}%+p}KNwlj+P{nsUm_+Rd z+!xHo*TM%|j(i(o0V&k->wt^vb!v>Rp1YTk@Shsi1Uu05#w~Id)%GXpK@<#n(pC5F zY|YNRW^nb$d^ia@F*JV04Vnt8B;n9fJ%HTTbM2zL<8}YtgQf0@#i;8BC)Gg_hsO?Q zrW`>B5d(QU7qiKsCBFBgTQ;tOrXG{MRo3lSq!8=5Ahpw7BXZOgc#f83NWRi1fTx0= zTjfrhw!klD#TrmFoX{37bJs6srX7yynhpd8x_{bJabU~rS+<&?CW8P}4iGQwHIFIk zRJx=XdreFdwA+~iJ?w)5K&Nd17#c%TG2%mNUZ(|JBhU9=}JhL6N81qMPAkJ@9Kb{hN?j;wcZ zKjOaU4iLK|qVnDxZoDHsK5Gbq-M}JiHJvRq%Vxw83z{kW!NhPAKvU0`Lq$rvIsSd* zhQkBS+Li7MB$9*h-u=`(Xqj)V*{*(hB>O0;cqeeDA@j$*3t70EmR{TDKy^+~zVr$u z#vCp#OZ-ALNhNaLWdWb|$zlfYH2dQUCpV^NJ$Dp6NH;hkVRlnCUGsx% zXOyTW01u`0(>p3H3H46v-pgp~^3`x&pRsadLlhVIq;Zc2qE_#3$ouyXay#sQ+7g0V{L_=PamJ9uw7eedz& z;3GMgm_q)PcYpQ7tOETySw^`^=KFS8jgyx0^l>a!Hd3f%mF@baC^5@|x0rQc)P^}~ z`y>qqT>SR0$6M5W%5jxi6q)oWY-%aia`s53GVg4j+y8m6^rgTG_C@HO;TalsTRFpb zYHfxEnR>^z^Trj)ST*98CQ(iNiy0-yViu=CNM1^Txx&95-MGrZ?@P_}LXK=9V@4pQ zJB6@3o1I@VDWj^Tuy3IO$)Z(XRK zGhotXd5+D4!77-{Qp?*@-eFh4lh{Px%are-V%}jU?0Fb>yHWWb$RYvKQ#F`K^D;5{ zoCwsd9(-{{0m~X`=DBgxiG7M8+uxzP_gt%jQ4N{FQ?L4CQx3om^KHqcKc{E`N`!7E zv1#Y9(wdDw2Q5U#Z2yn!hKL$Hi^dOZOShi2x-@VDbv;s|)2e;oMaT@|u-AwehF$)z z!tYGwf@$5}TqNC-VEENC#W=`{sSTuhd_^$uPH>TR!<+KZ$mYA|*{b+v^0i}`_K)%_ zxpj;c_#TZ37jbD+C&#iR@U4Q;3BTBvq+dcX{e(cb;zJ`z*oUjfS75rM(*^A>9lDV+ z#KkXacTNgqB_Lu^8xB?4^Jz}5o9CtRuB-#Q=j>$~V+~!jL{}(Gz{B`jIz5$g5e4S( zl3TL(*5rOD?=%)0mCcUA8h6rtSH>x(<58Qbe_+PxRnAk3Xy>UB^f$zu>{h%6xk!%_ zwVWT-!9?4DQSSlK?rl5}g0Nt@*poxQBD88~P534$zULA5{b3!;$4@Sbt$L&sZR@~r zT5GJ4^o}Q8r3$+wL!L9<$IGUW#*#{xz5d?sqrvYWTRN1oz1`j=OVu)@tm6pev=Z3f zsFRo*t5VswLe7h|3l|HpPO%kg*P!?(@?=eAoGwcvKKo5*Au@dTXmSX*#@1GMG^j+j zK4Dp6&X|g`Z6po78CRaNtr?^#Kb_6Y%}%@rlG$D~)5ACKO|r@=eJazPBOKOkcJINCm~ zCOq-QyI<4W*B14`0PgfEJDW3w2$po%9>VUuKFE%45BGXW-&~pAlR|pX!A$nIWA42Q zeg*yV#j3Xv5JxM+P^j3HiQ+_Jg!`^WxlUmAEadp^)<+skNPd$U z9zu|UnOM_1o66s228~HhzhdQ*UQw4--fhwtEoL^HC0#21X6n0bW%)#F zrlS4hr0itosr_`DyNjeWw|)sqzvjFOGKy_cWJy$Vf7krrM6+A*#W=){O}cul*bqI_ zpoCWshUcN8v&#Yp>_LMEqzV5{4Qrn-rfRP`(&l!@eFAqYmn1D=3sxY4{wOa(CGbxP zx6$qG;>;l1U%mFz@$tX@+=2KyN$YzqB4aN~yANK|$X!wbX+q!$(!S<_koCT$^d!|l zDiVWe+WfsBq*ukWuO}kY4Th?4L6fLB7Rj}7^i74Tk#!$^(U`JUDjD6K6!LWBaz-$D zEht-<=@(u^>*!&$9bTLlE2;A;PlpmcoqODT)xzg z^Bf^szRerGp54~dmZefID%J>II(QU3_Yb!&Cl1Xgde1)k@Q%Rf6;AE=p(M9Tx|!Q5 z-LOAm*Zn8;_Vc?a>uyseCI!V?Awt~_9xa2A6T`JDUG2;}{Iy;(W43}jWqsP(1g)i! z?6dDE`ui24*kYJ>@&KKYlB0kCBr$u;Z&9Xxu>?U`)2MLMaCFbAOfnjO5w3?W~Foa21%j&Gj}00RCVde@y!$ zdLKQd_ljmSUeMq;e7a>aJ+u%^lUz)NkI=$KV7l6leYpeJr(2^7FYdB2!Jf4AYR}o2 zACQeFZKoP5Nf*KH*U-dq)KS4+lz=ZD+(HxBhpF=86UFi3z~GLk_t55cI?%TJ4zuL* zG}s2MxRsBp%L@8)xA^>h{NlK303nLU+sX?NOkB`8-tw^_J+n-S)0ca)jLOK}tAmn^ zL1QD1!xshakNmLW`CUYVT{W^?s`~zGClBO^TtQL{m{ud0TM6?2`8_m1a0KX)(MwLt zJCk7*ts5z&%d`7jR@ddHgOrkIktH2#}pSYZvHU%lDiGB@|gw*FKPXKXH1*Jdp;U4ksF9Ai;)bq z4@4@(m07I<`1CT9YX_JvdIh=#?OD$8LZ}sS-u#53zuuWf6Xtfdm%=y#W{TS%E(0JO z2p$3L8lPhN|JDab_9^N7Ow`ydnj|TP-Jo`_=UFYAeJh!%zV>BinU}h9NunM|maOi$ zjb6?A6Gi=w5`R`#oAai*gI7RCNvxo9rD>?mo)nE9F3=-8al%0vqLiEo^OfD9?xG8* zGh*@Z(G$9kQOanFsnnsl6s$J@exz#=R{wcr@ zdO^~2k=H3-QpRu{$VBL5wxPtR9odKHp0Rcz-#zS`P@iC%unD9PD&jKLnky!S19a!` z=qHxa_U2LNe;I^VE&$2=*a-->x)m{?@HJ2NTD=j6 zuaj|>`kKYbhF-@&X-vUlrQ=7H^YN@EyHE9F!ktqyYhXR*pWqz!+{VjIY# zw6Gt;uKfI+*X~5xiYzivNDMvSa%+Qc#`!jnnv3PRt-Zf~EmfnQkBLmH)dxlCF`jO^>WNQNSGvr4uGp%#2D)%0c#$+l$7_nGrfjW4*L1#JXDEed;eTO>8h>W6eQ!zP6);v~pjeVrb;6ObC}pyFJa%aqZvl)X@~# z^qM*e6t6RUt8R`OgHly)4Fqdnr)%BV4t#fM5&KY1R|Rh}*L-w=Mj0)g(NLDWXQ;#k3y-LJ$Ao5BV+N*C3e8eBY(WdYt<}ebDKA*&-wZcChT?-Y^_c5-BYJT}0!trKl%kQw@u@l~h=-n`3(;gB2 zm&UbKb{gKb397txbc9!kPl;8u^I89yw@w!xLstoQjm@%c*o{?glC3?iY0i+aYuD~n$w-VFQ+T~gnQQxiF>{zK{{UL+nxg#;Gk^pMuu{W1<5puGExqa9V zycdzGRMcM&>3#oZlW)%B@{^yOg8m8ep~P5BsayFuHDp}xH%pm9?U!m-RJlqCiSsY3 z+ZiVu{l0N-hD!kX&Fd_p)t!uNmq)3$OleTJkw0NozL)q5P;W3ugHU<*##VsUaO>JX z%P3P?6E3eVehlS77OHX<7%^9wq@ye&%?=In;uJb2G*&y4)1|(!qZO}QXp2)J zNC=eA;gyT0hq^g`FC(>$|Cro5v@0_7n_ zcDcbm0)oxYpKHo{SnpSs!@syC@!Z}Ny1)YGe+C~-ar)l1N=9gf9{R8XdBtOJQoPXi3 z%>cp2`TS_1A=~^DCfp|M!U6t?=SF4`Rawfrde+(a&!NS1qf%SGTi0=&jS9 zJMLkk`568WPv;rU_WSt#_DiW6X{)wKTdOEqBZ!E$irQ_J*fDEwF=LdX)F#y4)C{WB zUbS00W^F2B$4ac;`TZZ<4|8%(o+LS+>w1sZn~@_&O)Hb6?T`M*e-!M9YWfIR?-#|I zb}ecPZf?w``W^&JT`bLa1y7suRnJ`KFk4;uJVG;U+hm)a;9D?_`*El3-I;C-bU&J| zB=9YwQsA^mH()0X>2E&C=)1$=JPXTCWeQ3^3%~E=1a2suIlyL(A&|($l!2eOQ01ua zvz7N{fuymgvV8gWFl+jkS1i@H_s|mF|;%iKsI~R0txD)!L2b9mP!v!Y) zLWbY}JFESfc&=6U%|X$mWR{=H02{s6eDVoUy9NhkWfU(EX{|z#vtj45U|6NSo1uXJ z$n#dsv=3D$cuple`@!#m7c)7Bb{mAe5~mA$A&c!IW2=$j;lX0tI9Uwmjl=%4{amPz z(bR6{H@0JyP2!9L;OpFrCa1i&s8;fV%gOod4gaQCfMdt;Q^lesPQRDh zay!E&b!R+K6`PJ!|G4Y&1D!wW5OD~%SPlE(6_pcPF*VXsoL>AwS%pwYZ_V>5v$u7L z()_N%q*5oulH~6F&thu{ZG1I6zOS>zs_rME-lF{WqeSki=`=m|-EGjM`a3YxU2^d- zYlg2pMB~_S6fx7@r*%}ZTM#L_GDlh`4{;7%txrg9O-ky+>Dz3pYXCRoh$CGsTBG5S z;WO28SuAx2EmE{l;*qJk;cIF(Tv1hTejRkylcEK3g4Q&JX!xEFv?1=!g-!Hl?oOzB=mc0aP9{Ig^s~&+mWtvzK7E9QaAn z4LMScQ{r(=gXq>$*4nU2VEq=?Q8F)lCd57eY-U`nTo)eXqp#W)|Jm>Z(^2eRrpa3? z_B1Z&8Xp84)0q>pTK2rwFWK4mMIbr&MPE-U)u(k4esd!EsAHGHF^Ff8oHf*TAEQ3T z9O~z7yPxwFKGrrFX`8M`xIbdMoiZftj8q{CHuwLGkIUzCThjUmO($^!U>PPF3m?6_SJx;1*4}tVy&d?hc>S5O5Ax-Z z^w9Lpx&Gp+{wWIdkT%umE?kD%zwDgk;fWVw>dz2mQA%ObQ?4YxWYp`;Qksj8t%&bx zN&C^I3|a8Fc{c;yg;^!@m+{`LMxEi8H?IZzXrw*LHl+Z>b5ktjb^rY{Zab)~Io&?v z-$r9cIjN5?`{prEX=$lmwcxiE25?wWFsk5$niTsbJin~|Jqh;o=irQ&IxD^Q5a{b2KUQ}^A6r|t4Oi4{4E09~&&B_7 zr_ahITaYL+*J!hBE6EiT%pTYU{CgEPZ=+mIJ!M7%I<uUnQu!Y~|%qtCKB-*MvN z(fy-vmHXSo|+)-23gn;a@eW#sU01_TTx6EyXFzU)MehYkTLfw)xfJiD$a^HMz#% z3b^n5eo&|bQG=u0QxQ?Uk+I=B6LVrd*6*`9*D`IoLWPQ(|K1r1{U257-wFFu8R9!> zAx8aPYK_^nLpykNzEMbO8hg>dGak_%w<|EVDxri6c)r_uo>m)*hMR zwZS#r8%qKx>rU(yz(s*PF5)g0N`$cOrFF<5i>&)DY)zAh`bUqlwwpvq21GsrWJbm6A9?ac^jK zj!}L@&M%_%8#@-+_+qLnwK&_iQ7br3z%3deZOS^o@i{SIFh-TCZD6TGPPy=pnnNkw zW3t!atr3eEwD&!b@&3#y`JA2OCq-6LFZDl)Z~O5o&)n4T*#*2HqY;;V#W>LGzx!b@1M>c}|HkKI3O1yfma_l}OuYJTu{_`EI3`v922(utHh2qdZw}k_jP2c&s9jQe0J=j8c2~YT+i!o# z!eYTq=4j-I7nh`tYZty8mEJV`a(L)cCt5c3MefJp?LqrVF4j+I;W!*Z(~+>>bn;bP z21#yQpXhXKM8vpnQ^ty1?J zUe><*X}RvV+3Oq24qR?|eP?J$K2*(M3NJRH-<<|eV@EAg9BkEX`)sB4b-yaSi50`Y z0r98A2xMBx43kTP$T%rvI9db1s2(-V^XMU?K2qIVTZ(@d8UI^Y`d+gEFY-{ho(}9% zj^?8}BY3}ke|xRuZ}sPxUB5KqpH?($7L~Ab=98HN_L-H(eG;1z9Xlz|O;dZ9l%WSP zMHz#vaX+NSB6gubsWQ=`IB=jNa|io(ZW5m|y&H z5VM=K)sHgUeoa1wJd#hlYdneBvYA>EY-FcyWx6(UYWX^kD@5l)AI!kf7_-CkDDI)( ziOxtvb=j?}Qu5TzAH3%MIIqP~wWd!yNv(aZejG-`CLM(D$QYbm1-o34q#ZaMwP^{SgPZflh1 zy<3&2cw0C~GKWPP@4e$_UgZ>I`F20LVn^*LspI0Czk-f*Je;G@xmhtry;VkZZe70b z+3r3ohlpX)fRia2eLeA9bo&qWgw0JTmIjs1v*X zE5cUpQ*I<4_aEv z8B579W$_&Gp7!bN+=V6het*-PzYKl8m%N~~ePi`Q2fb7|SLNn;k+FEWv7h#0E!5HW z^y+Nw!bh3TIwQc~bkKzR*m8WW?EI{7GT(!3pTT;gx?g>0DIC`9xqf`Ftm>9LR41Us zg)i2=gRhR!p|=IOL}^bN7+SZz>5#vXl67t`wo{cB5BpAik_Xa3Q0b&*yZ{Xibs2iR z1RswvHV|b=)0_quuvu?6a-`(xz4U*F!j?*y?dxqv?{;p1uHNshaWlejqE?++%iC#o z6I<gR){1Ku5I0 zgwDQy#>-bj7o1F%uk~6{`ir|k!1O29gJ-h|!e7Dw!~)|4si(#laB~_fF;k6y8eV(> z$BfG4sfo=W%GpS+OUt~EtuuzRr#~ViTX~O}MH5i?H<*tp8T?mct>s~yr_P`MCEybN z1-l=pQEjZx84G2oEv`=qiqhepH4PjSMHyN7)>x#X7A3GsWzMgf*b(7LNys1JQqyYt z9kMN}3WiA0*2h-0v?@R{>8xJ$PgcRfWoo+zLx>%`Lxy6qlWGtDj77L#bbDON^2Hd2 zLYTz8DAKiR2-*vnxN^kCY)<-1EGx)giTt}^*oLj-NxX9*ZV1k)Hy8*pdfFrB_^i!p zYjUWb82mf!%Uzbasg3zPXtDg0+lJGzx8_yS-K(tH?m|c1K*MV;0Imzofr&NW*^dD_ z0R+;ymoQfoDS57L$6c{CQfC5~G491Qgi9V85#;bd7$3A8V9qR{eS3|lb?)h`OIV9z zZdUE^G($^*GMleU_7yo;rj1!k(Ol=4Q{@A@i-@qodA~ic8I7){X`r3jtWlh-d49a4 zOtOO$-Q=2k>n@^GOcT9zOg16}YD5cJXAGZut2D9mnCQ8&Etqnrv@6E%a!&=z-;tMblucJb7%45GGJ2Du$9a!@r^PYF3~u3WY2OskdU_s zJ|`!h&jZSJzmXrGdlCTssOKYekB<^1Sh)}}7G~LX!svO)J7Qqm3QIXGE--G{yOuXj$)yMY{0_kDPaN%yt4 zxEKF6yjfSnXSUYyq*(^6_4h`st^~0(29&u3sokW#@x)(*AY$m*jnV=9(Z1P~%dU`X1;nCV@eS|dT_Lpa)A_o&r$fk%E zY$A>lDQWwHismvQVt2LPJcPje>T^rA;|3lbK18AqQT5bhKAp&4SWAU%e&+Ji%1KgL z>|^Fk>Y^=AI`ASzsuN;`G}Lpx*hqXxxR_O#jiGQPs94EXQm2=9-U&K0gb@nmcwP%S z>|eK*=;I-+eBs|{RZV;*1k;zf$k+dI26X)!h%d2S6U>;QCExt5%ZeO4M4pv11(}2p zu60BTFzTL2leOC_18jQ;eKrmAPDM?|UcSu6ntY)^*Rc`ayqC zq_NVJd=`;yE1+fYchtT$q_Rw#4Vl1CM)o~yf)d~}OBo$iJX$DS-A-RYXVV7rZkkJ& z!{+Gaw2@6z;MCf?Bgjey+`q3h8hwGjh^~Y3a)Uh7IR5A#=S2CIW(Vcl;~GpH-x2E1 z-_GQm>v+vPcd2~dOPqkSA-B3TzA!nB>QIfYeGui~Mwp4jzVnoweK=G5dAHpFMx@-R zF{{N5!!r0@YAozG2pB$9-M+bK)6u!?>|-%(n^-kvBDW^yU3Hd@XuTi^oec<-^^>U& znBP@~Wz}*ne*efNZ+MpXK6oom-|=;JEGkEBXoY3SlCR7@=Ey%n=pGrjL+lY^A4n+i zn0KtYGdgKn2|HFlTf+yI227W*>~zkMFE-w95yu^<+>gv49)T(3q*(h;4k{!7@#NiP z5S?ZvDfF9f-`xw+8)b($2ivWR{dbW&JWhi0Q4AnlZo%`4DYO2Zp+5b@E!!@9m-BK| zGGqdj75u^P$?Ks-d}!dT-O6pZDnsxCr#EdEYbsH9NF&K3?P{A*znA+ReItNtX7Tnm zxv}u|zPrFe(d5AS-%`iYpEDbZ7mmDAf8@}9=^SHKj9UJlFKO?L7b>FrD<`r4EClm* zGSZ#VY~^#JZsoQiLT}z;?k0s7fNp>Nd5EymG)!*wP0InAjbdpA17>eH%%!POmairy z&{XzIo#pkzgAO)wL#5d=9U{ryK0rmecY?XR{sS8A>YqGA3BJn+>E8EU2$b>}=(Hl} zxU>l@>AbKk2bc|QI3x0vI8e2WsDjw%qsk5ra@A2{vaBH1Dv(doohkCypBfhJsNMHK z)Pa2_fNM@5gOP#>7V3U)5-O)lHFh25TO- zAW`UrO)YW4Lfo%3Wj}s~^s9?H7(ULe?LeScCn2zs_NRkLhJ1RK#I;hExL)iiP!fB3-h}5gj{bjMC4wcGQpAD?;Y4*NYc@Z z#0W5|Mj=+C6IE}UVL*EY#c%j+1R?mPXA(S_7B}>_WikUftz|^kCC4bcTz?V*Ra+#bn z;+q{l(TrXlg3r^i690*2QbLY&JQV=g(Nb#7>6?hvpzB&x^aJOzkT0zU*D|GtDD?^N z7gOiY$LUDxU5SSUHJOy&9(;hzWsMdOfxv^ejH)=79(;t6=e=ig-)GIny*f2cquKYG0t>>Q9IpNWAV?Z+^%4_V0C<{vP1$S}&tgnR7+sm&7* z()p`#({5PDu}{sdUmps9*aeXN#aWr?PCc6I>(p&xa!^IN>LobSQJb9{;y{}zl zwbh0ntsE1fC$~0Y+&wERDGyyl{z+=4ebhw77BssfzgY|2rEAu3)73|5UM1Y2uhR)Y zj6{fD!~=$c1rnWg;ogNLC9RFQrQSD)(WgE^)XysckG*xs4A1jJvj}P`YS5pMfa?PD z*ju8RwGfWsjSISx5Txs<$rHet%gCmQO8_V1jKYVPL@A7PTahdxAX3cqe zNkmseQKa(==;BseYg*Ow4vA4f2WEL45kS9_5jJO)inIvRBs>TK5Jj zZEAyg5Mr+NcPBJYv$-SnLWh5ztPmmZ%{KzlBb964Os#h$x=Z(h3j7o94AuYf-I`Ep z@H<6SS3`gEhY;{@{?%g3>lY@epPy)a6El2lie)uiXxW^(CBQhuPiE)qHF~>de<8HD zkNddQl%;dfH{+E<+{xS({NZPQu<<1wDcF6x&4Jcw&8?joNN(KM#D##4_J6B7dX!(h zQ3{Uc0r?AY_%7ctZWJ)E8m>}g!C3K!io^b3?2mmPvY)*{R&h7~6d8jjB7iX~+|Z63 zK5#GA^r(o-vG&a8MCUlq>|v*g*%?OwuXHaBr^NQtgkAk*272$3}Qtj7=Jm{@A-jZIC{MEa{ zrM4Tk&`+o4+LD85FU$s=zs8Dc%V*5wxKE+u;XbDsy`C!+wAQr)lj_r(=fqpnxyrhP zpH5@CX3OkN4`_ca#ka}<(*Gn{tEZ0Ka;}zZ+XiC%wyO;TM>e*ixg?S?;cO=3Tp@*9 z%R&cVcmQd5`Z~#F<_v8(s-kTjtqRu_s21?l9JaBC+w3pSQvKPF2dDkG?MZHW-~<^_ zkHXxJJ)_nEwj-6g4$1z-HR(WU3VNGrX{EBdnf_ z)RbcESO}x}J^k-+e5!KZ{m0S|VRFXdN?dI8W2iV4uyGxoA$J{nkDH~|x`wJSqP140%)*y? zTOgb1Erfcfl#@|^|6R%S>)XeS=lrXz z?YhsnI~u*2e z1q%_VHz>>RqIfU9e2EIAf!!sU%T{8q6c2=FKSgjea_K50wdOaO4oNM6hKY|d`g@p@ z1lsaVtnNaiD4MIpH0hQQek^qQA66t)eUj8TH1uoxjlMkMFN}VVrZZyP?iQK2L&_6c z=d_aTrfsVEwGeh{>6)E2+D(1_vJIuMnZEr*6g2}O0SB7OcRN!b&)PWfI^LrnT&J%w z+cGf=fm`*z449e^+|MOr&|Tbh(`v7kVI)YunaDj?Ok#ybtg}t+W3!Ev8_^7j6}nkf z7UzGyu98dDzJYhyEELxGyQZ})k^G=LGJ~GxO`{f69F}QEp_c9LB(I~*Im@nNzSj(y zb8xS2&%W%7fkVVP?aYKtZ)$T_N*%7zm*iz-7O5n`_XM2m0#d z6bzWJ)uPdw4WYT`;b>ywpG0FJM1Sng6*NChb)-vuj4k(Cka6&NT&6E4L6~)0^r*+Y zH=dSnG$+Jnety2~em7I&H1sN9zk~W5{Bj6Et6=|FVnCD7wdch+<*LU z_korJKbUha0`PKN;eROUT8tiD^fVJ}0{BlxGtEY*s^Ww56Ai>0=$QWOqqzuZ{*L8s z+=ZFYV<|^=W?@LyE6GDFGiS8Sol9V?K_%j_8R2OzBPGr*$^ z7_PMD0dOXgMa>J~TyF2EXLFX_NDKl%v)j0p#bsS(4S;puCsbPj{$mk_HlAC~A-+75 zdTxcjJG-AepxjA9T&_O%16j^^8cCc zDcI>V+%QJ$$S1P)P_O7%?Pu0~IY|Sj1yCX?Wgm*S-W6vF+(GoR`8y_Yc871RZBSe| zK78AjC#vl^<~i~}YYn49PNZqC4R-OP9))X7<$sI1p1Jy=^&ofqeM!{@>gaIc1iw!J{ zQ74=;A=cMNA(U&sk_+N)5)iJ@6$Vq|BW+#>VPiWh2ywB-NB-aIV57ZO)j%SZf->Kq zF;Nq8t@nRV2ZJadwLruEwWPx(=-KUB^c&H%%I+A#H2}tMr)6rtuM2ScG=zpU9aGmC z*qy~`L2ACWW7JfXE|2`KQ&E#J{nA@&0iOPzui}cnfJ{7DDJa~bHy3+KNxzOR%0nw9 zy^DS&W{W(#vM-K$d?dpgt-PWx0XvmoW*Csu?3T;^dHNALHQsQBj2+LEwD&C5rz$sS zcDd#~Zd#g%tv;`9g}*E>t^T;ccz+ObBl3QU zrR_44PFn``-6S%27C2osT?IM+3%Jo~`4JPt9+-hX*GX3A%s4FuWQu#GyYp(x_(=5K z+pa0+Xzkz`$`XIxn@dMBTMgj5LHPJl+#?3iMyRy?;r(KXt1&}c#+W8^%nRv6SVpVk ziVlCNGPTjXDAM}VU#8#+1cs}qYK0&2%DS~n4VfGdz?WDv-muF$On0*JdG|1;?*F{r z1fW1QfPTH06JmYBtR5fh6cQM$K#V$$5o##yN}edpN}!p<6VgrH=x(8P$a)_8`O&)` zqyVviyYJ&WKBf#c|GfmVPMUq=PbIluz8qOrY4?2fyMN8`vNG4EmBxR!7%B)OGX{AM zc|8SRS3AOA^vWI+Qd;jq-*IScsPRe1QGi^MMKiVk%j)EyBBW;A>fwdYMlC5T+tln6 zS5usY;LrUw8*I8g$;aN;*{CW-HQ>>P^Ufn|p@>*cI0y>Ce-~gxVyOl_mmcQ?wVi#p zusX9*sLcoCss>B0CaS9uD~j!}#ZAYokM>rFE>omOG}p>+?g4$AGPC z(VV1&*r2I!9!eiB=B4EbW{HJ1(g&E&mhJmiDl0%cxwy*+jx0LcxnUNXrXuw`Kl+k> za^#y}{YCOi>v&-yF?AHp<1OUfx}Ku-2mGmhAzqM_3t$t?(5TrNrzZtVv&Jk#+FAmf z%kyhy9>)0%;($40{GZNk1IG*v-JIBDzd~nZBVVp|M0Q6wDge8AyZ}tw(QDzj?4~}8 z-YJOY>+Ufs#*mSTU7s>@4Xx&e!LT0iKyT;}xlr!s<2Ns``bm8gG?J7t^+s=Sl@s8i zWT;OZ*f6MEm7{ptcGY9Ovtya}cJ57mKMf?FKT&(Lts>dA(r7f8W`=B^XmTl2xv&u% z!$nCmHR#*AiF%Ia$ZU;E`k*t4s`I@)Ov)pB>^;!7{cEZtzP;rnf5Q`8U5&Oq2LDLb zQ}dJv$B>~}b5CXd>i97}s_X|{jW4!WdgwxumVPl{3tNihD76CQf z_tWy~Zpt3q;yQ?hW$oW59oPE}C>7bUROb>3EiorKoCs!84~^7iPC%_U95HkA7dm#w z5^K3e>lpFao3Gd};9vy6*(ks(nmOy=ysZik0eqD`B?@rgQKj8M$CsUMxttX*rIg>Jq`KTxW!; zQ9KAUcYgC`8eXuiyc|K(TD{SC)9*NE2djF#s;^(S0a=KITaJj7uZhQ)Gt$Nyj2!lB zx4xTqNytWF7d}(hUX&Jl7a(?SX$CBFXMfa1yZfshI-*JeO7~(1;%WY_u{m1*nO+oK zbdY6XEC-*EO_QIiOmLHVn}rz=v2)sx5>*vW#mwhzdd(UE|9*FpgW6;+y_N}?vbgW{ z{S9h0LOyb5I`C;3X|2l(WqSst0S_Il_@X93XO^?M;X|93!FBF4R&6+;qH+@{6{~I^ zuug2Ok~~D+=&OkItE(RE^$)29T)rM40C2G^s|6+&M;XUq)Jt@<`czpjq?>VX2`ob;Zfyx}m%R;ehO6RKDqk^+m z-p7N}nhWP=O0rWDFMQC4QsEPJPN#>KCG2q*m;G2duhXE!c-}T&ghadtoF`}CnT~+p5Io3ebt3XH~UVz`3mR-2z^yp{M<{Db4 z7_uj^;MSZGi!e{%72{=9;a4f5yRXXUrYkeVAk6CWBw=gaWrw!f`ydbYV+AF1CEYG9 zrl}DSNc*1ez*Qcpm2KLd?<>QBY>cUQYbLt>wxb$+y`wcTvMV7ib&-f3l71VQA~Mp& zXs|3qA?C35}|Y5?;sooGo_~{{>aLCy55DL&l+nOSalu( z4&i=^d>acg5>_h?XVGe$uRoeT7DUwWv`2D>xo(EEnpF&`-!4de$-*oXj5!>k18%ps z7u@la|NA9hwg>x0-)=bB|7i~+DDj6$eZxhh(Am;r7GKugmg;`)Pc_x63B0`w#gcx^ z5-0p=JJObRPXOoBZVojVPrDGv^*-`4UDHKnmx77d=GTYX6-jEv58}HQ*U)f+6odgN zA+y9QqeX(+O4uUj&W`;{d~A4eWeii6-%;Md;&Ow^URHAsBmVuOCZ(C{zOxTydBPj} z*ZNbhU69kU9>4lG>WR-nhCVxO%Oy(j$tsa3J4c_M4U}>#S5?;WemD2O5vjtKxcvQ; z_Sa0|SwCm%Ds7o@|3<*u3tN&#B97>q4P4QZaTI;-vaM;tsPH|Za_yONuuy8A#g6<{ z=bH;+sK$5k(>2BH`A7LqjbZFxjdaVz_RGr$Has_({3(EF8n!y zR0VZ0l^yCI&Z<8(8+fz@%VhdH)3yWfN3*q5&*6pE_+xnhtx4{{p0xxmbNQjN=m7=m z4(^(+*IbGt;yxBS7BI+2|Iyi|vE0$S09vhqRnUCjZP`jNS4OdxL+2e42SLw-DTv0> zNCSA+V8+FRdJ*@)&2nkYXeJ?oeu_f)c)vejzRTKDIGa828tBx?HsJ8%YKqt8636=i zyTpXXBrgC0d(x*XHY!ds?qWI9P0-_21yisIZ8~tcAUP;!f>NBfz6_^gS0lJLL~)1^ z$hsxw`R^UXztSlqQ(YRzW+q)7(X1l@VhD?D(tZ?w1l`dCEdR=24?2jqO@Bnk{uD+sm zkW}$zhLM#hdW3AXLqc9!9lY~S*}bf&B&MjZ<%IG>O6x>@=+blkU zc8H&Z^{Qm>B3EP8Tdszb&*-OUo9xEdQivdGxd%6>pC&NXw<;OA7S(CV;}X(aGrPDz z0iz#oaD05~P#UeMRl-;?Mi0T2D)=z!^2w`{f9w#Mkw>I`J=D@LQeuUh+wcM}&HPDT zqnQV@<(-g(neHvMU|hVYZyW94&p?MTE*yMJZX`Z$)`bNo4lY^^FAJaqwZb}?L9!C_ zUp~U?Bi<55$)jY?Xyv;_ugs#j940n67rk#fS^Nu+kr+ri5!vHN-`4%Q+W>E6EpZ@; zZ@lgP&HT{Y{bjjXo=(PS8|9zfy@{jct;+CvBC!B1)F?dX)bo(0>?O&nEW|9Dx{;tN z_%ArcmxHqBK#RnyO=fn~tbW$)S8q+|J)UMtk2L9j>;2BJYGcCLFr)ST@3e&}hZ%w% zLN3&E^D**0beR))A#<8jgg4#r7P)*i>Q77n03DO)2pqJqGaPqUq84-p5w0WJ$m?}* zU$Jr|Io5x9HNns`K&PyN53a9c9*Zw;#(@8~F)37(Vra$N-L7QeT`ghzOEe`?cl7;! zVjEw@5Cm7WK$Lhng^sB1CZ!ydq;xb@zF~`+JM6g?C%xGm+3myrXZ!oq!ll6A+40Q8 zXpN;-W3#~&yb^kBiJ2;WG`N-`Y&-_RYM(FlYCk9|`tz;Y0#ZULpYf3&t!uWfVkLPY zeQ$%fL|pHV<)&Y_e_zu8mPyXguStJ&ZSP>4EC|YJN0Ol3HB!vV8_pz7PK8m|_DqY9 zEPa_x7$>XG0O+RPM05KTX}B8A*8GrF%0o0N;OE5*y28Y0>L{KJ~dTB?i0`>8KO;k(!v( z8zbjG79&>mIlz3Q8ogxLMgu!A@-Pa2YJmU3b*~WSV;T$&xFvej-0FSd+KWU@NbS;s zD?Q&*&5zaBFx^xR-y{OP`P&+2YV9xRvI=VRDaTP^#a))d`k#s(bJhAx+3DO!EvQu! zyRo>E@3CicLmdBJ^obk7F9=KTXliY`o+V~u)t;d99xs?Wk+LMF6?0iCPVte_7q8HT zgof(QMnV(7G$6*D*?QA-=le}tXcqc5-bCn?XTfgTG$%r%P#)qwy|(bI^9ppV*age|Ne3gS^{)iD?$nSu~*?tD7270`I%^wGTDlCwG#?A3( z-?&bJzcK}&&7U@eR)i;j7;N*ae2V52c$v8IIZE+sHB(8&hg6Qb5$yMu zyHx>z_HxtOwBzZ&DO3N$@{XUm!qT|vnk(xs~4y}II_))CX`h_4F z8EUCXN?IPTC>TNXQ5%Xy`^z_!i5Aw6ypWX+2a!gU84;nv2=WoqY`eDCQ&OFm_YH<>@f~UaPR4XAe zFUi^bg?U2|xiP#AyJHzRxtc7xckr#FS&Ckaja~jT#@fKR_0hK33x~&bi7?x9Ca3T6 z_8zwsB4DG57o8$thHN62RUefoM4|Usr>t@Zzc@3fY%<{rRUl$7K~MTnHH4Dj6u5d(coM7lGW51c15a8+ZG;eK=kq>^Q-s zW2+N22Be^tbLA>cpo6Zu4xxd$A#3wk+D+K?3*}(#0g>4PY)Hk*;k#d?^}YI^fvfvx z(Hb{=X~6s(?QE=c*Ca=AMs1C#<`b@?y6c&2W&6riF?1bj!Lq;l*Ba$ovb2A{w#@o!XThFxX?$E0-~?* z>1|vKzH8$x)lZ$2hDKQHQ0!{#DIHL2V0hty-kDt>WeDfs_W5~_@ILsf)LhGP1iv5G z_f(pbm~RnWW$Mu15>LBjT-B-0Ax%B=V1*3{nPiCt%Kj4BkpD2aOyu9q`8zyc+2Dtd zD1;bZnbiK5{x8}sUO^#Q!XrZAD^+j240JhMMFzt7K3N|gm-<2NKfjBQy>#ym%AMMX z9&$0Z4kLJX7dMCjL!lRno)J~LD0&7?o4VsFQ7G#16`eJ@{AE2>z2lw+4ZU|K*&)!e z7S2_e#NX>z28+>ToGjQ6U)@vCr^)O~RAF#KXD)XwN(x+)2j1pd=T&gg%-KzA6S|#R zV1d0WL!W0%8=FeW!&puWfGTcSJliqyKgxgX_aLR2SY12KsP>`fx76Zn_La9J_I(q% z!u*jr(8F=XVRTgaxLBUAc-wzXM=bGemdK{fG6;2dByQfvqUB$Oc%(xr@pJiV>wiSg z;rk0~ot>dRI=@@SfPR$`8iC_dEgiAt4AWl+{g21wOr~?~6?-4tAImLC2b%W@_8IIH znAAoBByMfwDa25|p}Ch7!uD(ZL)%Buz+SHW^Sm<71-a_O326ks#{B_4>>!yGJ=Z3} zXo$w(UJ*tyezV#aihOSSVgLF#Ie41vpDem#TK-4+bWi8R#RZBH-vNFN2C6D5%dM5# zlYns9{^798XlswnF{M(xSl_d3bt=yey<75E??o+xRr-G>121*9N-ll2h0R014ktCe zU&*edyb)~2Siz^i^L_P9#yQY%F~{R{el?v}tfbhXcs88^K=h&qAB3lx3Zq7aqi$IT zDu)lBT)mJ*pth^$2C5XqI%-f*_0bpEX=dTcDBKTfZq`m+H!ac%3#O)GMwAkA zP{lZe!|GCO#~8G&XUs@dwQs~$x{=4-4E9WRRI=on7N7ovvFGxAvP(#`3b%R3@j{!_ zh;dklYsHMHq~p5l%%}lms75EHKpO) zUjB$klscn6k6DUc5ZAL3)mJfF>9-7@(%!M%M86C1(b^#0#H{2f%bTbj+*({yc#>$Y zOU3@uhaJPfykbE+fDO4_7ZQ$>sHXbIz8D|DDON)59ICjl>BpZ%MsENTVxOD8i~j(;F`|&xn1uL94B8pZVroV_|g$yn$2mmsoZcWAf=& zZGrec+?Us5ptq}PJ9?qF4*fhH6{^;MUDW&B{3}t54Vg%mLW`WCjWHtUYAtLzD!Vel z?oWh&S@`AqtKsaV2sLb;m2#`JnbSVA+Uwj3XBE>AG6z%Y_`Fd16<3dEusgn_o5wF<%!oYF&+)TV19wzv6i;Vy}i@8!8R;K6#kknpK&kP`rKH z(XVO#-%^PGag-hcc512(R$+Mp=W@a;OkvI|WmW$Xbmg`|RNKhfuA}vpC+A;N@2AS| zeKJYl#5%2agt(Ex(Uz9^Rb~Lo-$8+#>3u@W@ln;|(^}tsFrOS}RwS3^&bbQ6RlsD_ zzzVhThNU8?(j&C3M&T6AjoBJ_<t+i{viuW>s-6*oTCnw!B3>$GB zZdk+#c3?I`1w7D#`6wc=1Js-W#ASag z`vpRucT~n&H?46mgT=Q1vyi~Lh}eXZDneQol&?z_p;+c3BKI?;H@VMiRFUQQvQSJ0 z-BP5k$y8+1AwOM!2@3bj&780IamOgg-}C385|#(!`5TqHkQbJ31%xn352P9$R9mVm z@)+6gLe7eN>!6cuy7qK=FdxQrJ^*S04)Mw{6uUIP6v5bxm5!aaJvsF$E9Xmu^q&|1 zZ{sPj@JN-vV$7`7#oRP7>W+;%dL((^wUGaE!tbtZ;iwSvTI_X~GgmIzqtj0Z2#T{N z1B=!YdOSTU%kkpN@2O7<6Pznojw7(sk%miwS?j9{ZGZD#ZFgW;^!po8?02Z|S|=29 zU~kHxrTd^X8()mZQ%w!IkwC5FOZGo5x&vEAD_fi0aXa+kYI zu`PKPV*^>@u--^7@1=ap7j40N(&zi3nleI1W7jR8Fv}3uUqFi}z7AFMF$FAA(?LK$ zw<9J9o(Cl7TIW5L`t>v2Zdq9jr9LEXKa3anh;y_X(9#eKGf|K1>|Ro3TOaMH_w9=U zwJ|*zz=*#yaVd%7KRlI?1>gDp{&(YY*krY@^};v^Lt?wX%+ebETaLW;k|}Ggx%CMI zgdKI9p7z5#3iwrz!jzFK6ng>2iKcnL22koLXq1~*7x~K6vW=t<7e&DTZC~EBchN2ywSlj`@%znr8#xw zx70G#$0PLTkDH5caM?rIvy*t^^_}m z8#yH0>%T0@6KqU|&>pr@naiiv`N?C`BSs!v(WqCZU^Ahav58y%nT;1%o6 zek6O+yEClG@5>4gX&4GiIxMw7ws?dEf2Yw zFv*fF!Rfc12YYou;|?)C*zQ$V*yZ1CX{QEQx;Uj@KREBqkHPzFa{ME-QvqrAydxLY z)Ne1o5%Lv_5F+mcN^7RIGraUZs3**R?w4V#b$DiiT#|*sT+?gt53FaN&bj1JZAbX=Ox}3Mast+63FAm58)BOdXamu0|r^ zmt&vYXPeHJaWKDw`g0qI)Ze=l_VQdf5_?s6BbS}8B9@tbSfaJo`9O^Ibk6x7d6tUg z68rS0tGRV`*$zwI)Dd^6GwF#{|GS-jnT%4$ORy^|zeiM0^Ni`Pei z2i+{EGy)(B*J&@iuCU{l0Ey9H_ZbR0Rjnr_zWHsn=}y`j@?P`)S|IM_`q`A9J!Zd> z4_<1;b3eUiSYD@dtYqDwyYrcoAW)XE<)FS`=xn?Qs-3K3?vSyzw(K@C}UK7j?*w^%1p)TZE$f^bY5#gRZQDY;mgNihAd=@e!-|;>e ze!8wjeZMNgBGO3m!202RjP1`4#oB_XBt;6CLzKf+@|t3AjUF)Y1g-kaATwCZ8{_`} z0$v@V;&du#2pvIeCfSM)L8QOcRY6SjKd$CM4?dpcpf`8U?0z3Tbt?}?_~4O#EIXFp zQ%kESuDgD9|0!AN6=T;S~w5jGTJ1%}Gz_D|@U6GypP)cIzkB@)A`|Q;xy4bLN08OlWmH3D@!1we`zzC+FMNm;JB&Q?RN$-5(wXuV@RiRJ^peS|v@ldwTTj{Oto*6_ zcqwdyWn{vO>vbrLC${6zhP^VPelp>YjP|5EV88wP-aE>a9ir(dpGP)rwCtbGU4tW9 zSV7mX`pJqXdXFq)FpLLsc+D7Zd`$Y2tfC}a*$^3uC-)t(o2&@H2U?M-HcQUrO7f4s z*{?F_vNuo5t@M(YKG7=umd=z5t#Q&gx(i=^l?l#SVa0ATz)ZW8#2J0?(+2P+Z%oo& z(fU-AQ=9r=K3@Xne@$jt5oB`8WG36T0?{NaJ%!)&&l0TR;~Jj9T=J8H&g60ahbH^A ztu5(Ky-roKq&?KDiqj_r(2Pu34JOff>8A7=z31VR^Wc-~bWT4v+;C%$rSvuML>G4Q z;J@hkd$hx}T|D_)-6@k8NPc=^2X!7=u_^Uv*B;Q&k^WCUvgspAhv_fyo`F^{uEAxl zvuFJHTlq&Ez_-82tQ_p<3)WV5;4i-C*}iX*z0tgFU@Hs{TKenO&7S>w zRSHdh-AWU7|H+Skv`Ik(}H_>yk$!4{m;Bi#8`53Ri> zD7l9>GDy)^#wYSictorE7qr}0);)*1OJ5GQTDC*JgAYEi_vLhuFNLNJfhRJ>hlN&X zR{zG{%7@|uU3Hgz7S5?Vz6UMW&>@Gu`GE)1m!m6hS*n#a~uyU3Ja1-F8eoik;cV zo_p@z?bqtR{uR|0pLz(UuGzEmWm0dX@YVb@dEnz92OU(ZzT7o-ll~$y;V+oLB4wP@ zXXwOlz_w)CxzW0zwLNxzYE2e~ykVc=BTFCcJiJuGTX=Z&X=c*uUm?BRq!q=c zQM`5rFiESNnTF}8WYX%nJAc-lk_$w9~nHEhmHX$fa{mkcdvnnnumhMh2Zb$0I1zP{OMUpjkAMh1^i>^+{Ah7v@bOf`lJRtQBOSjb6ItOlc4+CO zt5b#-`s$vPxjHVq;)8?3zhC$p%-XAr6G2lxdW?*5km_-cKlJd21-`NB6;xPL@6QCHu`jC32C8F31NTtFNqP5qOlIYQhcA>|4h~hO)!bn+cU zJVo#0q(JN_L2w2ed~yZ^Xz>e@cIs7vdIiesJM7&6$cl&?*R1JZ?;|5!`w)ZIMVBsK z+*eI4U%qteN#>z_Fi&Rr@F~GAz9&Al@WHdX1;Th|(~`-9rAwA{KH((*AZnox|Ll^y2Sk?WachYz`{ZQ`BpA!piYR;UG!Ok#Sd0Z)BE zXvBx1DZh3K2QsEVjjpHInZl+99PvqIBaO|Qq#dFupKGBz;)7?rz(k5~ zEge)ljZa3)hWrQYe?YHWQeIg!)m?UspXl5h1zWSR|K0iMia~MTKkce(hMRA>rMF$> zt+3FBtz`8Il&u5&ypFSSkb;jCIwp%u*3pl6KA7g7-_nizbO@J9ouPi=ocPnW<&P%eJ@tDBUk8D z-RuN?e%-n26@SXx$h9L_xL0aEoFaAW`d_V1I<9%kYzy2oq!40htd@e>Vu_RsIYE^SUbtuKv6 z4mMT#kIZQg@G7j-L3V$Wp?nWMfBDPH`h=82UuyN#>NZaEh7YXDpWy+IbmVYN-S|U` zzR{CkUObV@;TpcvR?<%Kub-%X-h)ALnw4JVW5^Mi@sYlQtw`v&r!1YNJ>oA50!sF> zb>-Aq=VDoG%7<^~FtD$daT=b{gwaBZhzYzI8TSo^jGImblg{7<5!=KF&$C@Jp8#{op5Bz z-7DuEr;pyrAbuYFd0IH4^*5y!jk`lV=2tFCe zSLZ_y=t=58$9?)PCruu>TQwyZ^z=O|sGjU!n-m1t)5H@K_hBeloI7`R-@x&VGfo{& zJ^7^mC5?P-WLB5clT1l{Y>Uiztxib7Q?Sk|5cZ>9L3T}&(skhznSzg0bR-zCxt4XC z{?*lB>3^4=Tq~T=nZ!rC5J(7q*&q8r2W`4d+m3$G#am>`piUiyvpVHN$GQ6%0Bygw zQ!sH&2gnzAY89QQoobi#UV#<53Gl0PX9o#-@r0HnZ~f9YeB@D<&dEn6hk%M~2OT(l zwG+CP@Z@iNprEb^BEpY>Ezh_6rlQB3Tizbm`)rzxYCnuFxx5?vY!9 zN$Iu*K-D(s(m>HGPy)l7+kn}VOe+8dj9$5}zQWVll_#E%LHyFCeUjXYH%~I{4PvrY zyG66?1s^pD=-_MA3qv+zFphut#C{DtJoO76ijdy~Lw(sSFM}P6jk}~|MiBGigIpR|f zAhe^zDe+_R69)6_x%N)eH=>pOdG74@(bHeenKf(bsr<=3=J2U<55r7U8eHVdYVnWN zw(tlaG$iuSmwU0}*njC$VoT%-n*$?d$tdz{mM7#$Nb&?^>eh* zaINrhU4Hnej~&I2<%?A1GbGpY8#}azn>fnrVB~_QJ~+NP4-V*(e%ZQ2R{WqLC2pz7 zsrWGR`Fqkgm(GhX<@zVu+ki54v-jX5pZ*UYIO_%cj|04Z8SgzD<7kpiy>%mOSKyYixOk9w%7UhzAd? zY^^tMpBDkWXFcsM}Gr z(D567#AAt})Eipyb$F80T?viy8A+`@w|rK5*`HDU?LfRVfZp z2khS`ukeB{{o)b7c#9p!zN7Q(C-%GM<4l?vr@66k=hgSTEd%-w5FWLP@rud~_ z{py!})l^>R%j&6HZ@s1C6TdSRi?niL30pjvEObrXi5F52yj)L;fADwNUmevpmBo+p z+AKa{;2L`Df&R>d;a@$IrQ-%OS|;oV;Y>^!)9R+%GK9NN3?% zUZqN1nUOC(@ZgD&r#43~T)2%VdDJZrKFET9vXW2zWDCt4WG=o6pYSri=WNiTJo(YZ zua!hr32`=6wj6$R7`f<6{pAEXe%CoLH03Kt7(No*2eT0$_hAFmTi2Vw*r!iysux{& z(K%kwa}=%QiT%KbQzsKzhK&1@XgkjFNayx!@ujwOK(QZn8}M&W zhdshPHlzL3GW+nrHi{28!AFu0K8~_OIv>Aer&G=oWdkGeBx zN&EL(^-AuSJ(ACpS+9B~$ku+w)lLG7ns9?v@f7RTMdy+rUHM=+ z^o?UT+-g%thTvBlz*k|5|N2EMGN-(J_E)mJ z+$)7}W>0LgNjrVI1^5k{r=RL=+I@8?gD*NL zKL`stlVE`#G$LCjNtH)ieu+(|Oa?@-lHY-+Ev-*6prvzmOTJ0pI{Nvn3_*+RK0Ji6aXcN! zOP6S#DzCJVhT<`pV+satt<^C566 zJt^0!>%aJv2W;pVCFqp?}!AC*e`7v8mM$%bIMpN?XifRkJ<)*gW|UZZ>H`)5C+)PCKRhXnmmx zDzPsgz*g}>HvHg|toU-dWY?bHWL5aWqipf8TgQ?e(Ic#2KxXvlkX)t5=sWVow+H{} zem?spq7@$Ed+@Yl-;=7vC^r*A-)^FEYiax)xhXe<2@?9C(E@T}MxO zIN`dye4H@@I($UzHSI;cehUZp$RsK6IvTL@>pp(nE6kK{KRwYoJ+oa{nY^(|PM^#d zRoe{C@r%_?@q{0?ArEZSuP(A_Bd$xOmtdbsGW?VsqJML}B|3*sWUbYNFE)7> zKP6w{dA6Uve$vmwxxe<>{FuEsJq+WYt!fohn=peH-D>aNR zOtPpO|LRjmVecAV3Lm~l{qAQ2@z^n*OFxWy|NskHueIcG+da z#@5%^cWUFt4gILescIi(Kd?h5G-FR}+_?L($F}xKGuL6jMj~HL1f`uyO(bRBGC z$F7q}9l<4SFYP0=f=}WV7~FT?eSN&*)pL2Y33=p2tN4&YGjxsw5mRY@6iUn;4u=)cQM!ikN>kBdkd+vuqmoIhv*ta%&6pUUgE419A)OIN?YaiSA>hR- z2%p|HK_EXGj?mwsIYtvJ21)|7+PpPSaHQ&N{GwNmQCVgDN_Z$|jR&2PR}Ktt7PL-4 zot&8R0$>T9;z_*@f9nV*gU)n7o@k`=iStSTgq|{?lYmYAS=zp#e^E_&c{y8kI1f&7 z9{4I=(r6=>ym2CVMM-(T^5aXwV}9f0=>aXTChBB#5ah!HeDLo)1C2~5MOV?w7_{c8 zM)I^=t=_^1AL^$QuMp^Po%>bpw%a!J)k=Hrv1iYZ$C9n+kV}1NrF*il55JUrzY8)PX=go zhhLj{qVEZga`M3k&7{cXZ~4$-v)Vj9@sDr!gHHmN;FSGC$X;~llwM%sskDvr*@66} zH?*9iSG39w(1A@l%B(QLSCtJu;RBugrcK}*Eq{A;$*UYzxG6)IWMX%vr@qndeVe-N z`T|s+Y;6O1t4#V{Q;$B@yvfj?w%O;whR^mg@#>xB_6G9%?7h#_;3rS|@go^f`l{J3 zE#QHR1e?g0!8cw(N5ObAz{DXRp2;O2-3A{z%W9|6IazHS3@fk6N$AoQn#u&{ z;8y-eJ=z2su*4I+l1WgCz9gUfg|k$8$A^vJP3jpOl0$yi4{q761u_1efrRjlyOA=(Rup#_>bTknbd<Mdw9Se4U9ZJ)(6ysf-}xIt@}ln>Kq@@Yy3v+F*b^4e2|f@v@f*ugZlZ>dFkJMbbYCIk2bI{Sd`Gg zBO1|rVgz-g6%6s10gU|NDc46{MttxH8#uV;mkzxyX0p%<`_fa&j01Upqur|Lyr=Hq zLk_lso;u-aDsu!UmtL?&4TucF8=85r$7D4 zaK{~Y^jGch_ z9eSfjayl<8{4FI`Y?b%(#0)tfClm3hEP613kNQj^N*+AQFR3fPX|J*A)SvUL&@VaI zPwA;-E_*KC3LlB>S~d6EEnEA-j>8W>v|UX*r!%Q!2;KAOAlsLYiB0000 Date: Thu, 4 Nov 2021 14:52:30 +0100 Subject: [PATCH 132/135] Delete screenshot Delete old screenshot --- screenshot.png | Bin 316699 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 screenshot.png diff --git a/screenshot.png b/screenshot.png deleted file mode 100644 index abdd38998e28609699e4a3f1a16c0a7388967295..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 316699 zcmeFZWmFv9wk}K(G`NKjpdkcFg1a^Z32wn%gS$)P8a%kWI|K;OxLa_S#wA$eG|uhp zz2CFnea`*v9pn3b$EZ~% zIen~_etIj`)W6yYvtIfMKW>KlG8eV>QityMezlRWXU?=do-c-{w>I!;{j_4zYun;c ztJEgrbwc%&c)UL!%a@D;r>)c&^|yK5Jzp>UWZ=whpgWnjC30>&)68u1LmY(>RYH&8}+!LTieZZCfr4|}t#)cHI;qB2I23qpNR*Zb?A32;vp%7zm$0bYcX@;Get zgwm;&zwQYX^uFhojHSYS!#-bUJ_U9@uvu=zy?$=+qLCzPEtswz!?nN((+*Cch!N4zjp+K@r(8y<|vlxkq#Q;Grdtx}wyfw!@ng$Ig zb{jot!Z*o|sV26|t)Mwej+7--EJhvh)+G(*M1#}bWbZfJ0Kkuu7Me&d^NgT(OG$q5 zj5?`aX1s&h`*T&%3Ohws7+39TK&UlN9VG7~a+lp}@sTIV<6LBBk!RVyb^9`4XUR}Qd)P8>!UZTy8 z_`PGmwMLn{4Go_r8>8h=H;vO8>nQ}tjXD>Ah>P@sn{U6!qybW&pa!6a_42%in*=jUeN5nXA-s+#M~j^*#h7 zB=;I>zDFs<0*YR-Wb`lU+jWsX2ZYSw6guIpOH{IFu%Aa~b&)b?{6IAC^$c^eT>8l{ z6q+r)MUfZxDuYBHK35rvy%{$k=i7HWKdm%yoNpUI%EQ52j&g|a-&kH9E+o#xbHO{L zQxdY)wH-?RX}b!5^&3tYR7u8hx$CxjKm1BzOTqCl#`C+mdu~5?S3Vd2LFxTPY5x=F zcgzlcL3@QNU7!&R8H;oPYADQUyRzJ9zj@qt2R+*!mTNXG^xsiWGUyJDIgB{GTa%pq z`#K&A6@|Giw8AUS6@TgWBr6kc{Ql$!E1vSijocXh<;-~`$VLQTy+I-@A-9+NGwAq2 z$tzkews1M?^djc%HY$YxfZGni`7`QkRtYO4dzE?OjZG@g61Z4=Mz{5}GZ+{0M&hU^ zI-8AtYMYI1&KgGb9^)HbyoAU!q0VRDR9lwFd7wQ@kGegw_V_MzFd~%4@GTB7opG*6 zp1can@yA;x{jlwKs^J~H4LSwV14?z-$*LQ4y*J=Zu`D1+3{wnu=q_;YreX@E&nEBJ zyzrrj3$BmLNRu_kL%aFxw17F3Yw*p^JK&akhwrmunWnKG-Doe8c`jd}LjZ>o_LMPH zdHuNRtw=EUQ6}gk_qXrShMa_dF)+dB8($af!TLMQ_YC0>{3F5#On&@3lLiojW*u_^ z{sPrD75}6tj?0*Elf(A6oH$blp3wDJ(;_s=%x|Y+t{vi%#tce@7|+8|gv-7mZaH9- zBi=?h&8>Hbpm_T7=6^9vm5P5agph3v?lOmco6Gx1N@?0E`2=x^Ze*sU+(S?s$E(>^ zf<}ia#ceiD;Xc*$ z3>7aQIhU_snV$UTginU|VWwZ5s;0P3)9&(*)W=n)$`Y^16_4}z8Y559#6h*5MzkxB zd)pTa2)|CSQ0{@BwM-a_XW4}uzcwx%0lo{|Z$=9u|JSmHqarg3=^l!a11&!rqWIhYg(F;6a9-Byc9H;AK+hU}9q?;M;dc4Ql*x3}8hf*l28*5h!gJnZ3jxmFoCpceBa}waS2vj5z5f(1)w}Ih=WE%Ra?w-61q|0Yp4?}v z_$4SY>S>u`!An{UWNR2IaUP*4Z6&Qzp$t_Gn2&xTyJd$n#|57jhec`(w`~;j6X$!& zi2`Y&^EZ2y+~pMe7e3I;UTDe;#;xpb>LTrkAxt8QGX!Jt;Iszwei2ys?bkB%lL?hm zJQG}^K!AiBraZ??+5c9iL$r0E1UfY_l>wcX%Xq%e%QWjhqWGQCxnr$#vCbdq!c8Ae z?)hd{rtQ0{qs?j`DpWr~#G&=gKU$ZUfW*bO`_L>3kFV#IBqdc}=P=_sP-*58N>6 z(b?#SrW}ZxMSbh_ez=`5r~%1v>_;MM1rK6k$kdZJivvkWzuyf1#<75aoi{U<8f+cq z{Uz94Lr%SVhU|^dVEp61dqVLWY#5 z7jX{IgYR?|6K$-7a1Ff~v^P~$D>Bc|+WI%?>dD$H-a=yUGLpuX6uq1rsve5_4%uEs zn_9>}^GS=NL%Yz==YvWq!R7aUDOP&95eT~)ivDu7nglg;rJx7P+iyu2_oe7Z_XS`J z+Nt(nEVW3W{Ydfob-Vld&R}cJS&Rg=O;JJsDuce(fHqBWq_@M+>(gLuOX(&rFltbD z3Z89H;)buFYp8s)xGzapP}Mj)Zum7leZ&?88}IaM(@NYkF-mKkq>s!z`HieMu^4nS ztiPs;9h>pA72Rw9Q5%b|7>@Qc;7?<#0efo#fMNL2v%009CW_ElVl? zVzzXbv9>>ACjphxyTr})d0@vgv29A7^Q1OOTC1aZmyH>5-&at|i9 z=ZbA07^ugNB9@I9@jt= zkFOW+9+r|0(u?vza7V(|Ngg~0vaK*yXKkMU@z%a!_Jk!LGzr}M@;A z^c|tb(@CLrPTIcQgYWEb)oa89E+)|K#mMr@yDO0g6>{Da@;jo121daiox4|@%S@N5 z+JY0e*hT?W9j+T-aE|mPU8AtxFQkVB-O}BSIFGl2`=)CzSjCSgN`^C79KnP%wMW~2-yMB_MQXuF4OjuaRfaw!j?Knn7*JAilKy=gz=2rJyb3sbFYZ+HeJ zV^Z&f7$ESkPo84V?@()#u&upVYtOuce87U_ft;eD6Rr6(K(ILMH{f6Q|L+Dm@&5yZ zkr9CS#AWSc(|K)3Mn)X-^*e{$f8hK7(No158XGnfe3x}IYy2uVjH#W}PD)Wj2sj*dbOgH??G?}h;~ zIA+Ywy>3JC&3cqfqL0*fb$uZ%5h~SC_bg1G)&S)rvN2tWdiL{JDX#Yr$l>H6<4HR+ zYxy)eOIu%>V>F81=&#CvUB{KQI}s=BJ-{R|A5{90_Q#Jf(D;PwR}%v3C6BL%VAs1@ zN7klGuJ+;|Ki*g#kO->58o7<#+_q};4QQfrLHC|7DdT<`vcyOuGpQ-^e#^4=^xWav z%ly9fs!^i+xF(OWy$EVwJ-kNr8jyI8vIoExvR}~#>X3o@55`(r{JmO4bkg;XAdX(W ztZ|aUL-fBCpK_pYAtKdf)BWJNKZl!O<*FtSP7Wkx>DY6z%pygc1}P;Uol9js2CvNbT{6) z#8y~_&A|t!c8jf@T^IHQoEEjF7AVMloePs@Iw#3?E*|D>OG469s!H7^Fh&&hexe(e z*7^d-65rRl?SG;2Uy%I;(|;@A;cN9hgFi?~||50#y{=uI;G8cq%!h_qmo&37D zUC@+q5~v;y>l1u4%EriPG-^c_ukzxby!KB@lKA{@$or=wc_{~5Q(D3)Aa#Mrp_QU~ zb&XV4f4~Gl7nKJnHU~5jvln_CnJOv`m0Ro^sW&f%*3?La$}A#l`O=1$+BpnFe7-<< zmBZrX7jBQdpOTUiNo$t&oi#CTCI;QJgMA5R zD|`Edv;#WEQQ3J~On>B}_#`#t+UdDCON%#-j>Ay^=N3xR353xUwiv#)+ZoD%yn{RAv!NT~4 zjxOze#;qU%36A`X{BP3d{0AHS3%;;bY54jUqTKE9RaY0CW$T)loqbk`lGSszE#|fk z;q$%#ha`yv8%b24>jXzBX)Q^_S0{5Qv9YjNnlaG7Mr_|)k12YR>v#iXs#>FQIFQ&y zj;CR0wT%FylpV=sfWs@~1K$CGKBM#uo~F?F!H?MFZ3PO&-EtQ#poFWGRx*uy3N$W+Idv=l=C9Qr>Y;Nb>=8T1?;Ndt^gR4KdEEbo=HD{j%1o*^0KUhT`oYecW2&kRf0c2||_j1n^J`GR_?SMMTzO?oO}61dz3 zs!e(z&us`TuPLm2*5fdEhhG-4CNpJyr`tQ@Ix&{ETOA%Ld7yxS#PsGV!sjQ{yn;U^ z01^ac)Z{A>I56tbr~t-QYx>njTY}q_6?sX9!$imhmO1ry!^_b&>aT@lx$A9rt_F~$ zN?v?{S(Z+%?yE|dU`%j?Qn`8&*B*7Z8hdJb`tJsl^jqxZjAdkGMbne&3mEh^P_t`h zZnES&gRm{G&&f$%X%EAS4l?_~+OYjo&xKQc>}H%c%@keb)kKO5JA7x+egWMFINmlj zmP864SXulEjcCla{lMGd?!mXB;9=&RxhU3h0j9O46$5Y18KeIs@DLVJ13v;_MTp#34wk4Z+{$o$Jdz@3!i z^uN&tOtwBz{E=$-uN0s6`(>jDP%yvme2!?b{=AiCUsq9)^Xi3@m5t58@9c|lGL4kp z6ynb(FBC5A!O+1QCMv1Wkk+YL5Ha`#fFFF3E@>Qq&g zD`zB**6+mWIsuG=_<_0!yOI&EyUyI!RNPK*I7MdT>5^Izk$!HBO@*ePxh~(=ED4zY zgkC%UONIXtM>WUwK1n#F1P>cIAxQQl=y9c?s5!3loTM=gdPBjTsGQ2ppTY+r?DHB zX^;rSx@K7+e)5D^K6!rGj40hldVvnR`{X#SiEXXa#sn6pJ8LSdu-BE|y=`NAi&n35 zl$AOBauZ(e?V=}tmuq9I?Jr1}XuF%{ux$=x7+x>NX@#OKtbQm^5#Xj9%47I(qANkm za5-6H?x_&82jCo~evL>jE^)7cTyR;CBP6)BC!xz&Fb@7;zCv$C{`jE9MiP&B1w_Du3CYKGGA35mmvIkgS7O?jjrXXiPC&F4F>?&hsW;}=W z*wDK!{)AVb{;ogTXuoLzIP({YnV$xpkqBn6m^^MeMZ5Rk#4DQe3?B1{6uL(l1ib}6 zCwcOQ7#Sq0H+8vfzr@Fmrtl=r2nu=;uU})>#B!KImIpO(aNWzjDH#vA%*@ z%Z$yTSZU8p)oayB_^fD?x!*igKVnsdg%A7wYPrxuzrKE!K-r~qad~L4bm)Hr9{(bH z$vr@^axl*_hwF@8)G8v^;jhkfcoH=8?cxK69I0zBA=A4&1*xIfPv1?A5;EyaJ=XpC z1oRCJISH^PfmTSQS8RtuE^uST((!m-#ny}`49WxXes*MVe#kTnY)n~Lp!TlHJ9%j8 ze!e;mgLb|H_+keGJqO(H{|-u{mEMMQ>k?ZO1K#d;ADx*<^EdWQI)HkgFMNAJtvFLZ zfjRoGL@ZB@lA|~P{WmGf^xf?Q3L84F9MtDC1qOh7%V{PpOO2-Y=gw8s4$b;Lq2s3q z8g*AVb2t3S&@X~|{L}5Ka+ZBp(e=~8pd}|32#N9%d9a7>SE(!X4}Q-eY54>SQYGzG z<*T$_bGpt7Mo~wEYn{&6eLONne(FsRke8YzWfjbv0$Byto~AZtn)aaCP-DGU7igit z2T}8@+1cF(I;SdzcV`-J3J#+(m~{wO`IEjEe$>nQg{2L1`-T0v?#nQxERn_dQR@t0 z!-!R`Dr6ydsR~3^aJ;FsRJ_0?ABI&1!ns$|by3KRKHMl+m6m4ado6Ty(#|NQ_8!cU zoxB+1w$7~c)^`mlno?6Kc}ekkC1_fHx8kOqT_LRymXoOI;~L)AUi>%f(AIyll0pib zO zqFH%w;G?(pLLcE_>W}?qQR1h9@;7r;cc0cJcpUpHLAI-+wak)hl*xP!!+j1N)dXKYYkMxKrIf9dkvuwe-y2UDH^? z{b5V%vl@X8D{`%)KF%n(bp5RhnnlN7I=l+gcV729D-dVZ{Gt1L;j8o20pQ8w*y$zp zZ7~n|dw>^erUOG^OeUYq@m%ZB-7X!1@n`sr8d1wX%p zF_x>5mx6FShsnE%b}CY!f~9{0f~lJ2+|d~7?D+GU*VOz|&c_EO>%OrG;7+eA-XwXI z$?c|dwEbDZC&i!;KL8V546`I?bGG$dAnfUr=R?=FDRBJ5V6gZiGsp~05UaIkJ8d@jr%jt|Mx^l%kpCt5jNhQGq&&-gSA3p zk_>WH7zXC3;kMBY`ZRuQRm{d-sp0DnX51?zvu8jXc(>PVayPtG|^rN zdM#^--p0Rukl-XO=SjoSz+p5oDYORw>}js(;25jcKhCR-ziCiXmg=g>Elb;~q#Vw} zQx891aWlC;aEi9gvZky*YCYG^G;oqv-uCL9vxKo$WhS#M=v&ynmLr5P{#rtD%q0R^ z7B5uuB-v=$?2+9`^1s^yL^wJiM<57sjds1r;$2jtH-$a&che`zL~&%;SY3e=?r-~K zbh*i21eh|!Bf@4pQ+-0A+pV!$-b_Ctw+afL3ex8$X>#5@+;`Sv3*r>r zY#7??u(7QfqG>GlmPYQAq0XF*S@?MM&cj9ZeS#WePh{YJ*RG~yF>e>i{B}g_731g) zz7Ga>GH$_Bz;$cCZL^~l!HU1gYzZ3}I|LNP-_qG%9xVL;eaLE&7bqX;akBOIpAJ1q zE-xJd@7(%-6(=MtYcHv=5qb#y=CY>_ zZ9p=UhPK?n^Lm5XW#ThGD=dI0>9j9b(>6 zy0}2?B54#vBb9Q_d6+}O=pW^5fj(>Kyt_=K=bUdefECKBYBiAhZ9Aw}!Gun`_jS!A z@V07#dOfbu&%PR0<6S77-!vyEc|iKMAE|a?L0(6XOkI3V0JEDP^_uFJKl~d#$55Z2EmGn)uLo^ zXYn(vz)}-4@AC3^R+O~u0?XgTcb$_secI@N)GbTKA0|yc_gZpj==iz(hKt&(4ekU6 z+Os2ZU3=!TyITl}dy&aIXcZqk*R4QOHMe%g1?Sp5FG>$DzTuKX#d~}O8TO&3tDfSm zYkk~HF!$QNKWLd+bg)*lsQNi_Fb9l`+(rM85xO%KOw%_L->58n^o<4gF&88&KorqSptK|aSn1}nf#5gZ=SC(TyCIr3`{981=Y)nEoqXH%V62SfuW-llGQT!zkM5y) z8f;`*Z9SQ;HvcPr^v6rr^mM+2`ILhSE5`f9VnzF78#jZ8ut|Qjl|%5;YV4n03Q=}H zQSEB>Oz(oiSzskfa!Mmb*dd{%h;rsX(e!4aH7ADx_)5g~T@lS{v)?R7cVz#K|OYNGQ4sr1K=OO^JvDeGN6Wv)2zNSe z{>xu^Z_4tuT} zRi_8HN{%VXMky`QmgS@%5@SfMl%7iA+9DiB`t-rA|KF@vuF78_T!P#|0;Y`KPW6S& zt1)Q>pOe^@oloMW@xz1h|QiI0HbVj zTL|%G=e06loW9l(Jy9lR)pt zrk&7{$QqL=1M|$pd=YcYivVN()C+LKI%y$jU&J}uttoI3U?fuoQW!M?Z*ru}ey?+l z@u-5v^c8?AvO(fV!TXtZSx}uG=i@RanMHiHl)cg?hf(c+$May?T4FuyVBR&u9lc;Zv1vQ4*m0=Qum8w?r+!!D4C>M>eESRIJ*^>Gx!blxHJNeIlz1AW1vgCY` z@r}Vrnns-D+_on;p-o4}@d@ETezdf6z_RYa)65X5={oO8h}ig*2gGQ_u`C~&*_AYG zn(V~WX#5FQdQ6V+y9YWsk~@?p8XDtVb$RLHj$G~;qs96`J<=Hw9#kZHmBuXquj|1?8{qfti{t+|&M~G?r7sOS79{7=l zjiVulFpk|rmJK~3?17ZzLOn{&0;wg|YRh%2lO=gQchU$SJ)8t3)k*F8gM$s}Mb^vN zdift_n^~t-11V|VF2f&?7L4%dT)&-7&b++1foy7p{h-~N;qR8r*h`8E)34*21i?;{ zouFT+Id=D1a#pOHrYUK)3|cJ8k0Ajpm>6DKyheaZN`c|u?^}hZ_ZSGco%Zml$4+}Z z&wFMQdmvNwkBktd-3;h&aSQZ$<1RY84OJmfj0QDFphfccq-j!hE?Mz7S3ZzUc1! zrXhq?_l>e&d-(o-nEJZ|mQU;^f2&+bp3cCSO|E;ftgHXr{u7M5ZszEPzhN!jChLY` zX{x4(5RADS{7yU{BnwDUR>Mp)eHZ=4)1K~1sm*$N=QenMzpdDkhUj*v8e^ulZ*14D z_g$%b{l%zs5r|%?B6>M8N@^f1dRXF@r3JQg@-GUkr&UW254H zv>!Gkz~VkxDLZ_$>_HayYGBxotdsmxjn31B1h{{I0@)#?q3#FxaoFkj;VzK80CX@5 zH8VHwA9{O)Oux#;*4*e6x(<&I=28xcM{!42f-Y=t^W^9FK#8*y5XZ)iATB$5Z}-Du zX`elTAvweD%zd*Hwm0&Wl?|GUZW~8--3RkAD@=d~ zhDpXxqtaHZk0DyM7Q0pB ze+NliI_y##O@O*Rw(@izP;tGXxk0u0+vK)u_8JlwdXD8&7$NX(5{UXmD~Vsz==-o@ zTg~sx#BUA??&6sZuI8p~SuNSK+)miSb{T3GpwGgJN|C$0g9?*Gl%<_2BS>h(@#$sa zNN7G;&=UCxv?}Xi^p}=YH$0<(LT$4^0N^|T*LwPgL>$t^FwBYikTvZ?!e|(nAHGNE zPvLg$z#F8g`dya~3!+50aQ5>XJP7f~?Dh6IJv{Tf^}8Np79r>4^rkM_jCFK;HxTan zf6%|d&pJ=dhM|OWEM(xPpB(HPtK7^CRNUQTPu9EjVR!bYfiw143Y`GR)JbJsi|{Q1 z`QYX5`A6Yn_^u}Fz3n^ns-4tcEqz)hw!^{VXx21(foIA^@-Q=J7FB6up^L(jTjMxE zGTl$&`ZCB@B^A$1q&k8yv^`XxZMD^dNM4)rBF-fV%+BqY%y<0CYcfl{K!op?kniJH zk!ALxL3$gDh?&wTPaSJ5e$^|-ji>dkN+T-u+O}2{d$q_W8mx^D3^XaLwzh%;(O1xl ztD(v-o6fQ4fFc2Gz=!_+=#qDPD-nAZZhdI#k9}iB%&#ELE+coa37{?@C^uKCW$sWT zH2}=-17HC|*U{{96u!nf7_4`gsWF0nFk>QQf%nl`_C-WLI^7_FQP$ViBEP($tDS~# zrN&L6|8De#RK_^T3ws`4J5@C{zTq8BEdiE82d#Ne!d-SK|7&lqH500-$A?>30hT8L z-?>hVPM>=nk#9dy=jNd=iW_iS>_ZCZhjuyxX!1PkCiPQXI9j~Y*&ao}{dpX7%s;{w zua^fR+MilMy<^Y=bG_-KNa>TJuCt>T{Is68HpD@~IoqrJZ)N&jy3UUgT_+V80U1Lf z2LMj22n4_A0OH(8X_ktzvXRwajjoFHh1~qMhx@r40*X_c4F^vX%CK|DSjn82!8VB zSzBD9=X&;g17%3S+DfGpLwm|>;?dLoHI(l5cCP#|fO7ald~9)sG zB9TI)Qs0#8ZT})n`!T~tm3OFQD5m`_YX(ZRcMNjIzL)zNw^ZBnM$uAS+PW=Glj(^? z_6Pq?%opX=$?0kB7yw9E=C)`baG+V_TesiG`6hBwHzVaYcq!hsYmUd!-9;U=t<3(t zEZiY8%i~Zj=|TJeP@Tcs!e3eRgm7qNNI;$s!f*Nt0D6QpH2FMX5=4E59awstX=WSrUQoP01sKw6uA?VYleTB-Tm4 z61^0RZLZdZRN%rA&kVp^hurh|OP5}$&AgM?jK9Zro^@JU;Eqo~NE?j6JFCSY9Ns19 ztfFOC-RJ3$86c`(QxR4Zb$&d1gOXYNPG9=KH*}B0T=gSVusFqQ3t&mXnY7m?>I3d`4B5&LB?N4)$xKEB6+R%a;A9R{FB-awVRiZi=Y)w2^I63ov zCL;F1@|>`{=1=&YLV^;1u+AFIwaT*2j?)P+I#NNx!$)3+Kx=+T7=?xg1;vN#1DJ$L zT3WFFwwb#bJ>F`MLO%9dEpWKD*4rd?;=22RSOaItZ4F!Au9{JaoOL@USfzODhIL?aKk&UNA&^pavw zGJ$-fP1y)GI;9n~8%%a9Gt{U;6R!i1N8eIY6YZ!d@r5R=z3phfd~D@9vFRKdy0t(2 z<#o@E6CC8(7T{#N?ip}$5+5JW&)S6aH=thp`}(i^i4`XFd{Ebtr@+@au2?OJ{Jwh$ zpYw$8R$Fl0@@+78NJFEygB|#eJo_{6B4>w-(HwAo>tGY#|JbcSt?Nk?rf*BXHAr@~ z{|R7Fbadkw4WBfHJ|W-%{Ti_B6W;C{o$z^bVGoHugmf>lE92SH?K&8x=4*_Brlx>Q zzDu3;W+I_wKjV0=OnJ-^N&3`I#7hic5E2E!5iKsJwPxz}x)3Ci-u;H3aK#*MG@_ z_uhWcNK$xsN(i3YF*K+N0wHym0+XHLvD@J!;Lg|-axKZ5urQSO1Rr17X~BcX{sB6R zLqoV)_#x!gp08;)76tKfe}_Iv4IE=E0_@9s5Izliy{ z!Tnc#q~*TLW){c`nZOdR^3`p(2XlBP$0Lov^|O}4ku)=}hpF?Oy$$7}67#qejliH* z$iwjj5VcG62J^tB8`(g9Y^`{}NuBfctHi@2LWhS%C8bSt60YR)v-gvNmg>m`s#UD# zmzXFOFFam6cK_S}@Ep=pHDYFJL<5kwwi7TtzVq<4BeDdhle`1&t)Vr0rl4Vjubw;_ z=oEe{?GBh(fj&zo`OA-hGZV^W>+#F~4bBp<6JHX<63*FjmN+V?M(v_g?8z%JWR`KT zEjA1P8pI`>2<~{&t5&dgY9DI_*w5?Zkn6!SXv%esKQb7jwV*!E>oKxG_1|#5ZhtwD zPWQh0v#(xgkcI=j1D70x1jLLWan>p7f6Tw6PMUn~wFuZm5c2WX@`3@4@9 zRS!N2VlO`#^#k+^_?~k|aWZx-8g&1}9cujZ>DZq`{Mu@L;Z>oM^tp?zt;y2)u%ISM z$iK4cGCzL%ANh4Kl)W-fG!r#{D0KxXBwTtN%<9Z!uSM7x7_IqNn%#fP;B$wkOa48N z?!P7Nwchlpsp(w){zzvVex<5o+-zCtem|ooC_mjg!o^ouP{8J|zXLlcepjUduDcN| z{(E{L{(oj)E?JI+n~Z7`TzIh+GA(;GoZ~q&L7~mM(EWXMcOvuS2sUW3_1|Av2|gg# zQJZ_CtjcHQ^F{8j3H(X$1cH;mgpbu-)a%%ar@Mt;Fk=Zmv7>?2wmvpgDI1jiM>D$1 z?z;l)&ih^2K21%I`!+47y&S4cU1|Tv>`>{&p%Sf2Y`RXO$7zmIzgWY;9eI`i3HaY~ zOk0P<{$IlBf70l0==`0<{)6BCZ#OHFv@86^LoF*Se&01tX?jUqCM6qWlwlhhrA^|o z0yh`66q2#=CuuoKvH5}f`)}HBJkD79wWVPnmsh8BwY1a*8n1pr(Vpq?+w)6*kB@`G zzbypQN>2JCNmHH>mV=yZhvMDe-fcw6%(e0#$B4qHB=I0|RC{Svv_$ZyRqZ~^U-epI z_P|NIz}VlJRFb)%SSk)q&OZ;CrX}{kL{!_Q@S;$7!=ir}Anvb9f3V2>)7PKZ{;{lR zCxCw{{b>Wv#F9?(u~hI9ygxiIKl!Bgude@r$UoluQ}rL*{-^OjCI77YX9Ryr{=vZi zHKu=bCkoTmTWnuEmriu|GC_HQj0OzHBT zAW2du%7OMeh^UPJ%pN`j*IV<3isn(q_N5otEn={I@?6lw=1aZr%7*{=iT^Wt_A6`6n=GIeiJL1VLNl#t|n;rP*>?CXd8->m7z5O;RASSU-94<2Fp<_w=wdUz z##CXyc>F+OW#4@f^IdVfL3`*Ej0XFPi4w5VAikluulZa zcG;9RqF>yWH$J()W<(@39um{W5K{g`N{^)R+}J7mhg8Y&#HaTPAEgVbU=Lf-oK4Nz zlQisl-tEmPKR_PDBV48JQ5DZs{bkvVV2#Gl3MUWnn}g>rTKSCW8+ck>w;Y*vy)?BA zP;9Ful!T;gtj8Mkph%4>N#!_b&;2B*C<%Bl;|TBGN%Oj~UG%(vUI1grO_|@B4%)D5*4NZlqmwm`q?Q zIzJM199q9*>#NP$V5*GC90DLQ(44^3jIuTFfKT2n5J%1JvWg?#5+r2<5sL4jH7=2> zxu5T%^pqeD?)2R3WADSA8fpUt|zbbX1U1?!e1C0tMrL!y-Kzrvwen=93MZD zc?tiV^=YM*_D~P24m1wEguzy&2cn{fQ`gRppG*K=unAjZ7zK_Q>=l20yHVtw6FR5g zbHOp_Rs_$%UE>(AzNLoD9;_ZQIvU=R< zqlsZfDM2F-tH_6$b+UGtZoPZOBbeHi%Tk;P!S< zi>5yQduCn8>fXnns>-=vWaSB5<>6!Gf~Z$EouloB{DH0Oz_@Mfq9LdB*yF6=aY(q- z%Zx$yOnS#fWu%n{a&Mvu<+jvZcufp&U%113ezWd^Jm3oo z5ugqLm_vt=1Ugm3^%>D#9-Ux=Cz&!TlV*pnd`pIG~R_cB^Sak&xEHcL1JgO}FMM!ekL0bK7 z8rSu8#d^Ybk}bpc@~R7$f$yfFr_H(!zZ6Wo42#zA`F3-PV%vP|$!#z(lwFPeXabL= z$H_(MlV;955LBZ-bwE$|S{mdQ*VHA+O<*TvLfMdm+q0;p{=Sz^2`d+xtz8T5p__~6 zV|;FIpA`@Y@HHP?!C}@HS9*d*dHOEkeA7S(K6v%<)=l0BDUhO~yr96^Ve5lwi)Fgf zZ$VoF1-X`n3UGY6SM(TGdY(TpboRH5r%n6XO_}89oStR3&pPr$ouDeyvg>F z>I&=-&=CH}IM}Z}`n!j2Jm@O9{*1;{>h2om$E|jA(_fS3u$qS72Sz#bxFzXMDy!PV|Yy_x9C!{yu(@WWlT$D;?}JSr~!bk9|t zi6^>M8ROBDqjcEo^CPlmM~Z>2e&=c6n(<BGS;xfR1i`d(T(A>J=V>K1zw{ec z_y`;CHn40$B_(X7?poO{vLW3sV2Hm#u6_2P+qo|)t3kC7o^{ERS#0bXU1cI0l3Ih{LY2r5ZuHwzbn~&Rlz>rSJl~*P zwE(cW1tKRN6`^Q$D}A;4u`rx>{WBNmo)XTmqiyoLDBZM^5ClY>EK+1GPlSaM3Puck zPd8y36%_{5@n#=Eay3x4jQJi4{b$$pE-$N?I@Pa;9)7gq8hFC0$ws^OAIcJgY^~f0 z>uo~?A|t+U@6KCek66B5?0Fw~#;!&gw~aX$)Yc)0D)z;5?XPvZ(F4&8$ z&8`4By(4prM&H672-KMhZ0@#v+)G}PhVQz_*sie5w{)aCR;E<=Rn)TJ=`wJ7YyMli z+@XsLmfK)7>PxNS^5#ie_H_eYp~rwF?{JlG4rMlBV}YLE^Yf|fLLiOyM)vlnRc~CY z_8nJ64|PAIm@c|h-5);RbAH#-u@oofpv6jai1bw(AKCb`cwKEo_qInl4lSr5Rp3dr z9xx9Sy|5L8fKpAb_TfBRUJOr((g(PDgy;E*ZdQeVXZR`QmBXIse3;m1poxN3H- z7M%|68qfoTftm}lTU_3BUgG1~thQA(=5t1Fs@LrqpxqnXR(Z2~H3IiHzu?|_TMDv9P0oy|r_w=U-7>ea^L zGa_+mZ>_baF2pSYc`7!w?^P+8rQncESFT{DoW;k>m|?-V4`~Ew#pTb*O9^m0%gGTR zO>jh-#eeXTg0N{>jy_{rdbm`vT9nOf#PL)dW{F#lmh>h98t764XQ0oBO1C_k!!DmX zp)7*S4qt?oU)==L7ELaGo7pNuh1d$6kNh|Oq(|6f?=;>zkS>2#GJPaST3UIU$_gO1_|T_ zKs{on2iS9T>oArki z6I92j5wBtCm5nePIlgo7d2*->-7^Q}OLp^VFo6f&+%^qKa+Ga@7s>N0dAug(Gm+V! zS*Q>s29i1LZuSLczRgK;6N+%@eB~?PVq>YiI&dXf^@uq@4$iR& z87aSVdb9`meY@hJ+VS|Boc@%eYac>!mz&=8#!Yv8o>+6NgO=y8F|<`{k0xwvE;k!Y z$K@72A7_7~czc@4k@zj7-rk`#udYU$`jlE0(YlBuHjXIPb5S$)8^|J6Tfg>Dwexe} zpyaiMpYi#3Kur1>Sn53OP=;#>juU_p!T(37@J zR}FvnF&Z@bOw@r##?FQ9(AzhKul}X_E#oE59cy0U5{)WmdS4;m25%t)Me})euG|I( zSJP{uPq^mu;`NkzKzyKVN&3B-q-I7!Y4NP@(TgztqFe{MCy)j&Oq4hB$1@m||qSUEOEm78X z?!YtV)nL%4*{~f%5##{Y5#eeTRxc+zCD>iW%EvbrH5AXP>c5{>w;g3nR0fXO23FaC z=}ZJ>WfTUsHJltVL+9W+-)e`n1}~&t4!SXqO%B_O%5Ft#?YurJcn6j$IE~je4qay2 zR*4)zLJI(w!A9h+F-4x0gn9_)1-j1SHNG6lZ?JC( zXW2-j`bPm7e2?`*n+n9GrZdc?-`&MG4f|oY?slK?Bxo4=zdm!+l=DPxRzp2y4w6N_ zdf*Kvb71xN-#*7bIooNam}*+^ctn}M8acevG^YJ!4kUg6JDGg>L#P1S$lVEd4p0dz zuH4VYYe17@*rOmbM_#3ta(^wyxf#YZL5_Dgj*916B0pM)6y;_YW-bv=w62ojmjA5l z#KvhFF?_G4JHY44>uN8)wjGUHOLBY^a&p_|;W3 zk~dZ}EY9{y2`LAPIm^iRhC8DfK6M^6$aqB4BUSqB3E2q(v)0f~T>6 zmq&Y73)vyPyq31HPoT)o6WMQDDtf6JkEMDSJ1?K7NHMEFA0*~6AQJ5RIk|bs8=;Md z(<{=1DP$&0lE!Vc5s%?-Trch6OJf*n3{|7=v>;AB%2CMM zhN{G=Ba7w4L|W@#n>YlXG2~j{x3wTsQ`18^bRyrWQd7)u=!!Km1J1{@@Y)XsY=cHg zAv~FG;F7)Vg;Zcu;NkV2?8OQM4xxigP?eatc?n%ab z5|Jv74DGMF@z|TppH;`@az65zyT#@0>*?!rT}8Vi!CSa9fO#GpcS-LpB$r2T&w@~5 zjHw#!%S5As@YM>c6T!`ys%bpS0`Tl9_!n&wV*YQYB|E7JWEYc{8?!8tbyqpxCOx>i zehrmQo{*lR-Yg}paT>4>*4Wp*tsa<3h<0WT$sd*mAzP-*vSycMl)g6`9*@T{?#G}}CFb*pW&fcF$?+pU zo(2Dw1p^u?{a2wm8CkFc^#iY|S5C+mUi~*G_FpzBQuGakouKbGRl$)xbD$ecTz6xU zKVrdDu~J1lUmu7d!YXYnFp|Ct{H8_)h9AlB%-Z<^M~Yu{b%{KdVPPK>cTSAnEGYXQ zz7V?kSj-T(L##f~+OKgnD1_DV-s0{2ZD_vw11DKJ{qzj>dBo4rm)Z^QLQ9#gM3tNT z9O@_n9bC=ck8{c@95M)Ljcr?=wx!99uy7FYmxfpTocH2Jshmvqlo^5PrWRY;Rl z;D+9rKeLynQF(s_EUBO9!KO@zx9B46o+DvjPnXOT*LYZ|;*{g^4Z{`*Kyu?_V^&{o0Ukko8*LR(5 zdFSMB#zQV7l;48zVH;`YPUqo=VHQvgOPu+oKhZT?yVzoQy`VZf(@J2Dd^&W4)1&h? z>OG8APEBpHW)3X$APw0EVHriA_06nfNky~ZZAP{_)646-L)8aTjP4bQd3qi&CCmk1&Lr2}rkA|>Ro<3dXR${k zIXs&__t|l`^l_CG6Ulu1w1`7TQbLs0I9H`k_o}4shJXzEjRl0`Ez&2sPEI*HQP-q! zi~LOk<5y~KJpSfqLIQX{9f$U)D#3*4oJ0LbEbU8v{(kPCAPG!g?SA(PGga6HukF^? zM8AAh*@#GKzVYC}S_y3L>@=6!)Y8$p`vA*L8o7x+`>{(vjM5Q22f{)>F5EZqwAKy? zsM(4DB91Kc2njlTp6da+JC6fA2`0<=RYOc%g20RbHfwp&7ms36>Bd#Ui+!a$+{rO` zgzn-3#i-MH@K0G7K`H9&CfWte|Sz6qel99i9nN1TrWxdI{;=Ml4;T_3tGQm z%ROY}y979ZMM*}xgTbuF(JitGu2BWnxbAT_ODDCq()CPRz3CXAjLk&OCK&Nwdct$@ ze!yZsvym%}QDGEr%<}T?JiUSN127HhuwnD?!RSWYjrJWM;EnZ{ECqW`(9=EobMabR=Y` zAHRyx5mYnKp$2^q5OmX*V^&AsMly2+m`wu6DmuP+}P7? zX$A_jn$MHdXBv8z43I0wpf|jZ*E1DUz|erDmYDS0p!kps9Ass(|M~N0Gj(wMXGWHr zfNJn#YNW~{;>T-mqL*jjX;AN#wC@cB(SF8cxjfN%w~U@Fl*beB3p#R|NW~|8*8EiO z(|+u@=VEProUH!)QyI*X<<~35Y+)1Gc3d<(hi_pb<~VmhVrD?UAOQqk&w@;R%=*dk zD7Cdv)eT862%Vwn#wR&hwJ#1N9EMH6+HonaOx@%`{Z8V%>m89~Ez};nlf}S#w5CZ! z;JZ1ckiVc401i<@N8P8<^8r)H=%QnYmo47I@K6v99QSegCLI0xfXmG6D82%`_L=oS zjAF&bLjfL3&%o}eYESf3%aJ*J&8@;ke3c2zhJS{BM!>kaWMoMN3yuBZ%>RTVg9#7g z&dccgB3-Yea`PD(mUTJG&tT6j1_9ivItHp!S6^5tjwRot^CuHxXtaZ?57}xmKRlIap;SyZd@0m5dI$1YnL-rS#qVqThG_m=`_*xM^ zUdpVA-%LyI(_~cLNQ@WPp32S4#Ec@0=53`I)kvxO?5VFlhK2ZJ)Z%d+riZeDSGsx& z>YzBx#SLS;b*+3~0`EE_B4UV=>(0dP;39NOq>z5$2YOL6a-8q-1s-5*XI)vDMTK%N~C32+paVE2IuYR1GTd1}81k;9N; ze;je+!XyYe^u*EUr{j)}V*H+<1A*gW@}aMO5#RM;z#bb;tg+N3RM7iD)>SkZ`+wBxGSk`OEM3+hY&BdjEFv zYA~hzRsowxO7zL`Z!SAuiVARj^ytMH%?n*W^ z37_6>>XI=K5~52q8^Rg6g}%e39HkCx#lN~uWqGG+gx#10bq*(bzJ2nm{={WSu-gIC z2z4po*^(&CqAR+yv(wZbdAH#KZ#19m;+90`)58Ylt16}e;0+@J*KvWsce;o!{%=AD zRE!MxCtz$5Li^Gh@%gc*mCZcJ4begsvXlVK_Q(i45oKXyjOSGnPgw?(T2m)u^9w$# zy#-;GoCGFjCTvuBMfr@rl8JI@2SOXoV0fEk#zV6;nv}jF;f`Q(+m5J^uf4d`j>z8@ zH)x+eCi4RGPGh_ylv-H4Pm)Y(KKknLS|MjgL5bl|Q6W@*@>21ojMI?X$)9h6UWpKF zrs*Fgq4f@pQ)ThD_<3as$huFyOFxV3KdqY3N=UHLDraJ7MTEa%xWUgk`Dy|$4| zu4}aoTg;LkM^VA?6W7_4*fui@-PsEm71fxQ8JUTHcEe$gq@diU3+HEK#Pb5hZoQU( zO=%Fmy&?ti@mwuay3CCLk;r^DbUysZd*8nDT=IQ7CEe^mW5vt;T6EvWNzm_ItY z0yi7}CY*b8ujK&GG7v7Dz|oE{JMwHN7-N0$=q@ehi!(Cr^EBu=TS(rXN5fJ!oy}Lgyn2@CXX0>%^OQL2v1W{ICC!|aP;lDsCUqOd8}8{ zrKO06YI@$*SEi>hq-B$Ux*zhBhq}js8UhH)8gfk&yj$2<%E~S6Wf#**l!I!>bRxn< z8FV&OoQq3xef#yemvUh7 z=C*!QaG8sO7|uCDf+MkBdwpSoBKje3cC1>>S zPswgL@_zruugBK{o7)1zvBF}*j)1ILXPg~CR!US0j(SgB%x zaxlIQee^2xhFTz;T5%?JT1W-fWif9O{!6KKTPjsF*CDQLf8nr*!t~M27kRC&rAI{^ zv=Y4~LG})PHU|RUu&&}K<+54Et1}iUD`grrY(x|1>k&$JTv@rfo2T1jOAuJVAAgqk zOZ$DAMz-9S&zJ>QoI5)H>WyV3@d9tlFKk9u<)wf9LVb37BI%~ zKIcdLWN#zY!~!hZbhn#gcYT|xoV8xW>`M?VRK=bS##^7l??9~_u1Vv0z-X`c&e$!M zp6zL}&68P>0BArnF>gC@w4Ynkpph3!pZ0nx z&pdbaKHWXb^Ag%g3Sxk}CtD|M6)1BDD{ z7|ar6>UQO~YZtlReR(bBUNfbU9TNJ{VeoKN`Xy47YPo4Err|7Ma=yUo$Xawn`$65Y zURKd*FXdSgpv9S)N!}Ft&Mao~IEMa>+xb^4ndvOJPtmC*nPP;VtnSf#*IPCH^X`Fs zr2n5rtG&r>Z0Z_&5lK=l=9-DO+hc=x2UFWfR)_<9hz^59a|aAZ~wsy@{4oyFC+Cgs8i; zqn{;tMbb$fV&;tVF>zMsEJ%E+aBPD(;&NNp_@)Ql^~uv%%P7Ggu=uY(Qm@&VcSgUi zBJFAyf$7jw7(_{c<`Gs@n1Z5eRKw1JNK(*_x3%Zt6{WM!^P^W3zSkyJZ%mx59AcBQ zQ6HRy;~)Km!LEU$M3+dZXlO(!_h=f!@&Vfc%$||i0JD}Csb=2>3ncz$WS8l!)H%n|XPeh~EXFuSBi0l4 zx=uEf$nr8x+hoLBxh%Jz|bd_k0A?KmP8XUOQd;-gn3KkT+~2=M`N}dp{yE zNjFAi1cPr4waVJA{OoKuqD;F}FipYais{#EL8dNaNcb0@enACJA-RqC_5Ow+i+Cc& z=#p{CchrASO@EkuKL{dYfBx$37xk{>3aR!dG}WzrXVm?Co$rR}ad1ZY*)d{Wb0u~4 zXD{Aepjs{D71~=yhG?fQJ3g0*<$r$;!~}^bT{%wM1q`)`Cl=lp;<)W#&Ng&JA}vCH zcV31KqmJ!f#*~90Qbu(jFf_p{c7R^7cYJp@*Oa27xqsWXNU5zWIOqYx+$sjYA8eCQ zRiL1!8|{4iGQDj6Q2Sef_-?Jb3RhSev4+F*9k%FHthLRu0W;rT364@eOY{`5DlWsqY zB`6OnSw$SyiVch?%z;n}x7UlM><6mWdZbaq3!KX5IevxFn~%NRr}>tVM7d{{slrT8 z%-lxOI8t-Il`&Qhesx;(DI^Tt35hZwQ-k+9xu7S=Z{(D0AFC%HjU>kzc|mXHBC6Dq zNgODiLtgTV%Je-v+>T!c78;Nxh~yg8WFk^8i2kve7$iG6OkB0;Kx`8oD1!r_N*#3N@sWs^djh%bR zw|&!`RBYfa|K9ub@KSmM>)Ds%xwm}*d#rKmRsCt_Ay#HYOn+X$FlFb3T||6)2%U$4 z1NxmRs~_3gzXqjCz*s4GssWD#xEsRzDiExvSpiHm(#3AiHLR%`^RZosYi6`K;{ywQ zTK9LqOSE97pyC3{vFOaZhswYvCYynZ_(shX=X)QIZiX)NCL6o<9b8apJ@Gm^=YwuG zP+T#;jgI0?8!8`a>-e{i(^M0Z`L=l+O!4>u7J{Ec7TC5IY^rMYXW_j+_AtWT&G+`; zPjyNooa5Og9nD|=!+G|i(JGwOJEK_;3!OJ|`E*z&Qbg@-xufL$8m;D7y(N9)_Ydr+ zD^RVxe=~kwdy2#0-X3+nDHj#aTjD7yQG=ns@AmY&uteY!4L4j|0SZb-0wY`7W$a0d z(y5Z8)O9&@Ct`+gS63|6dIaQODTq!`W*gFRE5UXJ_TRY9k{f3$s%9`KZm91U#O%{> zUHHe%?v`SgNij3wSGbbQtIx>l!zQo;L$aN}IiSYm=!(!heX@svhTV z?(1_zps#qXYyJV+@Tf6a1AI~W=7x$E8r;xwRw1-pn#QPo7$7c495!`+^XO@~fs#ao7-3b)NI7Wgk!abpIZEO3k+6W3r?FyVD}YOKMnt zm2uako?KmsNV|8nm3pbEu6=kGC#A=kl(@wbYG8cxVkfx?*%(@cZVPXCql_V2EXk~m z+=zz8_zog}$nlG5UaYkHGE{=`*?@?o;E9Lo6l>_nNQ(_y{a%rBtTBbjqL?M}n@O>m z=Wl}onhP#Eg39xCw?`hkpAV=|%MaN-%+9TxvK7@PS^cTqvy&dqs-4xRCzyBy|1(lR z4HO5!BXPe9324Vc0>&aK^boli!1_vVndqZZJDWW0I#ATQPQ7ZOGl?e3#mHPkS?F1iWDr_|!y+QJwQTiG-Bj?IL}GUhm=*KH**1IfyWGjOYTcIp=&)MS zm4{H*U@fK297CKs%KswwqZrB#q-fsFFuO>b`hJC49T2$0#nmI`NuvgR-Zr(_!%#yNN|742smOPNfe-{%)Y#TvC!YT^sh;z}E zk~Z)}+C;Vm`s38RsgW-5@Eme5G+o|$e76sZ>Dg|~5;7DTU3WfHp+n_ts7{{fW<$xi zzwBs-=Kj;{913OSylJc!O!no_kX~ZOLj8zn5K)sr3; zF!WqER@0K#EjQ*Dw@j>m3Puyy+E9AO@3ff{ljc2A@x~yYoQ9(HF|UX~;QNyjpbFM$Lt!Oc z>Qqb0z-i>*_6PVOlZhq(0=LQyPkHU&X#-1VL*Znt#EeR z&S+ly^?_o{U64<^x7#lQiBw^eHudux3XNEYugixin?0kNNmcp#4t=yMOVP z{LlyPP5IT@*n6@x1-)D*HoXo&0^ksbYa+)%YQSw%fANey4!TFo{dbVNDjdxn4+VH9 z4lk5}qX7^9zYPC(qJxc%4S@zd%UwD29h&<-ZU!y~8gJ+w92#;Si??AX*?mie|_yOE&gSc9;NwUZ-1W}wRusF#=X>kDbmTu!^7jd z^7Ch;qZ91g7-KNoOQmmynoAu@&$#Xr%1O7js`~Yt2|Z$qgf$08*li9jqUC2 z`}+DSDk=~f&AYVYptP4QSb1LipG8RU)R5y18Hm6sVDHf@+aLn`V}~v@;2Fp!{ohAw zN5G?QQy|?%2_g{YriOe!iq1&4HWQ6GYyxmzvUG>0RtfW;Qm3QI@C^J4y#OhN3W|vx zaA6cQ+&yr|V^w*9TD@BAj_rN_1`{zV0dG?v`XUY{8M?Ncf<3HTd5{NwtfXYIx+=w( zDb>a(>IYmnG`5K+7AhypnwxWuhc^MbQk+F$%viZKgFpU6ehg?XdGJwlby=OaPOm-6 zMYx8d(esr!fC1M5*$DtayhK{xJZ!dkl*I&G%N=WS0c^ z@1DT`IPZyIH%W|5YC?Rz{~v&<8Zu*qKu@9Bquvbw2=F@&DpyCoUAN}}QU=8)0fql9 zUk*?@MK{vfP-|g;ox`GkQyyy~@sD?=Kyyd4rC?Ore~7Eg1Lt`GyNzRW|7IP|&_GPX z9#>2M0!6PL=)AI4Ye%$;Po9@ghr_4g7+x5AT>be;?=i`}0VlA)<>0^qywUPU$1mO0 z!&j$J+lRBU)y2rsaerX}pa38xk9+Ob7cSKy^^ZwGLAkiFiQ7@m-l^9CYy(5F+}6fe6-HLh+8r0K`xL_F-A<7`VO? znEaOWaOcD#OrX)OgSFoE79PSWwpi_Qjf)YrxZD5oocef$`-8A4fwi$&2i>H8y57rW zBFX-TD2LqU`qh<{S_Buww%q*u+9m#Z;0)mJV+5Ixu*nuQG!{^hD1f$VaW zn&3_EEcJi=)#VzluYAs32yWf~)q#IhjsQU^h`zUC)0)$u&>bpps@|!6JqIXu$6LzO zsvma8Bf)b&FhryMYd|2~Tmes5ZGXV(yVG%=x^I-7jJ-=0Qc!j8ypuAi{lS$}X}R$R zI{K%PtJrmn&%|0$;6*SGQ}RyEIqi*7QY8PgWeOF&k1XYOiP~wu;N`mOtdwrSYJNu0 zIxF88+!CCr?^z@)3<4FE7TfKAy!~O^+$lD#mhICAPdTEjgVKjtW<=)uW>DKwL#mC@ zCezSC%+S1XhPf4NGO8u3J}3T8IW-Cb=gKEg5wtpJ(8y!@b_W!cf+xQ8qW}i-aCT_k z3NIk1K*9CSp8@vV+mS9>yr2ORSoooGkAJ>i=51ej~f2SwYIk2Z0yp#KKwr3JHlTxwQrP+a7Gw35=&#l z;6Ji0G>WAP4QZwv>>C4_CWR5`Ma$Kz&zG6r#H{7f7<>EpUoyMQy`_$k2gtdXDG+TJsNZUW#ddaR@`LSKo4#D ztZROWSMMK;;FF)eR~@29>+yBHGi%Eh_LGQoUGA>_1X2~ae3Gl-05(%^xff%% zy(dTF2*pY%I06umd$j=|OYP|He85f$=m-%&mjHH-(M*DZBGpg~IF$M!8o8zjr{M3J zU78-+*N;n17A7rIMjNT22!)HbpF#4DmN`|P{?~CN=`NJ~>P%%F0~lhkf~8-ZQJmKLRs7=Kl{Zba4x63nGZO3<4_5V|cs8Vn*<#dC`msvjn8%qSeQObAs3QyQN*ikxj8vi?7XSE5|ffbANd01LouhLbB|*^ zZ=#zt@7aBC!rh0oX_ZD_BQKnj13Slsgw$&xT;Xqz_gQZ!b&bD}s^$3JN%)@Esmr^jXdDatg{V+=F+BC?{!6MI(krwByKWdu*zt$r95{`D+2CPzv|zN{!%K zJ;k9{whSsOa=cW=Dl!rlj*Me`HqzlsaZGzbf~Y@_IAsfY5mNL94_OQ#=7nw(voKfC z=;3tHpHoL=y|X|lnYjQ8iZ+I5;RJ;;IHFnC(2ye+7}Eg05s8+FL)W!2AQbm^kh=?2Pgh-mBD>yCCBp#PeGXz zgq^Y9uj`Njd$SL$(A4p}mak2VC4oIq+NUi0kGe;flQ*{aPOtkPJZv8Nvp@D8?-e-! zt(ZS*M+TuHz&AX)oO_=_4s8b_WU>nwascA(|8W3b7{EPP$p;kM{YW4KL7<78v zbarUOgZ{c+pCwHi5y`7R?^*JXV-y&XQ~)&aFJXThqfWP$y#x7&sDE4{8TJJ)I1zAv z#D8h9;M}0W`o9uEB6Qi-)^|3@Sz3;SNz zJf|Nvp(p4Wzf(wsjPsz@&4t9xQL?tz&aqi))I}Y1PvlP!``Ztc4cPLff%7*-n13Rc z573T<169NDx>kpL*B0Xi0A+RWs^5=$F;RXrfwV}N1!Qr$Yyu;>Nz*3HO=vKAq?$8R3#3(m-Vv*`YD9-)?pM z$#nvp?v16w_q~?d1&e483pbLkvqnG0XfU_Nr4&cKW>6g~B##ip88FceJMl zv#FDri?MzCxH07cCH|5FraN8$Mbt*kE@X)&I@AmR$qvmuq4)kGikq3W##2}0A^P@{ z%Qq#Fi{G`-s@M1Az4uxab9MvB9B`|tz?wrYA#!}wZPg@dwYakJrazie3QNU=q&qVa z%T?cetA_b~DPJl`3tha@p_-EGwXpzlnS25L-;tV0_%jXPdVmGmre;&iJ{aa`ZT z!lw;L?|4})?Sm1qwCy$M7JuLwTtII7kuxVw8Lijv*j67-?GIjI$nP9gmXoi6p=)a% zcq5RTkB^U%;HK^9VhZFMpgVidtG_&>L%R%^1fk&Q#%B}2l*mgW5t3;yKRA5moxGBlL&hORye$0K7U$tf9@wjtzjC~W5JxVc z#0y&1l)aw-eoeZ{NT&?{VGD86M1045>6;XPpmX)Cy#b0;yHXYUHqyIN|E(KNzAJoY zLe!_8tcE6~Vwg4x;zEy{gh*y3R+e(_OOMjYI$tyVv#ro&Y8M37Yi% z_vnN>ap}Pi+SUj38DfZt-%nko0E|UmzIpT5Bt;AD92SWk;U8M?bTt(e%qC|#=Bm|6 zL3=iS{qTud@40NxD)-Kdr~OTc<)-S@Ww)y954hn61lCblXd*K3IS~Oo0 zGg7114Hz6F%9Hfo!DW~cGg4W>Q(?AnKEJ~G`FW!;sIHb4(@ks_aE(*| zFK~0;e*qVhJ7|DB(_N@<^z_HVL=WTw4KK3Tt-?rCMmDLQI;}QdxL+q>KBE3Ex*A&@ zwK|<+Z{gs#kv$pf0G^ppDA_5SO4X0fe1w!X4CM+iQW_2!HLUP`9-3Zc1<()Nc~Sq3 zE5QH6+f0hGgD1UjR7cj}vUr5BmL`x*NN}>vqCa_la>#fVhlw#5rjpcHTlmbG`E}Q5 zx}s)MNH<8wM&4+O5ZW1XMLRC4zn2a1ZGbAMn%_->^1ufR4SbJ%^APl(St4T1@9x#l ze;b9jLqpf+%t^jg5Eo`yO&=d^>2EF+?bs+VxM0>=C3~*qZRcAp)Y4_Z@=foO$-&#n z_l{Hh`n|=kbOV++y~|E#UoE*+p6_z-Hcw9D4^DQ$k&5GTOzP92Sq}2WbY&paOPdgF zq_fJ|Dd0H~Hp6p1#HfaOR3w~|gflCKHrKA}KF0MjC6RtL)c+Z3O>t2vFDomn3-6OV zZnQq&s!xenL5WVE6q6uWcuH^n1P1Fsv?36QH+!ToB14B4E_7x;D_|tgAMSa>(KpF? z-%2f>Uh^Q&$H9tAV1Fc>QqUoFFcb0M-!L73I=bCm8h2Isd@zG;_BiOrSL)nz0FLf> zfFxuf;BTS^@AAM3$ZuDQLQSr{%=rzEbR9-L@5(Su*Ohteg_?dVxznmDtmo(N25gV# zjbfx?&MV#A4PHC?vriQTFj1lC{X(cCl>@o65#cSMua(NS+$=1e2|yhJIkQYf&z~ni^iahr9qWmx-_6owM;oOrQ(XH1a6fA|~$c?N{~Bh+)OA8TLuEjtEgC4p^DU*8Y@|z_Io7!wHv3;Ynq)VY(%~I%_m7+YY4fS?*UY_rbIF3ya$Z z?Xz!iRY#A53a3An(G!tgb>3?naIg0t&x<7lM#Y4-7vVKoH3o6>$B9MTf<6Zg(&Q+6 zfJ+J|Qg-JCZXC--Y*PVF>wgFZ%}JSzJHN7nE7iklqt_;V`Zzw7A@Y^@?e)u~SJnGG z(H}nCZR}3394oAYB_33>9rk~Al}KgfpODA65fH-%aT|+6?#7yqhplK|}bfhQ>_spPUwe>~_f=y|$92Qg6DRKe>Dx z`=EI+4?Nzm+v64;4#iZv4;G{BEU2`I(hnW&LcmiXXR%H{uiLHJ@I{n_ zz$B=rr(t0w)n}&t&@MGSSIcqGz2Qb`FI++qP(RGmOxPI(DR5SRtCp&QBfKq^JP!Hah+}bmddw1wKCDt31kI28RZs6+{+fsef z&z+b`@s%$3f?|Biuz>g4M-mvOjkb~CGHLH}{-S%7gPbkM%CT=hqBO1KD+J4@_(*-j zgnOmZp?z#nN9KVIiUru&BcMp#|Di#0<8D>uEF|ywdCg$IaT&u43m|6ca5poowx4M4 zY3lzbE-G#p!oK*C$VX^qv-wR)+`%Z=N^o1MD=8r&rXfo;0In1UQ6K5(>6uB3kJkc^ z{AfQA^so2x@;5c5b?2%vSCMmu(bxn10f@>tXlxI1NJg`(1V;k~koQV(2tpqNwe~Iu zk%0^6C&h28;>ch`JEg(ZK|`yj$Nu`*!B-Xnpf6QRmR;Z?tI8n>U$m~M;JCjKn-^u8%smFm z+KE(lA2JDy`4>?}6`jP_353T90RUcQa$|nqxTGff!imbo|_w(>Kf4QD8wS zVaya6oMjydf2?%5gJV+8!S-rRS#8PZ&&XYu3FTVw7C&Pr_l(CYX-aAmA4`SJIChmk z8G3-EeE}pbGCGtG40kyn)p+prKGt z*XPS>I4+lZHFh5spq9md=7D=v!IIL_?Ewb=?M1D6<-d`gd4Ls}2<$(4vw-&k&`Gxj zY;b41Qtgq369G&?3HaSS(PxDlLn{)pAdetif!2`nttk^S*f4TxtNqJt9FRAJg*os9!j(aTpTTSN?&?$Jn zX0kO=d)mm4d2I0EpON+xR7+`vjTc=0j3yD0MMCj;ch!q{lA$6IOsRM zE{<99CS_k3qZ58jnU&%1zjY`||EC+jtOi0^v(%49$&Vqa-e#YF?9$NDWUzSX_u3K) zhRx}@viw67aR2z|Gm`&UxEIlwI}n9g`h(@R&>;*;b`#PGka$`w9Ze=nu7b#WmHEz; z;^+KD4LxO#~EB z90dI(ry!RWx70X@z-H}bczb5$PJ2pXg%#z!Y8nT1{VOIs+ZnMDm^%v~`#qB51@dr^ zeiY4sde9kn}#g-*pmS)=fY#I4Y?sZhg{fA$fC?i#2&*uG}mj7zTsa9i(KJ!`Ba2el+6F>e|1&o(Ob%$g;h)LsD%{o+pDu5!k(hO7qN{% zlE@Sjz%Ld$tVqKbDz0CH3$igUF)tYJaiqW-hjaj=Qd8JaShh7|fW-1O$5PrWCyr4k z+GGl=AZ|ySYFBbme{dPXUjayYLdrR@-oN(aV+1DAj!AGbur#w~`*1c4nzR5#ZmZ#O zC#_g;Z@;@u{`vWX(E0~~_`V*637=gt)?wAPe zm^`dDi@?kaCn9Wr23>(&M0w>GsU-b>E&TXW(&Wp?r}3;N#J1aOf{UUFKp2;Af0|(Y zI5`ugVl^`w|b zO@eM`zJ6u~OwIq&%Ycf!!yvGF&JJGDyw>y^9OAsjnxF|rr=ql58}t+W=fauN@L#iWt_AJ~ zS9|PnN7BIJiI)Is{&jXpVq!5RA@AqdczHEM$PNNAU{j#63&`892-a5~a81EvKZaKq z{XLn1lw?s(x-ES(RnnWdf=%5)+x_#Tms+1wqm8M(7?{>hN8k_mLb;osI_o3jXfR&7 zXilZMZ5*-QCh1P$y|LBl=gS7%efT(gjTUqJkyIf;SB_uGAV{C`Z}TPi#?`HqULX()2AKhiBSD#|ap-)zTZ@E|QMO&fBlH0b~u z7CXGUW}5l3ycz}4gpNP^I;HZ#Wk9piXO2MFobdS$rj@tfyugOEZ3(-hTg1? z!Yc)clpnsbDKLE(70Ogc!Zzi0kyBxRBchQHmTb-ZWI>U5sF5!c>9Kg$dKlFJGjO8B zLVI!be)KyI3NZzO z&cXHN)SuG7t^Ql34$T zs;`b~vJKl-2@xqth0zKqEfOOXNtKoq5b5sW7>p1p0U07vf}n(ebazRN7~L@t2BQZf zoJjcH^Ld{4eZPPB!H;|Q?(2->JdX3a?&~UCUBg)rqM1Zllu~>Fb^-MF|Gkz3xR$&0 zvkp2&8r5sNU%aD_Y+SLk$!n+uUY4oUqwpgGA`7@U573&x1n#SDykb{>v)_SzYSa+F zbUys$^H%>O=hOga!O3RBFJ^qftPdo@qon~x^9uOPfHttqhWP9VD-dm1)BCf@X0N%T zYrY)DxLTYl{s(hR*Ed|(qSwdW=Qb@m;&)rjfCBN~x*c7@bpVL+VPyD6gYSh_m{51q zCYtN8$u+*c_Q0gT|GjQShJ(V-ZYV?HYAN1a{l6_?rOV`Jr1uM#C=4+5_ z9W*@AVC(-_FAvd>w;U2}%zXE3Yk`C0g^+JogK-f|4>+a~m~}YH!xaEb6qup&<65C^ z#cA;+;O-w5!dIhf{fOOtoxfkGjMfJ%s!!lcUB2JhpKC_2XboalUN}*k&y+2=+X3(` zz*h?$k+ehJ|6VU>&=g7w+_C_^T9v#t+3edpSL;!z*#ZbRqN99)=>X!l-as}&2)IPE z+S=B!LxuF|X#Sm}Quyjw!Io^8X9aNW|HMFsR}6cLemC77a zw*OW6e?rs37F3$&KHli-amX0Kx!>m`Dq9jgm4{Q%sxh-L{$xw$)*SS*blcBN6Fz2p zkF{Ad3DEMypd(t{EBee~SLkzE&!o)xJeu>pfv4~muEkMb6epio*Vx#9$AYDa@}+8C z6>MaAHrFJ<@6Q05M%n$Yrt(w1rISzaq~2y0%IxpwV_lh;GrANzCjlHAE$@p&9_ z+Z$eb$F>aR%Q5PC1~tF4Ly08O_Rfdo5>i{k8FV%2|*Xy#pH3+Pw7V(!+*{weBBeeZ<;!uAmArI{k(m>mp{`KcpyQe zPU*d$yQ6;J8>*x1>{j!1Uc8BZ(xI$r{doMQGBb1a`P#+PQFn2%s9W(|J-B!@Z=U&lAQ=oFHq-8j)MKRJD|FvoE(27t?>Xke>?$R5MfT zC^8QngFdv|rwi<-m;SuIxx+E%ihuW5;Y!SOGwY1Pkx@M0Navycu`*XDq1Ld+LRO*V z6BcRWiJEJ85{>j9yntIo3V)`cLs2}9>VPo-55;MI6UI&x#KP@KwcclBxLfrNpTE{g zqo&#^QrihZkOvoiyV2;oYsIHW7VXqpeV89>=S5QubetyY%$i@snTG50~1;6&Wb6Eoj-)u>XU)e#iQYqpu?rMnaW9a zIcQDAKEjM|g-226DO}#U!(1<2f<&LL;~0 z{Cr0ARmLf0@{)WCDa*9{8@lFkQ+}t4kMGBGT_8Rd5b)oNfuv!MQ+}tHPt)GZMKdVP zrO0h0BKqJ3hhW}3g1KVUnNyXzwof&MxPJ_|#^KPNqc z&K5Gye~pv|9V6~V>9#~Mv@}81GV&48(Ue~+y||p2e1;UG6!fk!VmhSsBtF9sfDAK3+VhxTnKON`e!%K&*@&8Q7`!Iii`d> z)GbU_w;#7RFtx+x8=H~^Ju|xH9CDSV1i|^IUfyJvw)M~O4>{}J_bJkgzaj(9r&|44 zzV+MQjk+TMAv-^>ty%wq&u4jxm@4@+;y=wK2?eq{_wMWb2x3aJ5P|C*I@?p8gL+oM zQon&La!-_$Z_wII(a|9U0;#XBH!8g`Up>cbH(&C+aZf_&i+BmQz@yml{=PwGipMLr zX@Fsb&OMVS)WX|ns`I*W>?P#LJHi?8Sq0ifC$of`@5eMsQaEy2f-3=5&~W=_d8(z z67l0Gs|?LsT4X*a!gce*mTTi&lGY;)4fskWMHpn9quYXJsusqGaA-x7h`1BBBWvLf zgXv&eTj=ha8%-KAe2osh%~_92@8K9AVtz)uv>8tMQ_{`{4|nS~)(Uf|ed9dR>3-X5 zh&CJdODlKte{iLCIof_x1UD(TV>WBF7+`67R9?Hdc2bda+PD*=CGWFPyg>P>uAWL` z(W-$vEbfZmTwc6Ghmi+)T$E6O*lp2r7byypm)Opl$04Qn@O!|v9G(;Cl|PabwJ(Cc zzj--!^rmEC7loRswoh3s9BB5j7bOT#TMPhSf&w z4vN%^%Dzp0fwQ^xIno>6da`puv95eaWYG$f5Z94k*v&w?b9a1N;oc(MmDdf<@6ZsY ze+nZdGT|oU>=W0y8tTn~0;o>2zfEmUz=Ngu_&($H^)>$RHZIDz#Ws!0+qFZ(<@`M9 zwuGSb1IFWDtDPiQ)ofE{LFkBRQDEr zfMfGLN^^EcH<%f^5qz}F9uTw_$;zF;^-k9qr;ij^9c5OQEcl&TxBoY?9sC zi-X~2@Jm{Eib59p-^b$~v(S}~E8FSg`7`K6$FYj?!E)$OmX3RK13O(^q>sTkM&t4A z&bQ$wV_ULOxbNp@>LWC;nNgDwa$?b7kW_v;*gN?rK*fgIwN2`uIy-isNJh3f!ZABl zNu`^dtj>`?1O)`vXDjngWdk-Ew$ni~l|I-P6dB16Mv_;Dyyd(y10I+g9cy1?Y}Mzb z(|`I@sOF{Eb<*!w1kB_CxS$2#LdT6&wgUdWqiiu>BmK&2Qk`^}5R%jFGCP7;=>l*l zdxK%Tu`8d1#8q2|wa<=D78Wfo(24x9^%qgTt(EYj%~o+cf*xZY&?4(3L__XARNAA^^FOOvNdqMF-*#@e0y1&C9vp##{A`^z+D`p zHmo`*5IL(bdENNFuDPfLWEb5?pl3KZZt!pf4q3bg5E-~1YZ2vrP3tRcDzW0WR(b$= zs2S%-Dtma7qP85sEz*au*Z+Y*%w3pMh49BqHHd!JYM9KX4ijagofK`HK7{b(dfGVjLu zkqhnna=3WX7x9WMho?=d6NQS5YI?nA~?^XW(8X1 z&e+C&E(Lk0_#TW`zwjFU^}}HP9mIwp_EGAJtS`=6Rduzge#!ktBl7Bf(sgbUmRmpR zs@~jZ6X=eNOj#Mvh#<|Jpt!F&Tkw+@lm8JKm5iUQQjtEpP8;J&O4nZV#|?H6a+GdR ze64({<brQWJP6mz03DZq*B`XK3~YmNrvqd1y`lF0H+ z5j@kQZOBnv+ZK_D{IN2coU;w?pBj#A$BXsVIiuU|hu^||G}_5fpUP*WoyTO{E`#e6 z7Fc2(TJNpPH>fSVYaP8Jy7kG_mo`ws0$$zPYun(zYM;39nN+ z{ov+Pr4F4p1Lzll3gGmC5zp0XsXwe_hnW*i*vwD$k6u}V{d)V|I4~5v{+7B?-)HXS z{wjQ&{N>IdTzs_wKF7dttUo=a$~E0acfB+7)=(z89Kvt!EIWKrnJXRD5((ZHFnA+h zt(?X@R31@P$4BuoY&+xbs$}P88rO_MA+ty6jUKtwlzwFjHWWLbSDU4psGJ^AAqXLpjj=Hs`0u zg2MrQ3Xm(WJ%j%h5OlT#0niXAlzH!6ZUx%$(yi(bS)(Qz&t8Of-E4EXAI#IT>@~6e z)Ww;g=va#j2olNA6ZvJp^y4bUN}~xEzwyJh9dxY@S9-^NL^iZtC_`CI_*bJT+#}{n zqo-G+!-JadcxYOAJ|fcQ^qE0bVVN#H#LuLQdHYlwld8bc-w@s^Vb*jB%0oWca=N+o z=hS0(s?bQ|M&qxJ*qsdg{HCI4;9PEzbcCO^);r(kkFyGRqy0aoTMMZ*1Vqo5vO^PS z={KK+lZNi+yg45O2($x#bk}|~zzYgg9peO#8y}o6DTi%ao%bcODMtw5W^AJ6g;{PL zmsm941~%pa^yxQZ3K6yH1RmxTJ}lKv{wpZ=8;hHxLkxo+TpP@pbZxehwv{?FHavP- z?-i}iKqeCtyD(ifLRp9-`z?vlpk7BvK}Gd(H!}l5*(H~de$B;cVtMB-Zz&>~x`hcs z<}H4CnjYHMf#17)k2B_5l6KhTFzQbFHf^dl11>4d)2qxP9174=?0}g`w}>|6M&sI& zoSVyg6>tAuri3gs$yb+NtD!B{V0mjaB1?hnwhPk7zuqbPw`3K(NZef)awc(Z)B5Pq z0BSz<`pGJ4NpK%`M@XRrt?cfuQpFg!rO}c{{|Nbv4uI1GF;ZoTr;Cc{F8YN)4w>DS zU}1BKj}Dh&xzoIGkxde-s~)$ATBLgMYUqJXj_$Qnlcn7p_1%TO<9aVVKAmBE(A1C4 zlm7w9h$`QNO}ACCYsYtjK%8?z zl|e!_(wwxnG~PT;Ld8(;`7`iqrHZ>~J3F)XPrvNSsQ>I<*e##7WIU+`|EdkHirYlbCET0lh*RJtulnD zB!1YhHmGrHe84N4{kiXu<2~T0M{>OX{<8m@A1D2p54wZB%+YrU=zo0wds1&UW=WYnhC*`jRql z1gi)u0_c$Fm%%*U?usX07L*QNS{A3}!BU#+eX0h`Ai@F(*F-H*qOMp!ei}CY)+YUx zj*abh1;f%&k-Pnr=&z*jJ^AbH%IZZX$6zT4bZDUd#oZJ3vltAexvl}aA2g!&2cN}j zn8jQ0?QVv=U(kL|>96y8&7YF4bY;#HMm{4E0Rk=&K5$H6L|h*HumH{Y3$RvX4`PXW!Fdd;}x8~+}KdLs``fOA+u`F3h$t% zwsxw5@4~OBgyd3_jY;UP(ddc=FN??Y#|+~tL1}z{JEv61)Hjb)vV^N|diL|*uDE4e>h7+DF!2lGy znT_Pxh5=_|r5O^(ntzX(`1?()$xC@CPuhwEG&QBeqU|TJDQ5h_)woC!D1V)|v#F`M zd4P(_O7e@qYR{2nCkgwkT(#*RU#vnS-*U*gZ`VZ~U`2gg8huM`(QTgzFI*QCjY~6H z@DjUF4t9%xv6~GSzOs?^|8at?&3v_J@IO*WYuWQEEl7)7WCo(w8Hl&}!X$Osb5V1t z6ZY>*|9Tkmr^)n}(5jg9(dXcSPmwtTCWP$Tao-Cb!@Iy*c9{{Tsf<1ygge+#;LBRcFaP} zRoY-LNaZ#1K39nJd}iCB^#ILz>iSbcv{g2eP-52lrQz$>^77PL!O+s0n)8zfr+5Yp zg1Ja?|EkaK9}X*YJ!EbE_(0B=?~f`^8%r)+{oPpe`w@lY{tb(b+Y7uDzoMOlx|0cB zuS~rJ9l9>YtoU4x!Nf^?91mL|jzm=hqVuqUeoP?`#?fp{|E^Y$9|SRT*{c31c>$7x zxsh_>Muj?43((qtIlrxt5`r*CMqUz21{IpTDJyQqgtNTp7DpCDLsUGzvyMUKi>D`A zYEw}#9UW0x(8wkTbm~O2LoPV?jv*B{SI3Zy)q+!h)j24Vo{?Z(m#&d$IFokwU^RH^TFIu43 z9^`(4+RT>QI6VGkBknVFF>?+d{YS2$%4b*S+_pzC1F(YA4lKGuS*)l_BWXEhYi^QL z3yCrNB}58&f|L+bFVK6y#FjF~V=k$7jaw4b&-ADq1QAM%{fcoCea_K?Z)@Xn3N)OM zoW{TD?VrVGh|6&pPZm9oW2f!s0Q=k6+>pd#Q+lvHA=GIkB3_;c*nzRUAsIBJ9&piE zbL4GMfY8XxhBcp|)jQm1!9D~b=gou5U-37Bc^V?s0}m78FWhHt`|3L@Ji5*wxGZse zG2kUNwKn02Xf3A8z`NmcPYmDT4y67qZlDvvA7Dg*@>1Q_l-v^qK{ObUAbAlQEai@h zl_iZH3N5eV$Q|f2oa-YGK|Pb@NbH`SEShVpm`O^K68;`OP+jY5jfA^tyhliTJbdPe zOp|VX8#ABvxw5jcHMk9%5@_QyJ+B$j_eVU%tk(T`BlK)Ex8JzbqB-EWFIOX3#JsNO zHWK)o=nr6Yd2m|4D3J&Hd2nrlc?n$i!!o|ME#b;O<(7V>ed3*0yAn57nXVN|-sV?R#R?MBrSvwths&h6v4utZ zr}U1&q?QOvcOIgz#%zwcj!b1USi5EqyWdsgi>>;_rDbJjABervLKZ&Lt#QOP-4%j8 zL1NfkIG{~OY*Oz&O$`r^FD~koKHCYS$cC(#K~^G3Y8r#ix~pBLO3dpiTN`0`dQLHp zyx%{j8Us(Hn&KL{TG^!C|JQ#){|t}*D+U3ZxAL z+Y9$=F=z)Z4ck#Q!`~>WfQu3ShM?~J2_Xzdv=g$L`Mc7NJSS$t+1bQn!^YpXrtH3Mz zxo@o(tRb3n_(L_e3oMnEIKIVcJeU6$_PE`xsf0!@`D+R^GOIkbCFYMQ1tNaqwHn6& z99RXi2mZ+WpBN03%@|R*9I!2Ma=V13Qhn#=&fEiqtpmTE%+u{Pjy{!iTs?c~;hm;u z#nb6y3dVTGA;pXtd}q%Ggo7nQUpUY(bxGpfA;xp!QOqbF_0&OV$Rw>TJpgL5#{5CJ zQ#?{wQo6K>mB04q$LQr|BTsxQ9BKF-Im6%njLUgoU97v)2vl`Y! zPwxo5dsfzz^=%k*EJi;MZIgYMK7%L4%5-H%9wR(T78_o&p_{IZC>tLu{x&GGU|!k> zv2q6%UCc6x1;Xbq5)N%-07Ko%@t;_*$*UJriu>U`~^#J$Jg8&fzm znZtutb_7jkc7i~26L_}l*m3%8 zLXtyf@R!0uvkllK$RkS;O=O3kgC)%slvlhN;4tgiCBOOQ5H9&W&RWH=5vIm*xqmT3 z;h%_8pGBN5EkV+8kK+>A0n8=<$;VfV!I%5UlR(O9+Qg;lw2+kp zobQ0#P&q3y$zyy&7_qjb(Pn;LUg#rl8|!0ez=x=h?sHZSd(^?KYqbtM;b1$7al zB!;{g<5{l}3wUWCHaMVCTPKi}XRWQQ@+OR8Db$(tnsZmle~|~E1%Q42@&XxS&C6YJ z4K*b+_Q~XaUCM%a@bznz7-F~qu}QSj6C`j{{k?%%Q_~7Wy`;-QTY4_0K;~^KgUi)+ z(9!<-4IZj?kgw`to5Q4Ik?^ayb!lu0Fav-_E4bE`I~^o#+gDd$&Pe4J4stMw!Ye%O ze$#k=e}BA>gk%OY0Qw&=^JV<^)brDb!$@V16SQ_qnDZ4ft!Qe@8yW>74uw#c?3%sE zdjV4GC*zyV=BTTAIg;x;P=@w}Nx1ry!_x0Z1A_t3Pn(dA+fgU}tOu-Zo=jZKdAwZ4_zC@C-Fg>G9x!&8s(S?+cA942-}St15({+xt?xI)uE- znUQDQtIpck!=OB(FD3pz7r|xz0SCt25ugm`!F9f{dz2pL&*7hxI;}6*r~|{|cf2L$ z(CZc55rb2SCx_@ws%cG%6L=8d=y(yeF?=0QM7|GzKIJusqsA?gu1v1LlCuePu}>3_ zN$~S7&U1k>OtD1*kWasRhwMG3%k(G#A~G=QA*6(ogNyBWD| zz(9&;0@%8iFHYzPtw`^lN-Fu%Pf>HqVn`+h@DKvYAdpZWM}k+Wzclt{cq0P< zy83h+_%B~j(B>+I5xpXvnsAPi2N&-PEZ~cNHS+HI19ZS03BPyo#pd{tz%0J%<3tt*&rAm@sN-TC8uw|DY5@ZXjBOj1lH-VD z<{4)LUhw+C!|T6+mbxxAs(VA~>Gj1i)&C#=u6%~6jw&RNDV$v+SQ_a?^M4X3+Spj= zt(r#=RMz#f;O@v1CQdL`wy{BVhYXuV%)0Lm+$s7fkX!fc_$`%`OORG+F%}*rCTYoP zTXsm=^(ZirV0R&xPWzEBj)!Fmo#GHWBBiR zv}c91e=(8G2&qrwP8ln+Bca-X%~~mE8)k?99=Xn=)RMRU*T+EeB?%V?A0_U?PlR3= z{h1yCAX6j{=D3@1E1MX<%l@NZlq0`>fprZlz{h*DR-sL)eH$5bc$r}=eNP)G&z0ib zc{#=Gu8a)hE3oi)rWB1ki3p^ff-rk--V=*2s&$tjdMZ7tAz-`;1W2v&$KfD|e-#MA zdLa*uZq^zAM*9Il7!`yB{XTG@*iK*m9pP}$=?LkVDqh9^8Lx$Gyq;h zjhvr7Vq-wgA72G5Et^5~>ZryGGVBlEFE&8A%oC(+k`Qy)fElp5Y;EJ7HQ9o{yuM?^ ztF?bNa(x#63p>Lq6_@pVC@*Epz!|Z@)Oc?+tGdHHCF>u`3`U>qCu7gX9t62g7Ogq_ zK1K%rS~qTyU;JAV=kOfS#H0|kMaq2|i-I$~bJsDFAO=F3nl@n`fkc|5d8P$G$+1~Q z#pMMvAjrj(m|YcaF(iqySfo#XG55?e%8{>bCYzz@_c1%9-cdHAB@vMfK~W<|@l+@@ zMSHqQS_rrj6Ap-qoUXQXZY709V&xtDB=;g#)k~vmiC29LfZrRh>g9YO{SgDo-@)E( z2Yy0{Zy&`n<{58m69vxSe7CzR_h(ad@y`&@S(MmpfD>N)*%w`qzTeXS@Az@G07#E+ z+3GM3Zzz6H5Ca5TQ&l?7Pc{RL)kRo!jo}ZAiFFhx`A858^}F`jrVJrj3+h93E?Ei!AYHV(KDRi1>tY=hT?cnmZ>nleOU6}#0Sbw>z|WW z55I$=&CQk@FAWWknvaAt^QMS{H!fHqYSR)P=|bTM+$RON(fm#)O4UQ$XBRk1R~B|> z2SyA5hoXVDc@+w5)nTH3;JfI0rq^H%WH#SN1X3KdlbgI&rfVz+9SC4qmSBo0O%2qs z3m?S`bt8P5{$)V+$dlA<*tTVie(9I;g1p+&l9mv&^zKpocQ6k&1$Bw$mg6l-p#Fwt zU+nLkm05M~nf-MgDCvM|T`L4CJ+FG)l}s`@y)a80l!Ay!-l)|O;1R|g2N3EC9W?Ff z5d*YmO1d?^B~OI^$~#Z0z6oiri?#xrOaq|;|y5&>7 z+Is#REi7F81ZnmGKr|+{4~VISk+Cr(5WKTx<@;xcYn35^rsY=!SD1O1m|hz#>#B9y zBCoasc(9TZQz0c14Tv9|D&QsTXf(T=?^243+tx6TISB;FJuOEfIVvIACA-@sP3^C! zxDNF}NNv~r99$Kg+McPD24vC&O+bNzZbV^Is1nE4zu8h7c3=g;|4KrmKB?jp^<0QsXQ2n9Rv z(&S>SkY+Ujc72H2M*u=H`=s3992)R)uBE1)!}fH5C(8956W6()DDKMHu2DQaaz47q2H+UZZ*eN^jWRX5 z52z(&)xD(IYC^!&X0c0U8-}tR57KY-8~MB>++i1$QfGBTJZ8HLEDcy_h7YZqe9iMU z3sgS%O4?uI{}T6FRij6GzNxyVCA*TX8`%LgT(uj4r23}|;31$M$9l)bx#lnP;wrsY zxCd0|d4%)<`i}i0!m@DJSaX%Z1`&zkG>C;Qz= zFgt>MP>)_`Tvzq5^UKN$Ad$M3^tdMZkn=t3CXUF;6`8qHZc>QTq+0BP007GMzqA?e zMFXUZ!9_0VCBVnsR=Gs?2HVoXq!TF>m>H1h3}_(v+$?yP=*a4#3hUlsqqA^~y&ZX0j{_o|Wcw z&(Bu<&dCe8A!8R%7mIPMfO2UPOQ6~1K-8n*KO-zlhP4?%)7p&7F4k`QrQy&fPyT2+ z)JS2sfJ@qZi%sunr+A)f-96?EOtnBt3_$HtY%V;mw{U>uj79_YJU~QzO_JP_+V8Nc zmWDPpMDWevr=cWr3k^l=aSFle$Zmdq-)(elX0O0SU2Lc4^wKxmW~KJ<|0KR>mS~U_ zZmP9rk2WcAr_j#8Ti3e*8C-wA+6PeobNIhOXROpWa@pDqgTVl~_&Ow{-CWj!2e988x^N>okuvzya$@2{IJPI!D#m~k^$Z1~ zyHkY$R@B*BiZn2UvsUMZhJd{U((R&bO8f;cZ+sG<0+1n24GnY{y}lPJiy1reQ{p9e zR4zgoc1FuiE=K_AJ6%WYszkV1BI5H?y6LX%7hCBU)lR#!al4EG6soR&V+OKD!+sy7 z6X@w!ms{O@*9B=tH;w;jI$MUZ>kh7W7-|7dG{sX&GC#R6{^O|7ifTUBqJt({RP}#2 z^uk$5Ru&;(cHE_-ijC>gAm8(J=8SkpNoJ&k~X6#X5_>o|22%hz4j{ z6>Cj*sg-`1jr&eR>_5tpmHOJI15h!ST}*{tR7!PaGw{_3dD=Vk^)9vs8!&xnQy0(! z(cFgZd_or)EyQafI}leeHi;!cl1;M_RwP%~9>tQe%#OQOBwfgVsMho!@s{&i4v3%o zQBf_D=$f|WQ%d@O%!t6;bE^(6Jsgc1gq`9FM&>-~~zo4e3{>;G4%=kef zf-rxz0zkuROtE=l4hHBJBp@#L=w};kYs;z6T;czr8)f6JVaJ51XW$wByQ87H`O!I2IW%SrD_^T{cNnG zr8dMMJ7R!-%9b{|fgGAP0Z_0iie!>cYCw;V`y(&3>3Jhzuac9M!^v$Iz(iRWWLm8v zwCP(n)@U0z6=Y!d=k5c~!*wrH`ei|nK7Cycj(Lq@(X)zUQ5c{IQu&` ztrm1Y;O6FsoCL2;LcW@Iwji`Rq%=q}0D}InU$W{EdV-Y>ENN)a$*Z(i__G%LbC5G2 z_&9c}Hv7n+Wp$u({cm?@2L>o>cVuJfteGO=?a$Gl3d%5bZ`qHDB3XH{xSikzLwR(X z-aqPAWf6Gj8!3RES~Pz=hrfh0r@+$hT^7<$Z3!P00%#F9QC(CeEP&0$M&A753ZNX1 zs9{%nf20Y@EzkzLLYoW=r+^}5YIb=SbB$_&kN#6OdA5)I!lkdbNqtDWNPUP6uceeU z>0m4SQx!_ zW5D@HZBAM_HXZ0*{Q{Z}tQ`PHUroXI=36%(o`zpN)sJ08pRP~S-YmlioA!E?Wqkvu zA&@Wbx*Em!#u?|A>&kN2j6S*~<}1;B$8V|xc=MxZZRwPX8Z~lV=xY!f6fgXhc?6SJ zZ0+od!2PF9#;K4{M>g|pc<`yZ2j+kfOt=;h@aO2opHId*w~kU#+W%5;B91hjQ0_m` zCLA76-I%#jEHTZKuL2gsi(+!wCGVPNFl9$>O{hJyH z@I5h|H-maZNxV88YUVkbZ~4fJMc9U~rAT~Mez<--THqQ;9XsGMg-JO9BIMHjZxSw; z%*W_~q~WAHFMXx0wAO0`cWQ;v4UJbhxE%NDuF}(UiRflOdd)~nTKv%IbHuGhiG!Q8 zqL9V3Tw6!}RfX2ZO5WXiLb{*Bt78IqP3WsYTvdPHmsjajVzu$V9)tR9-7Z145&T)m zEpx&vJ?6!1om55o^mbp!Yx;plaj?WaX zS$D++&5F3UG|8ndYg$Xb)*a|h?dp*S2Nohju&9ydpun*>xt~+AG;)VVZ;lT4K9hJ{ znjQ1Ps}f32_FZKAIJQSC`$-hOYZHD-RjsXOBw)Z0pP^p7?NS!J@qQ6hdfmdUa>;OI zKjxw7AnE@3L2x0giVNAn4YXI0qsC>z+4hOaRIS0 z@iGk!0XYGU;j6gNHg4cTPzwG@}Z z@(jdecQ}TBg}^CuUG_fqk^0u8n7X8hZT>8))$pDXHmeYJlK&vxzwf!cZ2J81UWdCv zE(y+zCLdI$NV`NqP$RAohx{B%%Z3XY2LXq?L12t5I&;CTTMYD+hg7qhS9Z`ra}q#% z@*u-%a~xRpQ0p}2YxM>Gi;$lUZ#8dNTY(LN&=BvYy*a9mJ$ofJzaPJ?gC&@mg zMw34`GAff+VJA2<|F(-vb<}r&)7=Y_+UBW@Dl3*gnXu86OND>~?&hW(Y$4RekUZwH zri~aoyER2|>3~iO5pwH}XZNCbY{hl7C&>i`1(AD{ubOf!eVZ265d`g87ELfmBPKU@ z4ROQF#AI9(&sA-MU{<+47W^a4qgBqyo4XO1r+9o|S7SM5U=#v&@df4#M3_@5jkcFt zWEhusW*S8|A1k2oN-QoBBs_Z5MTylL(Nt`;q>vyq{sXVY6RrMNy6(O2a|b|uG{qOb z)6r+B-n4M+DsQD^Lq;7Hny2jXM+_u?7~BVy#VHLM866Ny@iBxcsJE9w39AyD@Szm-?X>2y@)E8BE86NoN7$&!SD%JJ_DqvR6;#u#X(= zl*3*dZIy8Z|GY5D#LO(+kB?wOoG83iZ8J?}SVYZKr;9S2La9|< zg3PiOjZB8E2#6tz^$=M>v#cRt_gHClZY9P`p^vay0zW2)M?73S!FQjGn$RmqAorXJ zT^~4i2>2R@sVQza(Ql0R5d}~s&Jph|Y`%`HH2drE)g@#QH zNGsHBq;VV z<4+LN9f%6a{R{1#IUjCmI4fACSt7tCm_lHt>NfU*_Qv{D9i0ejgcM?K{?v4`SiN*V z`p$@1Q(y5zDxZ64zf-R>ChKC9=G!Hfa^ZDkvvR*ar}_VUw7`^%L(`XEf2D)_#~Thn z@MABg0$Jb$J`*60Q)lQWaCZ=(;^(q z)_EoBDJs6&sr=dRZ(oBPVUe4bz#^DHE+k18Jkh&}g$t?d+vG^Bt)-tWd6>tp;^ZqO z)gz+i-jFIrS`K;;L;J0zwqm6Iv-n8x8h4MQQah+C@GFSccN~mBT$1%Xyu@x)Nr@^a zV`~R>WPl6(_ug57FLr_M1Z#=a>fOE9x^EEzzRsR#^Cnu?5(hx z`RL`5E0&^D$^j=2IOR6A4^l%@TXF@~vCQy(g56^DQSv`;6njP&_(W$VbH%+^3U|o z>;kvB>x;dq8lfI%4Zj6Te(?`yJn=cxB&)vwtmr|H`3$92HoT1O5M+DN=vQ%oVhfl39O23-e^l5v@T9_lgW%fJ(Y1OHoXVgkSxpOEPw(d`=JQ6PbMtKM6? zN7y>TdS#=OENRr#wX)tpXRf9%0whh z0H|zu#hXC(O!HMeeO%Ch85!}QCv#_#vIuV~fzI6ZK`M&@MPu_(9EjF{@efru7xU@k zjy`>$*)l1BJfblB8yjIB#5;VBM*AO@xd!C^mOH|4a}dIlHX~ZsH3B42T6~_Tfr0GpQeks&WFY0te$k+B`dsnZT`M7>0%~x zz6uKw!FI&c!B+<=i45wa|F~L-!<1 zGiVzz#o{gRNM2b{!LK6{b``>?qtYv!&*{G)?wXRyn?ZWQb>oW)0@OFh9;c$Cc=@X4 zfH6fCeM+e4ZTgTwRO-aLjMWuHsOZD@ZRu*CersikwWq(ys3v2hy~O@daP^Iysb&{w z)8tvXhPnsBTW?J!v7$nbgFUTdp?&rPFNsB&=QXLCvizIV>~Y>rEgvud>M}vvaWEIU zSKfzrZjoW>Lc9%p<%Py3#mHU)Qw|JDT{a$wx^QcnYlAP!F6`E~rN0DdL0udv1Uva- z+#aK3p4>I=bI2A3h}tsomtTD|QywS8eBd>@<0@h#F3Dam*%Vg8_ts~3SlL~#R6+1Z zWlIjHN=lZC!jAMY?I-_JFC_VPUBa&RvCm2Cd0>r`_Okvbk^92m(7o)X!Ic4~t!6_l zxx3rNFuVS@CB`bxCz}0TcwHgAV-6~3_OMSoVP?#6rsSZJ9ol1JD`Uv{UKwwwhAp;PTxL2m^bB)JPXTeF7yvseMZ}~av@W~0f8ek z)A&)E<nfZpo%0Ytz=$UY8CvOy{eTE z6QFG_t9$s$3)|<*@Z&T^g!)jZCr_S4u}jG}c%aN8K&577avUFjKRl1X!G>|%E;8Tb zGNjd^$k22;h{qSKpvZ0R?RShCit3;zmNakGEC=)CGMG@swL}hoZJkSzVr*DVOA+}2 z;}j8krI;@2bK(`BupKHf<5Cb)jWBX3mAA_BN>r~dYGP8PV>Qs*^|jH>w?XU|j_Cz0 zl7)&@^@Q&Vr^tYLCHT3JTOK|5j}a5vWQLu6OoB$=vsnBwNOc9~HL4Fw1E~3C@W+i_Gp`cCxp%bb#38t#}bg;{b&n|xsY>D3=AVljKTfpMC z?j?E#lIZ%9Gi!3ijjx-=FA>1Z9Y8)a-n}Oh(7jmd-M^}-mJWyi%=;{j5h5>*z9DsP zY+`WFJs_h2^KxsU{{!Y|6RnQM?;l*fuz$}j)N9#DNon;BoBR;y;#~?Xg`E9BmbJT3 zKlm0U?=bhyT{&bFAg;>gG8iEipLxa90b0cWIn?fwtZvCe@kp=yqQji*S2RhfA4Qb} zy#*LhQR~OV^bWm-0#v0|rZ_`lncp#)d~ptRMV;GQJ|z_cEZ@KmoT#Aj0K>oJ-L!BK zyzs*wY~l6zvmA%BhfA_Bl8Lk!Rc5uKTlfE%`tEqD|1W+sdu4MkN+HV3xULmSB`bSm zmM!BNS0tOrMTKi*W@JS6%8YAVtE_A;m+V_Iiu_*p^ZorEkKZ4Si~G25@7L>f&htE< z&vV`$CfFN~1C&6hze0PfjKPcs#{*Kws@wG<4)iaR?bmf5RCp5j^U&nJCIL#>`aVhs zsXc_-+k!fHb_b*jR5WtptL)rzue&&Dk-p3MJ@pj^3|b5EpE@o6;7<*e;=haXia6TT_si`*7uLDv}8&b z7JXvBLn<&FQFHdicVtZY&C2qK@7%!grUdUQ4B_}tiEP&-ytNM#=<#OdzpS3?v59gD zZ{nsvL_S#{2Ky#5+B+{BKw{?n@rx3 z)S8xha{mpWLMV9|r2*b2g=T&G;-nb~k7!CLckIyyXe%ZZ)d30BosVND=wq)I+mn^o zQDzoZ1BC*{#wTh7;IO+MN>TW5xmOk#NF#k#siCU&O~Qd>m62cMUk1{TA`|shdusn{LqKulSBX zT^QZ=k5gF{3^tsq&zB1&Or9R-cP1{h*3Pp(a@v+fO2A+zueHTtf46JAgW_=-Gg7kU$T115}3{WeA~$;s7A%}oNYE~}mrVaBcU z#4X)rl#)o z?y_)UK~Mcq<#i)Ms<~_7IPVV;3g2f5D>1_2k@29`P^+V=o%dmF{+w+8* zDJixnCXac-wk@jMV>&j}o-so~P5uVsWf?Rj)&R8*0AfO8PtUiVWQBpW*oQeQ`SyM*I~VFrpj}n4X(S~ z#9~fX>!MV&j^z4~!7+WnI5ctdwvWhb0hhKCbcEnNLwzZEvbZK-<_@nUb+o&DBWA+h z!cDKA@cN+-2BmQ%-$%d~z!x%PAL|Ll{B*Mtkt`ne4k>4t)$M^aM2`-{-%1w*00j%m zV?a96H2Avb!TB1Z<6tD1+wq)1h}GvF31Ek>+6!(&EgeFeo~@Ns(70Ij5qPjHi>s?B!oTV7&Ad~Wy<3;4__tN; z#rd6w%i~PNx{$+tL*NqggN(N3zwcs; zf8Cozz0j?`N8T$!cxiDa z{M}jC%%i*@C)M`N#VpugN^UM2+(*EZ$uAyUxqz38?v|9}bei>Oj(PERYJ40^#}lHz zQ|PP5HsToUl5Ce+t?4v;$e7d+?_2qlX|Y@wo*2<3Yx8P?RT{Y`vxAf@HWH>4;KjN*7e` zx@xA&RepD##)8H_sgh;`kSMWe+ZY=B=wd<~EVirs#&qA5n&o?Rw+3L!q&3Mv0dq^N z)%D3uG6aQU;S+X1nCPT$x@>|-ts_)hO$M!xbC`}a@v5zsyCvq2v8;8L5^z8Sv~IH$ zfP5Fwe7HdcTM+TZ3`RmKOI=<4{21C+Hb%8Rp%vS{`>@qoc=}_0xmY=q0uhp$W@hAQ z;XKLiSKL4{%4D(^(j;q!rJUiBaaVK&aG6UE%I)trv^|{%>Ri4ITa+Cg)|{6U{0H&o ztUemN7BmbgWtTI#kBX7r3^}6;GkmkZqG#hP`DM!2$4)970?kpd)dw?$Yy&l75+CT^ zBcJbn{5W`s^zp37e7xdr?ceG#j>LMG6~W?$mYVcZkL-iHF(N61f6mPfO~?J;X8m}Y zTfd(b$cw{|IzQ!jSikw5h!B4cW@0xnWg$GK5~o5W_xa@?`E;(m%f6fSH=)D!M#s_* zJ$BEhU`K7|>PRx$wt)Q<8rpuP8i(aR4#J6N6a)>XRn7g6zA_w* zsE^)d*jPWvIN2ArD!kGy5GsFe5pSz+XQF^bdQiRTki0QM+}|VSJ4K0Eif_ zD}>%ymZ^dBalEPgwET_+{~!v=Nr&~8g1)3S`1o^%*Hc}YinB{I941}_#OA+v=~ zZ>O*C)tQ@Ly;2Kk{kM%;PsUxnBDB-~0>@NBkh3~TjdgKrg-N?B7)r&cK5CT38dyeH5<^Wxw3KB- zF9qWAvycQjO1$l{P*_?@YN}-mjs@!t_R)AFvzP{LZ@Qp;ZozLHMq9-FRJG)0==Lk_ zn$S&2Zv~Z0fzJA99=I>`DgOYd8`JXjl)KXbl_)=9`f!3if@x*kB&x;CZqrs1FPNP|^dkpwsgusX+pv{7sAS32n{}Eqd$#zLmY>1L_ zc65y{D2f3GMHGs5%a-3kfD=IoU0}~RqsXzm5-2`uuaj?EqJK)+f=h_%d%B-Ay`ggU zY8UBQ0=K^Jx{3aT8yFZ|i$w@*lQWh)UR3r(A?5e+xk=2DWGfO|jpTEj+X73>+e`MH zjF50BF}V2Nq;q5i1`5qEJoGjHDDZvcMeFi?@F8E+x zJ(&h%Ah+3UCh;#cl< zGKMmBGGdK(IE}C@{?z~d0i=KOHuJ_PSUs=X3zvXS`il%Yr!Ezvu5EOU7~mU7Dndi9 zX#9#Wp|u3WFj(fisvRTjC%!i*WY0{vj-mNf`6D_QA8obveQ*(en62+EBTLhEFYkrf z)kWRDssQ_HRrgHxVvJySk>>CWlnGW$$&NTyugR!`xoe|@03+0yWfP$EQwQi~|5aPt zD6Jky==Fx)w?H-`MvJ$C4*IA@;{YYaQt!O?Z+%=CXDJZB0luJkf5%&X0pey{Efw38 zjk2CBf_xzFc}GddNm@_dL^e%2o0nQ|j^gCy%z2xl?D%z6{W{4uIX?!;svx}$`0@v` zofU1emtZS^!2V2Q_dW=!ySp88SguzOr0z7{r_I7=^Pfr2<`pIKX3hScUgcDNWVIM- zz&n+FqFF_96!Vhl9S>LCt@%aH4*@dLPRWn`ws`m-{NZ$FqN@VjsgtTIAm{XYnvT;W z7q#0VaqFtphfc*oiYYQqEKEN^J&;8__dl#72MH7vHvwyk0wUPvV>^3~qOb;0X zl&~h-JhmTQTqD_YXt0!lD-W*WYq?NG5WW3Rkhmtk&q2RYx)1CFT0=ZP&;O3%%v?hP zlUqDD3C!B!*`0;R)BOCE($Z_Ln^cect3Jan`zXDHOX`#R#6>V=cL`E}9KqsGGAh8w zwryb-!;TFU&R@C24nn~N^sIpMn*6SsEh7`BxCO)r`-C*@ZdM_nodM;BvS#e*dHe#b z6miKY5D(t~N>eY(h`J-DA)Pwf^a}TvGPJjp1HQcU8Ymy9t^nf27n2#ji>x7>0p+1C z6lIoq0|Uib(SX$*mU+CfU!Em}jk-r;0q9t_zMB0uDXp*KZpP9lJPmh{syig@iG-8fh@O=vS9JSNt_}7=`sF^yEk0q{@oUk z&Dr4NU%C3Phk)oOgm21(HIdZj(=#xEy2fb0H5^tAr2c-w{)_U$8xqC#ADL)vysrhncFYUoL%W z`0cClCpUcG(syVgc`#6@aExj^KpGo~<%!+>a9~^&Q5&vCmBUycLjG^G|LS$Hda>Dy zjpV;=BF3aBHbmT;?{?hQB7=(J_xY$dmP}woDJ}EiFMkZqn4-e>(V7S&C9ZB1%H&`s zCR&_p0ec5ZG#FoY7^Jeioa~_3|GUrdcjr8EfgcyUQ|*UI6ybg(k??K~w4szNgj-Hm zrw8KuINU^`5o{+=dezF}ud_|W{PDv$l#I)KO}6~@z%!GhU;@g9pneJC(TICK3#g

uC2R$tYT6bUV*QrM%aMm_C?{VGFJQ7=xN*X4Bz@rr%c`LQ ztbiJ03@uHR14^KrWJw#f4$MCB&jD{JiIJqZ|8@lebGCmtPmZT7j^BOfsuAShF;$}_ zZMC#vn*LYkpGGnC#oVVV9BRu;Z=iVgNMK&@z2%$fllO+ZL#Gdu7~RT(=DZF+r{{QZ zl4Z@b{CcwPtF-=8RZH*DNEAbk(`iNby?3lrw#hYjZ;ahWC_fl!yjny!Bt_SUr3NP( zC2bLfBh+sHJ};MQ*?#vO)w08+@7Ju4Z&@D$v3m!I-KdqQ9HK^4L!BG6{1%sI4Dn9s zfG~p&FGWo908I`6?VlhM`@@etyso(YB1dROrkj5U2bwE&qFnR|<<++ZX>}hy@LNqo zJ%bl0ycB&gGHb|96jd{o59c<@lwvbxtIGi9$|GSN$1S-r)Ua?(M8p==%3&9y7V0+_ z)&a4L$xV4|m46{W2!PO9ACXXq_rQ#mHl7WG?|82g+SLU{Fs~E$8R_wM_aOo}Fr+Kvoz^R1+t?+TM6EH@izBZSld6>?4IDfYJ+~nod&9I8p zWBU?{P0q1o1~i)w*_vq>wIbbd|Qck*64Z_}xk zU9-nv%sKuG>Ksdl>9G3GPecqDo13nuGt0IKUi}1Y42T;4)f^HlSWV>nAk+%XO?jSm zhE8za%^XFgAS|ghX<}ls@L8)e*Z$*I#g}9an-HgPm=b9D_XnW)?VcUrNhJ~rtpM-4 z>h>Q@vzRfr{6RQ)FfnV^WzJBDGVr53^QTnpNPpA#F|O8Wdz)U zUfvCLS0`B#x-`~#t0xPDL(6VJo`^n~Z-Qrkh6x6b{c=16qCP4-)9DG-Dl&83Ap==zr@9CUQ16;k#YYbQhP@q z72>xGYR0#?u*pZyT+#@*QVX;4aI5P@qY{@lvY%};ob7zzRJE~QtQyp;YCHHIuX{E$ zdfW2F>BRrce?a$9k7Xat-dISi7-8V-i4SfTo`r7!XA)ssbA+~0kQ9gmzLig4d<4+l z*a7(t>4Xr>P1K~0L`k@boXnqUu4tM)Gww z#K{RI5C+|2``N)iFg|Na31k$oU62z?gu#JB3>~?In%t)-{d{7jEfGX-(gfblO2V ziQ*~n79@(RoD>L!c(92sU%@M+#5Mh-joyhek$lY(8MdA#QJKk4ybx>M-D!Y*(AS7I zF?SXLme)^E;U)`J0VddrUhaJBats?HB%4vfvPU?25d_PUbQ@fj`uvtQ9e zda?_ySx>F$oALP zbUe6s?9%W1E-!Gw>I*+2k2~gIi`$}evp3;ROR+1>Rm0yvO-d94A@ki5uBX;3iDGk` zDASB7+N7yykPn{JjumM+DIf&&9*Jkq zgv>1g#Zj^+r_>dvYN_&Vd)M`00*-vtOk3E!_1h3QkV}jP_pFaQldvAUY$|S%< zE-!$IP@wZ^U0oe-ZKWX=5rXcXsB&m_CkdEKMKo-Llbp2*%aXh#X+oYyBx*8Lnc*03 z4jaGy!p4zKybM8E0W|Bp4D2lpo+z=@IPK|UX*Q_+nL!G#ge0P0!B(PCLbVrTE?Zn2 z%`5PUEKo2496R#QK{~x<#fodhJVBE8QoEW@YZy33x-03YFW>BoPUdpG$y?cfn&9(z zI%A-;N{60yL9++)>msmv_#U{n5xust*+2{mgP}XJOn*fQro}Y{=ID>y)pBsdy6|3t zT{zC5sQ?^>MJ_v5PK`VWyu0Op29rhqEM|aqEyTo%mn=i|plirSE%N<@hu@_4pQfdz zYLvyQ_IvSV-?HpR1AUC=;%gRtY(g)8&>T;jgCj~QvGnORVK(B;FRp)0h6tg=;RPH| zzke?<4h3@VWMe_279 zROR2-YL4eu%>1kaG7)SQVfl9Lp%m3ih&Q?e!s(FklG=OFuCB|~jOIRo?P+!1 zp9UNT#Y83BFJG0d_yD&K&_EsetAVbMUlMkx8_l@95{~7uvD5wYeT?#NDo`^YNbfv!%y2IB)@TJ=>8~?L)2emfD_+$ z?7XIrObJc^=bP%#$Xs@!S$5TJ4t$&k183QFBLGZY+?b>5qyLr^g-{^oGJ164n&_Fa zNxf0T=s+|sGS%9ne)}HG@(2x9O=O|$fHiZ$Vftd5os_Orz^?GL5D`44bwQ2B@59NRx^+)22*^0~!pnGQ}#s6@A;(@#iqCiSYigQp}CR|AB8u#xS z;1S}0Swr@@SCMaobb5QZ=7N)!X#PBY_kzM}u9a?q{JY@(7hAQ~!j{Kn<|OKNuf`ykr47pYMLD9!{MVJAsI$ z#T``3Z5!mY0m%d8g~cnhV(4FG(;m?#@MyM7*(Ko3ZDi`1+h-||D(A2f=xD>1he9e} zfbv%1za--&e#+^UMX^4W%e4g^knG;D20%w;MTJtpXUkwp|FXj zUtcX=S+X1AIGmPGOe?Gzie3hg-^NUqK32FR4p>9t8Uqm5tcCNeNPTevZ#D(9Sie69 zwP2i6LsfgjF|C5a+I6dLR|oqGxd=#e&!>zD62!NA2j$0DV#3y%S*tnL2!~}E5({*u zlqL|zl~PMnP2PxXfK`>0>|A;M@Kuv7@KD!Et|BWb){tjvM;*t~HPy7VLS6iJ4M~Cr z&z}DQk1nnV^7f{oOUUe;d*((bH^y-dkNuPxqNW8HqYpMRz_%K!0hqqex$c)`b3=wi zuU|w9ZVLcaOKh8YUIr9OjwOz$MvYw7ZK*V}p1GgRiaIVy_(8D5@pW}sz|1n#9U>MhbG|_OT;I0fy^bMk8 z#EczCRRF6uI1*kL7TggIeV8|tBdSpcj#0SDoB~kRt^w3=3Odj;(17JEAb$kR?rX~Z zga^)rmqbHG@4v%sl-y$za>M0S^-qm9GC#955(6@6A~cQ4SC*)bEYvi?t#{4(2)PJ~ zR!2Zi&X`#`qaK0`ByKW&87G7`%#-4{<_^kRFh}wV2o$G$E^f$>HRo`c!cRkwc^=KX z?@?6~K4UY67yVYqshE0#qFBj3#r2fg1|I=9=CmmB;Q8t%E7Sao^KRYN&Aj&~i&{SA zma6ZhH!6NaoRp)+t^7kRXy6wX%sW3!yn~y( z)*s$~L#Vo185H+t_C z6I*BiWd4_r@_Zr~Pk{|nYS|g%<^k=$W2g)+^xWVcL!7#rLJ)x0uY^`5^ir$ zOdY6rb8@k}>yOGwc|@OF1wX||GOYMA{L(VF(O|x#9H6rWF!78jxV*0%>$fIu*zz~y zI$6X;aUL+OHW~^BM0i}&cCNjynpTyDEoxkCR5WtT_ESh9D+RE%hoRUIVAY{U*h>%Q zOv@A~Y}LgK$Q3fGG)8I1fs1RlY~Bz>JApM&qp~{y9UPaW+*7KhwSd@Q8{?=jE^aA@ zF!6IS?_mVeE@~H^SuFe^= zWJ51q1@NM}6q`8?dCy?J6?{O`WhlG@F2{g3mV!hsO{n&A3sFbArX~C88}xa;v^04f z%vNiyq$<$IBf&zv+BS>yuOCLxrrV&wp0dv^DmqPhr=`SISUgd6aO+?4Qxpgr^Rm|` zLu->+sJe+A>l3 zsP0FmpxktHrRX!ILzCgT%6hq{XDgo@DpgkBuB(vzI$n<8)K&e1Z>worX!|{Qw9x!> zqwJ6P9LLLLPjiKRe9Z`a9Zh%lXhw5-*7V9h@y+tTcl7?=jD60_!!xVCx~S89KFxZb zZ61Se2(~!Y#At-PIk>Gs5q+a0`)5a>@T0RdxE{>JcSLw*rwj*&2I9K|#a=ic``_EN z(Q`fT&}81dTSR0#?jE^@3-tmk+eC;z*o(j%<)IhaI$r>Kpdce44hCQFx>H&>?A<64 zoSK^5$%n9V4~OX_R8`BdV*AJ7<*8;mh2@fp7Hdd$cJ{GbJ&@kk)5&fFu=eBuEt)+?;f;vr{vFdf0R|YI=&fj`C}37gzgkzJ+H2@E9CPZ_>=j}GODa!AI*q_5%cVp4%$(o3trp-S8L z5ydnEu+gx*#ocCtKzR8fCYEMKWFavId>el-w?Ko(083p1fGuRqhD-f=@fkAF!KYr% zK;JQw9QORkT~91F<3F7ERUN+7ye7|%zyb@Vh2+QNP9gN0!_>S@O9zggUvzzt?}@K1 zaYHPg*J~3*tc6yJ1-loZV1+wBpM(YlJeiUwjrxh1$vHh3zu_TxK&dRDveau# z@V{{zWuv((igOBh39WbMyK{ZG$ExE8t$)h@BEB_ed4+`T)+JOm1Rtz$JE@$jgukte z>XUa2P}zQM{WyTZrgzc1Pp5nGrsmV>*-fEdy^=G>L-_ie-IMlyhOLXcO2-*tezQN0 z?lsUQw!$0QJVrsKeJt}Tl&PVLgCwUQ2$_al7cL57T!keyi~`vg*`fo|HjM8nWkorF zxHBCDYJ7NkLR^z+b#*lWu+(_{2r)@57~e3*WsKmApkAZ_vGc|ZKLus76<2Lnn7x8Ju)mIpB}{3v4n8T`v~D z@PF(JuZrNcBf91AcO{+H^p~*uSe*>3ySW-#Q65CYH%Qt}&;YfcW$F%!v>TE}q);U` z6^&|rEGc~DBGK1GbT#zVpElzH0dhF}YWcn#@&Qe*{(B4MgpUpDqvk#5>5=F1QMzLP zU%Mo0DQ)(woMbqlMwUpC`@7$#KQ8hh$P%Z9ku7-#(Dep|1-D`-bEmagmr zvX&RdLUO^19{}=at}FX2lwaiOdYjB1XIVN78Q6(wv0_gqe*VfFgn*zKz`sW`koxAe zp?3^0JVfshW92Pf)?H=wsQd&5x9EA~(hWfsH)rx>`Es2N-|;7(Io#b&6;Gz9tl`c* zhmO|Y&+;{P2mZ-@9k5h=cJ>;PBQn3=y-J0;I`2kj=V>{pbIO6R`{5Z9 zuVBxLbTr#sEE3&jbAF|5%$+tCSHic7viUvSV~?vEhC}`;jVb3iH|Pfac*V*m+Q}35 zulM|S6=E^_v!6s>P;6ZV1PDrT$A=d?rg%P1J^L>tMpabhFt2_eBKAKy$d-}fi{5Oc zzr%e2BTazFXA3egnHK|a0RKm5jYFA8Ml>Tcsz|%bkavJ0r&gZOVDF*8-i!m*jyzkr zj^}q?b!E-z!>n@vA)=>pW~FW~-GVc4U7s3Hl<=Op@G*Q5YXUSRt!cY(*hBJLVrTh6 z+h(79uGTs#j52|=O}Bb^vMA^1{e{+iV?Y36c9ExndsEO63dGtP*o&HW#COL~Qve@c zT!BX7ZL{}WW2tNPsN3CM!OL!=e+u zy8yOZlw*&bSfc!3`i~a=z|A z{&m-(Mi&%(_P%uaR+|y_!?XDo*#QH;T^_cAaPPIdT2U31N}w9KSHdngFwyy?6T?yu z3D9d<$9`|%exb1cQ$@R8{;M3xHLI~o|DaXF{wTqa=PM@?I`dp=uQfcC_758+GLu#h zn@LUiky@wC(RVK=|7IV_dO;Z6^K^BeQ#$$QK;~O{BQn8xkYCv@r@%9$!F~td>%ptC z8+gXz)Os+6uV+4C@;lLcg#6+ye7>0*ArXAtZCO6~947T6+p{)vkUxHNe>=!BXA zk^_q3a>VXY@6Zdeyle>a3yi(@AxiDdxDRhrZZ{fX&CPkk-`fL95^%p6Ex6wd0|aYe z8WxlQre8AUrmw=Q4w{aX>V<+@{`B0^2Pvl3G4SE;>)rzHJlVAVrL<8de{SE%?Y8-m zeUg&r@skoiE|i0Me?jEZdwX5g_Cg}xRdAtn9$1u_Hk?8G0WeOb3;G%ZYQn2S@F96P zO!KmHA%q6cR)60-T~J)Kne$>j8$to$u_KMW6I%V@1AL)RK`lR^<#!~+b9DpQy8!s5 zesm}Gh7HPabnF70;y+mvklHIZ^Vk8Ltm*(&87Hj>{>}w9gxU3cr+FS$Y-gk3WJMVK zgeQyzTyeF{#Yhl(fw(9f!d)CP?9^2v3!e?f@2sX6FT_bE>+iWu^k?vUD z`#ZT$*H;lXHU?-J^)-1@n7FwGuMxIz8P&@#=KdT3l7TV^izfb5T}8xp*=T}{)^jMA z9Bme^^_p^VT1Yc)sN=rJ_qa6cnU$~Cde+|M z*qw^Z;}OKiZId(Q-T2+x{?qwESDBzMx&)sLJ^b{ib`k1pez4+~%oo_b?(on5A?9yQ zYRFXMa}Avp)nUcuNjvTO?~D6)Cw9LV)Hxpw2L&D0-z6$up!L+^2OnntNMs2!HT^ z@!$N-2vkV7D{w(gXy3mtg(Exrdk4h>tpP5}26~wFE?O->$@$335%{BE>~aZqX(?$( z8xy=#iUa~@9j)lS@;;U0_?iFwaPwdirV;Zx=r&giE51P|iXV+m9PbzprokrjM25mH z3wJR}$TAb@nC@sAe=ggnxUVx7wsqqN4-RU6(Z+wtuKF5j0^r}6@?)Am5qyu2W9|M( z@+{v&O#wzVkH^H4k-%vbq@6aol11NAMIF}^a%|=0cJNe2YhitI+GmbMPNPuM!1iMl z=#jk1^AKB+4iDf9!rqe7$^`>SdxX%xM6cS>@(O8z5;@8vv?<|r-nDH);7Mqn^R>Pn zK!5RsHF41PrU*hS$`eN8>}m!tiK^`{Qf4&c3W4Yrt)9p67MG%CNcUl;D=OYwy&Z(B z*!RbNw$lS+&9bLtuKYhrJQMn7O3)g$11vFsP5}iXC zi4W|iz*QQ+1rUdy+wstoX)|4|AMsI3=>?h@3dSafT*0p|`IMJug@125ZrkgXpafO! z4OH89tm^vBqxmvq>+`?Dq79n0GhVveo_fmX$%L}{xVYfcpXob%q9@sjatVL84A$F> zYh=Uqzm-@Xo#aHIlrsD`+Rh1!RFII<-(xkZann^#X44LuPOBCRKML>O{?-6zY;|0U z8{*eOt}d?qJ4q7zBQDGKfoh()MX{@!W8UqD;e3_KT0_i*+?-86rmZaYz~@A=y;4xM z1H&T%`oCd_dihah;=BPJTgK|Tsl{Noj@(Q6J__Stq$*>h4lpwHf-$j+M57JpfTzGS zM`V0Ut|RUK{Bv{b`}ZawJK9c5hBk$Vza$APN$(l3{`{9>6)AD|KW$o`vG4Um_}q#S z^+P)q9vcZd%b&E5dwR3|p{;HeIS6}6(suSF zuDVjWq2r;%FS&sVxB~*m5CYpd+%pD5C7q(6wq8a+4Sw%GFg6G#FQ^gpU(qC)n#=l~ zpA8<(w!62V4fv=6l==!9QbZ;&Ry5;i{Fky`&zu-- z?~*7A%nF#3B!l0xRu&0-{C3@(bf@*v!8(8MN>Z`b(q1dVPv(lkU{@L9V0Q(66AY)b zPRqdH3obd%Ovpgi*HCgcru8pW7gPGsBk_;Gb3a0F^$z*8jxF5^JOPBHNUn92EsJiH zw!W09fx(km5KTQUqFFEe#uG7Lt?U9s_9Yph{$6qIJ$QJ3=IhLp49&cXG5Iu04KT&Q z_9{E#?YFOEmEL*mSg8PjEIuzqf%OOl{GlWU5WuC(Q+HXPpL#9Q^Tuq>Er(Sy;a78? zU%E0yvi2S3fMb0_#lRPLmt@Ex2G#L5LiK`_#j}QxYYGUYXMgAxs_Ey>(UixmwT;Zu zp@Z)8X9EGrvu>Wa1C@p>--QC4>z4dj+ewI<1}=58VMKMe9=-WzXLj=W{;;u@)xNIg zr=sY+Hd@JNGjRt&D8;`~aT8l|9tj&&veNP&zkPz9!-@`PcT~$opDn)@6yH;RVd?N* ztIe<1%?TRlaI<%4W&Yf8xkNR~YsF!0akd*})V$8>(amZ8LZuB?a8f2GA8eXQIC_)# z8UA-LHY;?Eh#;7$4}#o*lM*+S~zo3dTV26}>M~m!fjvJr~a< zc17_MCl-jOLYTHDpb{I$$;~(^qf6>s=9Vtz=84&#gAO+nbb|xIGI4|6dI|#3n-m4v z1O62I7)C1GAa)>}=pKzF17pJqVzg_>1^B9U+K!{f#mEq+w{P@hrSR-GD8DdZ#hS01 z(%#zuv3BJy!+xm_ijx+v_7L<|h+t>d2kG#qcSx7oY-33A*tkdWNZLDEhxX(zI}*>2 z7SBf`p##a+NbcwFK=lO_Y(dvNS{fLoHbNmx@BZF8VpPao2_+YkVjveDQ!w3|1hY&+ zQNXMJmO-%qTMiKrme^(n+@9~vu7yvs4}o2ABUalIG<-n10Hq$2Z_kL3Ym_ws0WQqp zu9R%Uoj4fcenfpVYQO+&^>4{`1$1<5uA?9Rqnz9Ug*dBt-=tq7%$)EUQxvp@B+&FH z;dI2Wcga6l5dLLaVR2PUMk@+fTdHz>zS!YQ0y0q`=j;0IUcpV?W0U-Z41;YoTzDY> z2z1GH)AeCJ1z?DAn6}PJIL85+33&B^jOoDOno785-RQ-F_)<2*!#Bh89P#1v6Z$`s zB3giehLVqh`L`Rus8!3~GndkKc7de4;P3@-K(*aMij@{U=-ItqS=Rl+tkaY|bGRyC zFD+cg$ucz|5Z}uf!(X*{3uAL|G@Z_+%KWMR(uZ#<=k;&SnBG5DQ&=3)`?H?1!=!9` zu95#SSj6SuQF3OuD8kO;^7f96(e1_OW0j2GJlK4c2S=u6A`y6!10wJHRC> z^I<+rsVD^ZPB9!-38sKtU&v9rJ-_I$^e6X>NudHVY+!Heye5D{%^&(bm7ypv zcNyGeN5|;g5iItV2S-hMw z^7^~X!ZvOAQMyDkm_O^lc(PEuySJ_KXQSZT=UtSr%{M4$>*fa~Gb!R#D9n7e-2UmT zzi_ee1yu$#_?~IYLlh>4es^W^gS){F~Nb5SL`hAX~`mT?z0MbOulHsKO>`X94K?{vA&>ZoMt zMA+~4jw0XUnr|N7ek1E*V%dzl!M}>MtiQ!7G9DG5wh;0cx~h&xziBd_HVB7xGotBY z?xPH_-1T&pJB&zWGDOAK*#7G}9ai_dv3-PA%=Mws6hA>-SI^JC>kB{J64RC;Lp0A! zXd8w%T`%|3)IpW@hd7x?1#CX}-O*@z@U6Fnx&KN^{>dJ`V)l}X7ylZPiOEN)Y}7{GE4l)-Lt~Yz6_=#28y&jlW=taF z^Iq6Xd-0a&B?dUW!PRObJ_~Uqnkp39qC}qk_3`>M^h^{UdGgcPikgr{v65K;pMpG^ zR$PBt^z8m+Ou-#@+UkhUmob)7eFP4AAEl?m(3V3146YJ9ba!z{{7K%7B?9}=4qot; z@|X9IfA2@N_@5t)VcuyRDbBm)jO_SUCaU~tH2h)hX(A@{ZC~7092Ba)z6ZvW9N-dJ zvBrKLSx95>yN_QJZm9zPS4lw4YF4hHFk4k}f0kE*V<3CUTKvW46+TLjBUJMtp3C;D zNWIEOBU#1S)^zg)i&1t#JwK}62$~9S*OEDZFwIB*B3MQmMLN<3Ju6p5C$t!XL=)&(*GmiMj#HUc9+2f>&oKg#iz6a^4Hd zhUsNNRv=eoiDCpxC*IKNW=w3NVqVeZF_#@bOuPBc;k&VhGkgA&v^YK5fg1l>@R9kC z-!v~J-8-{j7qC5zNm2a<863H|u8S5|-RUyEQUH4y8uZUT7BkUhLqtO*g-5;Z?i&tz zQ&eoKVZ?a+QPn*4Fd=sx8wW2}NQDlo_o49~iw)>(v25uBSJK_y7}<0Fic> z^k$)y(LzoYIlh#t*Cz0ZJ{FoQ=9Z50G@2(^*`r7i{Zje$CBKMUaj-FoGkQo?D6T1n zKMF)JSwU^!!uDMk(kiZ-BUB^E@fJ=e&sn?g5ME7PF&eJYf+@mcKDZR>$cL!$ZE%FP zh2ZF!IoRlu-t`gqv``K25a0Sl(<4X>cPg~HES*jULnKaPqlH_U-1f4Bqlo7}QAKec z%tvHA4pwVs{WrY(zc2VGA&C^eMp?C7NST%trmssBY}9Yik*Le+*zJ&0;gF0wpKe9k z#eP}ps*($_0?)ZA(LzC#z4k|S0$Qm!ucK3N&tCx1)M@x7d;tY*0pA-aH9!^X<&d7A zVMqR*ew+`&j$&>;rO#M{yd z-Fp>tT(pK{{{f&Zj4seLLGW7 z$t-{4nj>Tft@IZgV08uwB@#YLp(nq2E18sTCZIEWqgsik@&~!shGG})9D_j~h)72A zC>TY?qwZA*SAZQ@cU2*b2%b%KxO3*dWZDhS=}=vEL@CP&{wBKY+5HPx^9=WsuTY6M z^WLxrAOxZSEfWm;q&>O!`CR2o)?#c)fH3ev)4~=s`Ut)lc&CkE7GizAdd>2W{hlkr zh}v9vkZH)K4u47i-@AkVd;YbGgWm1dkuK(77r%pW0A4;q376%6+X8|;^5^OY7Bu-s zoqhrt-kJvO)`a_%#GlZSCF~z4!Lr=9kD@Waeqi=pre;x0&uLEWt!~75Oe_2v?M{5P zhRkUR$^(R1#eB6Nud+COg!V7SiK@U~tJIfUx3YsS-OuuR^{jAWS3tU!qn4Ihq|>UA z#71_#@gnxD{*ifqn`>t(ahWRWGwouD8Q_-MAarEiqZ?0?6B9UoCp7a1q@abxzp;uI zzAD|SmKqD^lQ&vM9oeoTOPZN;JMBle?5KJHFeih9qx3{f;j;${j810-564Ql1dHA+ zEWBq+#d=*Q^*z`EKiN3{xD=o*+k6-l>$0Y0jlxjG3~^s_y(`t*t|QB9Gz#|MMwqla zJ0eSqW8;bzOX;4;AVJ>eZA#~3i5VYEjYuoyri{N#56>Lo0&Jn{B_vUZCP_JIbfs|c zhnaLE?zyBS=;&Dxj(!x{)Qo`Ggpg69Tl_8rkALm_%G@3Y)3n1YTrW>6V#Lp^&-v-n zqum1UKfB$HztHwVA1u5-s+~pB6hG~Qkx}2hc2X4AB!4udCZc|7uwvgB}V+jLZFbUSI|AE%9bc_7$>ldlVc z|JMIK@2$VOnJwx%vdVA7HT4mY$+~Rjz}%=>;h(=$OuL9Q5Pt=?M&=9qgHsI8rb}0q zyv2qP6OLkL!PmO5HrUn)p5;<4xr@BqDxgl9 zGgc}^KYGoacZa8HXZ?ZsGk8&f`t^@Rb}?_Bw*pc$>c;Q;3|M1Zs<><&8P*=iicnOT zIHVKh+!n4*h9~pIZ`%Zxy>siZV)xhQX8$h^MBP^DsL>qaj8hef_EDN6cny&sJpeO@ zF14k18uG*VZqka0lj_q{+!^nvN{_bR?Ju4r<9UA}IWx+%2&_GxtJyRHYAk6=rTDL} zdt8{RXYR+h5u+Q^U%T@t5Sr2fD7LFRR+ccK?Tc7~lnSHiY!waZysrzEAXNJY%306& zs<@Eme63F=#x)uD>DET1q!^}U{a+tJ?PD+_q_>suXKOs_YIKGDE;ik%#tr#vRRj%; zY6kuZHvLj@u)Gu&6K&j3I^@wt@${1F~&aA>sef5YI79 z6nOMcfD&r4jnHcu-qf*}xR+r`%y^Z##yoqj_HtUBCck@*Z!DPW(Gt%;|8rje53Qm5 ze$7+hMJ)&j9&wyW@}!7*Uuqj|VOllIGS(iQo;iBv8+72ZTA5yCks+=rS{0Y{(XIV2L`3-d>FL~Qu!B}6Zv74(DeO@Bh1|BJvR=G;YDf3G@= zgJ&lX%72^vG%#bYb9EFn39TDFzd6)Ye-WE##Cy~9vV4Lc}0T1tXQ&P%`cNP+m%6j&)MvnXg@Q1|Q|DJPd+kmbQGZX$Wt#}#;M zpkzY9pfB-qFz*`r>wXG=2Q+Xia2n}|AZ`F;Dr4-)*uA%AW;M3IhK7;}meVRexE^R? z*Vx77us(v&kZZstd2*(A?Ow_K(%KSsE_ZG~`!2`9x={2UJR8*SzMY0GXPLOng+3*< zuJyrEIlDC81{?8HDSW}Xy7ETC=1eNwx&tC;`;;+2sT=?N*qC1Q$zLPAt6IlG51m4~ z_|DXEV&w_!o}bScs|P^VJIHa1eq2MDhBld+Q?I_Mlk)iC z!;WZ4w+@9Z_|xN&@{8u#8+9wFw5aT9S&M&}oM6YJba`SJpNGuWLzjBM(Ac*=O8c)GJD-K83(ScOe&gywhWEw%(x|z)q^^vgw)uvC)p{3Y%x-u8&AVA2j2Pme z4l)q+UDg03gl#L9c3YHza!MAY0L_~ct#@Tq)DkrPyWEL0eI;aCku8EZ!aJ^`tQgDI z=dK>_fphRt<@_{$yCrdukP1FHGq+YN5t`Eov2O2#Q($k~Y{PlwGM{~qo8T0;y54DZ zpEYZzFfh61G&3})-iU4lr3BKt+FLCjGbgFWsoe{W#1*+*q0c~*oiEo8pghiZS1~}_viEbeXs97 zb5)nC8Lv6dbMABB=bSrs-l<99nXsZr%s!-Sh0=Ip8aNS3y_(qH)e+HwGGO%tA-F4}4zZ_=Jk#0#2&+ovh;E2sARnvp5d2f|lU!4YwndeTXYRQp#l zg^+eeVv%NTAffbBhWe>A-Vh-s10b;~ccg$kYAM()|*k;4}C<9ioD2lkD=9TGKa{)~a~5{4PUzF|80_5f4{ zOpaFhesqtrKoWm$QjQuNu5`OPLx-VsKffSYgP>c5)i5tYj?o{Rdw7iKAm19zGkfq& zV??d`hrOaeCFq~ZcHj`F^8NMp15x5l#qgR8#ldvoyRtFen9#_jL9J(>f)4{cEpkD1`_UyX_X=J>6KtUy-n40qKuKXSYew;5 zOx>bZ$SUQc5N9r4O++cQ4gzY38C2T5k*MeK&w|3HiPRNgaT7{h7Kz(K^$x`$754gxGg7gX!4z7~f9_~1!w)g?>^ zMA%A*Dj1k^rGU*y9;vdTYQ}OQE1>q!%R>9*5*kmAXa_$sg4X*0Dn@!hI-LBVgJQSh zqU*o5LTKmIoJ<(C7P_Js1&t3;^&5Y)Z(8$=#wh14vl+dGI&TG{?g{{=e>Szg1_vsA z(g@TIOqG>diM&CjW9N$g@X|%)_xQqCGWA|{d3J7`VtwH=?A{5QD z{PbBiZt7Zhh_g~4$$JMw7y>=jz+ikW?NGf@dJ)W?VZQg+Z-KE&63in906EaUk7L=? zo=U*MPO+5DhoUtB?RVvKmWC6vKy5)avyF7y>Z%n1gbosuUs3%Q+D@LXq@dd#`4(B; z9va^ndd^T_L@x|OrwLb+o&LCWDfQOkG80Wrx(L!2HT;)~K5nz1B|QY6{~UYmGwvlI zzGg;-XIYr$w-U03JLrsV3pYG>_(x;>4t1-|5E&emrm4SN!y){X1+44`A&C6SW^5pu z*CGZRAFhpZ%%QAI>Kg)Ynw|5Avg9+T7@g#n3_bjfW7b1~?v+~H&=>EHLJ6sPuc%V< znxF%;cFLUPTat>++WTn3^Ozp;*PoH_lU{s7`aW&m(|T7R5ZH(@&*#^=WD8e|D=iD+ zlnn`eFyjB4YWm3j7lhWU%zODQA;Y!S;P>$H0#)!(#gZ>L0)uD6Td1nNQCyWlt64AL zsq$c0a8x+yI#P)_e}0D1(8ww{VdW7uxX#;cxgMtWxVO+XsNrG`?GBu`~2cV zZ$<7^r+awz2ck8x6s-ssHKn&!rN5i+FHBy*7q)#v`NEX%06knI`9}@zvPoone|xpH zowa7;ePFtVQ-;g>GDe}syf6n3AR-ITnW{}lvmXavfqXGb5Vm}n6Y9YdA(-*E#{h6I z-{wrR*j$J|AyM^9|2lea{TRNh5We3+{eHhcz1bdVCJH_Dn&qSBgx)uken|bg>cZv0 z>zGLCFVG8(2H<9Yi+b|X+Bj)Y?(Rj*3+obbP7xvuAI4hwX z=C5K~ZNu68PFCSias)m8lSJJ)TSP1?#2Ltx6dYl=uLi`;{P4 zZCluaEj`|7yT2KOuam;(%^_QzMpFHNb7#KvR8!#n51Z}`Em`FGUT8YV^*txAe*dtuT*T?g z-@B7@{3^aSp%yq{fc1z?ZIgvoTAv?oT+Vh*F^Ys)km4;oGQ&JM0h5&nvv{8ttHy&! z1^XvBsnpiJZvJ(ZX6j&@aY$`xqvO%~hph3K+RIyvD0kewg+4O7jW#X!dxKWFcyTq$ zxFn%G^>r^q7PZXx3X+XSJ$2y07N4y zrez@LDQiJ-v9=u4yU_c$BT%1N^g|!w_glj`?wl!o3xz`N1MW~q1bfj%;_}CJuT|cz z3#U#GSVMF@(AyF5kQAf7fY317+^>p_&#mD{-aLfX%;7&6`PWieiQFxxj~n27Z&NLJ_XYgzQK0ptb&k zB=U#(pTM$rj{5zwvo)gMyRrnKMkx;WDA8GW+UG52mzIdcJb#@B8VA1xT!mdz*JrHP z0n`nX{a>6*-Z35J^1Ci_;|au{`Z{Ycst{%Y{XKpW_rd&Rqj23TAe|{Ce5TQEW8idk zVe=Iz{iAUwJDO0e92L_x2I`8Q`VLQ6_Yx`&>*GLa)H!eB{lwS`XQo`A-&QC}48CX> zq~$IZGdVWKzl%jSpLXma=Dd<3P~avq6r2DsvpWdr9I*yadIbsnc7*kg4p8d;5I@LJ z{1ee=*Gq@JQ}LsNvafpu=LPVhRT@JrwyRdgy;YcU#Y19-Kber8a~~Qsq5Ez_8K6o1 z24FO;O2^hgMoPt0RxOm_@jQ3aP>>X6`pRPyC z{0=pkXqDF!wL=OOw;}JVVaYzX$$w;X*#+O0cu@yQjCNXk;u`~7s=?duVqj@Gt*O^K z*m7S1t~=gXBvYX8vI!+#_KDy_M-=W7<^`;BnxG-#iT@OV8Zn>(`R+njzeM@<%KM?` z0Om0=ES1~Z`BGx?n`KalvsKhCofF?yvLE!Ln()_TihkQqlksS$r2(QTg}Ixc<9T8K zo;aY@Hd`q;DhA7=*kP^BZ{E014u5i^$IPerexhpUr$f*KMFZvNPzV6mAH~BiTkUJj zkv97=QgIZW=840fE?0pN4evUV7!6KT!%XmX5rPGAvc+VsA4Ll?sQYS#MvMs{h(&n&ty2l!u&9Eb*j; zmJ@AzA>5HN>f>GX5W%9%e!}n3&g-%o+m`8Ky|}h-*CqZKgWGFhYB5bi#At1;ONyb% zf2k3|ntJbBqHp!glql3taBgLpfj4Y9ZtmuUE?7r1aSc2Xu`a?(Fs3&uJm-}RcC757 zJ|+m^nrJ1|kqyqhwdEx6=G0jCksMdI7Pi)`#QL+KhXZm%Wd?+PtJ%s=q1o>sdvIU2 zI;XGg9sbzRbxg-QTa}q09iARfW%`Z{CvqBHTdY0D!t{s-qEd7DHm{+P0#~Ps>Gp&h z5D>(t#;kR(DEYnTyy&TNSFzpsaR^reuI4%Y#NV99_U8rmbwo>wHRnJGt#ZHzr3^hX z`0nse$mecrf&rDJR0b4Z+8;!yP@`VG(ZTkcceA1U9~v6gohu&Zh%|o2ujxi_atUJ~ zJ<4B}W?uK|8*n?h)>zn-7{iA8xw}%vS>(6wJxxHq>VRx?=W(KauR*bgk@b7428P}T zJ!76&e<|qJYXF-2Et!DGbbZ|pzJqswOJFYf z;@z3;)OI@WnDT?|py2Rmz`fQk0R_gi&i!D<7Ro-567_bVdSe3RxzRLY*PqBadrU~* zFL0hhJPCD1ay>-aQDV_Yg+3iFhDYp&6P<0>CDiN5m<}KGSwBrX_CAgB;XdIf!{<70 zEfmyn#=c~LF9?bIz)qh^s97Z2P7_9FDo6Q`wMY3e*{1VxMdP*HuIONv2gn+$zc&)E zkG@s$W3vue$}s|VLJ#ar;q>Q7n-YI)OSPCi{)Q5tI|(_yF<#|DR$K^Zwx@mH-I3cR z7hqng!=DrtDe)CRVxoAC3T(ZTm{lGeI>x3#{A}A|1}dBR_`7PxWUxd-4>Vaxn|0>* zE=naXG%{83;-M%M%Qxq>0!9nmbeQZ~=54TJf*EuoOuZf8>TXG)=+vf-fZBU7EY^|= zY9iL}p$qqZg_6p=;JHFnrumeRH$L>PATbN_U{@c6eS7K@5ZChK@0vCR*d*xAE%qCj zz={%KCr>2Q;z^(V{#=$O7tR({0;nxhutx${b02dBaM@1pKBEWo{qi6We#~RK7v1r zy}LYKGW*tMy&x}bPn7_02EH#u6w2q1dR%8G_`i=|*4L zSZ`A%L+)_3>(+wL)DtFfJX-f|zuHCYd>0(#>*M%`9ACFIz6AI9)yY{IffAmWin&a^ z`*C^gridr35i;v@}@jyAAAfQFJE zs2Ojq^woSl1Ce#zug^tr+s!M3vQWiigC8}G`_*oj{H z)8Gxh1|Eqw)>Y#Db0?Q%PQPDrpK}8By4?gHej+vgF7&>p2s#Cr5K}WLE*K)WBtjnw zaLfewajR`OzQ~I<3{bn?jsd8oM+sR2oHo-Zq<_5FI3*L2f9}5Xr7LFh%gdjW*^luz zJIp{lMO}qi2`Pq$QnK3gKY~kF-7#b$Uo0;dh@|Re`{DW@Rrr)PvFHM14$MvgnJ>jU z3jUlPS_k(Q?Qu2nO}4lfWLRQOrm}FeUgMEF;@C0dmvfczT93rBssS<_#(wlgu1jIW ztl2eK-LKuy!A-vIBE0*%hUC|49n)QqGN1U_ar`2}{>#gY_~G}cC1e6Q%XA}&+B8Yg z9Yc#bfxv3Ns&;8kP^lx`*g|KPEI78e7su0i4;OJG3O+`W%_p8suZOlEHDcSofp7W( z&(aknwaq2o?VZa5BaQO%%ro`=&@`^co((5ph~Yl$ls~a|$jIU+RLDvz8T#@|aiqbW zw(E(uC@Z1;C+8>|S#bj+*fG5a8N)U50a|OS%4uN4XCUem_(5CTria3 zmsQ$wjfgjBm`zIYM=+a7etm0pu8ZSf%YkkQ7~UezG+NCLjeZ%kDnzd5&P)w;j{&qK zbVnbIwX)nD7@HE6JlGxr|C}KXZXKYpAc2H1C$?GkIHB~dfGe64cIZ*8gH)^k8_uqT zM2BmqpYx;STtk4CqT=w|IH7$B@HJN(TcZy@S{i)`!;LnXumxhvvmEji%)<|1Hd>B< z+89^gZPq2Di3d%ZVrWl1g6UYUVwT4F!T>A{Ki?k%jvrj`Ta&7=;5hA#EXW703T$tl5^a_Oo z&=HV7jyw^ZYRJOG;91dwouzXOUGc(cnqU>9aNG{qAMM-db}5g89<&SS!P_c?vS_zy zAuY>ma327Lw9rUvL<*PCK6#6pr2z*p6;%EON67VpGhOKpeeQf3c#cMnQ z_U}pnzn?eu>=w@2w3vOh^%$qO(#qI2HNYv4zn+mS0+Q6Zl(mgcflHM!I&DX2z2vUH zs!YMFLQV0_=U?{+Hrn#qH_^Bf&|d>s9~OG}<3uqxbkWksBCAphmiBWYozgdZ<}vcv zxZ_-sw{zP~@ukFHozgBdVNsb61%b07&@7c_y`8|Ce)HdmBM>`C=Y`lFH4FBsAFj1Q zvuFRGI5PKNF*?JfpAvb}nnj6~Rms|Cam`!JvuC>sNfdQVl|ZCAk2%7lMXY$G+hu%V zG4&~f2*raeT7d}Yrv*@+jaZdVn!Qsv%z>q)c|LhuL!JAgqIR&HS*JlITpm>aZVl=C z-RWOJm%=P9AjCa|>j3j~o&8o+l|>u>FAze)D@Z9%7qo*&0y2MpJxk%=<{y#Y)@K^3 zEz=Wsn`frJms$Y2tiFa5LTN8fsrWUk#@4*?>BibVt0j;uJZF6aUv3*pLrR~?>uz(> z%hlm-qo*o7)BvM!<;Qy%mP)wks@We+khpRR-l6zb|E#mq!_gnOtV%DzY6tJBNw~s^ zWn5QV*<$pAXxhtXeb4-_QM&Q4p|i=c0b|2o&dEyyx!p!+>S~)|Jz3e}95}V3Eu|Hi zzE33eU;QD;ZGp^ry&|o~sw4AY?CDTDmozR|U-(vOuDBGrr))oJW4g)+=-?f_>nJcU9(xB3^FL(H5cHs2(*WuB z+RJ!^8{j2`atiS36TeZQC!#8DVfx2>NdeUfoAjqwOP$32cM)jm0Yf}3r$Q~o07y8Q*-&wHDa^s^4~@_Y)spE5`%@oT`@x)?lv$=7Az z)63_Vj7}zThS~<&27xto1%c^cb@aygJNp7H`U~*4<<~GMnY4MYd~A}q^RHUU`yr2R zi3LNA(0Wpw%C@j=uwujt(tO`($M{VQuegP+Bc)_8)HgGGoh9JHCmDTI1-VtJG=e zA`FW<`6OjG>ERmUzgkAk+u=^%k4X!0N|@_f8b~#dhF|eGkN#c)$;upxGxOn5XODyk zO4SItT@=YhM`bH3-q86V%~uo*a2mRH7b1B?@+2Is3_WC>Dg2M#DW*ImP%9NS)kc&V zkinA>AABzDj6P!$5~w@gFK`IALXy+2nTv=obUX?Ht{_gM@nyz`k^ka^)%WM-K3>^- zwIP2p<+1qFS6*s;b3mPF(^~^xJ_=T=6Fapm_JTQT`08d3zo(yUD+G3)rQEN7hOSxZ zDhND8Yt!D8|6#q9He`|Q`~6`Zld1n=+J4frP4*%~)NSq_J^Xp| zmGpwcv?81_gSs7Uc8(!B)&>cqS65G80eW?5DyGvriG-gUp^$BEee-Y$2W-)2Azo z8nsP{KB8X!x2C?J?}85Q?r}}7c?C%{!g%B<8!oQdXT+Lu61AtMVisnrou~eFJVvqI z7$cZ47UHPC*wBPMiS)h}+&jk;_qlS|=?TM(wCM!g_w3{NGhlh3B$~JE z1YU~XQoO;06@T0M{y zLhWw9$Z`R)VU|pPv{m#JBj>_!JGDx+PIvyAY~iw(AAzI+3^{LqW}{V0_>SW%!YQRD zW^PaSO%DIE7eSYTy;N7It(fNT{v6~}4u(#lUe0e(Sgq&N!wc#=t+XK< znC`f19;3v`D8-ow?s?V1827NtH`co%qNQ_7UC1-fR*b|o#~IA{Rt)?PJkP7KKvkpV zj2ek6{@x8QibSxtqda0?63%^J_Z#pT|z+EcpOfLGJidOnq}h+lZt zk4ATm%mQ{P6o|cPAEWfeyWDMyq$_OP$M@EzJeix`1RBrt%QgCrKZ0pVT%IBGR;ssh zj>ox*ImK>j4oe23Mwh*S0cuC$g^rZZZzM#jWZ2KdRkF9g@ak>W-n{RA^JUfAq-Q1D zhEZ7$Ve&Sb)hr(=^?Dlg6&ish$&r`W8mTsd$!(T;%QSpojB(L58@C0`?_}!L$&6#C zh9Xb`E@-aGiW#L~U)WQzBHM-6Dq%F*CEG7V^607_cZ~xzVku_XE9Gn669dhYav2NX zIj`e~pZ8y4Fg&(TnLg!>v4FchzT|di!7>BS&!q>N;l+d5@zHtACJfwqFeFR9gxd{O zQ8jG7_9!_#en49MDv0P`-+s;H{~&*9OnMXZTeo!tOihofm&GK5kY5<&8n@>sp~kp< z`-4oqSF7!QMGH$1Gmexd8do60KHNLsYZUes)h)q-u!mhn*hd`L zcU#R2?O#pVfF{fnER#mFgw6>5g*BYiRFAHc`O#Cs3LWh21I7?x_03?u&p3imYuWxH zu7rV=Ew?17fVti-YQ2MT$)clo1zmO0H}2AWP)KY#n%StwtDNmc&PGk>AmW$U*W&ub z(EYP|j(6r^hXJ^r`l&J*3)kiS4|Mf-WNOu}*ZOgu@AnQyF}Q-qRN3RfM&W?nzoWWY zokIKJ&CRy$rCHPuiTifJerqxHYoDh%78tGis8B_-@vN0UkS-(hu(ad9f@gbEnIDPl z14DeuN!vXY)t0E0QdlX{eWM}Q7cKS4XR|*FyIr&q_z!Qig#8ez=~BOhUFWwD5Qa%N z_ZhuDbR-^!!w=T2iL-Bx((kUz>bkz#&bJKQ`9+b}FhSxcT)mYV3-e4zH6Q161W(CV z#oy9rvk=J`S*$A47f(b)o!)3-Xqmnc1n|udwzA8ZAiP-$5=PS0V6&bXetpCksTOF2 z=G5LpEu^tZEEk-fY>yF=YV0q)_0@4}pxAbkH9)uLk_{7Af7sqE{xriZW`$4He$t>C@jf#Uky3NsYkjR8|=61Yn5#iPtqKyHPLja{T}s_(Vw()Y-z-@a+k)l9YiZ7$s0o7T_33 z4)1OY1xb}9f3T$>?zp!|{|g!WJE)8=_y~&*9VsA|J!DTtSsLdh*6h%qY^gRGf^*lX zZ@zSV`ADe5stkrqkvbv%5+vmg#Y&5r+Qub)D*1m(reZD(jK1L81 z*`@9SsYWzUYm6!R6P1Ev#%_oEc4>?a^3m|`HmTlkYdPl^Lx@%X1K}c>v{p7vGCcr2 za!ncN;Xacf6Fp)0?l!{mvBm7^VPD^{iz;J@Xo{p%a>!K<(Fll|>RMPN>%lwHVKmQp zi;@a&=FJ|0;u?wPJSzCuEUH3s*yZ}(kNlaBAZsKrRiln3X{SfL=8j9kk?GQiH%H6R zfxc&FJq}Jpc_WTGqjBqPj+6cHQ}H7E32*Il1U1}sP)nsRX(iWc%ht zTGo7W8nzS8Nsp=LFsUc3)4a2J-U%@u_fiXmXZWY&Urc0|pbe`Ud)=dGf80$!-sG^;?>xzIZLTAf zBAj~oXsFLl$A~*vi}k1()&S8x`>VDmQ{D3_rk_kq$>mdrbI`?P^XOlnmZj}u;$n7l zeKmp^?o!QrNhZAED=NYb@r-@A;Kc(pBGH$aiA!caY&uUuGP)*fytWq$wnQl*G`wK)NW zY%)CM8rU}Fnx5MiR2@kVr?l_TR}sl8L>Om^ez1yUPc*0p9d!MQZ>69mR(cl{%$#ho|I zLc+9{S7;taY8Y4^GaGVQ+! z-~Jjc?*7?$H-1%MScif&(=AeU`Qh+J`S$P3^E$z(x@lx4VHWFk+RN*&WGi*{X0Rcs z8MV?$v^;3nRnvLDbF?exIqfF))tUo!)XFnX^)Gc&vZ=cN> zPWzT(8n>NL<_sSGABCqT4nA@mKU|P+KAOx^K=caM1a4>kbwWP!_V?;+_r%UP629AN zpGgll9u7AC3UrwC?L->!@oBAp9V;SmYSw8_?>zM`UETbgDVP-b%)dgBIC+}$sBCGc zJ9QdXuN|w#;>p@fus1GU?W*`I$idOH%p3oS+A0*n3oEyzsPX355M*bF_$Hx*1 ztnlJju0N*achFyVVisN6%F610^cC(yjm{8`9p#Li<0(CH8%fhS3&nD#Jcu>IG!@;E zr{nnd@gMv&apTGBfKk{_dhq5chTAy#J|gtOk_ttNco;3mP|a-77y-!F0X$Gp>k+2> zJQ@hNJgwADvCG#dliFot((xbMuMN>L^RBJgi}2{Fjon|oNmc%atgG~KeX$bavi}p*p#XbVC@wbJDnb0x~G*~h)hVpRrwnr)dqOf z%v+!*BbRzD;gb6f69Ws!h9>o>ST^|; zYN}OT9gMEHh=5l@ohrwMcR(=IL&!#)9R7`*<=MA4w^b@TDKB-fB?}uo%f4-b1H~ef zutl3>8%a=f5aruT2V6~jP;B{MZz%iE=n%tO^zA>cFx3@;rT2+@Ng5r~I$n{=wsmR? zgBu-ILj2a#uyN37xR_WLYNa(2CX724ar*TtR5g{lvL!(t9;RusXXzt1hN*+%Xx53Bf2s2v7Ha#QL0}F-I6eFMjObAI>n~hiJ zuB9eFvwiBz`VPfuk(Ik9;Ry9hZOK)%ECyxneQ}GdoY~{pgE7^^zPbG!(qcU@ZI2M~ zDP*Ho-ot9u3 zFwfOU6#Dwzeq2;bwm$u2EWGS&H^kPPe0(LXNa5g5EriEyUbqCZ-<~|{@9j{BW_CEO zWH{0`oI|=SpUteu?=2qdRb}|5*RDngO9qm9Jm?sDvDWN1)?8(#`}W;7`^lo<*+Cm` zsvGCb$2DcgAu*!UtQS|@y4)ttkXu#IqH(3F>|kR1qhzY7dsOugyY<~OLE=~@Dnh2Y zBR%D0FdXX%d_pZI;5QO0vqz*#n@fJ%U}=cj`+;W&?S!!goNAqsW!?DmuKNVkR^v#$ z>@T~tr{?@fL6*VV1*&kqEAC~44DPc0fzz)u>?;xr<;vcE-5H%T=?c$={{PZxJ+cm{@`eu$3+o_3J`9c8!o30aG}Ry)jpE{CbN3yQh8_x)}|0U z4a|+OsIOArP4g(HwAs?e%hnb>cvc=0|9F-nDRf36a|0u)T958(Cdn=r3>6}cqHz*O zdbiNNSG{?8t)8XQFe^tk%pM;Fg4HehfV(4nc9X>p{=9aua;xLUIVVTAx=D~XxRYsj zZS|RXPGXj}gNs@)lsv7phBNiCFYH?)s|w-1_&p9 ziLdFOX=uZMYw!ghNfPGpHx_q5NNPEO6&`?CS$a?sQmY?(Ef}gfRmZAFX2<)P;jvju zar9+fvO*_UXR@t77Y0f1NoHq+f(5|7`7-QJNSVib;);yF0LA|oBXAx?<+jmOyC{iD zDY=TzJdSuqjjvSQm@bz|gE`SLFM{f_@;0cLZwZtot_XFc{IbuW3(LKXf$YX>Q&ZD| za*T0MG|{#?Tkx?c)7?)@C>P(zCuz$r*JPw2l{9J}v)O3b$Z;y2mw?g3MR&i0ukXDl zZzoPwYl1x?tdg%a!opA=${zXT2GK;qrtI4)?1NEnA`2?)&+}<0U?4~6_E+C_*DB*A zWW@inG{RLx5?EMDbTdU0M=CSFjgsY@-ZDbw%+f^Gko7e^Dk#>3C6ryfh4(AYM6t^F zUF3qeUp5FYA@lpYs*Pm31m_vd-_xJhA!~H#a#%U#ciARwS05EQzI9eqQT(e^hp8cqYd%Uw;&cix4JG zJS`2^ZrV)eXsY0vp)x(dzqYJfwzJh94O=%q2#$%P<29YKs5%jP4&LEa%)0+Sz2+x5 zzLxu2=^C^RC&=03t(w$<63lc&Bg&;wjM%O)hutfkt_}9c^%XnYZ>5#n@f(B94dn%R zjWN}~o)$f{tC<}Sq}y6-21lZd|LJl%(x2Or*#E2u*hTLsnZpq4 z+pE)GRb*%^18$1Wz8`yku=iwT(!aB5%V${boV&bgN2tB25YW~IN|Ao^x@!Bc7N9a= zKYqPB;TkQo$U$ZfaoPI9t6gb-03M6~;ga2#@BAGc?{$8$6`=S$%VA z`NbCTS>rp0TMpZ*T=Xj^;d9G)eHo{AgD(<^nz~qZG2& z_Ae$f*GMLNjnK(rWn!4un>q&Q;0w`cHA#+Zq# zE%Nu@lz8+FGfg>7fUa?_hs94+BA{s^7vaW~I2vk5!@O}B`OA<_tM!LJ_D6f80>35V z>f&sWox$A_hyIC2{qszTRAbYC{-MT?{L;uM0p8V=vADr+t&n$>+Fwca-+=Z+2XQqa6y$OK@ zQ~0eE{VU1IFH-hB8jcckgFV%n^@w~qQ(7-Zry+KA#ml~XHS_)~_*p5Uhc zniy?u!4^Ff*gVv;?$z%#@^36j>jQt?$427Z`hX zSSGK>33~tAi#m42yPmAf6PlX{{gV6z^-{}0PTPY62X*5oJHNw<>zSrLMB2&_zrr(8 z^k?Gf|MgnZ&(v$qnp)OTWWzlg6u1j<9yxc%TUrNXw^v6C^sfJVjy*?^o=&sW7}>O~@XD3BTu(m0Ok6c$zRUU)|m@+T{k3 zb(iL%x0@g_F(}pj)&M9Eo}WWc>Yo}XYcG8YxfI=~u6fe4>=lozdg{@T`4n@zDEqJ} zKK6?HRlK+}$40EvC`5+!qJ2gX(mFgQM41e}YN>+}r5llB*QVCIjJIEoy&4IIeVM>E z^vOr%rPTQn-@N|4%S%jBj(u`-VV3~Zr4U2oOjkaqXKtbfmaD0~be|WrxWSmF!5G0O zR?Czdy`q}5_C7{C(}vTU5sQ9tSHyG8((R#C$;=b00&Zn4|<1`i) zMpK_in#j{{=ej{iuE}3z@;Zy4R<@{O<9eD%5#b9)z7^7(3Uq@J@i$m}qT33|B7#f3j9ed%g+Hl;wRD z^bqOy*qp<#o-fkY<2F{0cKNr)8qF^p3&hQM+>p^ z*bP1JO9QF5`U7;XN-PmzUG_lS8bj04Xb^9qDo^CDLwNNzB4`p^7;XOWA721hN<~3FNNG>vk?#(M86T5 z6}p95=;WLw8$-#kUp{BFZgPB+^@SbYYJF7U8vF7deihVAc6wdKbRH!5?D~S=;6!jY zK%lC7Yf>a0p9*IZ_7FQC>auHWZpBOgVqVMAmeE#}y@`C}g1&YR#BlzA%?pO|{EXW} zj6Mdej?r}9 zFNwU+%ZSAilg7>uoze9s*atfm%C_0;r9&gRKV}DkMMjO(MK}%h%+qo8i7GfGiL25L zNOP4yMED`8om_S&2~dqa@bQ-7!J8(bR;8uGE&<730({5ITXiwkyuoiim%Ssu%BK9f ze$Fd#z}?lOfmsYRH$6BkX-57#c&y$`CSnx41AB(k)p$X2?Yh@p&qxIwdKQ-E5+Rp7 z@5qkXZ-lPjBj5zd!TI+zy*6!){8qzL@0Lt%Zxw7+(5XohQN%6!IwPH>8L8)%muxL8 zrjD9cu1v}mHWK%jB|K%ty$2p;2ePW2E*p-`WLXSGAC(@u|9FVLX%b*H$)P}4C(bWn zyB9bPH#M8t&umVI+CQ2E61IqH=ZNkD;}SN`$iM#L%u$!10O+-&3DK&b|i2lPVF+KpKVHjqVFVc-Fa)eI-_UuQu0?; zphD~)UJu;wDH*qLJ&>sJn~&oB#ZgvQnC3!kfk>Hq956^>35rL*DOiwe9fq!6tu0zv z<4xb%KB|p>S{unSBCf08SLF>{jHm%tnF@824XBf0j|}W7tB%JaWpp2lqKBk*?F;ql zv_=6fPnsG=K+L&oTJSBLu{1)c@fBP*J`aqJOkGEl;mHag?;=9}-6oIuM0J~WqEv4| z18TAIj%{F!z$jo=iJ0+8`=NzJk^>!-{!s+9OjK7{9v;cqH1t*8V;Avc5~BDdU!J_! ztlBRWnag6Ip{Lw<16b?uagFgGk63B(I8r|;L8`qhrH3!SDlm_48EL!Y9d`|)h!rY0dbqwVkbAHsZ+-uEQ_txqhi_`zNm<{S|6NzXG3ExEUfjEaV?eK|2uhZ zXy@QENhTqFfX^)P3dn>Oow-p`YC7OpU_NldxEoZLYRF9v`%Z2QyRc8!dGLE7H}bCR zDRCM=Xp=ghbD?o!?}TsWi;+^!px}8mezn)V9Je2wOJ@=1rH*0< z1VRRTBIv8}@-4`z$!azG%tCVO5Y&k)Qm?MInibY$6)4FyK$gsUrd)eQ9iC#wfWRbT zMCGC;Gu|^bG^#j)@Aw<1Buas~V0)ePi$L5MA-}+q8?8bea@YP}Ht)bdnhLd7XL@xF zXLH{kLiXMJt0mkcn+~x-WAk1nwj}uFKWpmt;N`suu*mGme_?<=hxRv4<7gsVQ^phd z1pd{?=QvG9U%o~2;MSOwBG2w{btY@JC9!j z{Sduvj2T}SB?F79cjN^)O(c@&@avm6KOQ+TBP}6Lnh0AK+%Olj0fP*}Y5Rxc+M(-1 z=tqm0NtjG)t6J4{`$!{O3Vb1}Ph zSs~lI!a~JC#vRPg4&dBwupBAzWX6&6iGyCICaL8Y!9V)OOHK3onVp_!G&gpBahUQp z9wY3(d;YBm=dnh5|EM=hGaA>5K3Gu{7sspXNWGpE=Pyfi>YO_7%xUbtiHZ9XP=CRS zJF%!}C%G+)Z=fgVnFcmZ@C0FB2{)+Kfe{4;8z=6ZlgbnQt>CKF4j7^dF*@9c@K$*EzaLzyT*4}u2sS`G)I}sRv>7Et0JUP%VWxiagxW7n*N*y$ z23JKRg!b3iRLobA^h;EXaXW}7U%K zUg{x(execab2__3M7H+uI!Twb`uPSM_sLOS^UR@^=l1<6HJoKCBQN`g#_x&CW5XqO z^+F$7Q+l_fxmMLpahU=Wtsh4MTdcCRH!mD+(;bR=EW5KsQy3beoxog3)HTaFua8$G zcCFuB^2E72>8?wQUw}Wdk4ur1Xw$*OP#1z*f?Gw!jvo)IO=a7u_-h!b_>RCZmQUQY z#@QEi$+-H0IdHJJE%Q;SC>YgH#-$cXIC8w0-*PJKndcEpWuoB!yIkMtRGGe|r2lG= zV=mmwxcq1$c=ab}#7=|#Gd?Vb|NiVIRVvtV6h8S>c6NPLx^6M|FNsn>Q7V5%R%&uw zuZze+>SOKDu(*m6#aOJwvA%r+oVp}sA*~o`$2g!!x(-?eHq0FIC3F-L1dM-W>M@1X zwY>KD)gQNGdWPwlXJR&5l2QKg=C4f%9*5TEBK~zh!d@-^-!MWYnX2O`v%(# z@zH=AAk(B)?i-)ueTwPJ2aW4irF&RpE_u}s!mQa^1#o21Uy1}=)XIjq=YBMTTV{2w z>(#HaS;aO1ncBjnLw}uZ7)(OW$oaqHMjM^rANy|OTVTJr`y(L`6^TWI(v)&v7hW5GC48laze1G6yf$X* zff<3#ckMvS`%h70(_q!f{40^yb=M^rTp(={7k(R+S&;1|ndBoW-UJ#T$4y>Vwd(_y ziO1S2Kb?3_$bS~e@`Kd+(@`WLIw0>kw-X>vuvI>P0d{>b zgyZ=W`Qb)0z`g;Z0K8JOA2eLISei=ge*9RLwyEyyC@|1*b?ybV>i-RqWi6t+Iv}Y+ zn!*8TV{1z3qQ=g94=;0};Y#XABgDg|Ch!I5``OCKC%r;5mbg76ZkDxga=D~plz%HL z!_XvC#^Qyhe>dUEXa?vD)eH9XkX>HMWWFwOxe-#Z&|%Hm!RFHl8i4+6V|4V#wk&E*{IR07Bf4EB)ssnGBONC z6}N@fIZQScQp0X8nrD4C!Nr%D8rUL@c%33?K>dxmG_0(55s$Rz07-7UpPMIP*f)^q zNp~$Yr;Uc(3p6)`L6U;4DHNz-mGIOBi(QCfL{9MMEK=`R+z7UU1p0el*rM_uA;YcW zBegFMdB-gDb5%hc9}`ZwJ%>zLKm8k{+*Bgg+IFP8MKUBjI_ILDDFSi^GxFkXXcD>0 z(*S+ty-p5)@DnCgjAXju`1%*q_J+Vx4Lv+t-}F$^PUBwbJ$-a=9e&=cQ4sBP8_J%} zE26YDU7+0)E8=bb@>Hg<%enp0A_#}Xm+I%89}9Qq*E~K4gul2GyR|nw?DC<{^)==E zT0!Rjq3x}|q71wJVUZFLR6>+eM7m?7TUxq1l@bw#2I)`{B&1uqQ5psbgGL&q6&OM~ zr1jn7bI$iU|G@i$Yne-!`?~kF_owy{6=&r5Ksi@r^kmDo5+e|4{=<^Yk0-Mnl@2%m zT1HZ3t$o-MbX0_{gc52DoFP5Wjm!*|%V@v4A$odUgHO&GR~43lCHOU-oBS)vDte(_ zWbd*4Y_w&HUx;v0j9?96P;~hPoN|ZX9(nv8p)}<0m}=@7#H*F7SbJYxG+wFB#?#1j za7CfJc0ghndlvSJXyb~yhOe_i+@C7P(4C#BxY=m41v6D+$G$*XIg1LC+2}WavBRoj za3a_)A{A2NC`4*^Jo1e14Sp{l6slAm2_LPfMJ&Xz4D2#D2zT=K;X~@wV8_|AMS`n*xv?0>XhC433_?mLj>rHu{7h_tDhV`a!9cL;x zt9pt7H2;!+Yo#-t^Y@Ul*}24BrA|Ca3B8pWrGq-GXeJER|7e2~`*SgIdB@-&4V6=y z#!3GIJnFN^N^y<8YwuBpoEG9S3qf|Ql-r{#wy^-jynf)&KjO$Sx&B+^O1lYd{#--> zP^Y&owo-MxeNFS{sFJCuLWEZ%K~p9#*JVq*%vVX-~LHg4n)n*z=T|9G~5z!oYYL`j6i+bNISgur!(NFUe(vEgn6b^az4_H z`z@F&6b~OSr#|$|UT6u7etnpz$TQgS77h*WXA?&oDufSI5<_Dr6s_D-xCYpDDZEAR z7|};Svt-Y9q(dF~S^x+rTIth50Niiup=w6A&D{z0Fa6s%=X>vire6;kqC0Knz*dpon5>zq^Db!CG% z76b2B&Wm#hv<>a440894CFUcqbIM0Ym?~*SFBN#$M_sY$SUI4AP2 zHT`!QG_5J8K?9ChciKn7qT_#!#(>BSQE`yaoA&e|wT{E8_YXc`en#NjxdWW}JV&VB z&8m-ph|ESuK&fB5R(>t_OR&|GWDpt?m;6Vgvg<0AJ$!adq*rEuyJyAZe&{i+pIe`+ zHhNXo4wrdqacC5yS8wA-Z+O`mO7nISq(8}Tp;g^KYChQWn9c%(I9qKL4wg9PwL&2A&^nYUE3=rG%3sB{Zq~ zgz346JZ|*eEavACw@yMM@GPPg$Q3rIgb+zwFNK9_ivZZl#R;fhCn*D-bnqWNN#IfR zdV*ym^GOx;XqknO6IS)nBGoe|$H^LEYQb`oMhq<7(^Z%$UwKz})>;+5*^de_{A#hv zY?asC!dFfM7pXR^#CXiDD>|DFezBJ>v5|>%)D&BPJuM9 z>qX-lmivv{POCg{GU&Io3m&Mb-k89%VKTGk%%AhGEOLpWQ(R_ycN}=|OYr(}qiye0 zeDjwBLgntM7WtW>n#jDlq8G<2>Gz!Ek94C7R6U9NSWFtYSKoBy5tmJ`6tVi zGoa?i`YRU~xgq9^6RYuuGh8TK$hg^d?juK7wEC)B-DOUdJF!a}mtMrMv&S(0*f?TK zuD&nx)kMWvfhh)lKY5`>X-QOrR-?fDuQYAxqSu9NI$gv8t8j#JaBlHnazPSfEKhQ2 zOMPxz3LXadQYVgtkO#TI8 zxC5aap7=pNRXWgJFkBA^Bw3ya%~#||uZe<}1}#WHkz{gv4KiAms?&>!MePcFA5dS2 zpn?V2--{d1d`R!cs3dX8>PFmQUQqFJGQ(%f*mJs{FZq%e3tb zGH&bJ=M~i`Q}M6v7&P!d-2(>T5ZZY#BF@1ijaO|g`juMx?wbH4eKh@me=EsrCy$5l z$p+J&DN2=MCo0-_i^_Z#abG1_SWp5<>+pBRMHMg65`NYDS4y!4_KIYLob+@%9i4^g zOn^`z>vzME*NhsTk}%lN$Q!*W)^CD3r-C`lpvyu^!kuVLq8MSO(|vpD=xF#)y(19?vMf> zDvRh={Vrq{zspY>uEGz%;jo;9>jy4+txL06aDhBe`w|URB`?env1Q{$139mHM@Ux8 zSYtdTus+BihgBI=4v8kge3fsdVJ7K>|5+1(-hQOIN#)}AB+Qd~sqt$XpF5Q+3JW`e z9BL|O=f_-Zjb7@?l7*a98^uI2Tu%X~5aEr~1KlM<$hjlGexPj|0v{JP90TgUhbpZP zrvUpyseJsS6$6xMVLRAzqFBgPqNnW zXmTOF;9ocS7~}g{&BQV{m8`ags&M3AE*o4d9h)z^;=3XntV+#SvOo(41F97bc~t}& zjsWbs2JZmFu6z++DJ>4Fv?O{0t0-a^>swIZrEi_~WItopHWV|NtN}iE(!_P+YoSH- zFt1(c)7=vn;M{#7asjD8HXA)QF65pHItqtx*7uuo%Jd(aujs-ItBaDN6Q# zmH!Df;NDWp8QPJ6tMEGby@c=bi<2XheG9a(|E!96BC)FL1g>fjL$TOQH_2^Jmtpu! zV^~^@IEV+Cm%vG6bS@q+-4HZTvNHS2T+$ug2ZUk6d%d0=qs1k!2JpIt5OW$-Jsn#^ zm>8i(jR5ewBVd%9qsutddr_oGs6`%KY#KkflF=y$h6&$*EdA{l9uFzFYMfM(dmNte zibqN3EIUoPhiZ?gdT(BB`d$rp$icdE?R@OI7XEpZWp9+wD0cVx}u&` zHG=AZ=wY;>zH{f2R$tVO&sl0E`j^oj(Vs3YE0aXPRLOtNF7AX5F>pP8nZS+WNqQh|=EUdZ{heArenC?^ zU^rcP?>e`cGWwAnZgvQJOzcMwGv0ce6tz*kzMFjy!~VJDq`+8+b#a=@q=-bWEUIE3 zD_`79qt6=##aRXDz}nOCA5m}#BqM+O0ER!rUo|gCSXfZlo-P}20&+TVt!jRnyevv? z7f7-iWOAcTkL&UqJz5d>mZP690z7x_`~O}a!w<2(um0Eo$H(HfyrDxayfWC)DQ?P7xjTHVexrJU{q>U+DPK-$^8&zrk<=E4qPZ`s3JA-}<8I8tF)_ZataYR2b3yHu;@j^4iZtAh39tMxC;T%-JOckj0k zPTy=!4*b}2{5((NLMx-gr|3(hooG%YGVKpRQcnmBmRphp@vpmEW|CuC1?U&txX1rB zlRr-ph2$Ac@GS9=>2@m%e8&XY);yjX9W>WM^X^}qAu|F?^3_|XbQjS_%sP&c2i_$M z{SzlAhAfF|Et*in<5Hgnd1qds%XJxEh2`u}zor?iLrxC9Lgo)Tow5;^ipgCao(P*A!t0rSkM*<`RNNHn z>^Wvb9Tcf-pQo>Cd1{Zb)7K0Grc}mhm_F3$8zzrEGQPrhj88$u)zz6+DxzPJ80+WGI7t$^9u_H;p5Q}oivIpz^K0Bys zS+Z9nP#*~B);rf)%4{6Mu)SAbQn3Fhk6E#-1lTn^j!2wxmI^foeL#JJ zfz~Mts}%w+D-_ZZEJjHf5R&s8{grrt9o>|Z%pT{@ELTRKyq8$1c>*J8*V17PE;_l6 z0!fy^W2QsP4Nwy;M#4cI(`XlUvhtuGl;=yVmtuOVN%<}UXqR(0`>Ihe5j1qqpOU#{ z#&|R3&rz-`(f_AcR6P6-%Kg?u{Xx&|HXw#c2|kk8I=U*qyUbZSki_23K%MhaW9oN? zA|bUFPiZYpB^lglA@di>m>vZGnJ?<{k}bt?ECq{AhBk_pvvz@*ro=t%_nDjslSRb1 z!Md-3uXAS}nH&^=tA*r9c=cPrNGW&DvAHl{4+a6vj3U+?;Mb0Qa_Si(v_84fFxd7b z=iimk?d)ZS$^+>yH?S&=TBxFwQtKJ&A2=&uXT;QEvE~8bCd;$@W_xtd;6a`ZFnSc% zZ}t^~)x_kz2%VzQ_fLVVSNk5elT7J-tNUCPQpg!hi$R%glm-<`;b#%Ta%|BXUD`lm z*ewr7;j@}|5m9&TG&P9OHKxc$M9t$yP+hqC9d)LO=M!}{;(l0zqe|WNyz=75oKPb< zujAE+EHmsvULDs z{@f%<4oB1TTEi2N1A`eO?cnq5?hC{w`g5pV?lWu9HpXucS`1_%68&wvr&Ls0Z^|dg zF23U@#I=zXrn{P$to(SuR&ZEl)_V~r-@e%_$dkC=aa65QL!A)QHU6hd_=jQF`o>+k z)R(VvcfCj1_SX};a6Pa#xvP~nO~h4vPbP;UyF95d zOst2FVi@h&K_(2C%w~aV;PZVJ1=6`Zq!LhJ`grG+Hf}( z7x+_mfFQkOA@&nKRw(y2)%!0#KB6K(^=P}Jz#8`Ay2dL3hk4Rn%w7CQ^%+JU%`vbt z7&^9tk@ZwOB^Qu#Fesc@u|M_VcE}DY&asRO*8{sm&JcM0T4-zJ_uYgpef77jC<^kZ zD3=@hbNg9_W>Iv6457ndiE48&O(nuZFz^5h4H4xJhl|F%gRHLh8cj9r>8o_?V;&lI z^P_>jx19lfBE(n$_t~*%H>Nq_ubzXKU38*~LHdvjr%gX4>oj&+E^8p?TSr#tr1u-0 zcmSyh^OwX!^NcIkYr9g@zC4mL2!ChniEXZ^S854SA4Bskjr zXM8yP^_HyGA|hLN_;7If)+WxXqVKl+{EZiGcIyp(s^=)0N@7=3K_cJ-iqDp6)Q>$_ zGA%m005fP0mV;Ls3oiZ~8t%_iykcLIsdxrQ#$_IRwv|A)gjX6YGrqD>6#PrCQlO}Q z;mNO@yyVsyks7ahQ9ZXC04P4Sb-vlA`ttTnHAs8S|U zJ2K9lHg;-LQ@oIKwC2^-nU`!_?O_TzA4NgZQm(*X<^<%+#&1_%hFC8U7k|=tjqpb) z^B%r!Gx^W_z?-b{h>;q)Lix1n_s8C$++GW`d)UBTC57T;Kyj3 zndYhsbAqmv&+c{hs{GItFew91fr@#$fR&zIBDXo~XPOD@D@JOioEAKgU63EZa{gON zrB%C&9R9$Ic$t6GAppp7 zO$v?%|MR#Vi@Qs*$3Ada#t!gbdLzXa$PP4>>K!jZ;7w56;=Ix2m zaij#8w-*RMcCdyxSiA_0K1{8DHoDmf5Z%pm1z>1clgGP@}HbgiT*R9yFyKs4< zD-yenipTC!E62vhjl>v?4U@R>j>0&&udvMUfp&ng2yC5?aF+!)eVJSZKL4;ek~jH zS|;2f>ciF7K^WHjV0aC)v^)EF;u|?%IKZhM7tqRZ3{0q3J(ob1FB_3Ljj&Y3%M6vl zS!`Um_DSKcNDoNcmpHf&UM8@!R`igK8l60A8+Pt<^0|Jwzx#)-T?e?oK!~xRME`#f z0ZsO2?ZLSJ4-5#wfC1y1(E48iX}%G5o*<1J2PE|=Mk_cuFJjO06k*|CR+FQ$b7&j6 zu8Ez=zq--&lohSjLi-Fwi5Qf+HPtavfYE?KX}2lbAR&C&$gJ7NX@trPt+&2tltJ&@ zIb)-7ag?P+2NG~xqtu>bcX1il`85HO#@6ZBt~}(edH(b)R0#+p$Cw2u9qu7_=y|Y& z?hpd_kZ8mZ`F^v&A<7VwVW1$uqubK)QtF*a&`YTO4g~jz=45!1+}{=)-!Bger`=al zyCHxAw}f?6C4Ael%g^b7%1}9S%L*nJ^V!MK3~lYQoDrSR%?$9alYu4pe0wP#6#&? z1nku;$v7qdV9ro!#^|PLa^O~$Y2a42%*PJK`>Op*g30`mhfDezeYN4@tO7SNatmFX zR~3T>y!xgmEuy;6ycOC2F`@;~%E1^*KUOWqPR9_M*RK`L9!OXo2Zz4$;`*~#Z#QcNA`lanbG7rH zD9VV}YJWmya)W@wnrtNOZx|4I3M&xqY<@YIK ztq`o3*q)#{bpG3OSE6@E%6B2Nv@9CGtJ*J{>2J@~K3cXP8+M=5i-MvLZ&oqjAQd)z z6_@dV_t^u46w4s5a3}H~Lv69y=Pjzt8^Ka051i$l`sfiR-e)H%w(z2xA%tfKZ98@J zIj3X`nRO&yEg%ovqI&P@$7gR*U!OJMGGw3bNYhLrAT$P^%u3QU$JZ*_g{T z*DSR-2#?Bx#hCx#emNv@N8p7U(W{G6K+X$lH~maHUqaJZVnIjmPYPQmsYcZX8tf+Y zm+qcPh$g0<=yb9}G(%n%pSwt>?_;j)dbJzN1ggYcEpqHQh3FL3FBDXjLpcN(6KVAk zhr?|i%E1=#;<23=KR)l#Fr!?sd024iiY;YOPtw|~M#|dd2Z^QU`BGZ=Z-R=YMOdGl zYN`%w&N)BAepg(B3i14c|I&=_{vF9t3$Dwmw~pRSd(k9w%EH}g z`cYijz2f3H*;CdCfYLcw&u8^vrpK}w_%^UDA**@uMgOtc-I#>~n6BDHj9vE@BJt zM5upg0>HSLAG2t5Svwu|AY#h2BpM%${hPkj&84XfF^rP0NQYMCDmSn};Z-5NTmvj0 z(1U~Yr9!#&A)@?)ZrnH`Zam4>^G5_^X<~nHu1dmgxjtcEadv@e8M}OZT1YzbWL}xY zB|Q4W+A6hEJKC#`#K)^uxqSq+bJUiJ3Az<1o>E#_Q z^tf7e*NhnUR7`Wnyc7NT%Rr^~hsF7tpWDS-AXDOMwbiXYouXD$U3*dH#Q64<7 zR*qMj0N2Jt+LIE5G=9WNRtW?D2R`_i(7uYcMvQ}o%}+AOkz&frmz@&Sm4PPqlKaHIpa0q{{PwR>El0WMqljr-Ru(n>5Im>I?8Reu0d9vY!G@v9SV{ zu@hcWRSYH!o>%Y582uQ9vOlIH=sXK5o}Y56=U_}7@7hUKj26t+puO@X;&+5kB%%1% z6y1iH=RSb$q~2>itO)uGc|Z0LdsBtw=>Q)!ITdjqo5_tP2d`dcPvSQzVGC0i25kUk zH+0;uD&Gfxr}1pI(XB$OPgP}117n91 z4g)SHXUIUmlYb}|X}{`u3GHPY;ue1#9S&}lEfba2T6y)UvVOY$e|=c~m80u<8noPR z7TkZHk_H{XcM$AdgC!`*tiy&bh&Zuge%0LLu#q?CyHCZZhaI28%6V?~&WhsOyT5_$ zX+-v0V##Hq*HS~%*+CBQ50`KL@gPvoT3b*_+dRUeLt~g`QT>IwgB`>kJ_LStv zmZ#Vn5MBZ9bHG?90oNt>@O$F-&>aPQ+}g#iV7*M}-NN-D*xItz zJhrQX&$ROA_LjNrz;QXT{c!l`Jm7j(!h;x7(M(>3%5x$A^5^TsM$G!;WTn&Y}Xr>h4OC` zmj2U-sm(?Y1odAO0mfa;r$|`i={JhdiXTIxj&20rs-lLKockX4+i}JX8=mr3ibafJ zVMF`CDNOgmB813QjICDIG&X8`xkg?D$&w-HEDfU=9#ZMxWeY9FfK5v^kq3Yl9@2<` zlppZAzrgprk^h?04dPT9AJIpZJ5mNRv#H!2p+Cd-8VfQAVb#GS3zp6iD)+aER$R40 zxylKRMYj&y%Ty9M7@YJF2aFgU()Du9KH?&HS;Qp>^@g(~E$x=r*)B(AB;ks>p+K1o z*RRS(TyuDdpH?5QvHiV%+{+hfsE8qyL>HTO)0V@xfzkZ~sz2v4n8JMa9+eqg zt<}Vrs=TLpMXu~0nA~DNRflnbCz*@t(xvLH$7# z$0lsHS0yrgv_r;vyVscAds8dv*Uw@A=Ou{p=TQ7Ayb3OXcf3W#RrlAJ&kK-F`E!9P z5+cU~fh2Ofzvqo>kOs~Fr!yb=A5q|%(xFC#%e_mb3pe4`d3dZ(g=63uZ=@|retl>d zh?A0Zn%cjEdf6|Ec0H!!mp1IaX@c{9?vbx39T@eyl(Z0NxRJHXi`6h!1|yztH4tS zawLxgI390m3`HfC`%vreyYwbj2)WCJKQ*M7OcmF0sH~xE{pdh7#4HcghSG4G(^e)dc^wm85gRzY7bhO)?Og|SYidc1 z576?UWB~9QG=kH@vL_j3(Xf&8E3mbbVlp#$5+b|;>fr^7v;OU%@%*26+qz=8mowe- zf7174hgx{8iC#8(?|n=?Dekx<@@)Xv?T`8NxP2)@HW(kbF(WLmf0zxDT+he2fOge_ ziUJA1+P7DW6v#cwyb}Ee?))3I!z^;IALZTdq~^e6IAH0`7otX0AX4OppU-SG3)%=Q zFK(PI@(D3t38U0k#R526XmQ;H1}p2xktl=k9=HnsEWh?Kq-I>=K+j&lV4McUxq~C)#`gDr0uGzl9bC_7UR6f`? zga`lE^A{MqO(pLoRo5urkBCQ0jnsXsxcY)yb5Eme(4cjSUs2kN(=G<&tzd&Q3sCC8 zPj0Uz=m&Qyt_kSdW#^xtTv?y37W9>tDqPuJKo1_3Twfm?0B32l$RZT%7+ozflB!H- zwmNPUkwqy(7{&uFkmM|CDEaLZUZ3K2samK!{I?MTWHx-I^ zKFgcajmYosmrPn9jzX|>W3X{`0pJZ$xcOEU!a43{z##Z+&*>#c<{JIE$Fh-9tL1Y) zx7~sGH}$@~wv4YLc0E+ba#&Bw2==C1mf{^vP+l*3s`(1mj0Nsw-f?cVfV%w;Lyg_c zXss;9GXH;Bi*&Z@{s4qh-J-R>j4o^Lj$63d=c4#-^9w0~PdF)o{LPg&+aBp6?oAGT z;N5ya7>Qv>$2zC3ttxCucz>o*P{>678ZXZac-#F`@r4!9j9!`tbVNCeYZ@^NIU82! z6_keWPRG55dWLy|*Vg1n5vR5MUM=OxvmiYMXN5bNFt)P^I4y>{2;xV6vzh`A%T+6q8QauuBL71sq)`?lfCa=_F17AnY;jOs z2qx9W^ds#@5>rk*k*2c;hbvnMJ$z(>vDrwtcD2hlX{bKw77-XaR>sLL;VW{k5xM$) z3GU$gUvRw`wMpL+El-g| zSkP6jX0<-Gq+bv`u{{2%!_GVRH{*XPcRbbw8))3ZIb;~-&^S-l-1PozQjLN;N+i=W zYQjKe)f1Ez5S0_fku^-{=T>3b96iweHTAJ~vq)hCz|3#znPthwZ8Yqj`hE>?Q%g^$ zg2cE?{{Oz@qLk*^*dH*FoX~lX6!@kSUX@Vf?ZjfBSlJG^h=rA0+J0Dd$tZ>Bu7U9| zB&{}jkaLuFgUWkze$_{GSorf)Y{_4CeYE4d5USV(X~JDs)b-C`5NQl|C4P2&ZT zozb5Yuqci97rK>e7VhhO3&Kci=rNiRJfu(T7$ikeZc@Q84!Wy2z}E(E+x{}v==(9t z{w*iSGDR_h2^0V=OWLvw?06&M#C@ddJ0rsLUG2{=x)Xd1-O-VkwWSNKj&B0wml6Ic5%3}U-2XH zjX$--Zeg`dF0q|PMNlzDynC!OOeMQoU;j;5_5Xq^Ml-9kiBB2>{G6YRzbgsI>JoQz z-;AeqT`K%Y)Kf>?@;Cf&`n!j_;g2lt${R;h&5~{hOZp~%UpPzNdoor0b92ep*8Qm4 z^cD(T;^_RR54*f@bGS%*ib>#f7JPTl#@ufmcT_fg6*Y+M)m^7O+Bp1BZPdI@lrdf! z@cjd&$n;@OZ|kTN|KI41%fl_!j#+-&{Q7f8&8y7k8a~f^J=DE_eo!|J_`IYau#Ie8 zZ#=q0|Ee6z=yNPZZgZXU+=t%nu+v^P^VQXvX0=I|66ux9Xo2VEN0V7NEVQl1DcjB!&H+Oju>80Sd3irbcMaDlRBOTFa1lco1mrJyNfR8)T9B}!k8~63bDX;`ipw~C_9lCxpHgtMR#o%pG zIo?jWC;53?YVH*mk*j(aragg)EpI{0@V6Ym$#5L?*shRXnQU^x7pk2oq9`}6_iqml zLs91U>|EMRez)KS-kry@?>}Sn?|)8lKjb<)n-1va{!XKuLy)6;35|NKg**;&d7SU^ zHHz{lxKT~~ZS&r4$VCg<@9K2#3^pi5Pe3@D;G&mzm0ITMTe(PYb?XK^Bl9v_lF|kH z$-c{@UDYlbE4v^&=tl}BFMN60FD&fjP6G1b6+~i;zqMP%Zdvh(Rfw>eNJwKI$E31S z?-Vh5UsG3QRWK`=G_BIK9^^6`)BlMM#sGp_G|yCjNguX(|Mhl)gUaqQTbJ1w@PSS6 z@MyItNX=>G*;e7!Ss%Uxdy}V?<;c{Nrux&Dl)b$q1I~L1X&)w^$r>W+>V1#S1!w-u zf8*?AQ`<-xS|k$mFYcXuZ}R=5!u-RJ%>sUpER5ay8@}^t+xbTip4ykYeD&J+o#!VZ zS@w-*G!b+f9q^Ty!GS{^OJisDpz=eXg&TC*Z;Nu zIY36ydGGbffr9h1r#+FeTL>xkIpId+VajQ*xsh1IhPESt%;z7t*dkG8r^<34?ZAx* zOq0LK+Pi+z9872&?L}H&p%v7R2O_fUSpgt?mAPY7YmaZJf+@xO9{X(^FG9(YFrs95 zMO&6cN4TlDij}GTc-XaL!Ry7qVc7KQ#Ifu?w!0Z1mm<)W!AOng_yBNlBRml=sy_FV5H`_E;n8R}t_^T~C+>RmRYVu=2HQPvP>y{@q2K9P zyyhjFmn_@%-v1+BQP#MDikE`&g52LXWVcvPbT6sa(4you7Y4~>bH2ZKcTBK)5?K_4 zR}c=7+P`I#h@&plO9$e;|DtoP6jB6apD=iZB>_2-{;mK}ya!5-eS}e~W-Etrn!!%3 zrLwL|`zvGkB#|^%4#*BUJAZvEX0N0^0(GD7^~wuo-D{3zUviGJ3d@UK6&%YLW)^-Q z;o=>^LNFfC7kouuspy_hjnnGWyr{ml?Gs)ic1YW0-TnOQ)W9p6Fq%qJ>F9|(<><~d z=F^=pO7tDlB8LKkp=se^=e@-%C(742TPQuH=O+u57Nh)5W`9D2ZGp6U7;YVJ1 z-QRNV)c8)pwK2Cb>&$VpS$&yJ4Vxgt;QMN3fbY|F?bg#lQ`{y`2hDhO|D)IZY{EZO z7W~~8OgF|u&o)-HB~d56;&pHI*E$L$j@s1`rhcx*mA(}x?Oh*zs(#LQ-7>+iW3Obo zIz75jD)`KKWwRrMo7>mt(_7ifSAWNF9~}17{r?dG$<6SIA|gEC@0zcVGxtP;JFSH0 zNA53l{h#%=JY0_lujh^@2B{ait@8eoI(~=96(KRQd1%wJn)wxPl=9b1;jNd#D=!9g zV7C9OymWMQ--(CvL_hrDZYk)(r?0h>5I@MrdoBTI)euhdWTDK`@%;cHr?+G8F$Nyc zf2WP9(cg^EGqPb2D`X^vavUSgLi$pejvEfLSf#^3~%xt z#peeaeFQ&8Iz{W7t|6}>s<_4+Ypx;Rd2lz%i^*TQ`r@~CK@kXy!M^ZTH!YZEOPDl; zK+ryoL)LNB{J{*ONvLrF!8bJO89tKZJ1ruPG@E1FLvnYUm&)zyiRxqGK9ZL+jc8ws z`Z368UYw>rBEaxp*ROf3LA zfSgf_V+TV1zvABIeMg5j{fV#ZyC#R~%TFBQjDO$XjPhLkG`!YD6wUd>`!FLQ(|z$% z4ZidB8DE#hbAA8vuO#9(<51CAt!P{8=%wl1t1BhW`%}7OmJffan;*y9noW)#L{6M7 zelPK7wiVycx$?&a-M!7-@3)d$FCh?5hh^xunM8SS#_>F#|xdgTn#{i;88IXkvpX$5z#wmWo2*!z4K-Rp=PRO5= zEc;4oIj^3*432k*}h4BHy)Pp+_kZm*M_}IX?bK6eYQk3g~-1VRvOuyW|ASRD@9DWI-4GD1w;a z>+3wpdmdew_^0R-udP9zs^?TJ(4oY}R}8MCs1i3=U(F6O%N=Hpmpc#rJ-Z!_lKc98 ziT&v{#;?!12ATI-$o6B0ljr(3OCHQB74mL#ct&lcZyIydi#LLU5^ zLLKB}!0DGm|CJx#3&o23I@^3J|5{O!O8u={F^i|~{j}V3sJ69hkmarHUM^H;C$*5t zyu--JMRf{^#|@S95b` zFTM~R+de*c{HazUsasT?E_14WW5t`_$CHlV*{WWRtS(DPtkQgH=$G1f(k4Yl5wq@i zavB8y_*Gp`sDD?EdduI*y^9#MoEnuX+`nM7p^Uhi_g)J;!9v`B4d0P|z$@?V-SIha z0?Y_;0G+W=n-sBLrC~4s=rDxExbJ%SZ8j39Li2HJ>V2pjeKIo9@Z!p7?^JApGI)V) z>|~r3*wHjpEw>L~>5;UrXoq-^%Y_E;hV3hGE8VOF_CUXTM+EbO-v5V&awZevV5gz& z`#1vaK(srHGf;%zRf;PRl>8K%lCSO(&fWHO&;D(hC}Ear8EevOY-qn@-ocz}H{ZM!U}B?xQ%HP|J>b4PJnoD}($%08B|cF8aS0T9{** zA*vh`T%It~35Hz0)4U#;0ubL~(&uM2e)di<>kPtzNo#4|337>Eew#*TjBmhx*jZ#k z_oUq9&(*#b#rJie(4+RM=fR&Wq6>mPoPjF$hv0(&<=_8qqpN*8m$->0Bq<(`EN#?S zMEyn{LhNoRDkBjTI$0;bG<>b@uZde^5Rc{BZUKJ9;Jip(td`Mi8Ts{;Qxna}^50`F zI$=IClJC3tlcbsXFrYOZdu%jzlfENuH{z>be#oe0fo~%NM8mR?d$^yRjY-m;D!a4P zd-qu%o=e9tr{qBBm#L_N_l(I1m;$@d9bA*?=#k2HB? zy{klJy1m{Dd41UPHn=K#RH`#+Q3DTIfVZzmaec@TJ0be+OjMX$@!-ql#ksDAY{_)l z>?`MRY*P{Xq*<`vBjS!rSDpyn2||@y_KxM%rz;T1w`%QRp@RSCjtF1D{n?agCjy?N zVzV8pUyG344hPlizQB{o%N=hAq3AQg@K`vg=ox=K)yi36^@$cVjcRlL*uMMgA%QB0 zgW}{b_GCT$c3nKKCq>2Fm}-rBwPMn6cKy1;nym9N(mig0KAQ|xv=kE_!4$A{(Jx_8 zxugCLtP|P(dD{kCcER-5**=fJD_3xpP+pq1r%274lD~w0u>XFYB)vx&R;Ji|)A^Q@ zb#bJR#+zK6SNDd3m*6ys3JbDy`NGj00y6(_ z?cBjUABKv~7h;DYvyFg%Cy)AhN9_YLu`RGN8^$yz>u>@g?8b4Qc)e11EJ=Gr`ILq{ z0NG~}rgJ_;#b-}oS8F{FR5bKu$E}z7c*w#haHTyRdCX|2ngC{!G1HT0w^dI11@7Ln zEx`bF@#Zn1!_H(aZxKwj^^<{pci(*xZ>Kukkz_~TJ-?T%g2>w)$gf68J20H1MXyMl zUicNytp4!FW2p}d_Twl<s}>56~uuM#=+=|8cO17a0s+^_#0M0wU3 zrgVEr$$HN1Hrw~qyZb(z&8?r=`7~UjNpUKFz7jq~XWn-=-VJg$t_L_lV)b24=#u5d zpE}W<2*bXhED7pgn+O}xcPC6FX<;!CFDWc-dJ-}=_C`a&{mTq?J#w??1zxL0Uy zM7s%J#OPoTUB>vzO{1{Rd&hJysoLCxobGhWmV#&F@IEBi6*>n*$HG(?QP7`?TrcaM zdUvUBtY=DdWV{VP_zA_YV~*n&5HU=;6bN6$*4W4BxSDVEORKUt01C9UI$O37_xvz<0mkos`ZPqfeEJLU?NC znrJY!QY9}W2!OQY(br6d&*{)ZFgs-TGJpn-lDV=jN0)`;ZK-T7Jz{!?T^jSo#Sf;&NBt#7BgUMtpigWvO_3f$o=r;Oa5>S3tlW0 zafnrM)1zs;Xd?!!&&)%hY5!~&jBuE^TjLv$7PwUp+-f=~TVI~+S3~sW;H}UaRGg3O zZ|c;X1n$;&vDKyqPp&hkh0s6L(WNE|AHe&a#qWO0h z>rQcngcq9x!gQzPBbIp$>n53O5X`V4?d)=JP;W=@za8^GNd&X>kfmBkf>Y;;`RvhZ z0r$GZzU%km1gFiW;}4nauOWKL=-cnoiGVuJr>{pR->Lp>`HuAB;(3n}=%TBZXd|-ckC2^IXj)f za5^sC7-Ti9vDx3Jc!7Ve$~Cz21F_k=>ydu%856ndS?CK4@NnaO9slA+S8wE<%iVZJ zjUbCg=#5mA)-&vi4D4aD8ya~Oe?m851n!$1A$@ZDXJwPbpT@9kF>p;>X=CkT%bac7z>EwvaJ|;(g(j42_ z9laoIwv3{2*3oqrE1}uFJi80&a|OP5$eWF43G#hLxtA5!lUbZ6-s3;0eYFu z6Lx$9zseHZd^=Y>kTYH-ax9SJ+Za_c}Be zK;y^h>s&%}oO@_W>QijPItr2w#%J$l5367D^D)1>ClXnipJZ5Mc#`o!UgC4ZtK<8? z+;$_vA^GYj!~2+Ji6K|9d%3VEPkqrV&|SjwTiu&pw*=ivUMQZDcodiWV>{n}X~NVw zSggFdKH~JMAETi!ocSl$_&t&D`^555MI7J6>!XkQPg;Jz?5%8EVh^Bs_s0uMmBab; z_=;c744;qA`mLS#w94kq$zKxttEYdEU3@4>-RR0r!6!e5emNgcUr7^h{*z4q^T)FP zv%QD_!41aEENo24dv#Ui>#<)m{$|5!3G6M}iN>G&DlusBnET%E_TZol`O0VcG8EkZ zCyy=sHzM2PwJ4s*e;CZScwnd7hXo-GPE+?T(2Qn-3RKAtP5^c+CIMpHLN!Mu^Yvjd zDM4xrZO-MDS1in*81h?aQ_4Yrw_PJw^%0U?N=q?yjb>3R2wro>QFi$AE8}48{26W) z{kRzpSB6s3pkJ7yO^4{U11YaYJRm4fAa$W1^!^laM~Z)f|B#m~Yz(r_Kpbda#775! zehp@YFYm6I1gcNGkO4vD&mNbn!|hsq1>!KP7JiWcTSc|7oz0FB1021A|LR*@kdHR3n@I3 zH+Kq}k&z%lnpqF8gPJb@+9FGT4ORZJ#&|fxA$=KKopS{Xg$H3|KfkT19=a(f-47P6 zpy?d4YHRb05;nPp{kP}bHO{o!gEl2xn^4Iwy;~Fve4Ds1CQQaIaGEw|dZ0O4g~oa9g7a14%7+gX3a^oN$(?E==Vex2NaoKO*Zp9mOlqakVrJodcgtjRB4pFl?zmBBZXx=)nI7oIKyI(J!Fi~g zNuj0+za)Kcr_xFheYH=C57k<;-`qpR5~ye29Db2R3oa+BWTQv)^q3AQ!G8;K^#%W0 zKo%J$nrP7rbu;+e-A-9%qEQIiWmHL&VfNMvh}4rgDVMZd^(3%%0~oAxx3CNi3 zCv7+Ls+^`Wrz8#{1DY4~4eO_zPnYtP_K+Cc?*H0y{zE8FrDXdmy}*%le~X9X#=?Sz zg**;{9Dq*yhb^;WRuiH7)2`s)EaLu2@a3~mxRzXc*T<0b#f83>=T^}@4{1_{9oDG( zc4{hv8~K+vo-+j_sfO>B>I3KeI(cOX0>m&Ak;|X6uwwA#OgP__s)&yGQ}HZf;L?Mb zh1ycSQbz8}Ep)#oV-yk(c0KNA65I+syY4MIJmU5`ixN+uJ$@f(y5}mx&xIkkJ;JF* zaR!u|=^l&NEwjN?N1}SsXv3AOwJlu+yAa)bVet{QppzQLM(x0Q{^(7~ zf_=7!D&IkZXt-YDr2Ry8xa{+u18a(${5eoQS=;}ML^S<0`7&>g=Oila9;`3RPOq$m zFhnYUfc?NMG?JMm9`RM%Ox*dn%;XPzxx|Yb`0tlC9za?Ss7n}C_c|1qMul0SiVjk#igAZ+%HW(D!!iTtGem zvp8Z!67J7>W}`*NwU4{7L8m!ADP6haE8hho2As~pjRSZK4f5Q5?oz=P!@+7#-S3abJ@#C^X7CROMAckbJQ)4FR% zXvi?SQ;e~b+5ikv=7oo;pZLVqXT5bk8CX78dU!R=@szYI#9|G^#OP z&KVaiQw*BYBJ&nU89T-T)Wcun4|@|sF2?FIEn#pst1Pv2ft!>%FFl6LJAEIDrZR_L zRR0K@48rg-Rlf86!6}ld3Sqsu;w8$%`+2DOOOknVieqLGM#~Ny;Ph_hz5PbrUmmEh z4Kg%>?Ih0l)*4{T3)dT-b(qIhKfJsfSI^PJY?q+hzylQY`jhl8IV9Uo($c(#ppGAK zeOt8;`waeZWF4G5`e2eV{U`}0A`rqFc)LcWdO#M>WFsac$S6_F|Nmp`E#s=(zr9@n z1wjD;5kV#>sB|eIT}p_8v`C3cgHxFFBt=D0N+hHa>Fy3ex?5TVCfzY<&X~IYd++m{ z=f&Zrx|Zv+?)(157~gSSV*McdgmT`5t@u0oY}i`P?g;p9!x(|}k{-ml1aFi!{MO|M zktw&*er0*t78(ivxRh&%=}hIHPcavV3$F;;HGS_hgihfydcryio~Xrt5MXX6XupXK zOy?M?Gj_oRy%{NiKEX!bg)bgH^=NgwY}0HDTQM@Orga6+Xi-N7T3PyAp3>o5Of>h! zi*#_F28{_>;kCz1@m`?{UCHn1E<4P9;T|Y@F@K8<0~7ZzBm9jC|fr8kv<$wRVn3$5YTK zR30WN@d+8H;cR*3|MCM5vA#|31>-#Zi@kXy2``x=1(q{Mimu(P4-a871_kGti@-zn z-v2mB2TC7TQ7oH*dD(1aTnIG^9|bXizsSh9a=yY@j0_KCI7l@BUmTX~xe-b9DpI2w>tpXk~ePZ79v%`T(Hm}E9rq-x+#Yo-=xUty^tT2zNo zsLUz$_RsDK!3Y(>HF}}&^c7(eACh8^^*5zE)# zFj{7f_G+a*U{HJIcV4f67zZ4U>p$+oLXG&bMBLvwh>iEDvC>jtHgpmFJoARq8Zs`> zr@5zmkr2Wsmb^%L11hy#sc&NP{dA;uzJqfb1F(hPB57-(u-V^&dHyk%A`nA80p{!g zfvnNlrGoj}cdCt^FxBflmXWZBs5P{9`oNJZz|VaxTR`n{6^h29jT9A~{oP@;HfZ%o zNkVe4tHoAqWp_iCp&amvccNj%3Qzw$RfzA+l;uU|`3uu&m}A>-u`!x1n_db212t{f zW$7cjR%(2OO|uU+pl-5n98qMgE5kc0=9t+n)o9l#D%6_jrCN0;!`sMg^ic7l8kcVI zRDT!D-4)7-TSGKHiT&4)n$u(HM86Nl3~AOfAI#c8fEMC;yYVns&c;vao}|?{)lu{M znZKoOS4&3w8Af_YkLYVGK&->(sd5j}yHta;uqGf4|c0z#+uc*vdjH&*3F}{No#iVeTCK zl##LK+I~p)O-TSe>07mHX&pDK99De$Heg`MA{c;NpXzj9+i(=L0M%;N(HxEY+AM{o zir}u^b6kE1*O(6=PsZvws8qW@U*u0iPUNn-bq-#>@-GGMpxj-_8AtV6_#*1*S$;Qj zmIWqW>^DMiSJ>UxHYJ_D@Y%(x6+*hFKA3%c_Hy#u_Z(JSQ@h|nF5#vFM7%06T)ND? zDJ#pY+xLyxEk73~x`^7I{rT3RBg*-E;Wv_{v1GM>9bE5Q2!jGM;)ozYFuXxwv(j*?w7)XfGO(O^h8?; zP6RUZ#Z(Od{7wW!x$b_ucVw~Eq!MS^)cP64H2MJ5rMuS)&YFLv_K*qF!F}r*^NuB! zaeL0Wdnw%!4(%H|0P!kpc(k9%rF9)SSkPJE5HL`6wD!VwWq*5QF)&ou#;K=zqHoR+ z=@wV-+1)82P-0px@9y3i;9||$8m+$k^V7uGVY}A>hwZHMf4vD=bO91QA8T{%={8bT zjt_I?(em1Ue@_Q`322eTMQG-ReJ6A}F-pAeCmfvu9hU&>c&fJnSV6_9bqbaYOz#PhA$-*q4y1co(KBWzCFvaU?HbCI#^3KqfeP`}}nekOurfB)0$!Q0p%Z z&}R6qwv4p+O@Q!9v4B`p=R9y!au3UJ(;-pkXf8dB6vg#nMXcGm7jPo5CmQtehT*rh z<4aG?8-&LmcpsJl8)9r9u6s`l-**Efq!DfCegS2bbd7?k*#yE^(eV|DF#6xTb%hLw864T}GffI?b%peXzp1SyCBEyR;$$6BW# zU@f((Xe$xV3!zv)yKkQMw1-a_wNBf84crOu@R6*i7^xbJ-_yS$Sb|Y-r5x< zgnC#m=ZuCZFkSeih(E|~{zttAPE>BBJ7KwXbfG2he+%6XkYe? z8n|P;90ke>n?IwTWMEq|Bwc?a3`Xsb}c&P4YAxy!Fm2#L0T+)x#y9Mm3^FH&&W1^G9l%!0#@O=)di_9j#rx*EQGxB1A_sdKe*K`&;N*0YBC){oPL^RRDtNejInInp1bEO z)CpG;8v5VmH>>&oWLe&14L0<{eaS@%e1nYLiBEl^S=&ngiKkT`SU|1{>XR`2qG}p^ z76yicHRxd!d$`m^_AHFH^j4mldnFL@>2li{;or0lM1&~*?-@?DfleLiU;4mjc*`2K z@S@hqyI1_>cAS$b-tvw47%*Vq zIE+6n+B%4{@ZLa>Z#-sKx(K10Ah6T1y>D;6SI94Rus z*TG|_&z~?xF5%oSdZlt%T*z%FOdP|QmU8hl+1`$*&MufmFB|IQLk^J2 zMU)-l?005rrPP&j_}C{6opYe5Am#*#cqx@zAAKZ+ZxybLzYUE&2n8m7J9S8N@rqoZ zXCqexM_;(5=tgQX*R#TB9Z$KL`9rEHY5BU9(oVHxK%x z20ghYmzh`T#$=XbaL6Fd#&b2JA0w>Um#(T)PEzm6<<#Bf(fpY zA9`k^Lpm$$JK8*NZj21t_XY)h+_ZlKs^n*`L?pXsGxKT(1G)#~nzC@G{wZNLUa=Qv z>WT2U!PYnxdEVEL8|I1<^Tz`d!|M*1G!3nIXY)Q62E*%@Ybj=p%(Z}TZnO;UkOI5A z@4P!~Yu6zSoHxBp<|i4ziJV26QginmCbrCeN+>Z&?AXqhHi`E z0c0_}mOFhcksh1-a;qhk^?6h-F^IZqNBabhRrivUU7h^ofR)|efa=9%#)HjG`SiK* z5sBkM^vmPl#SF`P5JRZUS^gCtZHab0>XCDFeC%7gSETRb{CP9uKV=P{*al5)_j8LQ z6NhEX9>=EGCj;FH>5` z!EgLGSsmCRk$CR38JXgM*6;`grD|%puJ1GM){*tNRIkq5?JbAtUEg^;3(+;EpCpqZ z(@tgESwJyC@6f}}Zg?DD{5-;?-tv3}qObwNdIro?N?MJ;>#PQS!rPBO^dfMa!tzW5 zb19gWp~z4)5%OmxE_1wwUsc^XVRygtev)ALRARbXn|LgVC`1jb`W#-}66mD;PeA%K z2Ks__`X3BWU2UQwl0(hke0xu<*a0Xc+}%veF-AVg3(=7zcCNst94~#se1^ovxZd~s z`)(({3i6yA-51q`PMx9ES=KMxF&ob#9n@{rvhKVvMin5+(`E2^g?cA@_X%IYeH?PK z^pL^KEjOE0?1g5GW^{DRlP@?zL}*9Yf|G*0yrg&%9Pc$@0!$w)^Oti42YOu3XX;kR zOyZ+xdsZviJ4uoU=qdx|VAe)irg$sT$RMFcFQ{Uy2T2O)sHXE2k(>1aFS^ecY>9py zUyKGDWnY&W0Xx6lU`TP*!R_VS$#_juChXcjOR&{QqAaa4SLmw5!KAz3a{uva~qcIHql80st-5NP@vixJD<@MI2>IA&He7CW#iT_1V zCKvBp#u;EA(qR*=-iW_4ZA>yny|}-B*tL2fNUjkLI3ZcZ z$frg@)F``4-M2XbZ3tCCj2+a#Nhv_TI8I5d;{DPKcVZf2o$H9@oQE7I9ZurYv>Dj> zwvUYVtQ6|$HxY&av7@ESUFVM(wq9faGCCPR7G{u~#Ot~-4QI@_sjl6E)DD2v>z*EWb(z3-%D=BoLTZf+f?WW@Qhs3VwiI#%Sa2*A|Pf))I&F>SbOln#Q2*lr2S zL}AIkbm1pW4uPnxhw-&eMCK(LL5bVeBaVNTQ_S-*6)tW7!k=5?nCndIPY>d~eK?wg z#<+NBmL+#x*a|GPLBZBdO=pd(bOH5P_r{};Sg5A(-7Qyjn#M zr+t5M^!7cVa0f5G+Vchecuqr?`hmjn?mej@A?=ak+@k~eO`1Xhv7ZFOA*TX(< z7S-7v|H>J{+6Lodm8;AXN4p2(`$>+jYhHNi0fYW4m77E=s@t7T*%RVn1}-WmmDJzR zepP*zVLljtzrF7AD`Vp(*0h~HGbq3D%O?`o@b}zg4KsN&{pYUQAK2%AmwivskU8PW1CzK zzY)}>p@~2aZBS?7l%e*YF9nDmQhiw)-TeTS)bwutbul>F@m9GXZTbqU<-+nsi2Cti z*fQfZAkq~lWPyu^<1sxX$|OXYBY25#B?O37;gSpYXpbuEYI5Sjg{eArGOs*M}KBv3b<>|Lj%c>^bc zwL~qU{hy527SDJ=KVS_11Sp0j}E{5v>? zGdQ`TetWLpBmX9eb$pcgam6THck8z&UT4rZH21$j;U4it8t@7Mj)%(U&nu>S`s8yQ zc7Tf7bIO+dal~n)dKNR+iHm%#5Ai)0=CBQf5#b>D(Co*G&NnIV1&xtrWcUxl7GQbK zfI`6YGSd*jwDi%!!t&W0cU68;gjMU-j!?u=?K8Z)ub9cldJS1WI`1UPvQbVn7>^^(G9U)+~_8~Yar9n^4-^YnG{|T@@oLpo>g;fX?tFiMNw}G7)^vqxA@Xc2F z**1YVSYuZ1DJ^dW^G`xRYrT}rkjzXP(6C-ZWv`;+;Hs@;{1Ok?F&|8X4V$3IZ9tp9vm zWF@=%yTMO1=SThdVnM?4=9qLXYmBf;jF`Q{zgK4>`wTwihS!C*x5gVBUL9KiN+Uik z@r^JQiqcGzqvElq5cva($n|v+(zEv>9dV?T(Ae%$TMP@Yjd80XS zUvE&Vhr|dP(?t{ThFP3>%InzmH0vg^kpM=0WTBoYVvibVNT=yGeh8ola|7mfy2`%V zWn7aGE`R*L50XdkokaDf19#W;zP1@S>sg)z28KUTpTI@vbmCQC{hKQ%y!6*yBvntL zJO*6SmRM<~&pCCvF_H5Iw!;gYZ@w=$eYaLaAU)Hj;C@PPUbD4C_d?Ig;A=5&OZhw1 ztGhIqHmaoyYGF<-OgeRB9__FEdn&0-gICu7+~GG_cRA?}Rk`2){`JI*r>F|k4eGOb zKupR$srk{z7x>J7^l=u!$5w#(_$F~ndJBi>q`cii8-i2xm?U^f<53%A0;Jy5KUK~% zvxgw|GI<{Geq1PX1*HUIrE`{`oIty=BMX$>;nKEy(K`0*Ok#_6$hvn3tlMn2-qF5ws_*=@Ty7$Yh4uXX>GoI=j~(mPUEA#C8Ctv55O|T~6L_{q zn^!yY|Eqsgh-TdHA|RLe#pilD>^#SYg;lZJ0!_eSVnoZTipRo!5c$bkhUMSgXxAO_ zS~!A?81RnX!pdx&3VcEyUP?Ko`9J=WeMUP!E4(_(CjdQpN@8H~yd18>i@p2ZL9LCH zUW2o-&e>vVhWo~S9;25^!QfiIVXfspdh44*fQ zOtd5cPBc34vQO2dr9jDv!B2G{f&tG1DZj*46<=7``Nq^KMd+RPHmF_k0Pz5hZ^{R_IH{iQHfoNVNyb6Bc?)rvAMW2x6;x15q5eDRx1 zlgzXuqWw%wxjX<^KvoUVM^AZz1d6-J@jT;-jHe)ZwcCACV zM4N|Yc;!7v`{;6&->s~7=h%-pWa7j}8-V=^&vbm5Cjux|V7S?g3v{VKzX+o^;jG~$ z+zcEw`Urh8znI1zB;iI>^R06WRuEW8vE8jbhtibV$(F^A?}v5E(%P{^LY#g zB@hX=FKvvGS8euK*sU&yRi4yMmi19KO%uQ6{f}_#vo4kpTdeohd%dE= zzuPRgx;uSx<(B1-L*ewDX!$@0sQl}3q}3g-3b|4$k&gT}*jdTm0UG*=UX|>_^OWco91OHjo?2nuC#`pn4|C&MMB*U;e7byu0k=&vS0s-@Ew8FH|h{5QECF?=7T&z z_r?2~5N&&Z;VY$YDa=-nI*6D$i|+rz2+*|=#|nHYW}ZdylIA46ffiW`Y+`i;q>IaD zWsMK7uGSK{hG|^-jnhoPZ{%0Rg1n8Nw5~{L12(Y+;3!UA3eg?I zWa9!5uqj>0h}ONqIh_Bjo_+Ut(LiXXFgyA%Vo+J8%otj^E0w?5cH17r@_k%zVom-s zo27ZNlz*)k_;S5;+wua-rJI)mO_Z~;?qyI0l0bcQqO0TH^0;sQyB+RQ-z$#nI{D)C zc6;mZO3k{TwOM=^{C%zNgMRve7d^7(YRUzxvpP2@i1J0kBq6lK{N-g62WBAa23WmL zm5YomK*+>ozL*;I%o<3FqZvF|&(;A$AIgc3@*%~fsYDuF3r7c4e~2&ri7}s8gimoF zkp(lhq{dCXEu;EkXh4vy%sS<5#2(*-tn zZA{e(KGyc>$Zv6m5w2WzkP-lNXCV+eeQyB&6nYGOyp%_Qe(%rlh9*GfXh8(7j;!1@ z=K zK-N^RM_tfTfS+TnbQW_SzqSjPqmWy8hp+=ZMPm-W0%@9wQkuwk*CaCu-0?zeE6Ab^ zHzO3g#4j@s6#HcsHKMG6^%N5)z9Gx#M36EjDxx0hd@}e9<#tZ&K6UDvw9&(e{q75k4B5 z9}D-SM#XQ5jtcb5rOJY2^G2Ns5Ei?yoksQ0oNK$`2)&*JMLuZmKQvt()qv4gJ<7;l z7Vv~SG_}mk##-^^#du|2)t1<9dPi8BC*sMe(=&ZP_|qpp;^T@m+a{|c>7Bu3INKpQ zjszm~1h`MOr!{(RYWuC8Pi8g5VVM3_?7MeenIy5XC-c3mt7|`<_UFHrJ1oMT`;9u1)Yk_G44-0`bg*!Taa$^XCm} zv0W?{cnEJ{0))HqhtuvEw#J#SwTRk=GrG^E#_B|N+}16!y0Q21`?ZuGyeZO&^sB^n zmmU$M)!Q6P15_`5#ISo>u*(W=%&y0jOm=K!G5e3`MubaQ;h%nK+)L!Wsq9WQ?jZ@r!g^fM-N(GKjZe) zLgOa&)d>i1QZ<~xZ%d_RtwF5Ny;QzD*fH}C%`@lqzyagwgPhHR&NHL}mjmstHOY(% zqz29^+lyIq_lCa!Fm9A1_s1so9}N#Jw>mT>N(RhMLXA}X-+Zb`Cm4}=k1z%=Cn(rx`5?e>E z^}X@Vyz4VvP>3KQo*(%#+i}1Gvr9Fa&FfE|_%|lA{0z-jb0U!o33bPH2FkJGgugj# zL|u0itC_~&KlOfhCE91|>lIwm1Ky?Y=$C7v=lNDjju4rshw4qYJ)vWQISniD`* zoUBjPGjiQF;WW8;VzVOO!9Mm8*}L8=^6t(t(bxGHPi1Iq&RLaQ_xVr!=yGNN0yR#C~p#K<|eG2lFJw*je>TF+Mam0HL#( z2efg$VXf)ORO2glGKaihk!VVEF>`QcW^qD5(rpt772it{WQd0#pv&*)pp)_9Y9b4g z@o!wX-pFx%y|7mC>vahOSO1K2mpFftX|^i5h+<~Yt9I@$*~*BnicTQA#9y9zsFgWY znTnUK!Y<(Hg5_q#6j_bkH~V>}w(AwHx^$1U00omkm5*N4>zCQln&$(Va3B7+QY+b4 zOgiUCd|hz5xLms=<11X}zqWDPH}`hodxK^Hh8!Pn)Sh$JBmc(sUeG=EeZdmt(Ona$ zxDOqqa!y)_b9Sp4apK+;2evdvVpKbLFPt;qtA!pE$;yJ-x94)Sf-wKitH3Q?0=K<~ z?#q@e2CnOUgVj|Mo&lzUzjtQ9@>g!~1F!X4|4{im@~a=(XNEw^(O~gZD+UdP1CROQ zpO{w`v}RWWjLYMd-4^Ce1E7wYVbQ+WJ>m*vA7GUC*Eg(!ZQ=EZZufAwAZ>zSkYtxff0S)55b185YoHj zpjYf(c@cG(2Bpfgm<0^3nwe=}L%f$e6(hUl#md=Q-81eV#Q?_526I%;wCh7R5S9W? zcJTu}@>j5iqs#FgO4K{TGX8S9A$s`{yYBA6({g&1{qtNv{pLq~4$Ar|=PPZXQ{Ohw=Kq}sI`@Ntc zznAa*&L>}5g6<&&Dm;zjzU6mW_%7Hl@lb_pP*_4?s(rdr9Cilk^TpXjtDfmNCj9gl{RgKF5sHb?VmzU@X}G z^fmBI%8&8aChcGCZe*OAW43q%aAs8k6Jyr~^>1tmF&6`aRDqxf>>W_Sj7j%kd6g<_ zB?XoN;hITNcqSzCDh0&3gYP$6A?0P%Ye&`<=3v$esAoy-x(Y3_oQiZ|17}OTI+>;- zgl`)n0#a^FJ9#Vi+*PeLN7eg=R2(0EfLLK0L3Tj@>0NglJiIE8HvKKEaM1g-t|bn& z`xekSxQ}LG3(yt~p$qTs`bq?H-n*U(K6m|vUi=EKx26Wv=1m>SrQ3meuf92m zpfgnUP4ImElt@KcoM-e@4fbAN4ZR%hea#VlMdl>H%c7qq$}%_?&GG98-Cpgf_pxbU zmhXFE8UqK8f=2rr#;ihbVZ4IXn>FsQ!Iq65QlC@Jb<+FKDpf`KL3az)9#OHdGqsf; zXsQV*4Be*D9R@060)!~796)R+fv_nlGN{bB`^j@ws0-HIape8K zyFjGSD$|e9*n4)XWtP>qoi`5Y8mlmW0wBtT0}bKwpri5VMCh!>;7w<8_Vp!ik++oN z_>%P5<{|Xt7Q9B^E~4^R{w)K%W zt439~h13bWg@Gcukjq8ThF}GpcRjrwj@av6Itr&nSoxfvc$X4xITWnisR%s?B)*Ek>F21k`siP8) zH@Jo-Rpz2dZ@yF5bLrB?=p_E{VSvcrD_n5u{6wp?!_PpI=Fd_eB};|zJogHRX}o5+ znKg+x^}F@<;>M=K*~JxO9lXnJ&alvy|DZoxM<7mR=>Et&l$d++bEtVLA>AA+UKGvY zH=z^z`ElQB_TlGVqo?hh01`C*=3txgSEVU(;o9XV!u&3@2)biQyv&^>fJ$oHDH7z{ z?iJ418$WVE)=u;npNbuOqhay`AeKiae$Wq-k>v%PO2r*>o#q{MHyv#_+fk81sH0NV z)vqGf@7gS!d1erW_x%S$9G|$|-5BTCH1mQG>$%-VI?0Zg+gV0}S*Og}op7YjG{tH^ zX>sd+<(Gfg;w?urtS>{9sHw4zjx(3N2UKdbVIhF^e56zsYj>b$408-Q?OI*Zb&7FAT#Kt-&*GN70#inKUGqhu4>3*a!}eCA-)RRO zd|uO&5Bt+2S4Q_V8ky&Q*2eQ$DqS+g&9@bt0}16`#8V%5qfOe$93LuRaRpxT2U)7` zV?`-1oq5VF-Z?hXqM&d2U70p3&T>bN(mOi0=IjUXg{|DJNC_BeH-Mo8 z_*QG)D87edCPYWDyBLCls|9VW5zgAPB&VHq{fTTaTwyAVPbVS-7UvAr_A3oFH&bkD z9ONb$6skWCI?>^lc;bP}|4JG-G_U4B2O4S~j~sa%%lvZ12s)|Y_uxX|;NK;Vo9i0X zvaK*_r*LS_09vMY)|0o7-pk6UNnHK#Mg?Ozki`MLqq5VwK{E0Lnb|hfEZ(J*{p)&u z96%2X#Vj|mr4LbY@lj0&!Db93Tj*Abok+K5GC}hM2r7-UB)fAcEhOGAX=m z(($CgtQlb3&eAx-q{c4_&(izMn2fH=saM((SLiUr4+$=yxMU*^mOFD_UWwvU-}nTU6ByqSxL@6lNhz1#uH3))JAX@89c19R%yy=+#jvt*KWsBu~UbeGbpiCmfc7E=V|YO3LFx@IX~SX;A@*a;?E$yL+;@r`oErerL?yX z%oBXB6!<3jPHVpQ8xyZ~YB|N(xbvYGQGXuw{}@#zZ36>zPF>>xJX1RWV=E9|x|9Vh zKLH#qu-5+*<;FEyVwFCF=WMv~9ac=uE8M0%@NG2CsfiuWSz~=_=7z->V5Mf^V@tlL zyb&eX?YX7_e~9Ak_DXNHHiS9y-T|li;WIxpPDAH&bKcNA4&d=P<1bY6%jeW-Jy&UH zn10LJZwJvUc0qMCkbX5+%AZK!>dYlKdQ&h+2DLPKKB{- z*Vz@|Pm9o{=o2Kb{3^Xt5cI}P|N2c{J<9P?v1*8`9TX*{aV2>faeG)xkJG@(+(+7A zzuhi7-U`)uY4F@z^b*~Q(<~scU}w1g=9w88Md0$s<5aB-I`XX?} z8i&rL-WUy=yxej6K5irgNZMw9O}jK=eO*Yf@Gs|uS3#fxOu6y;i(1RytXwdjaaD3n11q&maPfy zv*6jf-k9+0V(a9E_n$1mnKn{n{rva5v*_ot*7cB0512H@rT{I$~~4L5HqK}j7^W-6(- z?8u^irHz6vi{q~8)#oidNtlf*ZQcC5&GAb`s!!khRH9(h4ROhI+_iY4d}fzhq8;B= zK%v?kfKL2X%sLfL#DW5z_Uun~r2Gdj36DG)$-q2-X>`3D)f z#}HW2=|QF$@lx3hBu+06HOz(Hv+RVkIZk~0*J#yKd4FhZYyKl@+wv^di6Le=qqj1Q zX!dyJ+vvR?%O2xVy4nUb29JsyU&cy~p$~|%stz|SU+(=u?sL26G9_!-ywItRb^GJ1 zBB*c2PBXHnjP=iS+xXF`=Qg#P6uTw+|3&!e8h`n}K=u^w9bsrAi+g>$^+$@46UMu> zN5&!9TU#soEX#NLuiB|xg>FeB8ewjypztc?LL2cD+O}@S`cVuH97=La)%$w55>ss% z4DNt8WvVZ=m(hCkqQ0Ct!1jGea5=S9?Wh(DWTVFUG9zZd@j+!fG&AEI9)d;jP4M#u z|0`m4PS98_i=ZdxB95To9WC3wawlS7Y-Ifr!~ojp_fQW!1tR7EH+{LS8#ItBoofyc z_O(eEmQ(G1IbjVM*ZhPzgs!ohXJ4%9TX1r*rj7s@w&T)h$j3LMkJTl8;52nrisAvO zpUcMKn+CZy@NtU{%80p3f4AH7bH@xp+Av#iWW%te|MN<}%)XnH<%@toE>Vvkwaw~qMZDfV-#+}E-GBdGajI-*lz1S7ArY_gzVSC~$iw~U3$BOf1WT&J>>F$+<{r5Xm<|dC+;*Wzq;3tm9*JRw_E*Ln^Zhz zhs09zz$kju1cpP%t?+;_PJM612s`oWAok{pn5vD{W{RQ5)&NnmC;EB14lK zuxAE33!R+0OMZY7k4@cKZ3C{4BS2qjytO1{%TN=wJ?FNc&)+fmf;^^ly6c*S8h{hOP zT;=S7MsLWF7mWuXuJ&1o_zRur8FbULf! z%uPK@2~sB(ACJGR*MoRT*Y_42jLvsvdHPYhSo)o$A5k;QV#!I-H;%vsCLKx_p@6mh zk4Oy*S$+DtQ9W6HE0l9lzA{#(P3VtqX|bz7aY6+{sk`x_sN1A3ksM-XrI~cfr+pM< zwZhE!(Jose)2g+^LHs6XxLA(t$0R>SWH0(~A$l>HY~k0&dV`;?otp(8JNLfTm5Hi@ z-953CnP@-VLR4MBkLV4z2uIpdvx(IGp31ys^>+`4U92=m$_*0H$(IE7rhQKC zOqCpO_mmipIcb**82{g(a(+e`9-^hLW*=28TWgZl%eKPp;|_mCs3M5C@^0mg+XbAA zhKa`>aV!T#kl5`?Le09gOQL_4k)-C@mzs9FoqbKXF8lv zaDs6)7NBUr6hjH|;xX@=ki;C1)6k@&&e(s2QP+{IUpxb1CxJRASbsnA}Fr>s-A1lBq< zO|6NR>8>Z{%;z&TiXK2DY3Mt;indMBkp2=kXOAnjMVozML)2D1UASh?7Y`A@#0wSJ zDYWAy=NDBd=us~8$F8U%0+42LBcG>?v^azfET^5s!D~hG`SYy51+q1it4;91)HYq+ zg44J_1=rNs&P^!BPnQmIBFP`t0Z+C@?-oBu-6QmFv9)&wnOWdoBAf3+qQ zN5A&}Z{hpHNC$&MN5(VFe}@P?4yIY$JM!0~X3vg|2=HSE|#si6F2mRCU3~<@?Xi_f8n)K zc%&3;&^sS2TI%Q!dozH4MbLdpweO33C@FGpcP*sx%J&t6p)^6qs{2?2dgqf6!$pGg zS<__*Nsso<26_(N(WN5tBb%FU*Y_jW78h5n^3ymQa>tkZe2uu|vV=o8CIm{AI(5)R z%1gsjr8GBpR{OG^XPau%vu6v9_2xeG@!_ASyU=EHKNW^Hl`op8h$OxuB(Q>h8!Po3 zV5W3*i;Aa$a0SW|Gd^EoI~0WBvNUD{a1^-ruh%dBdRMhpt4B|+fgo3U(-=83;}m}V zX^7|X>uH|5Hy|r8Lc1uiVRd-vh{5&eAGVtb&>L~~V}BRE<{&oxT0Npjc@QQPg&}(h z7il|_&+QS#ujxYo+^Ln#t9Y~P>bSr2`7Py{S%b%RfDG`^-Cp4Oj@BC%N#x+qV^bIt zcwzed}Q{jKQ@#wcuL^T*p!1;w>UNTc`q`@i}I^_ z`l@}3H6ivjao6;Ol?ey0&><>jwl)0-;Vk7NK&wWpcQntSSiXyV6p6f5JXm!pQorI( z%D`X-gnI!llqeH4MV&U4nefwVu<866j2cctRv?#qdznrGp%K&nY#MT#QbFrb);xZq zRE@{`ZLozmd^@dtI=o!5GS3I>o5KlHaTt&78sB z&S=HpcMhyyrmNSLPwXd#{D++G|T$jdjxb? z*U3lsyjBDl3Z|*Iha~eyo>yY%wKxNKX!}YIHi@|*a`40(VD9*Bn7M4f3uh#9-AauG-`Fq>7nhuR%}jBmb#7j#|R}j&hl;EbXep!I`~kx zxnGE=TzTO(9}{2=grjTMKppRX;{v$$IDg2cmKbRI3XAyQF36L6^3~R_kn&2`?_6No z3g>&SHMbm|XrM~$j94DXo{&=G`b<)AEp+N=ru$~QwU+2Ut!5*0YG^&~xbDx0(_(aj z$`1j$>~~c@{E;#+FK|2jIZkzXou>q{v^6aNz;LTj0plfVtO7wD@ygFx#;z34@FqO* zmueMlBWcgdW_54zOC)l96*-LxJbMuZ>LPP6)`3o5sCC8jfXvVFr2?sPw#axTODBF) zx{vE>Z9L#o)LiJ=5-}T7N%|>#LehC=q-`zWdQH6jbGZO{gLV8nekq5in5x*qy5?&! z_YDq_Q@cqOE8AOmd%{MePqTnM`7{gE;kJGim7DXt<{MvN033Aw(H*n7CoJF1Ndyjhgx|F<%`E}>e zG`8%hxbvlaQhyE(RU*h0JM=i|(Q;&W;d-8V5E~uA5*wk7J68R4m$7)t+bE@Q`s(=`_$u&i!#Ksq(BbuTC{Irlf2=_4Sp)Te_TgQCwPs9Vi9)X6uw9x=fR`Z}D(qob|m~!@y@*Fc2*z@0KUS%*zrd z8@rDdwT+>_W2P{hHKv`V_s~ZJDW9$_77WOp@J2aCl>5uS&;E6VRo1L7UjlK>=%fY( zhfrgX^}(z>-R5n;8H@=W;#i~I4!ay0jiN%-U$zxG#O3D=UdvK@;p}i_-&kpC&>a~% z`StP8tcf?f^}{SBa;tvt0GaY-%Eo(uc;V|G>8;-`(2kE~H5j0}2_O;B31{IX=+Ue& z;dl|{s;GYbsHh@(wmA@{OrTBa^K>Pp*cBq2NnXFA*c2~idU59mvLTZbTSxq)6CD1I zq;eIV`vU3b;#Bm?=T=)Pvi>^X$zKb{xIwZp7lQx*Yt-G$&JRZjU3CU z#uG@sjbwaZ8BZa~YL}IqT{OVdb z8zGS^=U@BkZxeWSz_=oiWAFOPZ%z_%_6r4cs@#q#!durI>}H`VLIk=%HJuOp_fwVy zVT$fWvzm#({#U-H^}z1J0{ZO5^#1i%8h2lS2U>~C$Pyf6&4+)`K{u2kqq3OUJ&(q%igGPlzbx##{r0qr zVp-UEKPk^2QN`Ylq{HH)1YdTth)U--HrK~X4+Fy(vw-j*qh}*D6 zN?xA3W7@krZkFm1-w<`}$q_PsD^jw^VN3*y%DhHBDczk>}Mx`Z+OWb`gqK!amMyi$HpQS_Ip z*-qJZj9bd#ZW_h1T!x71Nt@nq6(kK1N-&3iBj`dnRTp1)uot1Pa2nktA)pDE9k08l z!;oUS#jO~8v$yyCpDZ!UiT5W@oN8XD69R_=prhKtZEQ70i`>d9B>oa=IxKtXZmSsz zET3uvAW(exl}9lBlL!wFFjyS?Vjkj^FxJyGVgn7av(&<0X`DfQK^K1hp?(E|yl-iF z4&U`;;c)apS>tksH++`b=(1v!`1N&zc#3e2Z-gYI+GPFMl${d$5kUj%qlJv7^$uqE zv#)zs-j*I_<0F>!q|=$?2(==e)-AhQq6wSM9esg5mYBzJ?bm#h0E7@jD_K^q8XLTAYk`WL536-?11N{GK zDALT2=T%Q1H{L7#_{P5ouh2a&EyX66--3DNXI>}W4qe($X^c)t@6hLV5C4NJF& zIk>Aaq1lHvKli6XDjZKXml;Z?lG3@W|1^j)m`NT;y+D%=vXk*#{$;*3tgYd+J{OVe z=CZXg?$#7Fmb|c>7M~xePX|*oNraHl)8X%F-0@Rgal=f25={s;uAhTC5pBL zFUjP)YUmX>Alkm`sF&=m8>r_mhLb|${Pb@fqe*#FA#|w2E5T?qc11i!{FQmVu}M7ZJ$+WK z)(r!x@t&D`xlgk6Pf74HI$u^0yYC^hU0!h8Q!+~8Nvbj{Z`gC|KbA1)rd@5{J#hI9 zW@*Q9{}U}rfAX8tUcCc;Pw?<%$@kk1qWrfoOZZJM)v6O-Yv7||iQ9%Qmx{hx9L+^_ z0zu^YwysL}#sc<@bsH-mRp~uj^Jpcz&N|%Bd`xd8Mz*3Rp*V-4tM%Un&!SFe60S>vPLc$I$lXW=!? zc-Rnik=P-l)j!#mXem5>`PY!FlkgLd4!jqc_&Wd44qT%hpM0 ze8W*XJ1u>M2w{>oK{Pr$ck8^xDR=$+mvyi2DTP1b(J8W>O3FOgVT{7c7>_f~oSOJ( zWQjlBE;#scJ|?hCmEd5O@8i%qMi8Ep=$Pn^y5z{!CJq72`6om53&-9>M@Ix2T^KyY z`;8-Y&LoF_dPGD-Oy+zMO8u)n9bKd%>SW+!EjkWx3%w+`~Yk9BIfMorV zAVGU;d5d>}y?*9K=GO94_ysS99wz#t*M3jd)ch{pq#?0*wYG-g8VSvOe5T9Q_{Xz~ z`sMz6t}MziOs&`YJXfE~UrCTof9AH5Mp;Ir6FDO|s-cvfZFOUi2f!HN_lPX{dsd{XVP^j;jB$c**QAN#Xh9LVCqC? z7FEwvYYa`KRaX8xvB#S8Yg;N^vM7I{P$xKC^P*e_mumc)}huW?Z__^8ezAZl5jT4rK~oaHp=$!E0^ih z(wCcj;->h%iaEE~Rp{G`Fbu7CUEnq-6T8EI_Zy!s`Hg$8vzyo`1w}s(89nVN8|xmj zZiw;&ROm%w0@PjGVUwrI^Zkqbf#!VsQjTmX_l-CXW z)1vROO-oK`GbcQ!;WiLK7X|AWXG|@Rc?5oCCo0R%X0$t)>vqa2N@#dolQH4BLcP3~ zh^}iddOEZu1lN~xL+44=!b)xDNpFjT9J7go_gZd8?uCBZBX!@}tF_J1W%7}3W!hvL zN%Gh`-am(VquDBLk6V|VbSE7ji9Kexi?k_>6IObu<0L8uY?)iU$!g~n$?6FmTCP~; zFB*-Vd1$%U9&Y)VrEh<9s|3~}A5z?N`azZS^Ky3ICt(Rg(FPHN`~@MdM0d##{m3f` zBxXzF<*~Z6iAvffMhG!iyVd~&hgO#J{ESQ^b28VLovxq+7L{lW9&xAYojLWC3HVfS zKNpp;@WtF2+YEoc5~G&$|B&_O(NMQ>|9GKnAz6#zj_ldWK1lWwvhQ1Cm(YxL>`V5M z3X@&RzGhzrWf`((H-;F-K6Zo9@6&xh&vVZ2eE+C_ayriSxvuy7wO#Lva^NZq$R*wj zLuhL~OMWY!rghP&o8eB&(laN=`_XD*%MX4G>JTkj_v?G)la|er6(jez{g#U>SH!wbmpdd4_ep`_L6^-98^JPCj?P ze7gu_5bapt3fB2W5VojJcL_1Y=pFx9o7S%Valj%10tb_Tk`68UQ}c1C7jhhK@FYW) zy}gEQPF8#RiY+E141f8y^E{2-KUE8F2uz298pPQ*o87RT4B;UJOGEY3Q39iIF1+?Z zvy*d@PrPGDSdk-PigdRwdnsiMbsBP-lqq?= zG4-b2QaSm`aC-QWwioVX;`>u{Qh(AM#S&rMw}H84Q&Y;o#y7F^hGF+Ym3H?wvcGuY zP|&d5|FQ1p*_mU#hNH+QwmKU`0|=sd!{;de$fq;y%Z6`R16p_V!}~BNTWJq$01>;H zm4%(7^1UWE{{q&U7=<9>Eq0z?uI;Ckeh6&(i#t zbpx+~?;!gHZuLxsH%H5=Dcd4m0ndV^r$6XV5l1&r54a>uhCRb}Ql@V)WsDbNu9rV` z1*?}OUNat8LQZwpfpEpe9hUK~;Q2Nvxg$BRE$z&hmd=IFAyR_U6PUfZ4TLjC=9NZ+*9x0m z)QN~JxqPYUD>m7LI*#ShTRDHy{*YmR_ZcBPh6f1x*s3)>sonj>cWsE#67Wifrjr_f7x)|P;Xx9*&vP|Xr?x0 zt-#AgiA4*6niEJ&mmog<>_X4)F*Ul#zBp3BPH+s9BVXc(?t}%ePJ6-R&w&Rw|CFu! zS^Cp~{1ai!FFPVCi1To|2mR&mf4h{3oke2hwnuLM=(}0^|DG!Y*s$Y^>o5sny8zoU zDMy*R(Og}#6#ZOXxB54w&rbLa8Vcch#RGepT>lbXK`GTC5RAF>4_xcaOqrTGn zZUy93c^noio;vBX+)(|?1!7nrC@fLm?rGO>F$+~8zHurEGMd>F2^4Q%ZFjkf&A*M! z|FX{UNR3!~-(+dNdWi7Jn{hi)de|K7Q{Ug1JuDIey! zx{$;~d2(o}u>okmGV0a!&0Bu;`Qtlslj`r!gvI!dEFfKl>Qa0;p@Jj=JE}zueAN2l zu49-}C62dmJyR_{JD_p(y@SaXpJDRztKYSJS~0!^#lRE(!r=FW4tpp(=7pKDqT~sJU4#>N z-gjnzzR(p(+%*e(e#&1SD#xN!inhacK2Jv8DCZ?Bzkl(*x}McM%2uZi^d4d_%*G&` zS{P+3(w7HFpUpyIEQ!^5vxt{Br+mml)5X!hOSYZWln)obn$&)%tDZ%0vby0+WVk4RUV9geh3e_ zYt(AE$)e;~v+M2JMeX&p*B#;^dQ)sGiR@ZqFhZ{oBAY z39{JDZQ(dsWBFNmnHcsTmAJddDw)2->F$$sFMd2#L`3K3%Wu4X2iv~KTXkE0VTcAe zXT?<>7E{Ci)aUZ+q!TWE_ndkD7DBThiEJ0F(6YlDc_}i6w+2=iW6i1j!fhfo`-XjR)A-+HlqqiKNW6D9zA{^D?lF$d7Fvz_1$J`U{vEBog4+ejV z5kyxbGzJ*y+>463@%{6MVu&S%K98<0k}1SF=yVpbt^&c1vAUz*Y?=hy$Lz{}f_K)| ze}Y#gDG{C3iCi6N1@PJ(1!^pK%zx_{d3pI&&hv`Tb>T~rxXofn)TuJITO06;;1iSF&BjDOm-*Zs(Q z5oiYP5@;1q&K&aW!mIc!2(X1)yeHSUC$~>}82=VP!GGcSUtp1ZL~8Fjnm-s3(VKT} z&hg?=*ScH3r!bhq+r>?8UU_Wq1Bfm${x%Dfjxad8L_$@mkai&GRZaZ8XcEDX;!bgq zqas&9ioyo5%C;hAnB>HMH*n7})zGz}JGJqmwZ#Hi177^$CQ|ASC2?CR?`9Ea5mm+R z?7Si$#0wLl0Q*TD%DW9u2UU_P*hjDXsp$m427jz0C4~Ec6g$ak>c%KTG=)$#~qB{11x;6v;g=hKKXF)(BLCa?NHIe9qk-~_vbaB zZLQbm!O_9ze0ko3^^*~;ubWNiPTDLoK|VnSZ6x#xVNLcv@wcBYavZ+TDjMX$i^(^9^$D#4M;Y0C;~rs6juRe&@1UE@`kcV+*f_^% zb;x+0-S4I+{~^7<2jyUQcXzXH-S64<$R7V|s*7)uwsDa6k(pfI+^zzHfVDBNQ}{{5 zG(NVMh&Q~JTwpE#MD=ZMReu}VQCm^Z{bX$r$-tG6I}r^OvrN?Y;p=YTuiC&r^srN6 zivwmB9#qtO7Ogik<^)iFuLzV~e+XHn5H*$d8eGK|M8!@>LB}s?7 zf#XyrtVYQ23F$M~yJ^4>-y7u|d=nnEOKMuFxVCE}8{7h&^|%|w3*D@zImx5q%mPrC z72`&s@x4@Lx$N7}lP&qR@UYp3w-QGQurcFy2+9hQFyYaL2xsfXpNs?DwIH|<%`coz zms#`h+W*j=!#ZK}__gfl=xCct_pf|Y|CoINu3lY-C9JK4A_kpqtW6`H+nVr#S;Rf92aus2elck^tct-sGW@$^Dp9iXJC)ncJ?sLzo)U<* zOI|sS-HH+%>MQJYY|C%W@AG4_~ z8f;%FVTBoeV~a(sag-myJQ`QZjl|qm7Ejp_=uq8F=tEeNBP@w|3?(rOk*rvozgO$K zQR}5pH$(0}NZMv^m$({F82wHbxKQ!z8O1=*ozN!TcM}b=gIi?wIH==5mLj*q2`Se! z@~zEFrwT9r$EBZbfQPKNO-q8g2aU#RUah(qd~gI7q9FK@%kztZNBQ~Ei!bcaDq0O& zegO7PUibTf@WrWfQreee7$u?)7YA2>Rp9%SX3#FF{=LJpLM%Y0XIJ1(!Lj-o3c`{( zDperu9RRj?6VTGE;N(R0KhOW@)}o0u@|MFN^t+Ath{Ab8~=ltqNjw^)ad3 zRpjr;#E*}^C0K{x%8OmWROYcN+U@nY_s`tX=u~YN-3eqwnvt|I)#=TFFWZ2t0POcS z$5j7Rwx@zT7A_<55YggJGkZgs>y59!6jpkKS{mB9qfbVjwbXO7Q4e%OK7Zzo1hT`z z^**9kps}-vbayEO%-$0#cMT(H1Qyj;7rI&Z5c|8K?(VM$V9PrkDgZ4SK?plmZkDFp z&ib4ccV(f>pcPg_m%y-FM~E8C9wB;#|yTl3YRaQJ~k`Gz0cXPi41 zcs@+!ilSr2{mZW@HqR9Eay(I=QMV?6SAGF8hhMDlwq!<>fkB45`76bYc}(8b0Inw6 zmZ~FrF%uh%p1^V}pa(Ga8bJE)Qqx&HBX%9l<`7VgnxVR9)?_CIT7YT{6HPi+CC-0T zk7ygT%~*<`eM6uz+<ln1LT9)zcz#0(jfp~_EB%lX`hy53 zTOBL{&3|N30%FV8w0I1KedjN>0Xl@Ltq4J?J#k`ZF0UGuz*i#D1Oi?fPpGchv@8o| zsE1@WdLo7x{}2BB-RHidR>WNuqfa;8;x{;gT?Wj2){+}qipD|qNz?msr_P7qj zP*(181m`krcSoCE;OlNf<;{P+=^)b5B<3=|Uj2Tej<#qChG?TLs_k&hw|d{HTp2*G zq-hDs`H1yAabc$L#xx5aVLB}JFYrk<9SKdE7YLIr-fxzj8${LOv%%oyC!a%quC1~D zmMUtHRy5e%UEADjk-^$7RMu7kmF8dhfETSJJLVov`i%Dg!XdB6v&9PQZEYQGVS|)Jdai1YkP9T#d4;4dj7|EW!zvegCu$o4oF=fE^leT#CKwi9rzA_k{Fzxh(sW_@fa(W%O&UcGx^NMRTkD)9qSm z(|)zP2CYW|rFU~PykK_21#Q-MWP1Oe_IikKRyo4-uqxW6XP<#Kw-*g+O+8kVSsQdX zlJ?#v5cyW^pC`X?869i_lwPG~=B>@e#nE)n=GA{?`N}Ejv$KzS6a#%WZ{HMnE94RFk|asH{ew=b#X`g&GL#(X}W9F4^RAUkC=v?ujg?BJP)6- zaWf_bLPMowKv`s}%7jqMJOnv5Vow~y&dR)xdRy4O z0$Rf5Blzl7mWh;$y>qyS#aPz|?Ezk1akun!)Qf<69ygyc_)d=mymA_ByMwy=Glh#k zCj1{k)0?rvQcCzg8K>fC@ByLK|Av@g(<(GA3f0=0!zv_>;Bjn<2fortZ`V1!v@H{X0;$ z{q=b&3#Zzt@3JT_NV-VAr#Fqx|&}d)uyprK*5I3off-DOGv(_VZJQ_^es|)9P zNti;MShA(wng638#9EX%Ka}(aas%_s?pyeBiqJz#-tP==2!PZ3eMCWp_zWoqyhv?2 z+i4h(8BO*B5gkN~|-~O`___sB~y1U=fIj{#vPG0>UxS{MO!}w>b@q)Kysd9_ z)~W{9Gs;+w_RFLXS?z0c3_ZE(3YDQ@R|5Uc6+v_0<(%;whN#d-Bp^B_COsNb23cjH z?GpR8PkcNF!RaHip%ED^G56bLio@5%lluUA=1CtpbW<-WuVsVCA>=J4B7e98Yfzo%2)-m)oqq8bn0r?3q02(iJPT>K_ir z^Ka$j?RSN8!&C%DO5U+kW$YhN@A7|A1kZnP;np}^^D})y1rn8&^}aZx$&hAQyb)2d zFiirXb z3~IIHT~?^x%#7?e04F2IFhW=LdxdUaVFKxb^35^8|2MSIR?qFLE*&gE13RyV?hps0@N1F#*Zs6AmrjhYJ1Y|%3i>%{q3x1gB;bc_kPN6z+nr!#pIqCbO-0!X@gV**O^cQ%q=|!84N}1wXV`mcyPd>+3a)|VZuvQX3T7Bsd{!0!PL%!p;+IRQEdo?+mDc$D8g%-j^n+1M zMCpQzXz5uZ+OXAo$;4IX`sRy`-2uk=;L<WK; zBr=)4&xbs2{H5yol-pKEP|%r)@+!3KXK2=p9wQ~}gG+{{9SNSy{B*)c^_a&O(G=O0 zTL)^oV-jUNviX*Y_8&T(nRj3M!*Y7eVXdds%#Q(Gy4H5gF+tS=qi4!C&z>aC67TRL z%oQvcM~03WV-_pqEEjVI?+GxAU|dp#sJt35w4QxM zv0~Vv+T~WD+&EWTEVH&V&k#$f-K?XAObD^Zf=phT^!J#(c6Dl-(~DR1+p_+MqOg8hM8qE zd-KF))aZDlAy9$@Z+L_$!4(I9Cp;L>I?(hi?dBFW*89zGoC>Nc_d6;>E}ToLb7VY! zp+}PRO~j8*7c8dsw`$3WryrYo+#e z2YJEE&)a}f1Ux;#o-vCUK#*tA2xRK4`vq-!w|X(m&Foz{vCXoDfqk|*X1;Rgr5wy6 z#4eo&T-?Bd0?V@M+E^9ugr|Ts>p?r$qRvOG+3^8+)`V%%aL$>q;{c{vWMSHHwbD^MBK)On-T+-a*8<2$JD zd0j|@8k~#lhfrC)_Ufd6l&iXfIUoqI7D84LaZ8Lv>0%xS^mgx0!SN480$MVqJoyr3 zUjp4sHv{Ay^SrV_+WNvV!1!c*`Zh3Dm|C8ZlX-(0cbnMy}9jNY@3Q^;lfDtU8j@`N&&1h!h=Cqy0#jZ@!He&)=U~5UQd9b{o5-*v&>JwApnY|6~ z)-a%EQCChO<7*tzHM~a*VtjQ|{*P;_fR=l|h(^q*GI;8d)U-C_)wyb8q_OawXuNy3 z@kPagnNhouSajP~k%RlEhJ#v{fp6puB@67-caD7G&)h-zCBY_ghV5Q4+8I<=?f3Yp zb6D)5fj&0{y^MRkDY|bt#O$3eS?6S-Xos8AAq8)d$b*50HX>&4d=A&VW=stX;QPx@ zByTT#j}p*T+%wbHuc*nNOjT6~=tEhNqh{&{<7-MczH1Yo$?(C(9$M+`2`B#t*iaC( zPNv%b*1p>$iC6AGH5c-=zu|>1LxZjjT;v+vn=aDq4OC~O+$!c$4rEe$fvMjgatbCal=+)?`aQ&IVLOb#2sbM$+u6+2&zxeTnlQu5`A zYNbOmz@tcCK6BUDdTD^6pILJm@N#l@*VtsuD6Z#LtV0TnsVCjGF$F+qJ<_Y(icZxR3Ot!u!u{t|X3%PoHo{$7_DQ1EKMM zN*W_;YbA@`gl$Hh_ffm$i>I~ml0J%C(x#2ddeYLH2ix#PG4TUogtNqLxuce+M(xQI zOsjMdgpkiQ;3csc`rnwM1$lR$uB6#5zt&{01Q{B(ql^ZfT}d_+_T!nAKw~oQNso@#JFbrTY?r_Sy3)ggiPkWUq)g7#R__Ui5Ck^= z7phr>?S-QMS*nm|Tw~+5RaSs-7SV{@rkS{0HBr-cIR-MZx#cy=B(2u=kk_sKP_fBl zyD=%dt!~>xJoIUn-u+`a+Cnlv z_t&kr?hxx%Hcy4)|Az<^d{nw_7U*sVql;D$NT%EfsP4KFD3;rD4aM9k7Qa+}t&;LLaD~^Fs_bIhft^#HC3w+iu{c z=Kv6{hx`Lqy9OO{1OG&l61yZso&WwY&<-3D@}_)LcfRiLCtk~V`yga`H~FE{;J3rq zy;bx`*B9TPG&?07E9-QyI06;Un*YpN|7)E>{nQtCkkE&EG{&c8$TVn2;IAr#H9n1w2N_T!$#| z@v-PAyh;XCH$zzKH*Srj_$;|BO8Y&DipI}mD8nN*e@d^-$alp>3xz$?a~w)mR@mch z_}3b#N^2CYj*X5EeXO-gzFf;@dHK$IOLfl?E{<5)v|Q{3)(JSB8(I%>$87vSSQYeC z4r-=9TApaBXj=M7kwUQYTd4zaT-cxg93QCj63=-wS1{qt*)4vtus3%}cY%KgUf^iq z;s!hTOz~C5t?jCP%2)#FZU;iT5=GU8t!hNT?h~1#RxN|~E4)ufQ5&B|hihGeI&IDd zVzjh$k=Q>TAd%))TvZ}pD{SY}q)9`|QJ={BRGvaUQI5SccNVp|8ScX7?opJ#Y{h^+ z3wKY%vD~ot<1u-+|HE-RWhcW!_uh%waYa4?r0my4Wo6!Cc)Y0Py)mgkrXZ!%ulmWk z;w+lLU(wpno2yKNsB*4(;^PB#vkj z*=tu80eGFaE2BcZ6}xdbczrjSux@cJJ%u3Po>q#}`I6FtaTzCmk3R-7&0iH+LU%H4 znuktP;?um27O&3lCrAH%&-rTXU`q#_ftpcx|d)_^Mr0EW1df zAFUtkKMgoWZdKj2$d6Fr&^_IM6VGwSa+&v~hDpe4tXh(K%J}PVuO9#T%_VYi(Y616 z-fAikyZGH$5ZjV_1j&DjYOk;!TPcX4U2rmr=r9@#uGa3tq9#qIpx@o|IoyKQZ3?!_ zOH0$w=G5G+)3wmL-_r;nv(rmSdTC#s6e>2p*8y`(dzdLaXAw8nEhspH#c}J1V`+Cu zx+2C;!qv@PD^^CRoYz3p06?i#KgY<|(;KU^}>OaO1 z`)~wn5Qbod0!h+=^{+U}+LG_*SI7QwrUv}#7j@%%*W(bk;7uXLA)d~ z2abElfBRm}VEs9PK1eNIM06pRPdt0ePar<+zS@$Ze8#tY`bvZ}bJ84(#@*P z86@q{4y?iSR5c{4=l7U)tQTy*%Y%PC)guciL)MuH9pQO8XIBa{yo?)-3T20r3i6@Fj8zDr0)3x5r50~0nc52o0IrfkQ-w8rS|vkOJ!wXw$E1X6 zZ_)DDBI3vzppd6e?pTYzzJZup1;*c+OHp6<{(5EITB~7(JJFPB}?1=4*y-bdq(wylFO#mCNQUyfoC+ z39@$`9vHap*nRa&eLi!28_LieNEcLgEv3fyTZJA8zUm=(<15Z+=_eV4_Ibk0o}rjiP({Se zBQ`s|cHdG!nA2R_=Qv(cB_%=z45Gv#(y^$HJjf-a_!2 zb<$j_I+1Lbemm=8jOSl^)$pQw*5-1_uF>x|k<%D6Sq^qzoBxq=`#*H}W#Jeq* z^~zxf5>p@a`wfl%$evix>rFpgtDJR60|LF}r=(@-7cbbbCTheDsDo5U@W97d>_uL%!h>WTe*pQY>O-*%l%3t&3`g&U@OUhtk&vb^p=WJu*iC+v! zLssXa3p7C+=#Tkw>fdr3y|@+J%+Jh&CD?VQFQ5Fu`r^)xV`(S}+Zm@*QfZ14zG@|^ zuLm%i@l&$fk)=a8f`Yg@ds6_M066=Dfau~BddF{CB^O8*6Pl+fwgjo{Q`c+>v6 zznkUJ0~oZty~S5U6+^dV=qq}F$>6To$u!>n0$c-k-Gk}AF^Ol77k<%f4+y&|#OF&F z(rJp|pjkopc?I{DE$Ma*Q5E7}O>yZ4j3{PvWwew1ijaujCEd*4FT&Le+eryO=W)Lz z1i9F9MbTOx0^MC>KH0P5Ap6djOBE2CYf@DNY!Nksf_nFC2h`9bNTKB+YcXF_SMc=` z)o+s8)8&+I;1~7k5D@?=XH%lrKG$;(wTIP#g!1%tkc^4-L1@}mLh90zq}xMrOeBH@ z?9gn1-VAw)&X5Y?#l!iVTISz_=vK7`B|5-or`$OI34EvIg(yN-_{AGI~e*m2#`0_c0S*#8Laf$olekoP@ z)InoH7VDAZOw>E4HyP{+CaPM_yO^tG5l#Gq2rd&pD6yp&FluZiO5~(?nhCyKJM-bB-cHikhyPXrWXYX{U@-F$Hfu~l{`&(X z$s1U(winms7#j!2+nrzvvj>+=;03eX^Y?v`P1eA85ZC}?qphvV%*>|qfP*KE&B zR0^QVAkMCQ1MC<(PH}vz?JM8h6-_cg@#|HQkZ`@{`22(>_)DnlAD~BEzO7vRb$8rH z6$)4^J3l)ftK^lqY%|r>0~$*~2@rp|CMojvyMO{p5zL{ZKC#EE^V$h*!Niip7<5C~YhJiMn~DP;U#z3|3Do4AL_I~l72J+|ar6k1*yTuB!_yP}1 zy_H_O+3+cE;uqqQSXZ8a%JW2?9`?r^_|nuF0>!2)`Xeo zjScRHIF>)hbx}q3rRwgF+u_`^ZFS4Jo6Csl)ey|aMq!JNP1eVhug=RYbXd=$6~vsv zmFBt2Buk$s(JTS#qB@#72pc(wVMAs9f!lKrh<{GfZ=K9`SM689I{OKg+?9>@9=OI= zwnTH*cVDi!jt^{0gT=WY`d|J^16#t(mVdS4MAH6q9=v>_^WdhDzd8Q|OJ{4#=E46Q zSNf);5?u3O!y~9!D@xLZHNVZecJ~8}8(98iRfM|AGPf`PRmdcuCZI|$Qh>>gsKxBU zg+!4e+9*O3!d=TO-6)T7_rYJ=&onZ@g;7ZC$xSs9>dGs>#Tvf-U>XV`8@Nk>Cjs&f zV$o)Ctk6%Iwz_J`{~$|;0Rly9aqbEZmkn30h|{95#OMv@F^Wyu0}kpyTn~FD?eAGc zX8MDuR)FTissN_7mxn92NQ=;=(xm5lV~=J4(V06~wqlSGAEL8?vp*yBPT9I6bJBXR zben%ZF(DcLW1O+`mkVz2TkPqmLM?9|-25e=`RAvuDsy{tVO1EKSzulwR^`u6pv)4NdL+eqgp$GA7Cb3C>X2y?9{G%8P;GjfR!*0t9^@neXCcy^lNor-RV$ zeX^tQxo%f@i+5|@$R2N#w>72D3s=Ug}GgZe@1^Tj@Vd8147#lGq&l=o=*#z8gkt>YPyndR9jEdR!dcPvSD6 zIKmP9}|>b`2*tAxB3N;2XspG{6f8hTcVkp1;I@pNd9 zS4v_Uxj>MyP(rX)Su|Ys3*l~THfQaACA=tH*7Y9}d}Li;?OGKtCv}%vDMad*F$?Y0UT{$kd2h`x~m??xsp%6(*szj`Bgs^ zB%+;@wBz{zZFzP%Xvj+qPXfuK#MZ3AEzX%&Kbfs@T(xQH2WGdDK(o8+|9m)X|EZh@ zAJTIDu#vX1v7Vi)@Ds(ZYhe=Iuqh#x5EHR7y_a3&LBDYOM}i-Na>(6LV({W$$KWc| zd{W(6?Jol`c@rK!SaxXM?A~%;apf9d^)5Z%1ORUQ8EV1$0xwX!tEYp34A7{aQGAtp zwVY48?4xu+Gq)uV-0BQ%0YqG~?vURqXg1vBo~P4e*h2y9Cn;1e%;V`+Tnz$ntXW!m6a+2;g5S2)onCM@;}cJV>2ABd4p2CG zwsX64Az%x!iLrv?A}Via|H(s$c^d7c=GRGT)SQoJ}r9eR~)HYyN{@ zu)SR@>_LlsuF8!Q-`v7k_9M(OCUcXq$-kF?id{+BwQ*x6d;G1O-R^_VP9_7*B zT}Op9*yPywYYgfSNj~?H7ebDugNiz|AhbeNBtTMS_0a&^#2R2+09ES_RE)bwvnqem z8qmTyyB6QB+`OIswte_L$Rphz%|-$8$ZRnccFdEx{}pFvZEkE#u)ugF)z@>+vk#ar zCj4TN0_??_^uJZ@I6v7;?vci79cX)<Ou^h7 zU62nC)XA6)6|*rSfW-*%LedUDDW@GJpwx= zsK0(NI)5R#!x3`Nty5Y859nx%yD!)L-p|Qd>sBJ7S9xmi11bPxb$hVCzkheKkChT% zyCHpCRkZL9G#rx9iq^X*5RX1An>Ff_X_Z%F5Oc~8#*x)-G?X+P@c6N}7dkgW_9vSh zw4VIkQ*h(&?|5897@UFux9MM0?412)BQ2@SJjF$qST#JFj~)&LSoM4>yNP3QJUvbw zUUtM$wzD@E1`6@rvB+n5N;^>k+nJX#d4%=Q=K1Q+KE!tX+l`Z>YV=@}fyeD#!xnmy z^B`J2Xz)FEoSVX7`NayzI!FHy_r&Cg&{)aQcw9`c_F4>o7URG8#zOAM!t%KhG;TXZ zH)Q=y%Y2SrReJ#*jqP^$y;+N%8bx(DnYOsBLE7P;bkEw%O|*^hzaG`MocpK{&4KVG zHOx><+T)utqjLAsbK#M@!(1cuVnBSu2#u>H`wd9JjFh7bs>}>(%H`V>(lit|c$G(H z5o`Rm6?Xv?4w&}9qF35EDS336nE@)d(Cd%+Yht&=zBNT4qRror?7gjwljDe+P`)6Q zRZBgi@jpd|dL`VQ@_DAMrO{Rx6`$5SZrG9OCq0{_-ofrP?w8UtG@@7UA=!qjS$B_g(XZGZLhUY*ecHn{~u01GY%TGVWs3X&p{|>Zq zKjtj)4_~cvZ(TSzACmihZHs?H8c|?f>m~Jlc9$t7>#ZN7gUH(xIzBPr-W_WQhz_Ht z$#PE5V&{lv5Gw?6pPH*o0EplGD5Hm+Kx=%2QTIq&h?{>^8Qh=v%(c>u#lS!+`peq6 zO+W9mm;V_N3pFl9f30I!WpgwBJ2gknqenB@1Ut^HQ-;rQNy$2;oZd!p&yLz_)bEmg zaW@M8|H9yE(M}&J+v-u!?^xRHofF(D#K3oId<^AgodwTDysU7ZhHTGU_Vxem#&@pS>Qu0&qAYQAtR(V;14;>aNi$3!K>@ zyR#2fa+D9{8W7U1FKq;j!4&|Kcg!#|+k9Tetl?vc0Upk-&)>TL-X1~EK{Ij}UpxIm zoTpoSk@ebuWI;VH`$`??h`^DdQj0El9?MG_D4a_80#YZzl#8Q;j~Oqb}a+od3pi>l?s3a{8Qgediqb4_vZ=^CzanB&$sG@|MEa5|5c*ms|h zC|<6-Q=vo}Oz!WD0+;+!k<%`{HI#F_!}8xJGUlgqMnvxBb6-&J`SbdwD)@=f#=S1m&_%Cc=rwqic1~W2PM>ie{yCbIHn?20J`U zGT^KQo#{z~TiQF*`i@j8ggN$>B|Sv1p-REEUOtt+*&!RTd^rId#nIqe)Y0al>(7Sh zvz3WvR=!k}?>1@B)Re1REJ)CLay3cX$InU6LHpY;jY@xb>_*f^5)dRjdswFP=d2#n zrh{|bN}1UvfN8L9>xAqF(n{PwP7B=}-8)74RMO)c*T;JQnCwT$d|>nFWPo%_zEUBn zb2TZDn96WjylS*~v@FNZd)I)Fs*(@@#;0Zd05cx6X@4NiY)cy}z@tN2iYofoczvIb zmE*XX(emkq9X;(`f#vct?G8%{0DX-Dx#YE*b=(>Vj_5K|z*N}JuP(NkSqAKUm~OgC z?J7GU1&}jFsW(SEmhR-a94YYCNk$T$92COITwluYVjl5aR!W=~xu~_3zjfA4ms-yb zQlP25*@c1-)N9iM#2x_nW2uez1h(XppG?S$Z7VE6Eo!CJR-IyQ)k?98GyUmD5cT^Zi%BSAYK z5YkoFXcZ1p`F|eMPcOZ@wFY0)oWvIfKYW`_2C)!6GTOSpgT9At&f~ z#*@!TGCN@ZAcqmVi4{5v`LlX?SH<Zz%@b0AIKG&Gtx3#+YvR2k&|H_6~ZR!jDQ)=4td$AKF*@ z@?au_wbFQPg7bfBjhM`SGXRD5IXsV?q;LCHezB>f#LFVg~|dV!o2lp!P}`CDW-uuy!v>|C@@yL#{+O} z1#Mro14+aEQO^Jm15C9StP&V9#!{QALNqo}=e-EM{*S{1aU}3a;WbZr+iIX!1xy2H z`dK|XiXclC=qk#gQN(T&B^v#3n4#IJ=DzejFS?x!LBds_Pw^P$MqOSV989v*=L*#= z-0}M77&ctp7|p~+|AmNTa_oCSpqRi4HN*P5oyLg%Py7sz4*o?=OZ5=r=$jCNE!~fbWy0g8@|^b-I*Kz zFE&WYa0%E@1nloi+`^6sKfkv!v5N2bPwWUPq3+tBg9YN^rkS}BsfeSM73taJD{ZS( zz1oB5d`U?SABP10Vqgr138;j+V+e8I|93OI#eu`u1Cw#M9np?bTbo~*YM1dETYO)^ z08R_>`cpTYAW~tJh_W&hGNAq;NS9NjVEpmXW_a6L0uCASk^XJi=GJ$(y zQup&Ganf%IcJTR74a}cl&!MY^YbVwG_=yY*vK1~ok3G=-_NI~qMmC_g0%e1CYT%bE z8VW7}tP>ZhRC>jmPKdI6nm(g0j;v6Ggwv@1M&H)iAt-eDDG;PSD$@p{Bn!;Uulo8I zVn|7THhH&Fz9%<8Z(<&~Mp~eO06stTs#6z0y@aYv*-4GwMEtc|&j1vjD4SjX^?<`W zA+zf%_iz_L2hUkDAMp+YfV!MB5s2icJaz-mw!mK^My=OED_6!)MlD=8p^+;mn#8hD z-O8Pn(zEP{**jZ8^ESb2FkN#BSdt%NwIl2%a4DWzdv2_)1>kSZVACzzu^8W0V=_Aj$<0Mz^<{&VTu!D=5QZQZi{2=izC+O^KsDon}3I3}xT zA!TmnUuKRJTjYF0IND~2zgBoYpG~Mf+GP99kO%j(XghhKN?r7Ev&zGpP}HsvfZ3^N zKHrye_XzkUYSUfu=s62A3pAJ%{3jN^lN7jLywE=Ht25qD3^LGNc$IMeV54Pqr{%QS zE!cPJ0Gs;KN%wIK&qKw){h>`vebd%{>FmPARy4Q1kgEblNdFD$;-q}44pp*ElLWIi zHgi%4R$1p5s`kXQ49}0YU1&Eb9KP6j%sCG+#@8Qi)_oAY2S8+}mFH1v7V1g#5W?G= z3P3=&R%wJv1E6FNiW$r@3>{KdG*7Gx+=J^t$+46@?1yp-vxoraC}FTKVfOo$A7$(n zAMp}|^fW-hddhgT(iRoInLoS&&MXHUv5dK%Ily9_=7Nk*_$;#u{S9J6mhE+QEIKT! zW)Y80fT()yZK2r*4{Kh!f`0KGQ!_X9!?5~ zmCYI*PG&iqmJ2oahXza3@@FUgn$eS%FglvTbSt)xW;C9>u*$HddGXp%=OmcN%yBP| z1>5fJL`z0l@vDFLlXl_%N7Y-0MZI-@prn+5f`9@8B47{#(kVzPN=PY`!0WdjK*3+1k-ThZtq*OU+i3C8T*><@+OP^DN%}T$Akk7 zT4}p_T%HI0P}5=tz!X&IxPCWaY-kEsV5gp^439s)$VBD&8%nDZx1gyLcYSB+&rIEJ zM7Bu1+XujKet?t<2)S^_i#><65RU>Wu~}e`1$v*FCfajndbOf1mjo+T3laIyt+`Oq z9ZZ6?^`uPxV3#VR7A%dZ+z0v&tzKX))_sZ3sjSMjx zSgez(W;VRrASM_7y)L^jPbuph|+Vn>$iMVXge^_1jWlW2P zdpfw2gV#oIdg-?{t5_G!(YW#Wn(+bfhbtHJfVxr5geTj{rkZA}zjx0*19Q!Pnlz9; z;PYqrvrGp+Z^c%uczX1E{f|@oU!GMh4<&bnv3%p;qg%X2B@<=wj&xJ%%Hj27**t&i zOd2{F9SRvp{=CH%N9+?i9Z5>S=;ti~7`E$W%lQahYZa8Wr`)g(5#BO>4Ff}@DL zP_Uz68;0g*u%|vIk7l+mOZ}8knx0||I=H&_T8MU#bfpnHz=g@+==TNE(6yNfQ2ndK z4V+Lq>vNOWVM1i>UN?u4!D=H&Rn-L*=60KAg$eU{%@X%tUq+P)5}Sc1_`SC}ju&}w zc4+gW8#ucmj_Ke5ghHV?V@+V}7WCoO^kF21xhbC!FJ@aFPy!B0T#+cV<4@WTx@9G>eF=yl~_h@*^nc67s_f0P?0g3+w%m{&%T4&L$r7gC2Y>hxucfg~p z51NCIE_%dR_Gf<<;_!$#5tP$yPg6cf^=ZB&FX+&vK!UyGzbW~%W@-FWeEd!AA(eB( z%$zB3a6Ynax??Wy{Ge7`&JW%8i>*qu5uaZCQ$IaU-UCFT`J2WyO`*dD{NTo1artk+ zBnpX$tOft#gyYkR3yLZ|2YRdD1N6-cwzHr`j~Q+?Yu=i!Z9D(!rCwHA1pQkO3Mkdque2^V_8}gm(VOpZAbbO$6=?yM%b}2^dV`E*O3Y+VyB=AnMuk+6` zA@ovU@AjUD`|m4{%_>-FCNE#7k8X4IC5E!n<(2O|yA0F^)Yy{Zg7+xD;gx4;Y*>9V zn{A*J?L)9zGlDbB=9T5hTEk;}UQ{{VSMv`(GvFpT5&q!jWM95H!Cu;_6vv#H4kP!V zNN}9TsfvIg9~%2PjPyI)f}S79TYd>e+FIrQ(^mKFMw&JhC2>twrj!zV~v>+j$93Z~dYF8)b9Soc=W z!YZLdzJxnoxUSMrvPho>;$#y!XMpG9nuc2kII}ip!A;4DpESwU1@n{AumiZ0+RYeg z`=RZt1q@+wR!?1Cg76awpXT(Fn2`rX9lE)wMd=SQb7e*I-c-76t8uA@E-1Uj@fI#2 z&ajNVH%~G}9JY@lLoU#Fg_J3rUqD=yzIoG=uLf+HS^8g{&F@4byTW7toY~OdrnlGUt2*6-z(VD1KcBMMeKmZRmS2?@2*}%YTz51 z*AB@}Sf8}ZzaM<_e5_JkHE~=e0Yq=aP|!%-m<0Za!NM93`l&eU{sD~QKi*h(=MtU0 zERH6-jvMTKc-@Cy^o9!5LJWlSzq~KE^#!A3Hy6el3T!=tkD83KT)6ZtR7n@OF(V|c z3tP}67j@D~YFW$(X{+l9a#i+5QXD_%`Ntil*>hZ5?vo zj^FaKP3mqxf)Ahiq33R4wg+9?uMjDu@epzT(I-9{Y#j3#94q^oF8jvma@(`A$#`k4 z@t=(SamrR3cayJ+*{_fRWYXVqF!IDq^?(gRT0Cz6zyVqCp0*19kW)El7QU5myTtnA z(ylSm3@5$`01(~iUaME{_SoIFx&<#w zx+9}a_%NquzZUx%^63)!llIO1&JV5z-Vdjpo5y$|$7XSJZ)w?vm1%!_d=efCE}KZx zv16jr(xik@0$7NrL~C=d8XuKVES1NV%+1?v#0m|%LUpELVXgjr>g3>!#^TBVLeg#z zeH-YvhtT`&eTF?fHa;NPF)67!SA4+K&F$;wuOhWFd@!7KQSG`qtP@Gd@Te~ z0L^_2cYbPf+>-fw@y7KVw)9WXbH4>@bciz1@?t~yN9dMZ{`Y*nPtTHe1I=ega*=mQ zL$Z+BQ1onI`NWZ4pv%XtG#ay`w@G)boCx*!7i*3|8<);9Yb$KZy=>J+{h^X&km2Ci zu3zgW-u%|4WS!P08Avbtwu?eh+(=@MBEZAj*-?E^GzjcKnw9(KHp{7MK74|br^Abb zCUj0lT5UU!%|dJN+>GkQZD8*`)LaUz9Bf!nM^^J_@?K$j+_y+ubi-!u-@&IK5K6^8=) zGanP^v5s@)&oEP&lLfqg0(Xmv*XRz2S~DB}x__;3d}ea}fNe?(-W=1YUkpZWI?O>2ozk+C}v`82bMd2pWEO$Ss(Enq=x$pz6XRtS)$x z1*`&^A|usNC$v<^iULX#%aUc{uP@6H6G-)4rP2M@14_LnmI||a6{0?X^Yt{ST1i*j zqw5VH{_56qwhq&gal-wy zr>ZAm8=FQni9Dh{4j~xM5?{rd`|19CR=RW5_T3~2?aPrb1Fo)yWl^cp@Vg#zURvko ze&KX%L03)zx6>seGNY2HEU;8P?g`Vvf0kB)bKN9dResk|#b@lb$shafIDldLNqhJg zvrHNod0z1%Y*&R6Mn3@RJ`D|~xGE2R40273!N$W3?war~ImkO3wn_>e6ZaX~*FFTs z`t38g0m-VA@)=54`XQQQct@OQXR-fQcO&t9MI+xr7pDNxymYDQ(OY`@y|B94K7>wlcbQ6kSEK_Idk%}uhI?2Lc{Cyl3~U)A$ah83Fp;b_AfXkov*`u4vR&WuBV zy8Tm}kAV!@nY~_X$FEypNylc_uf#qwF0bF~t=K#H9*94uK#HmUhtDE5dNV`Dc=VS# z?i(x92wBgMT-mbj#iT_=wUEnwAL$|Vj=(qYr&Wf7=Shk9;McF@O+BZbh{FSZ>D&tt zsWlRz1-K+xdwpkXkdBn2)n~Yh?vp3@o4hi_zOaUZ-E89dz#Hjt|3;oL>ADJeQ;IH{CxeC>zUYs%c$YpJEdi8V3;^Pfx#D4N ztp%(TE0Ha-eMmK8Xm$aBHtb}Ul~^)f52Uv#!sHayPDFnUz1Up*4}(A-?)xGjnA{zvN=)$@RyY@0(I(=3Ig1&YF%f zxxe4BM6h#^47$WhR;0oOEZ8wB+NkLwvi`W*%3K3f7c&tsd`dDYFV@hi)96PA`wp1k zD|G*v+&tf6#;d*Ne*-QWFng17V{b=2bVtQApD?3+T( zW=%zw3IZe~DF`jr%`XJde2IMoS;=2wOFs~Ghz9fNA~)q9JL-kgqf@mZqzbSby|T!X zA4R+Vw78-c8e}~x6+ph1Zk)6A1&-X@;K*hYx<`Q3?I8BRdI5lx+XoeVca?P8E-Q@H zZ|Lw_YK`UiWhESeiRcV4$kw_3+|Vtaa>p{iGO(IKBqvw-fX$3X!s)^{mDf~X5jJD{ zIv1$vyY^i3N?OvayP0QY_Q#?q4TRT#%$Gnx3vEjF-tcMmeAlqiOsKH`NMU9Hjn;)T zU~DU(18#po)8yf$jSSYYG4ay7zAuJy^iMHhhuq8ELw>_(Dz?}6p4CNu4GvcxN@gP_xh<1HU3$CqvN4dHGC$-&bbbOH?Wel* zl;y~yFTv7-65u*YemIT=w)#?d!2|yATF4Nq{*0UYbLklAE9n)5I|a2yM^Wt7A@;JJ zAE#;xFUfFxOHf3G_9oj$My*663A`S-Ixp_MdiQ5jGQ%vpU-k7DSy>L8k9QSQ-nzGjGSFFT zJPf*J)o_;c`r~>iP%Ba7J0fQ8j=4C-ix}^Uf4fR=f8aTHgX+flZ%^H}Eet^*L^v@t z(kA22&xtnw--k2i^rJE`?;ao)!hRA8kb%YSZ{+L#P?(wW&y;lz$aTq_6wdriXn<&6 zt3&9iT2xV8H*N}yb?0!|nkMsUNE->F@9<5N9D@5dCaN!-ub(ryW2E>V5K(EycpU>C zZ+1QqiXi2rC;idF3AM^^sPypHRjATGm;9J#31w*=Hwrj@tonm+9m!qAz;v&Vx_wBE zvIPW0Ny)`zCPhZ&jIeF*4=SiF3W&?nXWM>`>}6iw{1+sR1n#kg{nyhey&Kpufj(&DPf5d7ij!iv;r0?ulJ2@I>v>8j#>VE=b5o4jtJLx$xAOD$aZM!K+F!3A}&Qlf3_s(we6rT);+>?gz z8C}o4?WycfW#-vp=S@^+Zy?9;l#`dTj@sw9Y4Y|L^$L*YlQ9LREIkZ~Mtwx{OXSu7v8zzzFsC!qE8d0M&BzH0w`m zU`nlB=4H7r@9`~4cm$k&|AEhb{Huo#?-bZI`<;63QVWm;frX9Q#7ZO(Vknu6gXq1U zWJcS(Vz`E_>iCyJ`0ZYH&qM?>oxxYT)P5U68BOR&PQ^-Kg$sblYqbxQO6ue;Bg|EP z5GWF=93I8&DpLZ8?_B1~MbZFFXC7nt1fkE>gApuVA_0pp`c)U-eRRY`ag!D8G}OY_ z?ENesMLOaE?I5j|c}+YYAK&mkGb~La#aHYe(&j=tbkGY}PG_YTw%AD)Xk;)B zSi~)eI5#qwK`+}u4pqS?ru#S904y*W$14_$W#2gp30#^id+8gS+Wm@wR7z5=HSGVlPxDS680jUJ;+5gR;SDV(v8t$=JqD@WuxsaiU7T+}5uU-aiPOW&#v7ujJK+CWkv|~<%oWyj zBRqTzouf5Tp@Gt5C(|!c)-3Kfh@nAM%ZoJ6*~YcsylZ?uX|FdEXMIIDA4G_Y$bbwA z6S^Lu~)(p4vW*?Zr)=G3ITlEZvpEtiWB6zcSC!R1C3c8rt|x~nC1%k%)-Czh{d zzes_i15pa`q4$cf7-wA*zjniB6wo_cjC2fz1k+l64K{3Vd1Y8ju5SRBRsMMwLeal1Q`qkCd+;SkP zTOZvmdRsi7Am>E5g?Zl%uOHvxASv9G{F)Ug4K&B_CmNge{}m(r%iLjQaA}!Cy~QDq z)hwLKmzI78{H<>WOF0?M3Ekz_W+Olh+%h7;)+nkI=zVT<2X#rI7*=8hIHL(Km-}r1 z>NAr+1_rhvM!@pM>2#!l`qS2L;)384ux(2kK+jP(jD`4C-g=2z;b+dbvn-K$H+tcm+4`oGxzyWhW@b5$WCcp z1cAqAr+eEt#+zrILcYng|75v&MHwGVq5ve93Ang*@<&R6LXX>v2!9~JCJ*F@BqeDd zq*^-v^?y=J>v=^mMe{k3|4WvF1T3MGWvx(6{(I-8rcC#3aK0807b!wrARRSnd1?3Q zmTX3#w3!tQ2;lUECnyhQEL>1{4Gd9dgcu#DG1+OGJHSG~$l?J(&|T&_cV=A z1s|M?Kx?v}2DRFgHqD%oCTnN8(8MCs$Hw-Qw0eszhL3{G7nf5&0(uO}qb7u{M3d3T z3QW5q?%ToV!ayPYCa;p`>*h&8!G~fAV%Kq{bOJakz-cJYV4We~O(EZ@P9L~HycTpa z440gJ*^a*yo@4+#hiMOpupfR_9KUJs{FPvv{>-J)$2EXag0zRwUilD%NH;ca8YlwU zBH7V7{>|x1YzJ&X+rW=OB60~R@#nAQu6uKIl#P0Z#H03Q>USkq zfc>yNO+Tl?pbak#9x3giBc|Byx3TOoC~L(Jvmk+C6-5M+WyB-q?rIP9w*qG|Eb+dWvLA?*uBNMJ>p(9?RiD{9-`fz#tkftY&CF>`D%CpBk6yI;-Y7T@ED-N^I35T?dTZ%8eBx%{twciK~pVLO${Fr^uU?ysZTo#D@OTO9vq$;id!r_REA49xYsUm zq(mKR;AL@tKlThy3Z($e=+ic$O*|L;z+`O3?Pr6> zjjabj9ys}&I`I!sE*Emve2V? zUWLW{=gCUGFnJq{(UdsG+k{(g_-aSeQpfO6W~b&!J3HdB@GYWf)`;CRoATSBS5#33 z;T{0v{;UO*PzTQ^ZJ*4Rfe$dWwpm#sb29g%3D&-No%*3GY0PG%wP7y z>8YO!`^+P;we9}5xT)VV)kO2RFkPB>R@MD!IuFcQhh(Pj&yBT=BW%mBz1(Kx?#Lgv zp0*sS1qTKo;zc8OjGMxl-{B5ow`HD2AHICztmsy*a|@Tf^E(gD)B&{T^EgEy;e-L* z%PYI_HG4isUwMu5QGG$gD&Xr8hN znO#V7ddDj}N1}av-LzT4SwQhGpcwW}dA9(7k1v}DRDB9fd?NkxIh1atXOsQ~>1;(AK#=7eX$NvM$VC7ao>>^m-Qj`a; zpF1%|r}?GJ_;LOhD+&2-c|*xhF(PBWhIXL*Q3%Ms;olP<$5 zM;1*=MQdOieI;DtlKXrBKH$x#?ULEB(DKz({HO3W_fJ!)jSh!RZRZ20FG>OkvP)s? z-k)~0eSnK|hLwYWoG&r88wdPvR0o3MfYHjH??@A7`vl_<29e>p zaOaHrzCUzTvaRxG>KV)Z_zS%XLz$&7*5}4GHs-Rf0eA;)Xu=ZH5Ps8Edp#opt_u+L zbR78>JmVBfb(F!noCTM=MqTst@8l4`%=azJUiCletXIwe#`cF)+uPpNrQ6=5;ZmT% z8;z0`%W~-#St|xboV<8`TYLN_P|QPWdP8(Kc3wKMujly}TjILt@2e<5zhTSB3s+>5 zq_3Tgxim(<4bVr*NBuRCAWZT9$>ehRk>Ta{6Sun7wks+jD2NZg-+-U2)JqB{+~mOt z@X1M_gAjqzg#`;u(U02M`E?h39KkB6ub!WWr8gdp$*(9*@X;nSarAle=U`Bcq{0 ztqv8pSZvrdQEb3p%|T7Qc=oPYXgwsAQ;ORy3rvY2jK+~7YYC881cxk`Nu+*+-*fu- zEzB{a&OBzj2ph_;rn`O6~Zh6pa z7xbnPL4pjuAKR*`aa$r3!`tFDQ$Bw55W`MBZ)X>>lS0=rgau0TF|hXy`hd*rA3AY+ zg*y?UxDQ>uv;Neu$@9=!WmKx@#Q6T(#NqvlW16XP(VcDY_uJo)b=H%~nwXqXdAaoj z;`gTS90Y()=*;%Li~ku}v5Js?-V8sGNDtY(jEQ%-`X zw1WBd5ky9VgDc;Gb?lboZO+-48DqGe~dxa}>BRg2*`J)=oPNTy8fC*C!w^`VWgU0YensZNIYs(z}o zFGruE?PYzY`N^R1g;67QF^#GXzX$riVQa|y-RQOp$K(YvL0Z^)!45#&uq+qof@;?F zW_17Bwt(L?1@9r%1X4 z<<`2)6U%4s7CuqAFD8eL`+DgsBk`Yw--{JyO|T9Z>zUsVqSJ8MZ-$XJv+Hvo$J|E7 z?cweoZbGgmWjq*u`lkGe@#_oUulQ-tWYW~EJ;AfHQxiu~TuMxMWrKoueM110?6JMD zM@#&+w^S`|>O-s^@%f81nwLTWks|f9_xUVwWalq}rCknAt(lCi7I=&1HA24yV@rg~ zf~6a~R*LI?;iB8-{8h-IfE2a*V$&nLU0hF5JYS{uhE!y>;a~cm)s10c97y8Zny?{S zJg$#n6ZJ#5?kx=M`mdFhl#mdj`Wh~-F`L&>B`=3jl-smip_(G*u^g;r=$Wghw(aL~ zh&N6!$YO%$M5f=0B0Em0f)sw73JOq-YtJqz9`HN8ckkXr`Fuq2BQt_XNCYd~onOa2 zq49_St`S3Dcvj>a^Tds)z0PxEya`~tUw>*L``MJq&7sqX@G}RH|3=F$cjZxT$xv}! zu4BXp@y%KYFKL#x6DoQBUFD#iT7a0A1B;hJU(DHP*ra{WR$#nkZ zv5Olr?S#<<8A%M&?vZS3k<_=NW>{-vl+TeisLd5oe?O6@IiVJlDra189^S1&zUM(< z0bh#bS@+KJC_)%jzjlK8Z&$v3k|Gv{nE3LRl&C}V zmKOuYwfi|~0#lqE-F2HSFcVZ)df-~Y@{`m`*ZrsZ8WdRN7#dmGIT3n7HjD3Lx-fRA7}nLK zC)+`6@O^cf#TUol7 zX0q!&{cPE(|tHQZ(K=p^IQ0WR49S?e{)%w+j-E_+o8Y76S{n4UG7zAi=(nPc&mkG$odnE08vJqAr7AleW<6y7U}@7 zC?FjZZvxFdr@E7Rr4f%FlextG0GIyK>|~1Xlt&SVB&=|?`313{iT52;U+&m6p_Z7~ z5WS@em*g@BwR;Y{i36#cVZ=uzGHeGN&}=w&$i|#%0p7A;SpSl|t2}<&o5vPx$kQ0` zSqw)&x_Z-q$#UI0GBPq<#sjMqIM-lpB!7?d!xTth`q+9ay8(XBK#Oe#9(1{bw)qZM zy0wXC;iV@0BZZXIhFdf4As=v57`;YwVa$l$?nWwT>G1*8?g534iJe|IQ0;eTb` z|GkkPrhs~LF!rSFkHJA_CzN1{&>dP!WN-wrL9T}4>b10I{3jsI6Tpc^st?{t4|B3Y zr6P)fP~k1rg6-|12tN}YzGMh}!q)gK-xH~`D zUg@9rK)5@BuNj3az_gX&wm1GcNl|S`6z%Ip=((HOd_6vs_Un`wYQ8lLK}9 zg;-U`-|K?yj-55E?ml1;_+Do!)-yelqJ__yON+h$WwaIIYeM~sU3uyH3W#OoMqOZ@ zMr{*Qz3hj3O(#8$FP(G?=h+L4a?k|dos>dV$#C)v{!kXdm{L{`%}P3XVofJ{S$K`m zOnhY>lYI=f8}=IAn!E9w`)vgC`5b(AS&ilJ3U{Mmo%D}1aW9~FyR9Fr$FBvllArW^ zWzIKE^NwRDU5%`~Fo(GJUxZEN3L)yI-trIY&*t_z?;+#N<+S@2zr*Jz9&i#KnSymF zjgZEy)JIa|be?4Bf5b8GZzo7ua4z0k&Z}g!?57Iv{QeN5?6{yhEj#JSZ&Yet<9){y zu8V?atDr)j601aDtTb{cdL9G*j*p=Xkmca(m{hr7O}CM=H(9AhM&Uz9)pmV$Ey70Q zTp!*8U>(_F08PnDI~pRt4CV&*;CxvhME-6Nt zW*C3Akx|}|pDSO(J4MXsFpnYe#aO(TVT&6<3QrWX6^SuQA3XZ%^VuxaA|66-TB01@ zJzi=eS?wYBzG}L5Yt;MmYfxsEm)Qc-#a)I-+}Rb)QCjJJSmT<)$*;c z6zgAtq{TM+&BsN%{YbFC$$Yo_mt9HjUAljhmv^k#qD?pVrkRtVjs>^>ie|UOlcGya z;cw}^MyQ_5Hot>uORSaM4<6<;H1W&22-AL+N&;eeZ2KFF=WQ<+%}3jT_>o_s?Lj%J zvV6Kygp8J}@IGp<0~2y+GCf68mBcq}gG=|tK=wYcaLT-96AyS}X2cGj%0&@Rh^MgZc{l(YOK5E1@sCq>-BjmAmaT*3T@#sBdb|M^_-8Zpk7hmkV1 z@Dt7=n;(_pMPA4U8|M3quXc*XGyXX1Qtm(h)1u{8Ibr5?Zss?ULFG4>b9A&6TD+VO zX&}O;h)CgZ{%rSYJ~dPgPVjor-{%4jgnUwn+`=oWAi9(9it|n3>Op0;{XrY;+(ZvL zZwd|VzXxfIbF*(~;vn>ToxIEyEaqnIglhk=oCAbBmx1sksgLechW0TpfE1kuupb%5 zPN>)$g*y!n_zYd^USfx(deFo$347HnfvjOtrC?uQGIP+?oHg&ZQVdgTMG1ue0)GK~ z)QOWab95E^?XTVJIL6+o0Blu7-$;t)2?DbP%w1Nq%d(j7>E)qlO+SP^gqu{JJ zwy6dq!gzRi0&hhz6=3sBZiHPK1>T| zJ2d!Q=+j3OxR^r5H|;0GyJ(jLU|b$~fg7Zq~w?)2sL zSgHNjHfxp?cjt*8%YwBc|5d|ZzC%X+{Q9sps&Bp%JR(}(14wu(&Tz=G6ic;ltfwR_A+e-p|Dg+{4CF>f z2mpt)ju8(C{G>QduJEGLA}jAE>jz&Rn8od7GX%;(Zr2st{$n873T%uj+KGsEdMT>X z_1Z=*vfdVI&srvt9j?fr3u{R#SSC(*fcjqRz8MgxoKRY4-CwRO(l$hFvHP9sh-jkS zi)_#C6#5G4tPc}#% z?k^W6wM|~^X5NkU44D>7$I@cymf)PDg<$3h15M*(uab(r-`Vw|hxjua09=&D4@ynVU9|8s=P2{#B%+Bphy?cok}`#Ies0zKNGk;Fn+xW-kA*c;SS41%~T)5B!^e zQ=C15^Lu3-H#YVKYhMrD_2^hC8IIpz6=`owrWkZQEy==SXE~P z%u=$ple!|=CfpXhQ0^Cem(95W&&|E?YaDO7k>N57tV|JyuC9cuJ?7Sr%}sKdiYzrAUz@4$__S_r z{u}ngxmmMi(ATbiJYO6;^j&D9O}#WZdlBH0SJ5W;Jq3WVislrzH;|5){0VE zHiG=RAsXhDkKh~9}^}ge3==1`@xN0ZaDzy(%reuby7U9!Atz80cvwHUE7b4 zL=}Q;u{o@MyFvu~>TQQBDwL|M7U_j1b?z~yvabhbbc1}F3+CCqdxrmukgaoIPr__7 zy_$^n-Htcrw#ByoI-DX+J)6|U48`q!cK)H=jV$$jvO2SMXxvn;qx3p|NkTIyAD75tLnGAGJbe3{<*L$iJWc22`2FMXuoOe zli6luTstTXn24D$V>{hr9Pz>m?63vkpG=sUt>RvDKkf2Ke{9p;WyC8Woy{vL_x@gs zS&T{9`Hz6IQe(gN6TS6Dm*<%`-MnUftrNZ(EHmW4%5=l^`z_9;!d+AfKXiU{Hb{*z zzE{u_Qm@~5A@{@Um9(2QatWfg8)B{?F+s1zG=MUmz-SK@3a!6}i?Lnh~f?0fn9K)vW9~%x8B2+|X(Gb74uG-YXkA7{->Nc%Kfsm@lHvwo0hfix3wcSPM&+%v_1IriDL~MVv{Uwbp>V;zT-$DyN@2tC{eFNtS)8>R4k z9-k5L=k$>77tJ6uOXlD;-P29=-WG$Xg7oj#o>%`&cS3!+l6L#)7x_BRgz!_rfHj!z zV&wTLUE1Bcx;flj%>i;mHJb+YG_&>Z=4%={7WgodFQ6@ZY9(zsd3|V~_IszM_On7u%+rIf zz;8Q5e{#!m{9|0mddL`|$w&F#A!ovWT*>NJvS&?)(X# z&SO%jyaxn)r%NXfIVqC2hIt+PJvN5J(#10XF}g^F{cXoBWzYbRYDIAuj3kP`&5xPB zKIR}d3{cZu@x$B5-aT1Hlk(?{Bl0yu>=>T|z`r^&{t56UmKwTk>&4Mp? z^BOp-Mgvz4oriSce0YJs?0AHNl+$#tX-dJoDYt(Z+|15y#?_{85Mjeo3^4@*LnTa( zNMYT3O1cp&$KALyau+x#53AI)60YiR-mDZI?8@B^#wK5!C@7kL{G+H;*Ptyn;>2&2 zAXxh+;Riq`0J+kcqWmOkB!tAE(TKxuV2dtBR+#@{gMvv0%$AX)h^q|fiC89y9cc*~a(CHd<7s&}W60#U4d-ecHorq++1eOE{ zk{>!pC`+=Fu=J)%xO6mAOI;n`zmT}@J@Q(S=MD7u5y)wIw4dYSr2ae?tSw3}DrOVysPeP=oQO7l;&w@P`|)ACem!J@S6q zWm(9zTNGLHbt2!%_J}*WJ>IZ3!@_XqRqE?W>Fo#Tz5}A7;EuE?YuW z{!JNaCW4)u8B2y@D!TI(pew*vLo(*V)X()ftI_{~vdwkTkB=-WUnG3--=YH!111IkrA?h* z54BRgwd(dC*+|oWXWb|A5Cm>c=AEBR{44^d_ufS1Ez^46Em_VMkiyX~evV<|ks?)& zW+sSK6r5n_QI`_k%sSHk^w|nG(N|Ej^Tf1^O>(K_C@tJEO< zZ_IQxso%hQLns|&?E}lbj)_~x96JJc!|s6h^tb$rk7itATPP%Tz}M=`{yLNC=QvKZza7Fz4S3<8F4w#tV8d5$n7-=_k8NN&5Kxjf~ z`nmLl!*$+CtJ{&m0u9I2Uq(&xNFmjg# zp!{4g7Z&477!wvCeO|qR*^-@&SF|xLDeAy9xR;@|!M3Yq;=zkK*>9Zun1sU@6s1Mc z$;ypXwTa{e08S-T|83sp<$x;(siYuxL{aE~O^B8X5~=RB{TMZH%a^4;6d~!nq-cU- zbKdd>_|SEFXW7EMS*xFhZLvp1^V{1xK(GNBJ2=d%bEJ#aHfmeFo1%O^esBnS2*9-e zQ`G~QpRnI+$h_M+nts5^-2*H>G!1=bGY)IqKoHOTaNxZYygqmAq-|6@ZJpi#-}r&? z^UF7|VJhi;zc@4`e|LYN+kqHM?L{AOG(G+u!NR{PYOdY#r*0*0H$yP7@MH){5pEBo z@7o(UIdSBBv%jp#P<9VD$8uwr!!F4tMf#^W31n!=G>9(X6)Diq-F;0FPchXyE3n=E zv;)j^fK_1T4v#O4SJrj9WXlA`T_e>O11Ys=k-&aXvk2@xH-K6O<0d?Pi?afIP0jtK zWapN6zY9Qic@0q2V5P{jMrxzfYuBFl;Z-`n8jUKXR84qxHwX3Wxk|@{QUCBR*{1|` zt7T&Rs;-mzvF!{0@|z1=kca%7Akg7UHRImHFj};{EBp0$T9o5k1`&*j$8}t7{nBga zPHV54q|sYtcBz4p15-;Ej^0`)-JQFQMkc#ubKa!^%M*H4ZB-rf0Hl)i=*q=wx1aB@ zAAwgCsanf8K0eu%tQ=wg?>mYc*e8dK7#_$Esu0RZ4M;fPX1l&gB0GMY+}CeB;?|$c zjf^g##5PlKo*oC$nn%WWK+`7)-<;atb8pZLf@_hV9#)E8Xi_TPi(!8!RO-+9^jWIj zd9QVvAk^KuJnx>X@!Qkr;Ph|U|M&AT5FaG9Wl|SE>_ll!&w4|n z-BRc8ziC|`;f9-Uu^1gMa(xQRE?DP~eMuYBT-dRmt{!)S>vmqj6p!0<6{2~EkvU#^ z^Rp>!f7hpesoE$^i|{UDClTLcSu*FvbJSKhe|+BlThq|6_aQhqWKALCz&p>_nxYh5v;+M8EzLh9Iszu_u66ma0sK{j8owB}s z;wEJAMUh=7iqH`wi#w%+Eqv)nR?dFb=%@^WHY^dfEP!jdLZ!tdj|7X=t8JXr&zRvx zmDjFmg<_`4>vCTrewFTc2RFx)0y?2{x8>B?(2!1n^0qt3<%7`6a8$9=)p@i`d3wsN zya-2x^UDZCk&eZxZ6|1g#jrsqtX8#Io;>bC57>ABLQ(6VhoHpR%W}kmA%$@-fqwx6 z&mg84Os#TJG+My^OcB8ibFulfJ{KxUz7vF|nx@J4(RuN)35Bl|$>qoW*NbcUL;x16 z(QwtA;6tkU9#R|D!QLd@o@VY8qJCXG1SFzKV4Iqp{d!0#lJ)Wh(~lLyV`2D7(|o}& zC8?c6Dyo9D8NgiD+u=VBeD{{PBYmwWfRTYAMa=0fdDgh_yTk9AcvzX&@p?wsp_*|( zpm*Shia=>Up|%W&w!UnR>!dG%6MoKkyS7n%y^DdKQ}y=i6sxuRdw+vX6*N1Hnxo04<`;tzzo zjcyr!E}A!2eXvbgJpc2RU)cY@S4(&!U}u6YF{j-{W)I*0^QU~PXiST}5l7UGwB6v) z#ZVMq;FW_x6TVGgyuG^oqkmQ`;^Q~W$Ge%`>J9$++g6$~D|MT1jH2EwK=_Zwe<1xTY6hWK?Rp`o(^1 zCYIx)D{|`7Dfv-X+_rZEk4`x)y3dve!f}n(ALgk3fRP|?A+TIXhMrCFJ9Q#SkFvUg zQZC$hc;2}LGVe!kMBZ~UA|xgO;_~IgOyQw>*u6BuG^$%yGmR08Gv0w>e|Niv7QzHx3OWEdjpwjQP$2>Cfv6Y?Z=+xJoL_ z_n%qtA5R!+SSr|(c4GVtP3mT7_QE#iEV0x4B3Kz7Y6mDWv~&7OH?O6ZDAv?-`~TtU zzvHR?-#>7?l9DYm9Fm=#m6`0lBiYGbagLP{5m`qF$KEq5vty4q#<90!lyPjbMf7`k zecr#{?|b|H!wt8a<9J?=>v3JzeO&K?#6tSWF?EiHjhYY|=m+fE8({*4Mj^Zw@MnpN zA%nO5(nR0`LGNxxmzy?%(fCNdjhef&#Osdf&osNHY=3>z78k)DBK3nfelE_M)Pwd+K5qDI|wvmWPW z0mx3436Y00z!05Tf}tvMNeI_nG);WLLJbhWpzt@S{(*U-OP>4J-~^5A485=Wu{{CM zUKmfVYqttFr{kDjU%W~l&FSXpJ#7ycg@Lyl05+0XjvK#sa|QpG_I}J%+xm#k%Rjia z_g~il9B&6+k{6oU`#LxG?wOyZX^jm_-4wreYW)4ET`l&fbvW>A0f6>5ePET1DyblF zw&G!F?fv7+hi!2dUjVK_NUAqsEO!JFm7O0>z>cN6%WF|Kf0m$gRSRYuiPEE zUU-A{_i=h9T>wZ)itgnk9x>>vFF~z=*4fE_2)auN@v%5~LRS zU#3p@p|Uif-WU9(w5)^Kw_vG-@Vq|0aKGs%KC5<@TP`^Et{>H$jMO=CG+4goGu#Zn zKK&G2c{e(JU7>q!&OMN?Fugdrcdu-7DyAOR)Q|`d3l9oe zn(y$mL03CtJa71LA9FeC+upx;yMqtxK4eez%MAlyt}poKtA`g3nR=?dA6gK%1Kv~f z-~ak*9O2e!wM%JPyH)MhByQi28`m-bg{)>*FqRXadk7}o*E5ZdE>~XjAacHQ85A?^ zGM9rrRgNA2yYc7%5CP3Xm9NO@&KTT;4mR42?+^dT#>(il3K$>fMYG`wolS)6GDJ`f z2*0x*aX(${Nq7$MNPf$u`y&~^k;M;eNCfj=nfd<3#QpZ(M{4U5P0lap`%aq?K39j* z_Hw6A{Dnyp+FJ~v?eyg|s#8*uMH1%gK%xw+8rC=c+L4vf$Uk{H^vaV3P!7!)V7s6h zY>)&j&o)t!bpmTZ6_DOL1uXda_}*jcAZ=!mRD6v^%gy|6SL^`yV=13QyvYsNKsH}m z{0nH32fmA42<8kuaS71Ll|2!3$Le#511W$(xy~ zr#;y+#ST*i0&6#}%a}0_N${|LD-n^2x6{jl`9KKCt8No!8tDG?uBs3!$QwP_vAhzb zZv2z^Pi}DS#yLa4?KyRIb$N{#n}O6wc-Va3_&$T{n+@-u?|6*aV4LF)ln#xU%`^%g zUs*UspC^6X{buUYV4K}+>jZcOqzsMV3J<$)M+uN3C=1ZQ5y<)NU7kYS-3v8SZ(0$r z$xwWK;n9>_jg>`p7JFQrr2C$>d}O-XtpDT+)`!&OSEmh2PI?m#3bR$ZTq@F!Yq%;E zIp$IAl-Doo1AE#`FS!uFR*PWwEHIMExb5fh=s6Sqv3qo%sgRQ9oi(okN}2ycAm{t{ z@3OuBdGCW2&FdNAOPycu{#c|l{*&TZ(R>mrv2}___boY#}nUeeUQjUM9+ii!#2tEAl=cGqcZM{{(Q0ZIzr+$6KPa-E*|S(~N#fnSbqk z1oZxS1{i@kvDsPp_oy^!tCKIqg1-%ZmmLB!C1Wx49I#?+Td%Xu;TGwuyg8K;j}$%*hdV9>)=9g8&Uj1u=m8PO5WeKQ8XGJju*{OUu%how+gm zM7Xq}96$jsqqp%$x`Y5JGJ83@wUq4Qt>Z*F&Yj0$C$E@g8+vH19EF=6Z7?`i2kv&k zh<^#}-39Y9bMzQqhE6u6*q6VnIn{rA@0Kh+C6|%G#MM!XGel0bu!t}8jKmkJ(~0}B zXqExF%ygI@>1Lo+)*Sqt&)4=QgF=hNM3#Si0hrwjBBzveq+e-oAp=;eCs?8OVr)qu%lYF?r5% zbhr}A_?ti!T#1J5!EnLgPEVoj7mNTIy7$woD6vP1V!6xqcs^iwfqq!OTwLA1qa0vH zNZXQFgM{SAj1GWLU5#!GDWy2SIp?cK7QPJh+L63rvx~t^sk;=WqHVG7Zy`Mov@r=J zX;{1M$2PCWuk`t;9j!W1T>{lB6)tOMO)K8`b??%M5<*)FE4YILu6XY9#-vC6hU|q5 z3j72hP!%KlGQO_H=XLcw@vA$W=Nxo*p4`{lE1=>by+likv(u_|5D}Shcm#OPL#RdP zQ{&Z7-6e#up04OW7FL7QAI$RrZhmV&eaOSR?3K`(6aKOBS&9utMscCpmM?8E0zPHv zAxX1X=ZsN--s~a=JodSij#|yumo7TnDmLID#h+hBm_!&TiXBHiVjPtIzn4=I|d6XO&*G4iws{Y@X(8{y!gIbL8vZCMDmK?HTX7k9E;4 zX9rX{zMe2i2usgrw(wdVy&yQ;RzCJ~sE&+MJ3S6bN~90_$QQOy0qjrfCwT&Gb6>%8 zoVJ0#*Z1oesb3zkLcRVrI^TFoQBDMAoyp?!r zx5NF}ufGV*Z5F$*)-2DGqI&MDdMd;6!F1tik>RAgXUJ}Hpw`-&B93(YE-MYxl+cPd zwpJ(2Vz77iC9`mRTN+g4D=>gBpb*BQ`)DCrY!ml^mp3tlt^M>?H6)u+H1xc(ZqFL=nGsd+w*fh4UX;@mdv&P@gaabzAS;luU1y_+oQ|Ky^ zf{F%uNR1b!OH~mdP*@mW8-8{NVO7VSq@fMby4B{{CIQ5;cV}^all4K@22IgzltNVb z0f%~4=wu5`Mx|csmA^%caOndId@J~RzyX4#Y=PH8Gm~Fo!&|d?Uca^238)!Rkm)H@qO)UfeMjtK6p|y~h!jbZWU!&3h}cc~vW zDYWG1^d~4morv4dK8_R#6v~8&>qLYUKogjV_8t!#)i!*#WV)dl2-mcxyyh~phvgKg zS`z;A+@59~*)L#`NA(k2A6yaJg5dX{HLm$bMPY$A?&1^o$i`vUh}qt;HoF=h%Ei>O3^pM`Qj`jB=@|C zX+>~oN14gA7a-R71XDal4TM+;2lV%}@@TObuAlvgUCvoSLHlW_yD0Dx)FM57eGjH( zF}E7lxoY>FehBZ6sSd{5M_5h!-+|SBofAv=uGn#N&CRphzms8nV#qRDs56GMrmCI3 zE=87$U0Sb@q=_}bx>=C?qs5b6dAEO;B(Uvivi}Y|IP_M$!~5mLu%=X2@dbZNSkqwo z^8lwG7S6{>bwpmJXtGoSKXrYCU_B&5{-~w=&7;zrsVI{7l#GsEgYC zzni&PiQ&QdN&TgW!?%rvk=(f-bS;NF#?LO2zkV%&H~$^IU2?oBc5mf0SI&h0DFG4)9QbrxmKyM z9w+lvE{w#gMqpN+@E*9pMRS*l9te8gk^^oBA8G|LNdh#P3Z13y60%9ZwShZ+(xdv^ z8KuM`yugmBycpXgOzgnQP)e{sy+3LYT;I{s1w%VUClTqGSVkQrxlYAR-g zL8t$r(c|0~OIKMpKk$X8YvK1Wbt)chPn^!InQx|wl7>EYekX0Y{GjE|A+$B2{qLM+ z_v>7#^!QY>IV-XnYL(NMZJxgyEs6;exwO{rn_CS_QRVxF2Uc*uS{(a>90?rC^99NJ zzUrJiLHFE1r62)1Kgd9r2_($l!ptazHDZmCeHV{)@A};3eU~|e<3!(WC~pQ>EV3=# zr%E*^MJ0SjC{IJt7$eXArh^Y1>&ofO=rLJc`pxUY*2|;i^G3!W-#A}WtKI0HcO2jL zg;T;mNMcDFJS+h)IN5U>=)jHmuxM}!1$@1RGW?Zd7$UV>6KadkP5FjZueO%7J&Gq> z8Ky}yJa!t0&e34=1P)sGO+~<#3#vV>N(2`=s$|bWEwn40rB$x!Cy(DepAV=+V}*8g z=R657E)%77H4C*{eH>V;kPah~!S}`zoQ&%HaJ@POme~kto`zg3tMQ#4Fn?71znlVs zi0g4lgsgAo#kMf$7#ikR`nVX*)|IZl`GRTN2tkqOze}74dw$DXJS}G*w=CXM-v9;S zb?}i}xqQ5lF3<1vN|72Qp_^DU%Gs{>=@B8sYSRUp)-M!f^~e(w45PXbbP_E&RjQ#v z_dDzjNg=ND9SV^GY(P4#q0XU)N^P}Z0<#|@efs6<`%sBVn+(i|jq^$yrIluT+R2Ck z3kCWc4nFot|IW*F6&Ix_8UgG}PX8J-eEFRn1zOn9MXA;hR-eRUyuZ{h)yo?vQqPPD zy=C!ycfOvn5xA&q9{ItVn)nN(RR@1E{TR=TBL6|nyP-NQ<|$DebMxm#&8F{z;bx_G zY__ArV#vDhs46b9?_U(gnwOJ7+3Tm-KwY-S`4dAg@XYYWA_238gH^B?zRu~ z>|_LoPEt$V*lL&Raq`Vt=v3gBLooAn=%>f^4oz*sp! zn_+^(F&EC=N3OwND9;B%9K7b=DN38?DFg_s>L3A>S6BU1UVxqv*apLE;SB!C2Ca@7 z$Em_~RAmAWI07Y|V6g+Ngp8s}yC#y4mpxUKXK)Fqq4unOmewyQ8CR6>Th5ju3w=RC zq5fk2Hzz-SSL*L?Qrk=03ILQ1#uGnmcAEC0OEK(PVeB7e!PIk<-k5~9J6(vl~P zLLv{T6xTdUYcCKQE=oIA=X3CoxfDrj@e+{26>MCT7Gx8DJhF`QFhS9Y=O`5|yS>o~ zA~hR++tVLZi&Ct~PRERF=SCGlr8A!200pR&AkA%T#&y~mvqx4gABl4mLFN5q>%<#$}X?-zUw2%ln0A ztFAWY1Lyn6^H|Z0-3`8AUgUcR^d;14Fq0O_tM+ops23RyzdO&x@v=+I_?1Do$4k4U zw?)HAOgo7%{ele2slRzQ# z&x~{`@Km*=LKD1-J1^@_`=xEjZbK7us?(mPcZm&>&*aZWmMkVN1mq--yOv|z#*!r- zYAt`K%NW^zceLdA3(i?3b~?QDGV14@l7MQmL#EG+oFH=kuN*SdJ~-Eajy9)DsHGp9 zzrQ@Lb@Xc9YkuGGw`#Yd<^0*dlPO+C?|9xOli2C3yL<+BaBk zrw;Q@+`auuj2v%M-{3LV2((HBGW5Hoq$J|$)>lL7B?|Rq@y_x6-^9cF-WqwHez!gE z?L>z5WlyI_kSm-ZAv@BujYLJXVh)5j7L)yzJhNsx{9cbi52HWG271u^Ac3jK@Nf1| z35SSoY|oDJ>dGA4Pe#R_6K1hlO8$N{taka}@es1rkNOSpQp5$|(Kbjwu zS2`y~o)W{S()ou_!CYUym}YKQal0W9KKb9L{9r>;VpC;%$h9?MQ<*}ihQeM(4%tSE z&+~3;rVeNwHL73QG@hj5RWnO-^JG)|F8pAhpHwtlDTRPmTu?_oNG#$Wmcwb2wjWV_ z|Ez)eMoEk9vCea|5A8~(1ZXL43r(soig9aZ?>nObM?a2-Yb3sJd_=l0a$ULsTv|H} zwkj&8PyIl)dt7Ml{(c5=f$2^Qql0EBzl?bnsX$kNEFvS$w-|)OQSaHq1q^kV5{jw1 zvhTOg*^5EbH|za!N)|`?!R$I(Ozu(>R6Zjsd!yQ(#^2_m(+C)^Ii4Qm@_C}RIKn5)gzW82GSUoPqMk@tT$lghL*uM8up zw3@ckTg{uit)92n?atpdc?cW2{uQv8XQy6!3&DmT!%2l(b*rm%jqcn7^)!(%raK7d z?#z?NLGma%II3n+=mq{@L3jq=5gHZta4K2Xzk_b8tI@dbBI|llt6?;qOoho4D3E5`|%q zxY5KmcUcOgTSe$Ko`}Q=#RrMH6K#agWPwDpnJZYIn@WpdTES^MeSqutV66E$^bvNY z<&H%4k7iK>XoQDGPq+Uda|v?RGgv+gzYtE(#FQD&AtcBldy|;^uqHYjNX&7QTF$+t z^^wUNP|ZoId)PFp><>tJt6fWDlwR-P9cWzJ)Ql2X=C`|%(>RdR===f6Yucb(ZU&QG zD}8g7YRQ;iaFY=dMDTv{SFy#$k^ZB3i7D1orD)_cd$j!`0vfhFAA08|beEq1fVI4> zX~>Rj8RggL{VWAuX4$15d|+B(aA|Xw`&a^WRIECe(!X?DV}>%wMX`BRAH-r0^0FVv z(mr;CqTYNmXtma&KySFD(tP>)XsT@nSgmi?m(^ol3E5}$7zfkTmcWo}SO6dOnuRP(xcx=Zu9hiGY`+xJ;H*EZJ zl|R+qv}4l3S1@Wl-ab^r9pKcF4aN1#*d;UC8_R6yQ#pO;HOMA9fArKySUC<;Y-L`e zkx~P@sGAOZc2xhh;@$6C*}ngGJ#nqym#n zyT#_TM9qIg4^SaK1_y@AY<9-Q=_=Ctg?tc`2zr?3DsPAWHhLRczV3~WrBw%VhLH4A z?Lw2{P_`4*h&i|eT4i;84xVyaDIGiqKfW%X`AEMju8S|I#$sao#49v*667Zn(=huz zBUUf&5-Y2e>oNR?|d)+UpgL^!~Wvztvn;=E29PV2~?VN^djx_S=mi{ zQU*%*R>-=yn5m#_KzM+Fg=Tib2eDt;nmp$r`ZhM@G|*5g4V9jjvSC$Pe8+yXOX=8G zmjws0%t}I%Uk{OB7E&%QB+0m0UtAw4pfu>^TVET)4eGE5!?z=dU_C4l*I7c|JUg#B z#peNjpH1#Z%f)8}(D_ShSnn{`YrZ+$Cucu&D+x&TZ_>BL{$I~7>|~_FNOuYO*5rIp&w>AwH}_4-%a)Wiw~ z21{q3iH0A1(1=3vi<=RqNB1J!Ag;sOqrbE1h7*-#*1hvIUbY4>-@Euko;N0`$3jX0 zGPR~+YPP@>wUuUAfsN{2Twn#o@=b)w+Svh}Kd@sLh%}6Mmw19h@a6#x)b|ub1gMqX zBOxkB?bI!AHV#002AIX$j~NxCcywb)Au%k7z;Quwvw!^J3sK3xRw|C~L$pxny5^3T z6q`!q1%(Q0p0JoA;gF^y9rh*8ig7tB{5&D_A9?1;8!g-G41rGFnhL(*OBuee%F}h3 zeH+#^OJmIz_1Z-15%ZdAr@$8@dszk6)P`u>+?;ft<*2CwUb;mT7I4<=CtZOC+%Eh| z-=dJ^uhGxXoiglbp%nJ(bIxN3LATVn#`ng@u7A}V15a-FS+o#d*ll|2KKmB)`$ry2 z7ljg|bufL4jnUIBO0;l@g8yd0VUhTLpZ3>b)%G+8yLZo-v*_p}xI!flwfU8F_>(j* z1G)@aYpcov=qz}}E<~2VSgZ0yjaieoSywC^S`nh_BWU!R6vRLHYr0e zKEoCB8_PrRH{F6%cr9LOJ-hg@>8(C$Qf4Rhz`^n7R{l5GW%uS zyAF=}?r#l70*^BlTu}4ACnt>j2qs?2G$h2syMk$jbC9f-a1V^|hdHT|Z=O{Z`byl= zO>8B9gS~&61Ev=?S-u9ZqraRlER|R!o2M|%H)`c9du-0tIvNJSRAQIM5zN_T_sT-# ztnZYeSL!HEqfEP;*$~x45+8uL?pXMA4$9{NdYyz^@0>}PB1*5wmN&(j*}(@>Re$sB z%D4CZ;UjBC&RLX_?vW1HnED#ASL?qkI7H(9js2FyvfZYwa$^_daVVV&3$*KyuPIHe zqk0Y5kK~jI`zKy&r;#@BNW84dJEBTtjF0L>-kM?JH@7W%dVj^#LwsBacpPc@7?0OZ zxN5xrp=H00U!CP2n#QT{M*qfAEXE4 zQPr|Nolep%P4Jo^X-LYwsPc*;zo7Iy`D*pq4#kCTSlr_A)2DWK{+-(l~9{@TC@!hU?=e_OH?pR$-)+MkzVp@A=B* zychWo)a$J?)dsE0JFSgtyVNu#f6tV>-Y+dDpI=8J%{j{x&?CY43N4gxqvKjGYO&9y<_BKkfcmeQFRELP^I$zfBV z#UIwOg3pf)y>3=@7#)Vw7a}1uy)Y!?MXYirhU^Pxw@Jes{G?JtuBUaW57h6aPzm?( z?nnVcGp1Z%%w?r4v(WeAYw|ORfR2^+L^!I5q%4li-rim;wbot2Ak)J|$vv;S`!yz_^TF%Z znx}JtS{n=JhP=km56yjvy9(b#fPqo>T(kok`3QwCrW_1Ih+=r}jlscotkwJ9klxDjxeS`53`j4&~m6W^qMwf9FSHX%*{Gx}d!E@)1 zLf4nPnEH9o3k@EZ-Bi)fDSg-zsS zRipQ?Z|bcLDao)yDFYA(S35K(LXB{9Z8z6XtR!HJTlKPl)S1-BC}-JiKQs0jmkx?9 z6du;y^14g)4fHJooxp@^p&ZW?n(g>PpSD@b@whQ)O0RI>r&rWn5v*Q~+W7yvyss7h zE7?n~geB7N9y>M|R$mSe&3;)Bu79_>&_J0ACrR`3mVF=^7tflnWLy(%Dp=_9{)PWY zdwi{s_}jm`yIqU#H-?LdYH^LfUJ&tIylbpNc?k)PNd11@yVv1m=p;V5voXEakofP< z$N}-;*QDK|Wbv|tyJc#-96jT=R~ANmR-WJVyIeD#KY;OF*dsUC*UF8m51aS?kTac_ z`K-SGyAcCl!Vlr^D*nGWAcxwDhKoL8fM`XFJqX}HSiQ9% z!G!4cDy!p)PgQEPn*`s(f=f`xC{U9dEK49CHVt*YgQ(73=0y1BBcT!uQ*&_8eikyO z&?V@tc>=>oZX~2O=D-vp3A5W<@P8{Fg_MU>xB^>_d%4SHvz2aweM|$r7F6g3J@JVb5G1|=&aI$CdlQ7hAE92{!&6>fUo8^GuE7&R90$v5AkZo zC)<~MV`BmPk7$Y@Y0Op$P)OEZJJUd&%kNtaLd1BV1cgpUMZl>Ok1PgD33229GMt4L z2vC2-yY8cTiU#laxp)mh0{5I9aH}-f?+C}Q#3kjLHhP{e_?mx!pT3T1x*6QVDkb%v zDu{dJJEBPip7L}j=jE{Kys;*EGFC+v8YMQ}EU1RV2jhLlNAXJKhv>zdq`r69zKNH# ziUX^n?eyLBu(&mPO=4ERXb69M+IHOt%AqomT8ZD};!cP$v7u+=&x=C1hb zjw<1-J2LeByIXfp5IUvFd-0+8Zib}5&yUlF@94P-LWi3@Ddk9hESApr{k|xR_!sv+ zr=|FyU#qJ{u&RJ}jQ1uDoy&$EYhVnrp-1s+_@ej)N{TNk^*X40c z%Z2Itmo0w%Ro1CKZki_mWmnn>J(Ma5(PjaD)Lm_cWO&ASRA|I=k1qL5v<@DIQ@}@!eydC*!&?h z4NMeov=O+f!6e5;U`;z1ueOXEKDWxYxruUSK^wQ~SfVhdIz-#S{7Haa26Y=+lC3bX zYRIn?8(IoG@50BfYU`vWYO`LW-Belq7KN}mx~Vb+gKq?d5F*0x*KZPjWR z-=i%&*EkZFR|YeLY|Drr>j!$FLhIfVp4*S8o%LW%`;wdj9+FFhZD-TcDs5!>JjWO^ zNX(SpEh`rmYG>(3wF{cD()jlh7LXm>>v}?Jm!4AYg2yL-Z#csI=quaCPSV2v4M<>n zPhorYwhE{G2fNL!XIn8Zq>QzVO{g_aX*Vr>%m*c0G{4MC75rLG#MqAtO-P0BsbDw#T;DC|=cj8db6Evr zh_ODuz$y_O^fwL!6g|!AyO&^S=5OAgc>gA#SQV*L&~j;$pNY>&iO%b_C4sA(fNwfq zVy|fnYwXgzFuea%DmlBC`R;F0T52IBtv6yZX&b~8XtzlYL}W^Tg)MJ_*#6B=E2F<4 z&BR>8vE)elGpUz*59x9#c8rK>5fpAn~#Q1NPZY+FaMcv++Pd4nDmz(l! z@G2j3-|0pE{X1CiD&?McvQen?Euby%0V``5Uc>1!%4Pbzu9&^IKp z6VFOMni%vuBd?tYk}(3=PsYZ6AR_yAXcEFdn08&^WVm4JOmmilcH%rF!{POo%#|^H zet^p+k!UFN0IC#2>knh31w0BoABm#OsG@}U$B2HGdghIXOb@r;>$@mP2{{=nZg{#V zVa#Hw-R)rBeE#D%{F=ZbvVZ}Q0GDdY^Xxfmsro;&H=b1qX&&{I?87Pdye|&CejlcDEr_{|jz1J%*c3)+qoGMclkVbA#VELlKy{dg z{0mau#xl@I4K+lZquke5C$=2a7+!TeVZRU!PyN?6B>g(zT z!E+o|Nv?WLDWN3V|J7W<=^7By3zK>r=-2r@IAw$FaNFHoKCopmKf5kqWUj=#HuBQy zBs`wi%k?KgyP|ry3-zv97|tIL4cOkt+>4a(-PMY+E0eF)3ceY;5OMuz+oax(FUFgP zhk!b0jDxI zI8~+&Uyj3BZN5bO&~@LZP>k{8p%Zb+Q`(v=oNJpo@pVc&D2GVYwcvnlChMwJmF$~x7;8s1ORdRh z8uh9+ZJlCKP^s4~$Vz0A*>2aGnsqUGK1t8w`7Idi;ff!zmdCtvgvhv$lxB5s+vaPu z0EyjN`TTET#f0Zovt;{kYMU=qVNDw$SC%y@MIKn$Q341{o;J&ydP=k#N4kGrb_(Q> znzsWHETFI^rEfQ3;b14*SmVxygcN@kuU}qZvl>he@Awar(*lR*2GnTHGmVlKy3TNo z^Yg{GPCE~hz^NbbDAI~E6wBgK3)?REvAq}APjuttdE_o}pqVlU|I0=yMrN>%-YJsT zYB$mUDJxcHXT9Q?_a+6SLrgS^FOJS)>cso|1*H58;lVlhL4x88SCfG+>)LX(`pAp6 z)6mi8X`d|Lt-*|4gw@6>yQxrY5d3a*1=W(Z6Dk{zo|a2X2;dW#pZLVJ)_Hv({i7^ zM#JXRdi<$!sA{SEtv=l6LngT5x*9{YU7q+@igkU%uT&6QAAA@ETBlC{s~Fln*Dfa# z=KcX$+o<(C{TD4nR!xp7ZZO$r+p~rSdgkYhX4%KyNHNV2q%J zi1%Fx6;bZ8Ms4o$w+x(mi6}UVYFm2KWlNzuN+R~l-}I7l=}DH8{iySSXyYicjof?K z@dsWEAOS6D6a1?s*3gJM*U<3qc=OEN>Q>d9chgi={)`VN7oo^FKR4Y+OmdcWLn!^|kY5z-e8iX?>B|;hamF;#_k{u~O}B z_!X^Jh0(^s!A`BY6J4YXI5DQT0ZmPm{CAlNQgoyM<;EV@1fh z^Bbu>{F`%i&U6WdLp^&}ZJnK=(UoLOuo%XsJ7oC6!^we~3bNgTvP3IGiyR6csPQG# z`BCxCzaLlyH~XGq=p!Bx4T$k+ep6;Y=y6f&1UGF;LV}jkqpYovE2ch@k+HjkwC5da zQZ&NZ_E8YgpaeTSzs103Xzmn@|M<6{d$1qa$^(XsAOm`(>;IO}-}r4$BO}~jVf%&z;?i4>T%$zWFODeZ+{&9iMFo`!i zMa-)I$Gz&LQ>qq{1ynu)FYkI``i7*}O=y~MUpnQhWQ+2Rd*od^)Le+%p5(1J&U1M0 zLayy`n`4X3w?hoJOEQpyUx?jjbWROu9T&C+03k1JyR)2`NM?ZsH&?WH{unQJ6rzpHC13GPIiumQA$&*#@=YEiCsj zW{3Ll74ZP@lEWJkf2?lja;j6izCGb;?CNDVVxxXXOepW>ugP#8-Z1R_y#IkPKdTj% z`&(xppDZU4x73`S)pRT`C(-+RqO*Gw3OQK&AGeMalwS5V^reJG#HCQb`x1b3PTPe{ zzy02SWThuMQO;Ll{Oaxcf#$bYv!+fxSI~Km6 z-}uh=xXp6a+|~GG-LrgVK;=|~a>Bo?Q!E!yq&Z%CbCybB7uY6Zx`+#kTCJfYsmg#j zohuaCk|g%C8W=SaovA}&I^Me-QJ|mipK-!SEKrS2#9S2#eVs~Co0FG8_G1OP=Q>8T z5sj$q*goxNm;Em+!vITr=oh6Y4LCHF`KMivfNqEUoH;mz zV>+9bqT=3qwZ|4<_saG>m(u>N4k5X?q2r?Q>(v)2NxmqtJpNhyng~^%lJ{G5J|y!p zVdb2N+$Th0pGrL+-~UTEabFmFN8rOX2kQou$Tkxb8~3E1*|+0rdm7nqUGcQt#9t8W z`6e|`Q###zr%Np{XBn&??w0^8(wxp&3sMCN$$*MaYWX%{?nUZQiH4m7!S1vVVjIkP zPhHSE3tWw5Oe-4v?Ed3?EC7kZn7Li^MK_J)=(!Ys`l*d7k)!Q9DJp~6URU(I&)uf{ z!^!MG@Y@LH+LQYH^fk9D{X9WCJu5DPfQt2Xc=z08N=Ju$$msAb=+C;R2mtouLdWxz z(~Clys=iiXc#P{BmioTFs&!#b(2(a)IOnKs^xT>(*0V+Y^gjhygE8Qg0tE}`yu2z1 zIWhv9@^1J&Y#JxfkhOBzY?lj5Kc&4a10}U>w0}jc`7+CKDm7qbNkMVfKRLAkvZrw* z;MuEmM*Hk;9G}!&1C@u$>aWpc7+xJ$*I@)6UMa*56=dh*;MOf295Lng; zaUG`t1fj>uKXrIJoaPK#*KT*4EC6Fm>v~*tugeyBLDYonxwqz~=%8=BfT8Qg4$xLB-$4Bw9-Bw}uhZhA_i!@x|Gr9Kz36I=u9>WW@m~5ac0x(Q zZ4IA!sZL}zpjxKcPMT4V8~MIMCixh=_RcbLPo)e`OjBy${%hF>iGPF@jy0rzF65p{ z8yzHweA|a(vglDR7}p*vPo40ys)55HhW4vvFW4LsI^#_ z;p1}k7nkkPcwcFDOW+M$sAg6!2pA+s7Bd$v@U0tjBQ9rJAWx)EHSm`SgtNWZo_;RJ zUh~?}CukIR@_E(6ZOwqJWepirXBQYiu;nc8Q}r=_{*;_L3J`54{!ap;0gtMms;Ty$ zeV6Ay#m{8UTnGD3KH!$+#oY5Dv9{p_eA(<5pb+<~8AcfA`bU8_G^}6-D)HE{ll=L| zPK1QtiZYVP_2lh>#a`^>RZTKE^Jd?;hc}%qr&P@CzcE?n3tV86RsE*sPeXbgjD=Xg?u0!T zaXT1C9^zCE)+UiN;a2uX?0$Qzw>0HFvcy_kWs(Lxum;80{aq5`TW3EUq zca8~+20t|=gipuSkblZz(UGG8vxQ?-jyj;kwP8%Bj~GhWn)ubJ^a&oeL0HC&$XfR{ zQ2;IGl(9>!{-=a5mG^L=U&c2@x8$r`=zpocxU4(!B-RMsJiVvpI;45&@&r5ilq4G1 zf@fRyck_%E*Naa3*G#zXO|<4Qp#_kAEKCJd1-hy}iHtfIqB}y(i{h3EXyY z+O*Q5om@+LtkCuSrp&$k>}b4!dm6U@)A{bO4(aDCWsYIcX6WT}{1=lq%N%lbZ}u!6 z0T3BVZu(UPkf=SHuH^fyh*C1_OvdxdgraVVJDD9aln4}7$~lB4lmY7ea7u|B&VVmR zf`_EsFFZhM)QLi-OLzgem4gU!q6)hv(kEcZaO0STy{auY_2RbB@fHv5~qM2UcxCKAGw=jY3;2=A^9@7eJ-A&#C`N+)Iiz`mDaOB8u^ z-W&3ClV9Q8dmXnyS2`$fBu-0Y<}PF)arfp=6N^CzM5{fG7FsFDMeah&&n`bSxnE?# z_B)}k$?=hFG0%kX{N1ev*oONUKpc=@DN&R0{kREY1}PiKUWc1HW_{UC_<~SuglUGBO`3Us3&J;~3cwtdt`6kaTHW_r|jZ zoQO(|l(fim4ajcYT#3!2)WUI$pmr;rZposD{e-KSko#6%u&z;NPX4ZyT<{0v*uJ!` z$*18_On!D_j9p9*)^F{as{j9Gs4Z_*v|g?9%@5ZPjprR3n*RAI<<+PlIl3%9vS8Ta zhhyCMX+7hvAHM`+;1G9yets0obHMD_zD+B8$?@n^C%HrQEM2`L{i&NfXtn@_H9x^x zLcgFv9(0F+ra9?^0Ul~f%7#K%FKI)APvr;89tpq!Ki_@+0%<1OW zO&7ABt^AeylfY8_@(NJ8jXVD!gL&^YP-itWM2q>;`d9`deT6$1L7o~BB|etp7;r0d8jrrEAm z%zp98CP{35d5YvMH`rO$cn=$gMSg`-X9uJ{sgfF!x`$5J=eLD&lKoY)s*T{UE z&KzE{h>tbt%l;r1WKgJAv?yeFoVvyGL|7Ehduuem-?D=A<;cF7B8u)w6djj1gO?D) zXN#Q|`ue?H?11kdD8~9OxoGikE%z@Y=ho@l(1P>yh8Q9umu9I~0A28kXyuX@DV*wd zsor5}z68v&94Bq*(9FbzjP!Gj5Oer7z4rf4vUM@Ncn_G^XyGEi;f4<%oCnXj3|#>iPpb?*=e{Lz0w!5MT7zjnr%*XqY2EEqj|xDTXPtKtj7DKTRzN@NGu!u8_}1gnU4fu2-^ue+;%tOj@QUztRt7y#+h! z@0F})=6?8f4vyBr&ElV)>?6D8M#7$@t0&N**&fT-{EFD0;97O?IlrV5(qM^!UO&B0Oz{ln&j?>DTMI)iTJIdDb zI#v7kxucTjuZfzBsiO6{;mObJ0huwou(rTRsV_DFPFm z0*gUHZ|Zy4PnKR*c4z@n5rJK^TL_>X)NNl1=RS}?9Hj}5Cfcc1d<>ZW(kU`ZKqM(iv*}g#mID_Gny&V&h;j0XJr27UL!65H}wiy81^X>RwXWvHDAHfaWbO`&>#;2>ZKOZ*#}x+N6I>Pbh+a zQs`Zy5UffB>2W~)vA7=d{PKxmtI_x%(5!5Y0xKVefQJ79k^pEzfd*i?{p>U2)lW?* zk=HMZF(;$FJl`Q{!R|3B#=yOS(Nopb3jPcVPH=+=V(tu+=-=&+ccLr($)l3>&FO(a zhp*)6-$*%Zj&mQEK68!?#rjHzYoG&>Vb8e>UF?f?qhdg9FnSMHlLRjz}C4yi7_0rpkKL1GXO$6GXsbcZa)afY_}Y*A&Cx3 zE&ggTID^9W?tJ15kMFXq+M!JLP?NTMc?0!HVtyNW*uE}D1R>ECV~r{v@}Pbg+1a(W zzVUNzCv8sg_3!7W?wR)LDyI>nBh6F1ZyJ&=?3iJEg-W+(eaT`Ob6G_wB+bT}B<|M;{q8_AMPq|uQ#a_OH+LAI+y z2`XryGG<7bjoOX}X(Q?zHxeAn6)Fhl2HIkW-`o@jip^^WvJ?4s6ZynDxKJW+z{Xvp z4Ids33v_({;U@kzLqYbd-7%(jR_FnlxwMuvA_^@>FtUFDR@OdP_x2MKXF#X>a=cyiP7}D%nKKj7abQ0i0_fJ3jw&b-L@l z(Y3F_^>6>QJYC`#I=MHU9TUI%Ej{wfu1}j+(9jT%KThN=X@TuCT1vElrC~e09f^(Y zmN$2tjMZ+_pBTyWA8kRwK0IT-#Ws&*XG#g}g-C0)gY)dUx$z}nHF`QmDs4~Yc@zOM ztO9g&AtU?B^f!$xSlSl50Nr(ZQOqgcGQ5o#!tyk%pku0tIhW$jJt2Mnz|e8GxY$Yp zk0i^3y-bMX~u4zVL|XXt~lEFlq6b5Sw_ zIf)c`pNz0C7%u8QKHXBXOcbev!s(HH-`4@uB*XsyAFAF1oa+Do<4$En_NZ{o>=DU4 zMs_9Hl)Z^K>Tt*=GUA|;Vxo(9SBH{ULw|=BLknb=Us24Si^2d;ny&sX0_A@VZ8Ox6L+Ci`ZRR2^e`;8GXqXuj zGT6Fn7w}i!Q5_mZrF)#unSB%MJzGS7>PmGH7CsaIAoKnkKK{>4DsM?OPmuVIEAk(n zbuuK^evR0-NQ+teN4Q^2Op+C;*5))Fo%Me6<-CfmYrO6AyW+rOjf4!zS@DjEMwtqK z2z&i}s(9|T>t8P00lAAjI+-hq8oEc8QUkw?!R=Bf7*{g4cly;b`GA&|Ab(ZgG>|(g zSV~15+A6~9M4qgUs@IZi!`BNd!U6CyevlgsEYDmx<>lYcQhttS7NZrFj+`-f`+T_+ zYu^V^9w^=Ui=c!*9ED|VL2n=WelhN`mvtolg#g5!^p>t64$ zD(3>lg}HNeOy|qt=jeF~{=f06t7{R7`Tkw|_NqQIXLoAQ_GsF>@A3BiKfjFZbXk{c zBO=m2hNz!$XasfqT1x>{Ud;D%xXcSTu72g2%kB-6WckQgj9UQgfv6y^Kz&=x zIWXXqIiFq|fJ}+E3r}uF^e%ur(9<2z@|F~I4j9?P1w^CJG!quK+=6M*H|`ctmB)xB zaT@;ZD+m@tnN4a!M6N8@QNU@T#V%(diNLn7xt)$m=?M7HmO>>E)-|Kt@BL!T#}fzd3|@6WZ-+KN3y>+=y(t8VA)R&lOM_G zyOsRHH4e8P9-#?{!(>H*ju##CkxJmk_qH(V0^-8$m1r3w$$#9y^2%G+NRsZ_$l zhVT=8G|3;QckkxHC`g>u&qVaSaAGe~q9L6Vd%9lsfkt+6;Re{)9&WffxGsj*&Exej zDU+)rysUc#P<#9TMqeP5NnE+K*#Dq0WY>P9#sECqlRkzj_PqY82OoyXI~%h`)D}nM zPv0SUfwQrPTO}WES^EL)@jm>U*k;bRD#wA6@NX4$)qc6Zj91NWJQR)7`-?DpF|O^> zsnlrvv)@Je|mbaHO*E0xb&ej%U(m#EFzBQ(ffV?sYN3WkOS=P|Aoe+pjWP z9=&Og*{4fqx&@TzBz-LKdl1d8{tAi(`(A)^9vg%ESQgbqE?&)}wyAnCfy+z>a56+}3P$2d{Peh^%9ECo;IWK(c=4m^tPtRZV@)6t6@KYc2 z@rBkM+2s+nF;F!5WT{$&Tm}?!ko| zKxI-c%{B$B&U|>GgVpXnJXt%UL~$!}g3CzV+@}wR!1+_)*U}fspbmbKCE4!FBJM@9 zNv}|%Q)|AL4PSRN{KNFPhDAJ|L9hDrMvS~H4Gs=gcx)Oh{0fmWDwTf6;zOa;90+=q z8o_cp>}oL;78BHdw9_2V#tkn-Je;_{mg@Pl`X#02@|#%YYz<>$XX+LH&+;Po{pa3H zE~If0*^}PP$~`ag63n<(5wA?A!m-3{SzA9i+i5F!PysXNQhQ>yoqZ`}Hy~cw7tw>i zvT0Q*u0nWl9_rUJ#;-zv&j&T{KI!|(aofiDM{z}AxqGwToaeTUpdy!h)S>eG$?mjE zN$5Xu-|fT0_FfNdisE#)q25UY8Ud@Wn|`11vAP-Lozk>t@8-gSLO70)WA5p%w#t*< zu^rv3@w9V~5_<4&UOAq>+QlQ5DD^awNZ#r)qdjB^n*ZTt&U}0GbI?JK{4tpRe5Ot5=8R_l7w8R<8D1}RJffSCrJ4susxPC#>2`nMj zYZSHUTMJE)e7RefVMi#aa1baFNlh9v$55H{!jcF0LYIwIXn(6{0*Z z-kUAAydEz@E2 zm3^BE4cy>P`QPsC2gCH`9ZFT&4FfRA;wUQVyXy?~7moB#5@F%nRR>GhlRTt!j|R2b z?(qV0d}j$=zG0$R76P%`jL>JDOw5+;OV9BzNPc$!&NC3_XN1k1;7`_1jwAkQApBHy zPa||bXb@3IOh5q}`UUud>RTs^k!9YJxXf!s20x1PBNfe>`7*t$Jr~89;g1G0-i<7S zo7QE8yKYUXl~yPqYCL@p1(sgY6K74jQl?31-(DOjsBpg>-mFh%}$2rAR69SUI+hcG{{P_&7-y%#E{3;oOE{u^zE~LN=E5*9q!j+xXoqb8y?k zU~cp03Rd=uY_jzxb|aDKKfy}dHk8TXWyz%qU9^+j*K;EdxJnfGX{2pi_EyRw7DyK0 zO>)D+sjSKmA{Ds;_*AGnjuBMb(+ZruI%%BKUJKGZuW9`Lx3+qqPSdUl4JGfAEPUZLPYq z_X@uC-K}{8=5chKpll??V^izCZY}zrOg>lc&NW#xnXixc40P1g&rD|A{$-rCb<6ut zUE7RSncGPK>3PXJ)>vhU;Dm9@ErjHVM6g*ja#=3RsF#ASyQbUOno-E-_oOsM zd|XEJdpGHcJeVIZgBfc~OqnAnSY2ClCc3Yt2Es1}rA)*u z;2T01Z}6`1qv`wB*+sL z$G5|Opu-KD*a$18N)j1jIe)G6W95|+@Ody*y11GvQtO;_@aemT%ngs1S|BAiR*ux#CK4@6Q~Oi*qT*4ZW_pyk+i&r=f^!+Pyh( z$Q$}+lkoe@)T<;90VAki#KB13QN*#vD{wx?1uRzxsAhZ=!F}_(sSWSCH2)MQlu~>> zdtKTk^Ah(TQR__hClju*n3t0aq*U-d3fY%GBSgxnjK|b@INVlD61l%^CD^@tu_k!Y zbUj65e-V?2BF?*JUQ4!ZFrlQ@Y~PnCyy%oG@v(rYDfvWqeIaO&7E3HOxJlQ^c~idB zTL;JgV|nj~y3KIJxI<{ifCp)F@E(wliwn7a2VBi*E8;IS{ZX5xwKB20cF zDm;fX%EqD3GRfcX8Sp z&Z-aQneTwlSSuo8qwCrhS?11}wzr9aZwwm_u~r`Qi+Edb&PM%JDQ(O;Lga7y{$@8T#6SS#2=RCxSrFM1e z?VGJk6O`beJo_WM6r!VNG6C5#^|3)d82X0kf}sev7Qx50jJPD;!_5?D$9WKg8D(x* zT#wgt)F}YzQSq8x+gV1fPin|>)*?>XO-ekAy*Zd_s_LsuLXTQ>dx-{xXqQIs=YJ6O zp6TrVd=v}do5#&?mlEW{=AP0H+*9aVRWav{LGWc6_<8Z9$}6AoX^HYdP?i`vt@B~a zwr*Bud!h+(Hz->FZqHC&FVn?N%_WpXBtF&)?DFdeA)G0zyI??(_JpZSyVr2n=2~4Y}^LcN*|o$IMGFZa~X@b(8Zo3zC0+r2@~4RuE-Tw za(rmEjSmW;IBHYlJAjZ84K=H?g!sz8=B%SH)0JQ}G^DBL|~vD+fG>u^$a$a`#c{7pmb=vK9h z_C_TBNvrbif=1E$@ysw?D5HGaL>#d{yZsFIqF)O*td#pLYQDPKvRdF62b7s)vj&mHDf)0KKrvKd)rq2xjYzTtmc>?I- zF2`clR9e)yd;dA<;wa8;*>P0dk@Lc1+*={P#4PY~6z3t0XPNU8jGxCG|C$dfOD0wb z6o5=4i+4r;{%GN^$_&5T$khr_YlUqiwk2mvH5pwb8%)~b1eV?i$}0pzO^uswQluHv z?1MavN0AYu;stzkY&V=m9{X{&LUcdqUU`jM$+Cv&U-xK%h+R}TTR=JAHGFgQ+^oP` z&dZl-#!x@RRd}+_nlNal&eYpZ+z5fHz*kORHxNm4vru7=v|T*V*NYt=xsW&;Ozeoa zEbKJ(M-CrN+&2{wNr?6>Ouw$GsB(QSVmF)jM6qdePo!$2RfBcqZTk&U@X0Vpw~ z3f<=ZdH#K-c(Qz?M35dmzk?|}=Cir)J%C8|r#PKnYMCT7IG}t>dwP;dcS@t0dpdKP z^t9VXE_n*dUH+Ts)0`jS?M`x zx*3?-LA~+#~iS~@JYXx&0OG)AQFs|Gz8VhEIiDwrQZ$bDs3C!y$rFPbJCpE7?<@BCyI51ImNk+8aNVnNhjB*XlPM3I zH3H+$gwBOTrL>|&?&aJ}cm=M0rRVI`5JX~OS3KYClCxA>gim%L&8q&)`7rD-F65AgezZqM&fB z?SE}QqM@@bWh@KJ;v~=q}w?@$3=r1{vo1=p< zzYq-jEu%_i!u@3zbrAvSCFtNVr+23$xyF0%@kBTM;|2l}tvSfIgnFbH3{{Ew2ePMq zn}D{8LE;*iII1{-I*>X zXqfdd8BuO8cLCeA!^WKw0tu3w=lS9d#%*h5rQ9UvJ0!(yBi++>^3EOiSj<_6&~HJ_ zvC4nG983Z|zhCUOb)uvPB*;_U(jzVUsr?2au{5~DIb-amj z5d&+3?IC|b=rMv6h;7>+u9Az;RX3jSRJv+MRG5y(NSwasa+&4h501PJ<(15`Xtz~F zrHE<4zD{5=ZSb}B808m`@%-=eNw2p`1cvW)UFC{46ts#)#w&LUyBcZyZL3r^k2u)j zWInRw+BdBasm!cG6c8ac{qN3VZ5WV>4(<(-G&MKRs=oNXYwwYFxSXG?NQa>IBHkpS z^(u#9?B)~iRPsfh{3MSJ1~uzT>#mRyNG?iHdR>M=k5!lXIDkGw(l@ub%YH&u*2Bq{ zsbyBXjpL}zN~=Bh=}AxqO70-pQo5PNPqnw1T8Z#4c9dK2+7$KU7mIH@_cs;B3+Bul zt{k}+`cf-ssHV-YUjfdgAL~=;TDs?M92nM|Kk}XWzqIIO2A~htU%Z6=^TfuW?#r?m zjN(P#|l;@=KwSFjN@ zp^Noid``Z%VEQjC-C+7l57}h{ONa5pj8h=dG);%QDyj=gY5UY4{rF&D=Zt)SF1nFt z$)AJLE7*)A`pjXVKZ436xEU>IeB!5sv!Cx>Kk%f1VawlXkNU+ck6K-~K}k$Owx;a_ zohm^b@4^Ylz&iw_&V@B5I21wFYefsftWnvGpvU_|Kth~-^W!m8Fnx7yc1C&z`OLnn zr4rq59;;SE&ChK=Ft@I^o=V?hu1TgRAO)5z0jsM$&59_AfMiMt9h}486sF%G`xjAe z`yk^Phx-?#IZ9$!f-|xRY9Yg3(c&}%@=meB_2p|1{o=zk4j$`2KO{%^H9aAuoT$zH z+nd|%PXRX}{3AuY8JzEE^O#ezOHnVVTtIj4ih}(yEv|NdE}y`6(H#E0X0>NiWjr)R zR*WN#zj*_~b*;8jg>b6{eMj63#YXi)TC*tfg~`KCh=i<(Pj?glYgS=Ol4KZwOI#Vru5gfnt}3iN*A z7x2=?zZD*wedJ|Y%80<#KbE+|J;*xRrwEZ1m zja7d5kT25=rvGH8zgV6J@Zt=r0QwIz@;tw@Ow3Bz6j|Yy!SSqruJA>m^VHk!+jV7j z+24y-?k>0Iy8Tq*3>}=`UQ^vKf6%LhN=5As08zNKt=$-ui;1uVqBx#Hnq3k+CXQjyOJCigq|>s`_-pB}nv{Qq58%^~oxsN}AE8Qw zQqYnP-%4}wlk&Jg!E8ubrjUrT`6~Dfki-=iDO{`q=Zg)+h)c4HG6zR)I_(u_3yl`4 zOqtQ49ZDBm3X?jGi-xe!A1^Kp)sWk*R1>lC+P=bxF72QB*nf$ zJ@mau?*@}i5j#2VgIPPV?bO|uHXwVQ0va2V(rLSmkQ|cG4u)EG&s^@d1y~w9bkbym|B^dQ zp8$BXDFrip`h34Fvd%NpuO-%wJ4H+sN0TVkB&CuutyB&8%kbK|=f?AY0!vI{-z#fm zK9YjO@4vIE1(}cqOc@hTp;|a8ySC{4hyna?r|rd8d7GRm0B#VAb*h3EgSB%8i(3Vj z2*LVeMPt51&!4ImP+GWGp?HZG{Dc{-x?@DGO{#^J1Sv=L*d;HhP|X#{c#M69$_@|f z;PQ2D$s2c=`t@8^z6W8(gW^nWkUr@&**|9K?h|rJR-{Io5-uxrh`)8&Bs8kJT8X`Y zcmZo;y$}@h9dPT~$8JPcNs{rzBY#!tcALhH&qg`T=Q7V7*s)Z!B}v?MHE448BB5iI z1Cl{~JrS!L-t-)I-FXwpGAuqwa3>?UOiLW2(R2Emtg_gSKH61|CDZNZBy_|Vn{vm; z6v{TbSUgVwk&@eJm`s2M9-rkcs8lw&lJzINF&T_FBt^`uyztWNsiSO!AqObf7-+d2 z`Yk)(8x_-SymmO#>BL-{INrWEeyWI^DkDWeAxU}26$x|ST@H5u=dyo#8>_rCPvx{B zf86<^cY|zXkN0u;l4wyEeu6zm&G1rrmSFHw=dyP1U<|tOJVeV=?&(eL5;B6VRm=U_ zA&95z`~1BsKagO{;CbZb?t6F7^TkkIWC0jG!AC3L+z*gr+G=#Fw#G(w5juh{-x*}F?<+y6m0Nij3?=Ms zo3%02u%AzQ6+?R&>ymNfPv0GR5?DmkIjjD|#SDfG(gQS^P)?a$ zRN2>PGPcue!G)QYX`An?F#hAxhEl9y5q1<(;d`P%ceRszIe|``n^F2@f8!oo)Z?^d zBVV2Ny3U;Gc-&QIq`<3Tprk#$7Lgbph$r#S#fMWnNk0p(bLVqL8r|DMfM)D2D-5RB z{;2Pe~%~*Vp>IXre;JW}Y0M ziv#_?6i&!a4kV|)E^#RBD+}}6AfryB++clTluaOj^V~=EETafufWf`&*&(#I2W!9 zA&MQF2G!*0(K7l^Gz01NyX;sKlT?dvMdL)b{W zJ{E`N@fbM|!Gm067R!MhDeLyBPzH&`tSb6W4yk?%#Q?Igkww_~M?u~ZIOqp~!3^gv zSbLeRCtbx3VeAX|(MyNd_E!z>`b1{vR0-c$NDP~h+mVCroBJFE0M>|L17D$6x zQtDkMIF7};1pJ@5fwpEy-;odG4!k&4nFe8e{-w61AlCFS0`;S`sC|x(>?a$GXoqJ97 z$tuF9ZSn&HYRJtpD$oJ;X!*B@;*OG!radi~;NXnZ2_2__M8V#(z3e~6LdanE29)IkaiShY{8~QrkjMS~ zTEY$)0im*RK8yUP-%+1jV(?7pukiMvFE6+qkVoFLd+mn4hd8w9fn~!R!hsl<^ zel7CJ0DaN6 z_Zh`xtY)dVv_cnc5dQ~vPaOm6vbmO^#R4_~*LTb@%BEH**4j9vh;GV637$&sB=6`) zS_QbS3|l#`Uax`ix%HEn8)ILxi@561hbOOs*7%(aGd$~LzH0Y?3pQLNu3}G($Yn7I6vyGo({sSGz|wrjn6?7anyN zjLj2}Tf(V2#jSvC?Npg-T0tjzLb6O40ltW{>YnjpxYr82*1Ca)9pFX(3W6SgAbxF% zIsQF5DmYP){wrO{i(AXyN5^?dNiIM?^~1L&Fo825ckeP{&#Ad!C=OWWB^rmjQW-le zSe-X!Fm$1{r&`_O?ZINw(;o^eM_Htx(ndVWg5G|AB(FqctVkH((DgPt&OSS0TDBh6 zU>9S6Dir3Zs4b+*VPZDy&M`kn2OquK>@?#u+S~8t!&1?bktd(RsIG)fJwGa-V*i=E zB$!8DSGwaJ6?4W*V9DGk%;n*=_UGDGcM|z?ae;hmgAa3u&WP!X)oSx`n8pI=~KXO zZCllapcX2u_BHp+D8ufHifwKyq}|z$q0PfEk|O$%^yZp?A6Ig?K42Ex&<^|`iC7+t zHPTemf~!AEg59Hm_uToPAA&-z99e286wE2w{7*Ufzu$x*+0HN z<^y$O!XYE~Rq3~WEgzTvf>ZYt$PoSaXKsIb@;7TzDDg1l8^{>CFf5CJ(;w=Ww0G7V zIWL&?+_=yXjbq@i@(NLB#fw@c4+lfD>?u-MWG6`Lmz&-1!?0B#u71%l!~OHzvzZX2 zx?9%06vb2|ws<8qZW!f{wMy|Kbu)GM?0F4y#~1?ASXY#}yCsEx(ZD%wLHz=}>nZei z0no%|?uHB-7Ux|T*-pe?j={LYuu$+{i74$rv!$282JXr^1^rGVxb!mtXByPLkl7$9 zvfuPnHzxzQ%pl^l@QkMJ8N$ot05)DJKM!K)m-!@~-?2=OIQ)U=79z0pDc=1H10CE; z@X8&#LW*KAEO?AXMu(L~mHIf{^U*0UamFPV&K4)L)xTpkfs(z+(M2Ohj?5axK}m-C zSeI?J_O>{p)XI+_$<%6Bs*e|UbRRQ5MGtr9l;*O7iJ0x8H_t;Z7{+_gjQ&6klg#KZ z`r6H3qEZToLAC+Ov`bAu|JqesG>Aq9JB$?_0BLHD2{}_r!*tt63I|^72ImXQWD?p6 zB|sQR1(}}eI;YA;eV7u@Y)pz&wKAjvj5Yx3T|cn-EU&XLAC2wTC zPagjvg<~Jy1XRXk-`+_;E=4Y9ho*MeY3B6ZDg-YwB!$l43;V})}_@euP^s4a#xk6xR_ z$LN;vw?L+3&%cV++Wjg~RlopJ_wvDGRT{zSv_w>h8D2|`y^o)TW2udy)3y#>xGX26 z6OGF)kew zAIBS^KD|{WgKXeh%ry9FO?s4qJ?x-c-puu%IvqDF(_}Ir z^4#41(ptSWUzAt?NTNJcFe{tZM15<%v86SJ1kzCtnWJ#!BTg8kA9l$E2q#16)K3Yk zNx5(Q0sgAQpuwum`Jj1o&pF=EE&lZnjpD^#6ZL60c3E_?BmAdADR9G>_%z7!M)T3a z>xU_4<)ggKxOm^q*;>5K!e1D){+=I{=SA%_;B&WzG@uKjtQ5gi!8ruu%7VZ4+S&nT zkYn1Kfgf0KJ{U&#y1O7!|GnxbD`_#+L*P^}j3=QJFl?ucYIfOoI~zAXVZI*RqDBkX zTi?#+e6o5~vJeubl%?06jGic*^G{B|e7@AoD}^&z=fnLRg7w69))fJtNx)H__(85# z`8GsNsdu#SKlU&^D(riO_bn7e7YMP9L7#J59~ijai{e_5GFX$JdCXX%euPlMz$<*u zfL(L=elKiX{V+#JD_pelUHJ6=i>*ulB>rqC=KX!TL$wms_)Pw$JUG85Q5uP6y6)E1 z(@!Id%K5$yP)%M~5A`&j`JQGs_d(i{1_OIWFf>^B&0mCh2Px#f)>ZBjalr1gq?{|) zLV`w0qo!KZf}lmE6vpiDsi>Jk#`R#>V$Mmt>_eAav>>~nE%OQ^)I-xf{>W+}$RLJT zlfcMFBNY8-^$3ulIji4@8-Hb9qYJfqC(vXC3wBwo4G@-g)Ye3qPczw|-l@qB^l}_a zqdjRMKojle9=@nKHbnE8+$8%K`{p53^$6V7C9!EfOlJBmdb!Mw1**E3KGkV!y)KGN z%kz5oi?v;nE4sfs=i}~&%HcEblTA=^4tEFC$8Lf`Smt$3Jo*CMr1tG)-7-xv!sH($H)WM(&gxb|m_JCmFHEtI_=iuL%0t zJlpnr9p$XCDx;@Ztm>*?$mqPzRlr)ce{Td7B7`_cJ9F^&Uxd$j>9kXfc*;W$FppFF zUp6)A6oPqA7#tYi2x6U?ds(=R*zNq47!=%ZYVkLTgi-hZ7uJR=Gb!@i0glTkt!ib6_;cda3j`F`GN`uZje7#6s)w^eOf|IAL z)jB5rm)T0xd^uEg{T%kg|BJrTkoRe8gFrtCvLF@5JIIZeN<4)Z3lgW6 zuz9v09WSI+qlp+ES?nqwsryO;IZEAWfPZo1N#7|$-YEck+?goX`l%Cs&#YWrRvS4^t9Gh3(E`r9O8h4s-|(bw`f7cQz_ zUM`ywmP!?^4m_b)`hYVBgKB8VBbVE2#_6N-ZwVg(IJkz*onJaOJhy6MKE zt^_0X%UDb~!5LYxb>AJBdY*;- z8DB3G*2iiuYMBTB9cw>xn}7CqJ`40J4v?~`cx4(mr6v|w=0GMqQzI-vy6^A;5c`ct z0Sc?*%F( zy2ARCmT91W3k3KWs_#@^e^m6P)2va?`$cEYx~+wezgG|Rg|s84Nzddv2~ArRvJX7V za~BRETRY;J*DO0E5BlxSfhodzRYeoES}F6Tasg}isrTq##Vk_t7_Qjq1ove%uZ|YnDH;@?eYZcQxAdO_6XK6=2Y=dXRV=&ege-hLTl04!<$>DwzJLNJ(8f^AN2iekGiO@zqml{01e7t|jA*dG^qzdMQK_@woQ!rO$ z-VIh90U*5k=Zm|&?7&tWQ2L>h(Bv8;yKz$H6riq z5)K_L+&u4fupN#2^&&Zc?+J8Cy=?ss93jpfjOFQn-F+i+&Pa~eGW5s6wHI9@+gvT~ z>MQvamiG6vO#;a6v)yahEDRP7W1e0=2&-d0DsrSh=s(M2G%M2{j5O_7E0#T2ulSi9 z)Xe)F0!l&+|vcsi?W5Owu zdcr(+HH_(lV%)TTt11zm__geJl2P^5uV^}7{33n$mLc}zb~Ik;9a>OiqEi?0pSiyy zXVdBV5V`IcIR3pF;+6lM2le78RZSNZ62_JFcn=|3rL4jxVDLgAfk7bLUKguf<$9;@ zTr2Rdq@>Irto)D`F*%&t&}Eq#b&CVMXSHSqBY{Dlm#Au)B6ms=41oiR~U-!l%Fwt z_+6pNyCpq+@mH9o_bX2U&GVV*PwAf_B`(xLLLP=F5$^0vMiXVtO+1(mU=8;2M7>-7!!mJWttZ66}hj49#p?H}US4qOj}zE_x?s?BIw zMXx(SA=W-%Vk{I&`d7^S2zk#?EGA%-H#l)5!L0(&@4mFFH>h7YIS%CPhxS&J6vamL z4&pbp##2avz}00@pY(17%v_TBbFR}h-i-7j*1n!DO@poRXpd(1o7>PY_@|QT`A>H) z^zYg-*Gh{2DHgm-R1~){ZQ|% z`h*VTgb|AyzpYV!im$L8xd*(l5jp-VcDkQnSG?0Ycv_pr-p#QrInqet68MA2Uow_d zK5;DH%#~FO+iL7up5aDz$mCa26EK==7-`b+iII8XhVVI^KGNy*CBVL z(RYHj$d+AZ&L@}05*BCFH;SfgN|LU7UPqh$=6*_Hgv%YQn%lx9rvF*GrZao^Ymj$; z|60V~L*V5O-uUPC&8pfZqd3$!gxf!z-c7kF0cYf&LimW4>eNQJd1K`JH5sz>a*4`E^y1`~X zaRd0g3%$B@Wd3L}`E!Z=@CsRcIYns@AG0j?mXOiZ(YtL=9iK(W=DGd`Sz0*T)qv$h(kQnVRoX`%;I;)2o}YzN$#mtyi~XK#Se;Fsi)FLO z7jh#VR(o&W79brXQPeaR7%A|+6DI{> zqmrDO64YGUFD{H8NJJe9#G&V|Tp;*v83O2+9J0S291}cH@d`P@%9){KS?$M8wEbau zYd#~M$X{*-e{Z^_{iC@0YL6A=@XFFWDG)JAqu|kNrC58&vGmg9PoP%2@+(Zhlb)B# z$_ju0=HWB3K~fG`Bu#Utcach68b)1bb}w#Q$jI8k2NovOP=d>eS? zxg&n3!FxiA)8=<1|6YGNa64ywBvDYdN$}fM8p>5{q`CV&pZRZb2Q+mQd#0f<&w!Ne zb7%bXLc*>T~Ah4;8G zp*9`5{nf(z(>G)a?-0^Xy$>H!sMC7{7G{8qegW84C9Qv+&;6A0xqC(q7Xxg%eQVef z;ghfY;9q^UGWBc?UujjqwwbRV7kvAx3;|hW#YZ#$mqf8N*}S`^FG-pYG8zm7Yp-K{ zW*&TJ<5dPnUuP}qlmQNRR)9GcbDMwh>DmShoHxg8BFMoebbL2SK zFkTixud$KU0Tv|e3oie*@iFgsIqBqtR0&dgUF7qx*jqI(!RdEhDTUw2A9h)AMQG4( zg*~g_MX$z^G#jm}S8=z249_BvFFpS2af`sxW#20AAv||(`cbY zxX*}P)x#1;XuJ~qz41A>sy+!nHbV(peImu9v~geW;Z>gig4Wcd_4%rkG*@);+IYSy zC{LoybR5WzQP(dFtqL4=f(R5?DVgrHotF11q=e8m0h!Dq2@}Sh!*;|GsNKQ2ZIk)a zqEjk^6!iIhA`i4Xeg`2jo>$?dpm4LU;)F!K7v?rie0Rp0pl-l67l?g z$i=Lq1N@bW?SGS}OjyYX>W>lu^d|;Z!_Hi4la$$oW;S47VvTWSA`We4Vz&PmfMx!e zfNh3%0+eSNln6ki^W2>eDi2T7TvcI{I^)sIEoRuV(Yg8cz<@zFd zwu2Xwe&-mz1?-|I47`(%prx1e{tTPne(V>V7c074RjkOs`A;Z%nHl@3VizTM`!(&I(SrDf4;QvrKm_Hy!FBp^u) zG&gB#`SQNKebAuxjJU36IIpm64VDZob)0;GRVy&L1AW>T-Ax{fb;7E8?U`^rV}@&U z{ai5Kbok|^?}VHaFRt8Q^@df~Fbip&5&}6dc3iaXse~tLefvsag9WSGPOqULR#OMu z7Ql*|~$<4t#R>s_XL*x4c6WFwE9MzBa@G&eHBAr^I7-(JbM8yi?`G!%@8( zfxfxj0|vvJe7ISzGe>Q?`t7%sx1o*0j2B3wk^}j=EM2mo5Q$wbR4gx0uB!_7E!6j& z{C0A4h~fq7qsot$F2L=@M#aqa+S_xI!e51IetS3f@5VAy9&~zvJTQ@uaiIq>?oRi{s7w|$ zqxIuCTV~7h*$jqZf%IYpbFbMS{BmTdNtS)j*z{JIIcEDot^fX-J};0F4YUp z|6DQ5Mz76j47`$Hy`g`!1P^9$%Ai~HSUl@cy3ugf;s2hX10-$eT*nc{s_lbo6eBlm z;YZCFC_a;)F1V)LzdQql{1XVk8#CEbxATz*<#R_)UrNW2uk&-kt1wG@W-m z)&2X&5oIJ>WoBeVGO~AOGP5Ilr8vntc1E@%Y1l%tm8g?FvpPbyW7XjhnF(3_uG9Vd z{&PQi-1noy&FAxeU)S||y`I;mT&e0K+#LqaZ;ce^+izZemN0|D@TbI>y$M0N_Q6|+ z7VFIPXEhy&C7sZTjjGMeLE}zf`y`meV(3$#BxAZ{K`+0T4@2ER%_Jh?8)V9#=JUW! zR@z!|3jtHZ8I&%j<>P?EV{5MUv_&npx*KCr!$FlIf9;>4(mn%CGV3_d`g)V_f11$ z(dSOX>TpUE%wwhow{bs0^q`uP>wQ`IP42W9Iw(1|HdfMDQCl{(=QO7O+Blr3KIf6t%om=Oy*<@)5!9?w zero$BGC9}wMGq`$ka6co6!u%l($ueN9`Qxm2o-bIqq-&3NODISIbn(Bf9dN7V-)OPU!>;4T^Q^@;2oj{(SLs#Pro^vH_+fgPR|zk3Z|{Nj4%* zZx9|-Rm;GIwof-;pvj=e8z}Fx+c3U+-(&_Q$Q>Ri`Gy-0vK6ZSEEZ{QFn^U4-DNCZ zR&l@K((B`fLKxpyN8%b^!A4Q3R;QDje)AF1|K#bn2CUR$K>`4N`bfmjs?-d@ zB#3EY{-w31I|(7Kr3lN|k+v*xErb>ymK*Qh$j%x}bMY2a1N(F*m^8omouiJGtt$to zod??#{9``%!}KeEL(+3z9YhY1{Em-Px{-{iuB=qAUbn(#@^7TxPk;L*7QF7kreMy4 zA4SPUi@Lg`0^Ve6rbo3vco4*am{RgG^(_9K9ODf-Hz9SR;$1%z>dTk~!q?0jMC4D0 z#aEr~V3V1NOxuTp)aSm!l0ql@mKeXnxwHAr!P-6*0={~T|H%`)gveU;as^m!l0Gj< z%eEK)XvbcsL;QW`L}q7?ipcsF(WiVoUuQt?pQKfJ=A(WxWXTFMF72;^;GK}BR+MnV z^GS8j>0f)_VixKA2fS!Kq&;Ssy%fxNKv$6@Qhol~$h~yQAM9f#mdcLi!VYE@frNI%rdwWGH{?~|V+KsBEO1A|mhz_}FwBE^|{dse&!gyq- zPi|TibPW(@S{*4~n3>3u`uvPEG=dKI$2VkbgS95@!N>HkQJUMCzw9kFFn4XF8Lw91Hm4QTdhl(U=i@6?(s-$%kmGp3Z>ff_sp8TwZG2p zJ*J;gBHix`i81Q5aBTT%E6h9OFI+f~{4%?3lf0(uDska@cgoqai4Io4SZMwT@|*s3 zSe?vO{F*oH+xsc0y~`SJXt}2jytRZkvX#SfihM%RfF}4?gYD=1>|gjI=0nsZM05SS zSzm}z>lLtL3uBxSg-gh(xSoO$iJgsO`yIzqG#sdzoioc_%CcL*<&R{Cge1PLc6aD@ zSdXr?v}L_!$PpswwyDG%KBFp_MjElP^;L^cCz>!K^k*)mrcY0HxUwPiy2?ifH^+}+ zWbqKOmKVe0MeHVr7FUZ2gYJ4bznn(5bIf$Ruyn)`8c1fe<-`X!(=9)rF${Q8>rVP= z5`4#1^XjeZ5FK-<(B7zb1c1vOstdYjyUHAv<>ff=X~jr*nWC_cs5+RM3EMxdi)O?w zO+1R+XF3#ODk%kPvBy=hvH4ZE!R0TIDHBhzGhlWX#B!}bRPsTIDR@)IIqhhpStC)F z+$SDeDn_Po^(3Znc=;$qDTv=i-J?tyPAzuh#Z^FFZr zrcK6fuzt}`ChG8N13O|Y2uu+;o56oy@bix#`3PsPfPngVl>cMBV7e}=$xoYnHUxKT zsH%PwKv-0N8nT|c)-0IwA%(jtsq{}yBfA5tB_qSgYVdQX(EYUFb#2LgkHJeO^|ooL zgk1d+GNNyxcbV04vXk*>r<*`3>-P;@E$`lL*&H>2cpPozONF+# z`MobnlAJ-2flK381nSJw(mqGNOQM6y!hWwjwxhk6P76Is9avXt$bM&ht-0s4V(+no zo%b1izuWwj5Qs!?`qBL95Gs!aN(NM+Zj;uk1v!_b)&_(Gv>sI^}dtxX*GH9l=uRq*}_Jtk?Pl^xS=qAf+hV$&7 z&C4BDqf8l&JCt_47yBJ23l_ckNF2!b`N)4_LgvSsFOKH8F!WxCe#q@YzE=_9huu)J zZG1g-?oKwqKqhGFkbP^Z&Z8rbav zXvr_&AIch$&PgJ9=}}!NT9ULVtzeP27f^~T<701Z7p=fxiuOVxv?c`{P|xlgV0Eg@ z56g2g#XSlv1Ub;EhxpF6-|4ogX=uB96kuHDel27v;t6=HZJ^P?ZQtd_$X8E3BS4t z&Iqk0&s$J6DS zw|?G-@UYv0yH(oVZNCokn;nGV#-I>Kty2yKLhA!BkKeC$qYRi6-YJMVd^m$*bRZ*R z)S%*p`>_!0IRM6ABQI7qyv9f;*7Z!P&|Da@MOPcI)TBIc2Y3iL7--6gB1Cs3sX$*> zt_@XO&G<=aJSizSQyEbhvc`=6ekr50PmEN`)zE3vkDzY*H(0VFz)JN;Pr<(!H73m&5(L<>Xg)?QBhNpTHfqhS96IS&%WNtoVAa>^c~ev==!@? zAFvK0d~0GFsGggt@$C0SR-Nt}B8(GytFA#RA4bmKYiAH1mXFEDlo^lPCM4Tl$C6cBSh1yqiAUw=9LuwZ`z&`}8 zj@O*mh?L5Ll+T5)!}NaSRI{OrjrTa+F|zMFmZv%A(>3sOFb#){B{rIzP}ao2asK&9 ztnh%MC>=9*+^t5iC8dm|3sySy?WV;wYn+Bc-OBX^|zlcw%f_7vK&&t5e%Q;*>K8< zK=TaIqjY1^%IHgpX;QmTxyAW7=lc-cj3yxwNe5Ryor!vfHEl(_84)u+`nO*LwBZ5{ zXI@5M5eWd7+a_<`&sA;Kq6PSuD4gy3YPZ$flWb~iOy>gIHt`1FArOGyS@_plx(4>^ z)HA5V)Em^UWF(}r5XFOOc93>24?Rom4F$qG`BE$XNX74~KWvT}k3`<5jL{*A z7++W>1~REILtZCls9h!}%J+kN{@|QN+m63TB;3uZShwv1n=?=%&+ucY<3qjiCLL3J z%ef${){-7owqi^CC=mSsw80B>tIUBl`|2t*;H*a?K6(-}IU3C+L{zs0O!}(BSc^9E^yL= zx+p!fwjdxPnJ9QZL#R6GGkrtjdHDFG&7Ek|t4bMOU6L{NCrn3_{4oW8_{%JpKG`Lg zCu{>njC`d$gSMB*7Zq(6h#N5+k;O`S@{EiYyJ|jmCO^Y2mzc-dX*_ef!`3)jWr+II zAERMJ=w_vl3iQEwfl-7K-)s)(Uyzp41MZ3z3q{kI@W!)|#+X}kH#`fCsX|rvPDi-W z>J;=IKBv^--iGn3+*ct&XFJ5}jeM@#a}Uua-1r^w^bCP8v(TR{-+wQ)>n!TGv$w;!I>vAm2Q=NwKxwy~q0Fyc{q?&ej#}56Qa#L;eve}w=ao>l|$n~M@X#UOla+Vo(J(!<;Aurg&MokWjM+KUWMLKHcL`U|Z$ z5t#s8hVp2exhjGxtSI$ zC&$4nXgoxEw8ntnZ)AT1_LQd7f~S5-3;6KC^~x~k_)sD5^G9ntJZ#kMlvnnl2%&_B zlj}kf>TIm+n|$DL++mg7nv$ES#XS1rv3)6nM&GZeulv$@ZSyyw9Z53kUD(OiO=g9b zO*Z!A1m!iwU=4Vj5lmu5aIqu^>FO<^HOew;EAMDR79q`lTJDcA1>#C9`+w*E?HGd9 zt;;kFi!IZWCr>EJIa9DDJ3dm9X_2NE9T4{n7Kg(HT~ZjM0*j{^r`G>rM~Z(GIN z=&?4&cQ!tBP6oJ0E@|d3M>d4VBV5mm+^$<$6E&5P%&6ixdhTU;Codz{ByET^92rcy z&KKpMxPLkNVV2qU*Wy{ipPILfcuu!0rqeZRac?NH{jVl>-(B1)q^WON3`+AXEJo7f zeX6gXv?UMS%s3Zx9I&(S;%w4ou7@IP=0@C%j}e_VrQvGbG(T67L2znaX+Gq4p%WmS z*Cneij1_zQaFh;A9=^Xz|DUBy^n@x-jqBPY)s*Xv>=WUiUOkPNNu+PqFIZ?*j?GyOKKI_-W0H~;kMcnpJJXq zAP+!$0WD1YDO^V60j8`}z$0sVX<4&n=@F=5(+=MhBikf4#)m(~hY@#v{}& zczE?#wW32$JW5YvrA0_H-%bv-B7Z9iDfa80JpOW?+14i=eHy+#$viXMl^YC+;(K*Y zmSqXJzH}kB=8WU9gxl8NAex3o zBlsHUK1^mBvxp%Uco|cY#G}?+AUYNk`U}%p8$%|QsmZWie+B_Ew}rjVmts-`nhj~NFJC31+Kv<*c2Mk3KvVK2Xg)}N+RkJHIk?(BDSQg4}ZtrT2`T$Z7X9E7wwP1ru@? z5F=B(N-{ffNzZg{$X_-Dv9tIZeUrlb&PKw|5Pt^;hn)fgQ8ApKo(q%i#cPU0f4;fE zua`=0lJ>0Qo2R6ZoEU!&PIqC8SFRyB4-98#f`56KMC$uAR2<3VI4nzGNpTSeFUO&Z zfE_Q}Z~wM%^%u*|St7K$QonePd@B&V__mwH;rnWuha)4tDL-7{WAm>sLGX?MJ5g^2 z74{jXJ#g~H(zll9oVOdr4o)Rax_J~6NQ&CDq9Ro%6=oUOlO(%49M%v#kF5s(KD~=r zs@W)Ga_n?Xqz&98Q^z~CoVwsN$@-H;yt8ah$~WpC*ybN+6*VscC@ z#{C3pY@!2_w#CZ#3Z%Bw-h+f*9N}KjR^4W{*nzr$`FCY&d0ut!8*?I9L_K+4Ul$m* z_M5vqESWN}`Ph7H+j8acJ7m52pw1Hd!@Ig9x+BovJrrKfW=n0+`Ope+zD;FkOI{+# z`u7!d>EG(K@RRm2rk#A7ZS+!`gzWC1>L9|-svS=UhSMapbpGrmi)9%9pWXB`hsn7+ zACo|N{=%kTlC^(Q+K4J-88OR-3YD>GL+-`qgYS}wcQ|om$#TWY?6$}442ivrT{z|* z7aff*T#k0@lPk@Gh^_n2@Va>3!ED7(*l9_QT4ODO|M?~OvzW!cD(bUt?tJWTbUN0T zFm6zsUYv(AwK(%tqY-N1a8CM(-!e zRs0J^TpHUH*rL^%t8c5}FJKz)*rO=g1`E1!a^!P=*Mb^V%6@G>^~1`|SC{qz{kou3 z(KFR9pl)&XeKVbl{cje@K@v{m+fOok;lMlW0?BNq=@Zej(^A|h{`dNcigEruujkIf zqRE4aD;$>SwScnFhPkFP3?rjsZih`zki1R}3zP(xI;LJjR#qhP!ma7iFOnQqMqy57 z2@hgIfu%K?x8i%PGfU=Efdoyf!eL?ucC+I;oww^VORrtNn4T+odh8`S9u2EfXI59W z>)j;5vW9g!!!@6YE&dS_XOlNhJA>*NF&+S42?eZ?Y^v+bH2rvI@9^!@jdxSn#q zPs_ExzDZ7lj&%G}BIY6vi3`ICJk7v$Qv#YCI$}KeKR(e?qx)LEi0ghRdmuwt9 zFjpxMl?K5r0Mvk!FYEB_H2tj#5A1r3g>K141ve!@D0uw@_sd5>>PhJ~)dR~ZG#8CqK{Swwp~DUz7kQM3 zzF0N{$*;!U?w^geOGTv!WMIMoNp}#t`Mk>Q&eOA(v@~*FloE!K&&_0JBrx|DdV85~ zH?(nOy!W#35KhWyg{h4`(-Hn_)iiV)_$QTjRGN)rB~Q9;!^^;H-h8UaHaSgRL$4QE z-##zT7x}0*c+8DR=clOuP;6)cp2$7C6>z7fV!vBKDrx;*$aa<6XrLJcq+8*Y*=o%P z6&fMcQZq^y2*>uD&wfefgRfDcvk(<&zFC}7HbkT5{m7M!zuZ>CyLE|)d2l_x+p`55 z;PF8&A(T_mk8PZdtg9ee{LEVGkE6Bv^+jL{%F503z`-=k@q!R`qVg8p*JFD!!i~SL zL_rwWj0D$!4(Adn@%_*1jdIQA9yW8z8&aO&)66%&r2ye&)0&@TNh@z-WtC=mUPRdU ztbSf%;&Zkh=HO>dmV;8TKp)yq7+n;waR!xxPG0y7!+1x%neO=9@XwKjhg#e6R8>2g zmCz^*t}6*Yx;(z%c{d2L1b$=$I3Drgd|fkYs?p2oI6X851#!kGJSRL)3W4UFn0JK>?T7nFW==A zJr_Dmd4>P~55ZihR=DxVP;d)7$(uxSpwLfTeMXCosBJ1>4H+9IMw|Rx1%Wn6=e^!^ z!0{)*b1Cx!8E84XI=cNZ+=hA0waf$p;YSmqppTnnVa6g(v$WdXE9I>n7~|TfgwWE{ z30EZ#^4TfR$K|p3cr{dA%ud_y`0Tivk(%Nd^sVipOA$QsKCFH3^UiV8wdFxn_^YI+ zBXP=o@__f7`V-9$3=vvH?U%XnBDSEq)g_(bQl^JXjk{I%W(OM+%*}ns0}vy!Vc)oK zV}?E!;0k3pDE9!Cm-IMh`=`|NV4C!lcO$VOqfYt_?3vhZgQT#+e_p92b%KSl)Gsxx zFuMKz463GTX|=eL*umN7t>lv)KTr_T8$XxNV2!9wXT|%_BBhuA0BYd(H>4H3&2gzk zAN>cWk<=xV5JY$fUd0m4)G#1pIR2D%{ZcS{Ce`3b)kn-v#Yy)_NOAs|B^fw`N59{G ztNupDqLepLV5$4rGpouBT!@EJ+ONcn2zd5flBZa+}Wd8to#ex5~K~d8e9ywvA5OYz?~#jIvJ%0ZEA+~dBl|p##?DaI$VNQ5V81V zT4N>ntl!Lw&bun_wUh!Z{&{57#?hWFItSt&Um#47V4y%)fAnbJG#h8bn#@{76ELka_T zPslcilr#D*xXhMk4j_Iz#)pPY>_)llj25$}e;fEg$5{6>+KUYPsoZRE6Dj2wmqH~& zBip(8!F+Jju#TYfpN;@Y4Vrfuw7$0cXfuEe+wEzADBRfJ$Z_OylSu6)1<5aB95Snr zbPn4PQ0DhDf@RjB8{50NX6VDq)#YQ zm0^<7b;$vhZk38I2%%ZWK!tOvh#L?4Mw8EzxV$GdWI$Wy7p0*Pe6K6pp~ z|B5H1;U>g|U}zr92vkeYg0XK!>#O7zfY{CgiOI>2{Es|z*kE7~N?Ukcpvl4=Pr=@+ zOV5^^F8g$;x97hy&?)yI$w29A@20DXLv6j1$S-dL7KcYfLwHw-_|WbFEoYj%eUx%AW%hcRC1yOdG|v%Y9MA0xDWYjab|vxYWpU{PS( z^Jcwd{2u>v=}Ix5D4RAk+WvvGVqnqZfzf$4q~>{$?EaB!sOgFDmc$@c$)x^Oxao z++V6U$!vcl-u&(VTT~R#=yZ?&&7Z!NE{>o|)7^I^OnWSwiZBPwA_{)ys%@TzJHzrw z_ROtik1HlNyVH>|XZpdn4)*n)0JYt9p?t zV6n0&PcVgnzB<`=F9I#hKm)o@rw^iw6MPfjPq>+A@?!2ptMsL_{@VNORY^GG|0r++ z2S*!!5}~yv+J__h$C+zfbcVN}G(7<|#>A+tI}S+5Jx8;i_^T^l<4dj(z!-Z%%QR&Z zQbvM(#g{R9pRi)&-W1$ktCL+VIW5kxXUzzjzl$@dWfpW56jT^$0-m7uR2*S4Uvs0K zv5|e<XC=E`fqQwZGOD> z?nm-Fp&%I!2BWo;_d3;ovwp$SWwTI6{ECt&GWZ$W#@17(Qh9e+vtYIzD2@-V5m#ru zbY~5Qcn>zsVbHUHGQ;LP>5&;83aV%|OkQ-5X7=~h!p1|*<`V7)M7p}1C@u3g^N8gO z6kZ8Y^`x;1IV?Y(5uF>0?gCm_Js-LEEe)Q9f9#ZQR{{gx`HeFpelPox z#br#~@7(C6>epQ$R+B$9|{AQIpo-b;)tIzWLNx8cC-JaWA$#Iw>m2B7 zeED84kMH{p+<#t>gsalk`+4s4^kez~cYA6ivt!-6`-AjX2Y$*a2;RZn_SK6-7pQex z)m*wje}>Dz#iiNgncOe^Wp(%p-%c>&UA_=9Am1+Z6kwpxLwiBYz2U|Zry&Wji0Q+R zK)^2(wQ#CSc-#@I#e41Bckd}lRHm#4A?<8i_EHlDSlZOSNjgSQo?I+&0s4r1db*de zg-mD96r}92GSrB!1CBF4iivmZSLBAY`LNI2TaLudl`S%zO?|d_tZnPE?v5(d7wGKaY5P+6j+pwBu5Sz^zBLTOe`K;@5(@ zi*Bdp&-&cu%7#zs*kfz|@-@&evv_KnBs(QAIb!85@q`G~jzw+ga#eUmzjLlcm z8c)^=7G$8owT`h0hAdI4s@H^-AKuGZuy&HAF{y9Yb0F5OG#JDvow_bRi5d0uY51LbUm<yL?pM(*kAhg&y7BwhH)4D8*m_#C9gXG@Z8z1gIb~_0)6>l7bdB_0hTG zKw7HKf1%M_>l>d2X1;A3;}&cImnpo5byWSQJN|rnkfC?7Jk;w(2J8+vI)$XX7SGNg zc6JiR2^TPbT(Z|$ZdwbP06r&u2!hy1qJo_AdT=1>U-s1_J`(x98tqiL^jlGZifVwg zwT=1{IYzWvIQqh-4*qQC39_h5w)UXU%`x zf1Wr+1_J}A(|XAwQ*+!BB~dK4rkZh=L~eV|6w>Qm0X9 zFy;I=bL`&)%w0_ndrz=g8Nq%IC@h{h3w&D6 zm?6pnh=yiGe-`AmM(LlMb!2gwF?i?9lqC(RH6t{jgsEPV&LE$T(qEP0t`y^~{oBUL zMQa!RHa`J(nU{ZzbmA193Nxz@bJaFe#>@)>iv;fpT(w z9GYlIOY6j?;nq}~8`_>GX51p^0Zmqsp;`^u3?I4i`p7HITTdrrTjGh-4F`vc`o*_z zvL%mt^=LGiJXNEdJQi35V4~Mm^Hk@&sEreP|!~^W9AQZctYIn90Qv6hSnl0I?-vNhQsT=H`+X}P9bcS%Lf+GYFb>D4BXi?0 z0>l4FZ7w#`2QkNaVe|iJ==#^Etwh7_maS1gnLMg}6&So8!|*WK>JG~x$@zY`+HHQr zV3$YBhIgOi<#fqV(R;@iCxW-ft0H5_XKHX0zWuPqL?^oNGXP)Ccj1iUw76X|iR`XJEo!wbbJ(YGG9=2Sq*&J+=1>a&Er~7-adHJ?l^+~r^EWa zV#N%hf}$pTc=U!Ji26?nwz#Gkc=IlK!;AK6dHm}F?i7u5fP86E0DC;9blDZi1q$aA z6TU=95_PGah?mI$*m{iW&vu`21}?;RtZD5#?lIu1?>~G+=sHUMlH8mVG^yl_Vz__e z590}ySmJGX7nY19;MUnu(3!)NzaX%G@>^kD)iBJp917|FpbpNx7>LEunZ;2wOKlET z+)Fumv%qA6@V$9Dc7h}b;7z8)d{aLO$sujtOV^@99vlUNX-UfyY_XN;uhBf*N?q}y z?v^9q$|_LP+^!$iBv^*BKMaoe70W~c^MlSCg>q%1VRfLrESJ*M6u6q<8_p=KGl;k} z5EVLm^L-EJAfgq2j=GRVj~0LY{N=2zKI>5v%xg_E$#`quMZ7J!+t9`ctV6xYPQZJ; zfo@uUn)u$A3d0dUAMG#qSH0KwwjyzlmXK*$gSEI*^3WcKff$F`CHNoUx0(=IUBfq? zRR;&#w5W|rGlC{AH1)v}+B17;7%+bCZ+JMp4C3zJE=1h+CCP36P{wtdly~DQtp3i(zw>zkni(a0&YRvlZ3eXB1xk7Bol%{oRXTQ#z zJB+}3gltgF*vqfxG#-Q=Wm*cERchigkCqsc50}x(M}K&l50385H(b2&f@i~HqHcBI z8-+(2HScrewvgo`H6 zJ(4Bs6(o2rH5XPbEI)hTt8y6L!&o)U7b^pYHXlA84T$TirsxX^C%eKg%5j{q2LqX5 zgdu%eoL9?_yAQAEP=i>~VMym)zh^TfL{=Z!M7zbJH8Gc%nwSP%@-tb0MGi*X`Cdmz z267Rm0+=bo8>-2z6g|ecRc#k0;lAR&R}cTvy4-+wlar+@(^jL)k%6;XujZD^U3F3( zZ*s0H4xX}i`Qf_g%m*j>p#}Ls?v$iaO?*lzY=rq%5?7<*aTi{mD#z^^RIjiDO3VS# zRg<*F5(*sJ+D54-kc=iX^{|1G5vyM6c$xP*5+JBBe3MD-&sOfATVQ5EEbIGHyaeOlE<2F7~|8b zPv3IqK>%T)%Q1M9g^i}MALy@g`4q_-r>#6MlB)m(0}DUwg4seaj}|CFYog^;|M~)i zhIT9XwlfW2x<-dMb)VthnX0t9tH^n&yjf3xYfEbhCduc4ofXG-?vF!^rCr~%1o|76 zzyOZmXQSy&8?yok#DaN?V{J|RYOa9y#XHC5bDCjbo z_xmg_jc2*LZtghc28HRKL=WEZ{Ed_+OILC_Pl6|_<_yWYLo!5p{-@3$gWAC2hrI6& zM>FC*d%Ot?TEd5tFI%2ONw4^ab&MaU*!Bl*SMi?}wm$r2d+hGm z_4lrF7VgJT(I3+3$oFsg;_kmC;*_qgG6#68#+8Go-p6ekISs_z+aC>DSqKMo>$U`1V^a|dC9TznHwQeR^KzV1f$fG~dzj98y`Bm4XQ zqc?A=;-CqSEulf7$7ML2Vap#!^MeHz=b|60~6gfci+w#s){RW&-;p zt$A{2{iKRwY;<|-pshTgMweA|h-lGD9)(6%&Tl?lQef zA_?H2Kpr{AubOW}Q%*wA%!3d*0)NZ8RN$~E_eWoMY`t1V380OhVb7UU_6)>^`m<}i zHRqNhj}XpWtBsGq*@tfp5B;j$5BCbk-3cd!HAJEulBFM_)$UvggMK@ocwqev3~Y;4 zqBQhn-wz7us(oK|-p-^n_K?6$7`3x!Srx_Bx-?`DN1+cA!G%qElArSC>!d?wG5_N> zGGaICNLx&v?gBLa@c#4s^fJY2mPU&0ahxdF=znd( zo3*3Vzw^qnAM3R60N)*H`~m9@BxNPbf@qpsx~S6*^4IE%^s|+GmPBPZ5~|qQ5XVm7 zZE&X=_axW*F7y?^O}i+R`#>B@OV}^} z1D1EtmZjds4WR|_jkL=4>dEFNZu~3tJ;(?3BxxU&O72Hj_ioyBj}@P8hpC1$q9=SjGUczu(+J<9PuMT(#-5X57RgNcr#;Vb1DLszvyGP zlL*UofS6cz@>225i+_8Ev2rtdBtw|)D4@2#n zX4N)e+b~2ID?5A?0MAO-2cKl~?D&(A?0*&}KHwtWy^l$TVbT-d_ z?d<_%B0DBJ$$ z5xFG$eT`Pp_}|DN*zg%~(Oz+;+*I@~uCs}`6@MsbsZrLB1&DiD-S#(2S1MmIW_Iv) zD5zSzcUeWa9EJYflc}b;w(oN;;{6Iz*SRh{v};)HG_iCqQ<<4^b7*_cm)-@VPiMYM zOHi$kJ9A4s@J$~64iM@gff2y_2+@T3klP8%>iXp}+e6cE$L1J~r;mM6XuI1iw9yJR{Q$UHkM7PIq$$p;4h zk7^;Fro2*iSI2(K5wcDS-i}?Z@0ulEG{7*k_O9mIYIoP>@MkaF96al{YFOgXJb7Uv zAoh?y)Of+QyFrf1h$iZ=xpvi1tBa?XYq`P^voI->g~mY!ISIA9$v>9Dl759ar8dc_ z7=a^%3sf)Q`8xo?fdhPj?3r%z2KFJN6KlK}iFlA@U;KdS;q21d3Z=A&) zy0cyV?Iyn*VOhudH9nv@*4}S;-?n*%lNk5?ma5YUs;RXMKx%v#1R}4`MH332cAs4N z-`6M8G@7S7!wJGM!J=V*nhT%izasNE5gil=zmTcUpeMsc5ust{2NCrMZ-0v!iK_;K zh>&~wcZ1%>zXrck+QMeeZweez+X%GbJ8^X|7>cb)(_&EhaPo+czk@B%7Sd_@jGE2H z5QB6hp!mjOLz_)o@mW#B9nvdb-HU%qQWH0g8PLHhv}uu{=Wv#bQN34mSj(Su8@yyz zfAUBq;8DQ*wT5^7*^eq=^U;mq;-+W(3C1Y;CC~MW zCs0kDbs*PnrwBINg{~Ng9KaALna({3Vc0vvnPX>s+24@L8}*dVOW{=WTl2=Yg?AM{ z&n6#IYR_zX{aJk(x-USfC)v^k0e>~`|#7Zg+8zo)pz#q!_Jc}lByHG zPmK~ii>Y`4ysnv`47pX8`wn!z@-Lwe>}N!!IT|w#}MWUORmW*=+?BUg6LA&#IOH991nUePKV_ zPY)pe{QJDSGHu1qe;kgAlY&WwIJ@PX%zPS9SHfC0KaRr$c8~r;>98xXV=29-EPPky z=bmE6(QQxB@^4>pfTbzggc%=&29-eK!vp6K+4`Gq_9E0@iu?WF>tP^|Y4%l;dP%y# z(c`_=6O9B$gt=-{8Bmw_?$IyqKz)ck$Okvhjy6EqUf6PMoNI=G>bqaCcg5qh^a}k< z4v?l`o0W}*#Qtq}9`kc_-i$gMJ9W?6E?~%n<$S1nX!`%b0H@_@<)Qz^N_JwwipYpq zELdVsoILNb>pYE50Ku1T-jOA4Rnz+gv@WB8eA6%gt&t4?8V1GF z_W4}rzi{^HaUo^!gU^e;!iLp8I1s3~qkaj-pNprVG0>HOq0am-4LF|1&k}6UlagXl z!L-2ZiiEw$72NpIf2!N(rWk*%h1ETGumDZH1h&N&YEZe;=$@K&utVP5M58OymF&@skT$EV@ZEq-@Eeqs_+3^8nC0}k!+yx&;g5jTZBHWER_(!r)GtgpdBZ6 zH`Y!E$iqIqPq3;5UP6tsAY=F+3tNcc%yI3$P|Kl^=>E8MliZky11QjHpwD^RrC^c# zu!*vckM)`oOlwdc^BArfWjFd)MU!cSm<~OB{{_IwWL@ZuU+|j1RtdpFO0x>xh2}P^ z0xZisece+%(Gz0GxGIYX_ZB`SDaUvA40Cl~E1=7%xjO}i{5s_BrM4Qgj1-!SC$DyR z)QB!p7{hd&xa3;-P8n;gW zLn}2BYB=%i?OrSMEx>^@p<*sB>D+Iy@lo(hArIgl9qAO`&!)qFrOHTj_~^@xQg4{P zJ>;*-Qws$JP` zh8~aLhoL8^PGkWor`~WIm{jbvM|h){ zQ|Cr=&inYBKS67s-P--w$!_bi!km}c{cr4?oH1N>HeB{!PPgt;vxaRA*>02zIXrw- zJc}^99-lKMm8Pnmd^`Tvr0S7?%*emS04U@C^n=FjuePVmcTwy?6{fqd)1g~lJ+_|K zyNF32PC(xbz-CtQOK5#^u64B!Tv)_zCXCP zfaHQP7W*AH(SMKOFos5VQsyz*(Yjz~*yQuEPl?O$r8Kex*jWKQRCvOoUeStm$%j4^ z@zvvs3Z9e%jh3+VB~?uv(v0qlXCJfMe_&)s1YMEiIMR-~vhQOBe~Q!;EkTdG+SXZK zMXCba`N*kk7dCV(x~CQyz(aIRZ#`zi@6}}t!ss$&n@!&iOCIWLl!4k%x(Sao-860A zU_JZ?IND)c#F73h7`bK*#mxJ-E9(F7>RNc-{a8+b(^m91j$rYWH13ko=4C*_lX-We2|jffkqxAr}_@=$DJbF13Dd9&mh zAYZ=fzL#3&2^->!AVDg%xmg5(+jkMyKCubE=k-Ib+c4r`)s%@fBm};c5|8wKND;jc z+g~o!DcpNGrZC*en6T3ghqd64q|?r&49G;2UH-o63U9Qi`@}_Qnihb@xM_^?5ya%C z0-9R5LK(zPnRNd-f$GY>A;Y0UYeD`Z6ni z|5ahza(T~=e8(~MZ7gArZMMSiB{V6!q}~Xa_3*J-FAX*nrDw{kxyE6DIw_;DpX7Na z^%IkLWqwK~gH`C7H464Sy`$`EXR=pZH>CB5Wm0-@vosNWN}A2GG6CDHdWLUnzn=}7 z=M#G51Y|+jsiM)08%ls$neYYI$U~R@u zDp$XNnwTpE>1k&BY_V=_r@RECp7D7Fr@l1ewlwGYE#gb(>iNDSp*Vo`SDQc@nR?fB1rAqK(C_hNza`CAX=|@1D8*> z*`fp-4^x~#ZD(gk%*ym$5a*mu>S*cGhryLJytKCh0Vm82yL^U%4mftQL)Tc8SKtr_ zT6nV3aay`m($W0>@4&%c33t<=d6;e9bAWwugC2~TehbT{qHGbZLUJ?90DA%4aaR1j z<3MnhYMD|UKRcR1DLQzb$}oCv6K6&QgtPBVA1A>K{oC(p^ryM}C!o}EY=Jq}hqVBW zdz6zWt5yJ?3t^V~njw;|JfkY=T?NgtHeLDTU#kmn#OnjiSzPeZmti6nCu=*fR{?+; zXn#w@>RQn-^-m348lGaje}PLa9$ogb{x$3}TII4m-O8*XM9DmW@Vq`HC+kUvK#v=l zir;Zuy>yG&;kV*0ur;P$pZ5Zf-U^@w^TlK?xLu(0-cS`L6Z>c)>QO)-LbL%9B5yJc zR5$|gvL0ThU$QS}dvv}%UXnJ2_`Lm`AuAbPd{_Y7_e`|Zr%H@V#I-B*ZUz2EEQ8lJ!Kbva}$qHkKVD(TkF2hlFjydkIGx$7i3x7lN=%{k+A z(unvJLVNHtpew4oPn;vsI^wXNJ2)r_ssM6@+4MozaaGvi>^9<%(*UHlrr>@wp_d@| z$=A8~_rA`Z<(<{3U3ZDFg-XgE_xg-uvwZ3O>86jRaZ`3+%L#}FP7Z^CiGn#3 zjLAprED&0h554Hf6DRnL>CU{quK->vmjf8uwQkP9eY(kL2B_=_h^eP-zVT^bh4mp- zCpZj^?kPxC|c=OIJOFfeu0Ltp^i)0}oKy=B0%EEYg0h{eEh59uk$_p=LkR|3bp((mBJD zyV|4Q36bTH+IRWM;Av%d;?3h`aW!};gK5(E`U0x+9c^x zff$Sw9Q%M{=>wuW3>If{05!En+Sl=TzP>jCHHloT?pK2K)k)j+RZHWNmn@hoJW=EX z0hdlJhWWg7VwaKQ;H7d=$+=Z8rV2o!csR|yob!fi--)_J;encNv;tv$b(AclcctSL zHw~K{sPw%uGh3CGmt{CkFssL6(IGYZz>eLrHIv++H0A+DAFHPm`lL$py4E(Ub1668 z@4+t<2GcN@O<0#31|q^fhtjK#joJ2(#+5hQU^QBYTw2`XO+|* zhw*pZ;QGz6jUa*}@CMb0Cl3V~fGQoSLr$|HTw6AoPqNW0JrO%NKH#KZFuYyBmAjfz z%K5&{XVxQ;YDDa5P81OMbZKLk)$Va}A3iMz{d>Ll!tPxrMzxmQ?(^vLvP823|8Hw$ zX{__#-?oYkG`_ieT=w@_E(#{5Af_cZAB&#Y@XabNwF@jHobKKmRI~nZ$v2)(!HzO+ zy4NYDCme^w+qerO$hV!&7fYzYDYURveV*_SE88~`qyyXIfZxx8Uwwgd4vP%vIPfbHjk7JbJ16oURk*s@+++D^l;Sm=5~NFyZ%HA`pBIuSziC&GQs^eUBiz;@<&&~A5>jar3mr^Yl*h+=bSl=ci^o7WM^f3d^2 zDs8{UY>)TlmT5Q*lS6;8I(Qbw)(T(>Zv%BztD+(bEltSlaL?qhf(rPk!PX1uZZ40Rd;GY&)UbHP`r!vPMb}r`IAkV>%nxzM)353a zk0GvUJOL5Cx#9s8>=PhsKujAdiKJ|6dRyIpUw7Sx>J?t8!TBW_hlNIyT%?60tSeT+u7dRmtP zOzFW=P=o&-e6s3gw%$za@Qi?*Q>P(qM35fHn36KLtFP}#4@+I$S)cB%e6-(f(ZAZz znlo8@S@m!(JoqBzb4todcF+_3>j$!owu5$~f9e@*ACdk&_}e@#X9=t1USw88e6rC; zBKb4!SAB}jn$0F#s3nKr^cNYOo)oFzrbtG9nP!@|(QES|V~-dIkeJVr6GR0qt@Utd zzc=Ct!tl>k%JF3b5rxr{>apOA@07W`y$EjhaUY2egLJ~LvBw2zAS-r&U?8b0xv@cm zIw#WVJ05_%g5XW^V(J8~pCCw!c8w;|KxBiVIBO^Rw6_KHW@13WyBqj>|wpk^fDug9q;M_@Rc&3Ngy5|WDO zO;Y0wDkq+>gDxy2DH|!h(Tx~Y5mmkox(L8ogIzx*?8y2D-H>m8^?1NVj@4HXtGley zPTYP>0%z@D>e3K{$bqQQ7i~#3<+Tu%0*m2`Fz+5Rk!U@Q8Tfotdf0ncbz0o`%_Qo}9Z0Aer$(VXJ5ppB^9m*pUMKYE>S-iC{A=5Q|^q;ToZ*m@n__L;B+dg%aZ zv;76$6|oKg8rXQs7v8V!(NGF>Q2H`^pXJa#l2n%~Z4@@yrO}^3E9(j?gjQU^!aa3r z^6jz(S>B1=rz+ zlOdO^|11cA)y}4-72M@CXrqztR6bd*#A9lgzYEEK%BFpZ{`L+pHfv2bdI97AfzNT+i*&G zlzsYW?7P99H)(yo@_DMj>ZG$1H!#sn!gn}yQe1brg=Z^Df&&kv%7Pl4{+Qkf>vlO~ zsc*$J7o!m~hKp~fO!tqBrVUDBmeYTJpP%lyG`mw85)?k|OJbrd(K}ZZoqU-<5BZyU z$GJPKA%|gILmU$2xw88dgeQjVOG1YpaKfafXAkz#2k+E7MW4EDdT+Ljz%w`A23JXh zr_erh%pW4c%K2ZT!=my6Hx~#HkW+z((n#8Q7kH$(bm~%{c}nrn=U)4Yqdy?QJ~`XT z4{dN3#Lsrys4oH+GC&bTL%vWAG`@!Ni}PY3w6Ami?&=o@Vffi(VnmO!3?!&R)$dI% z8Yce=zBnoTJEr*NTolD``gYs4=Gvztd=G{2uXkf2WZo7-(@cd51^S-!i_rzB=~rx$ zF*vHuJFAe;^Jw8UnY;R;gn_&I3yQ&WpS>mEO%-QRxCraD3{sJByNcWe-wUMCv3P@9 zoWM3COn|R|UN1HzH~1cq1=f&wnmlK)ZvCpO`9O1M*krtX396dkPKhG}WRw6Lm{Y7B zFQk8W9n!UYsIDu*%V5Se|;y^C?XWmh5*rkh*(YC*=x5yUT1PVPt)7);@DCXUa+b+tyr(6u8z*de? zvx-=@DoEYwSIWSjHUTA4AAQQOSkE7nDlqG!N!k;snL>RiHdFLeTRB!JGo0B7TlX_2 zKlCRWeBu)IS?u)it*L2iO-;AB1eX;A-hRQ!_jvEX0iYGE zFrnzRxqtb`aXuyif8Ygu|56i=j7E74YdJyk<3bzAh{;HC^f>iJ%5q7tl}T~ z!XBE0rLq(auRn|Ff8@UV{kkgU9z>s1Y_Lss1Ei_ClrWo3*mS+%(?S(U6V&vmzw*vX z8pE9bE!TINYg9pHMk@{tz9c_20xd6T*ehx>Sidv+u(*5y`|Y@*zR0bjHR<=}=KeAE zD@_~60F$a)e9So_*K*p|IPI)4phnpmW7cL{@u%e2o<2%`=0m^+RLJ{B=u6B~eW4c~UwI56rtXCvwXt`76N#J4hgy+~@M#rbn{qc^ z^sfGvQt5P6=Iz$jD&R2%o!jngY4A_;EN_-M@YkOQGHl04>VerHw56wz07s}{ATjo9 zQAp_9$y6bd@9OWA^OSv6pQzUUp7s@d11;w{$zlmQo@eK{rQs=B@mQ#gkg+E$vb8({ z@$ArxQAY$;al&242n*A|nqwI~g`xq7s3fWlsZLh*T}_9^yPbx8xRF~(Oi zPF8tk>gC7ESFg?D7kt-#d7e+G_K>#_l;t|ka^c}o?ZFtJ$;Q+H)JV2 zF;|d7c4?8pDx$m#ElEVXEK_;>N#a0ewK=obKYx0po@*d z@FqMF1I22Vql6v+lKRaK-zIb^6PjH;o8HCd!mj+ITd!Qw*ZZ)U%IBl?s6F3IkWJa? zWnwM+=#8a}j#E5@-QanC;@|@CL9xRqj1l!no9RCL(;#*K^KD%!@l4=0B6JvlKJckk znTW&cABMWjI}CDAhSgs$mPrJ=1xUbCf2cLAW*&*08xe`t&ejTac}FchQ7tsUr+7ti z1=Hadh&ICZNorFgDQSRN1Q0C)&qd~WcBAIrwgbg&68CHx)y*1yBnn1&`Da`+$0$*F zH0Wi)TFN1@*1^ef_)^8DR)M+Tw~Vm>Q4kF-%-UDYpPl% z;!_lZL^#Li7lMOY09Nm(A8gV{$r<3>mdr#<+HIKa4jx0_8jGiY7BX*q{q!|iahG47 z1=P@Mbll*wCi&KxZ8BB!;+FjT{XZ|}ERj(YHrsH#g=c%*r>H-e=5)ta+MVsu ze#$^2?q_y^!U2LmjZHATCfT=qmb5i%*Z!pnTG%|eEyLNbGh-#w*uH$6IPlC%!pELH z@qO7>v8?|gU;<3|em-z&Y8L$@&*kP+$B9=AK?HW^L8SpEJF6&KX-&nRnX_|_YS4!~ zmANPmgQXmy$L<_0|0)Pa?R{5*`=y-P``@amY2(*(c(D1Yb_b{b5Wv; z`cfx2QUCe2byk`8)LS`f`er_Li92bn+F}mAZhngZxJ_Wx*=G!3V!)hb$XfHRg-lZ7 zq0xF`n-!T$OcJ?2wysQH?KoPxb_%V&;AZ1{qTRNySz0y!z0lik{cecv7KgUlnfffG zKIp6(xQanwM109r_$bl>>tUr4 z^7k#ye!S@t^wYHrOvdGaaZ983J|oZ{-GTE@=wt1q>$JaKLuOxXGVksyC*&$ENP)+FE`0wSMD(~xo>r*YPQ4z6i+djWso z{bJo?$6SV34+rV8h}trLNM3BHCet}#C8a$F5^o!<0Kz3(W$9h5=7tXFZQtuVe8nI`G1?9i3em25TsXg-wn3V-T=u5nQU-AWw2pOyy6W>lM zSg*tasKa})|GpvXT<0sf2eVJFEJ~gKxInl|_SodvH4kng%ew0MD=mu_s68brNKhG2 zcq>1r_va1q82OBpG6G{dth!3~L}%Na3WcN(ff>1izW~Moyr!fnaYOjuG^i`(V=!%VBp=gIpBX zdEPlNqR{@$`zub=fchECO0@?2@_VoH`(p`%2w6>^SSgm@T>CT;Q8Okd@BQJKyhXrz zFwA{qJJ)Gc8OylV$p(0}N zB|=oz(c1vFdvdFJA5aHF1`3N3sxX#)t~vBMc1t0QPnk;XZN5@ipN}u5UTB1k&R)`03vDaNqYDjr2&sn%3 zCG}@?=$nV_C!!t&kDZPDdu>Xn?F_H3^u!`%d%k|Ccq;M2BaM?xol%^54Sp8}J7rtP z%H!U#tqrLxz2!84C`00mN#=KRl7ktOMG+V|uh&K2+3pbDRJQ>VEbFereQ__kIWpCT zUu=eABq?RB7^Wb7hLYb5SwY8Gcu;`!3+(F3%?x!nrh-z37f)pt z6EY_?0$_ClwH2;;36 z4HA<38`K(vI^Soh70Vcr6)@#lEi%8%oMfvahQH9*=bZ0+f3m45G(7lk_y`bFtwO9+ zh3`>dT<_nU$(h_DMC&#b%m72r-E!*I4_fEG3D`sMzU8w1L$><~5wn7zV@=@>%OomK zcbm)Ui7;8i+xv*)O*>x9*PJrw$*1j(qTrf<9*dcs=aw-F+zbc52x-?iIUETSo}`%LM z)x%!HrErxQo_;cGH>U}7YiD0+Fx1qr=^cvC`d4Q9aiYs? z;m_kH(4_w7DN$(sq|*`?_FFIT!W5L(%+Vl56#@k9O@#8$ToC9jJCr-b1aOmH2{d|Ko zrIxdS4Jbf&;xKr(gg!yhuv*=kPtJFcVLe0)>22P1oh2i8=^htTZTK1!MK1E)!?ss+ z(|9D$qqd}e!S|%GRV84P_Y}|G8#8Czu4*q%V1bldeRH?8j;BmF5dEKzGj_Fz4DpX` zc64PgegPSyJClvNKuxJv9oWz2Vg zDkaIZZ5cqpM1Rg-GkqDRhNg5VX`}3%txy*Rv*R& z#CruldfM)N3i;zcE=$NZM3(BjK9EkC?+8#THb_B9<)dJiay^3dxRRijwsVU<{NnBx z7JZ~tqy;p>YUz}(oef>91OHDN^G=X4B$=3cxj*mOyitb}{{oafURH$HK`bmIqFnsrv|5^OFNQMp{HRkAY?| zm*&d@7SUuxCS<3Tc40^Bg|Z#z?GQZNo_@|z2&*6@&CF2%gs8r|-HZ}Q16I9EuVJ7sPrHc()^Ex(HYPMEzbXiS?G^f@Y=A zy7JP7!SJ2A{6@tySE-25^9#P3IJ!ZJvnrjUdoY6%Lb9Cw{Z~&*$c#%!)Q3a6pghcE zc&`x7_U5rJ5Q^&$MPTqA@m0unI~8sM2IjgAZ4kv8_y>gG2{gt(P3)D5>W-(~G@(M> zA36!Ul0wlPmZw#UHN;V&KOf3INK=pO?bk=fzxMmE*zW8T97~3dNewj4{!h;Wq2eNj z8OFg)CwS(JX)?HVO;10FDZK<<)5mS?iawXA^!t?STTf*-n}xacOMn{4^mRm)zC`hU z#mHS|4w^%>c~;0l8R#$wxe--D9H}3N>21Ysd-x-^p5E2Rm3mwH;h2>0h&S%GNzynI z%UK#CLxF#yThi#yMhp~~eLfw&C6t4lyv3}(1rm?9dCf)%7}}|1A0IOezX$~jHy4c? zuT1GerMer<;mRpbm@zF>+Cb%(<6Me-0Z4F}g_IgLd~1MI`8D>Bm0KDe%1*-&Ta7RI zlsrilz+s)P;dhP>eX7&Rs3aq7-Z;!_t18%cWh@(xSt`^o+hYlrE4AO@EZ9}kC9MDk zdvNow)sXX! z-zYtK{M8Mnch8NlPHfhneYlRL2n1oqBno&Ou1@9>NZa6gOmXsNmWV@2tM8sU^UrP+{mFn z#^H95e(qd|HmDT3;7q1Rbq2Kbf0_z#{3ioEoIC3wGh3lH#> zEN=s3d8|c`;z$KD_9}`<&$V`ohD)~87BY#*51NSu%Q&Aa*q>tBI;VuhAJF@vlt3W3 zM02TgV3+G+*}OPRachI{KU~kwDau=dciJm9Ulus7utwU46*Wlz)ZYw&WXS25@$p}w z#r1&Ac#ePd*9AtPqBy%`L9r`uZi7LAucP#;?rz2w%xb-8KF4CWdzCxQTiktO!vo=4 zdKHC{L(TpC*Xn?rM8iJS33UBF?;tEPx2BDK1_ZP3D8%SQB3LwTGw3R?HUqYp-(3u6 z$Dkq!kesYZc(oKBY8AnNE6Z{B+;YW1zOLjPT}jn72jK1 zA7FYg1TZ7;NhcUUR%_pOT}WiZUp^bOP>%^m&$d~CS4r=ef|u%g zT(_~BCw_v(OY13K^sKQ6pOq;3BwND&oOj^huJI*2994@O15z!NS(E_TcJ6i8HU-aj z2*YO0arYskoKcfng=IF?cBq?hV* zd;5w3&-2NnLp(*GiI+PW;h#G?f5p6R&*XO=_JicHNgur_M#E_!9efN6kwEp@8V`8JASPF`cUOCu}zP&wM(dcd7sGz7sT4lhW*R%$*wa2tQ ze#Socx-7pRy?*VloXUTKw4eYiz_cSApI|Op)Ut8r%f?w7lNmU^FW<-a*KzJTys5N( zX;I~A(mK{1m9mgS<|*tQ0B69oZ*&;`375zlB?+rE=5y0OdKB?B>R@zOmyUl%fmNNO zyRJB?MuqyZ1rysg9Ki;Pi!}I*Rc9*Kb6O)fQPp!c6n?{ke6gCmK=RvVl$dAGs1+ya@xO+Ed@jC#+kXBdB-Jm zhol2lXb$;M0ECzO^*X3FO}u^Dr0m^07~K3WBnXK`{~K%mpfZiBL@D9l5;oJ9VPLD& z+yMbkg-m&Gle0QfD|CNf;2>{f^SNed@|peNZ-6gFR~eoCh?>;*l-IwS`ZfpHmE-hd zZ6t^F;xLlpc0VObt^_qZ3+Q|w)gO@7)*V0G^3Wi7uh5Li5~MaNZm(KMIn5V-tw=dR;$y`JHk8 zb?-G|vrfI(-`Z>@>*UnyE*1x}R|=2cv)0#igfC){xXC;~+|66v8 zXRZjDmu|={{ChntYpy1@<|T{zk~ieUJcwHwEhp!Q+i9Hgg<VOT~kdz~6&F zw%9-;W?MJT&rx}fBTiU~WckcPUzuoCeyyqIO7v`nf9(rE=?{W(v?^?`MpuA#>A7?cUW(6NT(1qOuk)yjfsQ z8{xka9!Jq^)`+_S{o?4iJg1=u!#%dUVVlg`W4dx%-Awf+yUh4S{Ix|(=gr9htCc`A>5i=q z-iBP(kf$Of?2;}vIb1U9M3YgsHI(oHxz$4}J+68wYGD6FED&3k`$b0|y#^fhYOZd} zMX%CJ$K4f>8U?Ta)jylHlfMjMU`EX@wLDShbI{lX=#b42%Y%XM&aJPf$qqKhcGcs! zexS|8x9kS*aQ#jFb&Nac8@(v`JSdY`L-+m_%TR~7fLEgTB0UPp#qDqo*W_x(=^_kn zUXjzZ9-X#N@ZdM(qj;Iyq|r;W^9+u2-04%boO*w6?s6&8Apu_;d~d8eG$VP;cADX7 z{KZV32~f#@aU)J6!KV|KLH=~6^NZIGY=gz1_6fO1pG>F3;{WvCU#52D6suN3m?oF^ zvvnb;)Xc?e!Hfz4Oj#&` zicG!G!jB=C{WTbM>T+4PHiB^`hkx)B$h|Zl+39^|cz9<(7u*vUA~AaQg8mOiS#S%m z7~llOVA)E6g3V=!k1!yP8@td+{Wu6hwL2Q8S00~BemnU}GVjvMUeJ90;hFJud2aW> z#u*w4F%4ZB0ZULFeZaaGJJO?;7|#W3u@|W1IKS{?LS{W>w8fx#2D&goK@hNta}^;eDz@F0_DzvXBgZDWXQh*lQUn|2O4+b zOX}n6H#45f2oK~mB%Pj)p%No1A$Ugx2sbDe#Qd|}J$#vo*S#(Dvn1;7v9y6mfOmi< zo>4UXO6Q+;zKb{5!&LxyoV`#ft`3rIvye(iB4o#|LPqx1iP%}m`ok@`v1gxO=qBD_ ze_w8b`5}Ilc1y#(jj#zjzK3nTS&1&~$+YjYd$8f+_pJIv_p$tq1RD)*kK@<(Vq%3t zmu&NUpM-{Mr^~;OOHjeMiO-Nf5eCaYVsiTtlM|q+y}hLPHM*$b=x>2(dGL63sQ;T& z2Z>UCT4WZC?`Bqi!O?FxRh9$qN!ky>gS%wVl5PwV2oK!eqhDiv1bHh+33d8S5&W|l$!x4Y|s2gx#9EBi0mB^YCW%7FV z3JPo9SBG`TB8{Ymr0q*mth&>c5N%KSFa5L#{Dt8s-PbrBIMwBsz9l6sUqp%!Tflsi zIycV>mQ|$yd&N**!RL65CsfzALopq=lB?q3(YZveV+O`4A(ggD608s#|Ei#9+D=_q zayiMc6B0B zbbF88{ZGbZ;At1CMcPw3&$vjQgDgD;zdTM`_eB792D5Q+@*775<>!^e7D|p5M#vc8 zc#T~9rN4P;wc=I-I+CmT=;sz5WK1Tmc^|GZs`AYv7wFdDL0LqK(*lC8{(xBqruhGI|a zJS;jSBq!2WP+%%8$1Z?j*h!PFadv(kp8A<@qsqA}nu8rw`GavrThPB@=Ae8#G5*M{p694!!OUbHU)tOju;A$fcAd z=ifB%8-VDj#|ztO@InYo&}5%(s^Qj-BP{Rb-)UcfHnj|Yk^H!`QSSqmgW0~*k0~aagmtsMNA2`Y@<{! zU)x|6Z&brP*nr)j7+_1y9C3t8V{xF!o%R816odtiVYnytPj9{C$kM)tH$JtF7YtTp*7_GqRAC26_xBumlnPjQ9upy6g4s=!{?%ZRQUd zS&Jxq2BB_u?k+y*T=e-CzG`VVe-a z3PXQ)odF!Zg>oy$Wl`|(a8Tdt&4D<$*~Aksd-_AI?&OeNP+Itfnio>JYl&?kNHb|V z4F^O=Wh1XzHO5=ZB@2O7l(^mkeyFPxNL+Nxv*Mj04OF>9$wR#N9sH2OpY!Vg^NbV* zXfFf>8Fx(G)pN-r9VLJ-5<-)*Gb|F}N6IXMZXckf(2$ug;KtJJBYQ2!=(Bxd5nbhgh>V z04=URP1G@*J*tHaMu8r_04?fk?5Z!Xts|A>{M411<%`2%m6OrUX2%cf4X!ot%*jrh z&=bno+XS9oym)pME?aXaX92L{T62nsx-dHjNjjKV)-|QpvK4!gi6^xww8TV9Ph_+( z(xJk7?2ob*d~0=%SUH9B%L%%pWWN`Dorek;(aB+(N-xJX$YhoXv%=Pw^ZD0#;tu>- zmeTd*4I~OG=D6Z1^$pBj#coZp!}bkHC|sO~dC%tE^OvIva@;@!NW2CSonvucQsq&} zWDw+LGo}dO*JcL~6|di3O7{lq#%SLrJO>9HW@uEi6Lg%inn&aC0?6FXoPcBXhh+0( zk&<(cY{D2tQH95~;%F%&X$#>Gih2~1)PyBP<$qZ!o*gUWo}&Qv9*%Wh{2bDV`nf7O08GY-=vkwG07zJ^(O-$ra^B&56~9ck3f9A$e9Td~Jz4VN zcZzQ+Ho#J$0t|CR=@3??GT3mZ*=$pxlkDquM+S*7@Gdx$02J&e+Ctpp75*^T2084_>x zplNv~IYIUB&yO|)fgO~5yoIl?S--W`nn3?EgKHMWK%`tMpfuET5wM=ZEIGVZMQ`Xh zR}X3Jxb>%f*=wXHY`_S9<8NsS`ycXw$20sO7d#*>UifgO6-jcJaQ*lq0u-v&>)aG5 zyAL-*x~55fK(!aU;8W9Nf1Td@gokCH&yqVi^``Dqwtm zmG#cR^fLHPKUJLR{F#N1=it=YW9t!$a0Dm4!gio!S^DyqZ=4GLFFIpd(_1D|7mCTz z>Ynn=5Rk=Xb4In4k)-R=>=*i{GJUVa9d_(K&`yQfd289Q`ze*17c=$84N?3bHRFem z>bNtqPavDxuOLxec^fG*#BtCZ@8h#Pu>mXQ??^`B_%qejl#=->jU4l{rm$vO&jhL? zsUNvl%sA@O`o_l*7!9dpg1j_@<2_8;EwV_9qe;vkhu^wF^djUkI8s9Kx}p=|7nDpE zAhhPrNP`$bfnyl{h<*G1PX1Q{N=0keUn$f{Il);E=i+HlTBz_biW+TsUn<8ok97bD z-T|a+avzV|klbYX#2e5G*ZGvMAUy7}6(b>_kgeUF!!0}typBYbL*PmTOXtDXz}3G= zhz#JV)yA{WXFB79?IzHvBG*__`vMK&Q(l>Sw84g#NGwzMGtO_#Zy_a+2sU?Us5$CB7g8w#3_$f1elMduyC31M^WT)FA0iIqy22ZZxGp z9gGY*YT2&Ll@CoWZNSnk)uBJHB?m^YpgdXVhbTk%$$i+2f}w8x#;MC8?QHFLM_LHa znFoEkoZ{BcTw9YqcUAT*PHp0pX#2R5xDyph_tV9x@$CyC~_p=p;FOI-VWW}zYra=w;|rF87e+2K~~okDZU zW!&l48t8BWJK*=du&PVS9t*wGS384ZsIS@Sku*L8YmlQ{{KNHVpIuooxy8!zEEglp)*jC5g#zJ$vRCDy&90 z%_3t8K-7H|2hH5e8?W|7CpX%n*h*UNnm{~Tkhd_r9Bu11Xfo>s3yQZ{XdVuP z4Li_$U6<&Q2}6Fj2@e4aY>5F0Dwcgl{>B9!1~k8xy^3Jwm({BtIUwa}=J@jp96|J` zMhfVhnZT?AV^GMQ;$7t-@6{^SrT{d{vIuqbK*=#1}1PueIAnG_@by#zM#pZx%vBrLJ0{wRqG!+V2jcF>KCB)H` zw=ueL!~RI(3ed);eK9@PGzc_#$HhroeKtwMYMTJtWD3Zj^{>~gH7m|9KzM|=6C9X) zbCe<4z|4k_!_h0Ud`3LIGF_5CB&z{{f!tx6QAh72qcF;)57MD4y&z9ot;}GY%%P0eIIVS4qe#g!pwVT zfO;%2vEr263oqEvw^XmpDJdU?bn68^*=TpWAD{`Z?vv&+*Hqt*kV!DYu4li=(+>?o zf@TLmkPTR4wlD9&yzeXtY75g;zYeJkm{C#XJKh+2=PO6c%Ip#(k0`f&eJe!f!yOc4 z?kX~Nf9UM{UVB2y$Z;Fo=GY?w0(r6CqD+!&(A13H;#Y=3XwYbj6_+0=A|f zOos$&4_e3dysS4=Sig%25Muw=Pa9+O*rnV@ZgNsgD-1vcBBlDVS^DwCiB77(E`%Wo zpfDt)7Pe@WA6I@EI$3u&dEyIR1j}lZk8}+uz9O!2BqX%I!6-Y%DK-?aPVt6o0N>%m z=1thEjwCbNuCTuEJHt2Q);BB&YUCnaYK-f{h}+~9r#$5A(OsC^*8^$Z!;(OW=WUn@ zBGCD#nn8^Alx<$V7Q-voNXuO9O0^D6jD-E$+!)_7&Ca;pWokXk5d!?Fhu^I556Jywt?)a{ZC$a6T&Bm!H5rW?5jSLg}sj%RD@5J=yYI!3NC& zGEYd6AEwXKVgptThAce#{4QKiI$^N%ovncig(uu@PqG(!)IG#ZZ-f=Ec7mnO)KPq0;Vo+YkK+gGg-B5 zDbZxLc6^pOW3-{?Wg@x=7AdA~DVrQD%dtXGA9?gHq4g|l;aDzm7MB>w`qGiR1Z3JH{Y^zM)jep#cu$n57}RpfXPN3f!- ziNI#psBZvt-$J#d*5qPe@$AFqt%S#dzx1G(pMJ9ZHIO$p3eGLNPiJ>a>N5+moJug$ z9izay$BmI39wkuk!^fMXz7c?^#k#PdY(dR(U%7!5$lOA(a0=HuOS)8PdvZliz4_!f z9X|g#DJeM53Pd!2=kCFCKYd~^{}iY2jIYiG*$Hm@tCXTp>?k%io3U{go$Hj5{PZ6#jClvp zFjaT&pIpPz9Y8K3Q9|(7zMn6m_9^znwnH#u2@JaPNNFfk9v%&JS{ zKK9wVU)%NIq)p+&drvPwM|wpOhN_)VT-x{5LN;Bb8q)zLYI(P6=n&-dN zC;eK0cbsaTbub{F&7)?QYvo9=f$f=8D}{dH2EF3>U+qX3U8E2Q$Zp-%fMy)GM9vM)?_7_N`u$$ci)}X zye-3R*(DyDFHdY8oSksP-XtxPW%~3m90LgeIAaTeTD(YmAlYqp{;Q$rx!wnY)zTB! zcfL^r&xehb4V{VqC2JTL^FT~7LOaynqr>z`-{nduO5zcvSgHuDbIiM441^?P&X z?)dRiFLuGO--8P7k;U%ZPX>q8>98}KPumcE23@K?+ z)$dU2PczibXsl6`Uhw4Tqe1hRjot&^ofmA5WRhCC59lap)Q~(<8g13i<>^C?I)*I# z7rOOb$?DMu%Bg%Oi2dcR*IzRG6m~rMy%9M7>E`Ue;pn4vTHPu}?;q)Hd4F;=h{<*5 zwb#CG|9xrf+{d_1CxlI39AWTiD}=!3K=F`xtJS3~W&+JDT1oT-6Nlsku~SW;f#XI9MLfTx7+%-+`w~I0cmHo2Q{E{`%*(G#3w(sQgpo`OGkn zgNXock7F`FKs~zZ*Fj!;XlU3QDX1AGs(uf!eE*6g%9p7Ze64|IkzQ)$9MWYHaJ&4* zBi|aWTlxU3Lw~gbZ^FZ&R!RR8{NX{-n7bV|1}Y8au3?f}#aV3^WVtA79w5+?Y8AVa zmkWkk6n*}v4kkl231QKv9roq3$t48@_Bai(>!x>k0eAl|$6*d$LsVlf@~6=c>sK6+fyu)t&=lohzEiiMs2YB#t~ z`TDMx1%a|h$)S1zeT?^(pbgFaYmhD9>c9~fT&gx6jrO7Ei3=GikiD}Fjp@0#(GFRe zV&Y6|@6owlc`)5s(cf_808wSDS@k@~lAVA(2La!9idA51$6SVy=Rs28>;r1$yp^(u@03Ta1b|I_vha`Anq=NxDF>Y!{>th9A37pS#E6lzCj>2)iesTdfeHsFMI*gCApCLsjVOkuuy+=-VIc?_D{CMRU6!)0_yK*PXzo6mXKrDijz2o5`3zQ*=N7yAJP?B z{@Pr=mlryy`tmS%Ykq7L1BJ}ZkP2nzqcky6S`HiM$ztp)&L`S?qq%z7(?eU!I9hbL zRi)MRj0+?v->rl_6gNi?>F!r2SC%>0d{Lry?!(Vsw%?}qsmv(IF74Y3>(kzaq@TGh zqPUUB!C6GsZdRp3WJyh+;_#Sq`0JbCFDHcf{FZummKAmK<^^A^S zI_q5bUC12to6SZsq5Af@@C9TYp~7lwDlB>d6kdz|F4 zR4!Vp<6ZY&vWHa<2S>%P62Xcn^iX7Ok28`rBbGmI3QC}Sz8@IctMWbbnqP2)BUmV( zouinIBYRyT8umQSwN|bcgft+wDLJ}^v45sU=*N`+K=$-EcsD+7c&kJ{#suJFD@);s zZV4!aTlED)h)ata9uZt2vDwbmDKf*Ji2DV&q)M3Y`&{dzaJ;_BBMSxDo6u-^0Jp13 zHoyWr*&+P=+{O!-%Qi1e#eDF0Z)dvHXA-;qrE!+xjWoFJaThtypdH= z`!d7trErDFsV?rbdz@-rZ+&a(n~_mJrA6IVyj$9(W|@%enzrWDi&-HnuP;F{oo4!y zg!53ckr}(1#f+#bR2l{(lrYgxs2H(M-xjvb?;D$$o_01pGa@P=J0Zq$%Xi26i+1bY zfb&oehO!Nl@W>PgK4z*9EDriE*7qC>`LD1i|1rb@xpQh6NP7|`BFW~|KaEdF&KHUD zDc^6ArmgGC010n|A)14~{MH=9LE=@_f>`dW@<6fV=79&AHjSp-Ewa-om^%|MWUQhc z!n!ok^6lrXgq|Jq-qCePNx=)04Gn!QTJXi=$%Ev6(=IIBWAd&f!Rt zJ=az@% zqLbty9|lt$rn4bjYsW7dkIr*}CJyb>n~NpSi2a<9?Yg;X0V>B4plvyTEbT|3F2teT z1zS6Z^pz%AI;j_sfvpd0^s3nNmqs%UP5|m0iA-9dxs}g~vI8|c2z@U$KKc3jYf|Ff zcOJF(n9;z{u|do4U3$}FkX$2sjnVjhyY8r(+lTLhHibB~J1F*5NM3Q(hxZ1VR0tS5 z@iMcBI@FFY_~c<(k!(UzPFrlZ3k-Ikz9{#c0f>5E23D~rAxP_(`4c-YW~lP z_c2++*nw2__XX%@GvRj-x9yaZ2jEjU#4|;V6rS5v^L@eX{urc`oM(CS)EEf+kAo(o zU=&F#+~-TmbWW992oLa#hn#W`X7p7WIR8yhG(MFEvQYo*SYky*p|eBYFZlKiG1bg< z#GmqB87+?#$iLzp&c<_HF8`i*9@ zvAvt?$O*srV@Qpp_07>id{;_k-l+f5{Ot>6l=hrkn^u-_cypn1tu?tP0uj3~9PwOI zG48kik-8uzutj@~Kw)j&y~Oo*#8sJAYUCKVi^2|AXPV}Sa1+__J~u}0v;Xb4{aGHT zXmhyRpDXTYO~(yLlJ!nLMf;SGR=^eD)`ilfo$~w91qsanFrd4hxuDX#_j*`Ci~rzQ z9=Ccs?C@YXZt>>q9Eg9G1BU+;fjl714^~cmz9iq2@c0_|DsyEv);dmSx)YD4{`?-& z4fbs&J7c3}#}W7QQT^-tjYkCK2*XVYo>Z02j6E3q479OcuMg9>y?nuxPzcS z8HRvC*n%7p*XsR7qz%Ioyju_prGD-YJiwJD{Ss(Vsn3IhlAK<`JAOh*MqrH-jLd110syRi%BtKa;Khwz=&_IOGJHi|YZ|J7UfVVM5rt z;DHYOa6FO!gsj9X>?Wb`o}uq`P-PMfwSX099qDviwOuamj>*$&UNDe&g;X46m!ES= zq+Sm^b(i8iF!a7Zv)btJ(tH*I?uQk?l)`9_h9-Muk2>YpU_a#%Q_ZtUx2*63@Ju?j zj>QB42|EU5iBDszO(R?9IuHwa3;)v%4`o!Ne)e7Di0gp$Q@DIMh3camZx>rL)eVav zD%61)Ko%F)@5AV^+q4#E92%rod;+SZcuTlQzO|5&lU)UgXO9-qDTpNiVG}}2f}3uU zE##y}<7tyiiUL4lKThyAVrTSligYx0q|BvJWaaxLH6gXG#ad5OFL6KHaJot-fX!-K8oOfZsieKBAyO6Ql+f9TH zzeKfKtJ9jwoxa-`!l-J9QFgwSKhED-my5hrK)$mazuFzNwAQLp5qrSZ`f+QKNe}$O zp1)R;>VN-3OCSiAjh?fIx0o@&jdd{#;xI-MjrpO=i|;H zw*$Ad?*(?vp?tLbOM230?S_(+7i2A1fU%nyg$APmE*f~%DnbmR$>SRgyaxY|r}vJh z`v3p`TSjCj*&z`nDtm7YWbZA?=Gd#U*EvXo2$7kQomoZ>y_AuCtQ?NLx2W&^+57YR z{q?$B>Qyf(Z_eA;0cb})KB_Q9II#7~ruXRSOm9gTI*Na*HbDaQj&U)EKslEnnIywMLA|bzZ ztJJ}<#hBfgQ!o&zUwG(^0=O|YiC=K;Nh$h0=iys2lo4x;q->2w6v76( za|caS)eC{)p8$hHCM?!`ZH3!z)=48>zOVyc-~CLFgdQWCA~t6SL9QC-{8Z z(1)2{k&}ndd>PU|@@a(c+dInabcefvWpFCbtrrlFx**f*fSQM=)7MxO&ORSM>Ub3Y||dAJO(NoV6?&eLvM_h6;C$iFypqG<3+ z5JdxK-Zx-xWlgH6#Bc=ht!)A)5r$Q*-Q6{Io)_s&%9Ht#_MnKI@b{%$nsj}hC5Zjd zG%Qwz7RXojy!mO=|Chs-32~D{cD`J+j}vw9bZ6cL0j6v-+lm;2mW>F_hk0ZXiv$BQ;AM7q7-HwOwRh zap7+pHY1JB9ZZ{Z?-E9?+-L0e;sRm(ol#qw?rCYJSId+k)IIbBu}jFW(pa>m4dws0 z9Ro+TO00f1@DrnIbCyLxhdjR$^1S8tro3mvoT$KAq@}OyD@c~O{Hrox03(zwODXj2 zl+2_(QmzVpr1$Xxx+yaK@@)WJEx}}8a7M)TD=fVdpG1gYzJOanYryW&Q?EF7sj-=r zd=cZwZ@!XQrvg2W4{NvPQt+8fnT^m7qQ3)88-nV~q&A9l73vb+A>)M@pc=}_Tc!ZC#x!fK~rDXgv8Z>vFoS*gKC3Ef>`8oTwPwA zCM}_hA?bR(Rocs^(DU5InBUcFtozb^=>7#lU5t4(!sZ%Zf)lPVZj_gXy-AGUd!Lgo ztd{f8`C;4Po4s0GH0MxziT%<`a6?&c6=N_YFhqvp-#M4L9_m(gvlgfoin1p^a;BK~ z8C98morzEU&{gM^MaV-UTIk@{%apm8;K_R%-fqe?sB2^qBHnwO^_C}(MJ85Ly+VQ+ zaJ)#+MU|aIWbT>TK=m(L|M1<~Ew$51ompya8&Q^DjJdus#PW{auS$Egoywp-@6&`1 zd}E240Cy-wjjf6zsL!O<4KvD5Re)uh@f$eR^zms$86u?cWgKE*d0E=2InN7_$BQ*{T%ezQlm^H+E|$6;dAo)yiUg1iT!59 z_KiaIKqV~n0^ff2^W-jxcqkP+^xGtH0x9U<_UOf3VWz6ytrQxt=lm!tjS{~c{qIEq zp~zc&u2?#--TO-p_VB-nr?FyvMq9AjV};qzA0+bU1(c%vwQDXmO1nHj$3)09FaJ#9J2W?8Z6$LDfnnW5~e+G6*voJO9O zV}N}X95mb&^o@Pf&vt|fa$Ud5vX$H34~4-N7%^uW=-Tz?%knCv)x6M_FCd1#LZ~!Q zvC^RCC%TtfaCMl+_^ZPfz9hPS2t8WB)lb%cOrWXrs5PRn&88!0II=&fdt_Xfq2^TEUc`342nZeVMM_sh7+*HINmU@JY$qS zxzMP>Ug7{{)pFn|7Rj7!kkc~-=A=XRgl4@RDbxvI;Au?Yn_js>VA}9z623Swu`?G9 zUEoaX1bNm>9QK?=T>q6~Fy5L-uy(^jDr7k@Y7uS^Jq`}=IusoW? z;l-`b-57pT=QzX$OR+0A>!HKua0~1&zD^4jNR{k5#wN>>hfL<0gR^eCaca0YcXagS za`~>ZhVPuBr=WYs3Uiomc{M*{MymYISDofhHU_F~zn$)ir4!=^TyH2pi$CbC;aW$$ z&Bk8w#S)XV>~=RE1WXb=hEVVc8R$K$`tq7$y*d6=V2^gS)YRhF({up+{>sX-Ci?k! z{O=r(?BDN2lZwA@u$hG9*LW?7BsAi&nr@E{&fN)fAGrO_AeXQ*FV`;;-bE(iW_yJI zScQ4|webpj7k~{m!XB2^Hjk4q0XmP-#}2T1A)ggRUrFt6ZD~-chu=XGez;CT>Cb#( zh(d-*MeB3zLDxX1tT_!T>iomM-$>mV$QJeg}N;;tKETo4MdJAIt|@tE+> zE$^eg)cu)ncb&55S9m|F{T_Qq0&Wu#MOS5(cmd)m>vh`r=iFOR$C-6223Sw{2(fH$ z_-Z(2fc=|Uj}()=x$&RVizxUkRcV>s0$*L!{_=g*1n8^vB=xJJktfNCMp~h33IIvE zgZG6M7zITlM?un9mY%-wr(its;%Nn1)jQ7p(0_UK3380w-j7&j>)QXkG~Fq-x<7bx0icEHtDJ4YZjl}Is?n1#D8RX_OBZ>0wJLxC=5BY&nYah=u#RACO%k*#u1H#X-;h;3{V4H|_E5g1cYo$XXlpX!ohGe;sd(A_mfqN zD|!FDkF=P=KYnUYByF1c9Uaep25WPSGNQu%_M^h$GXSv@2DCr`=)@}!=Fya!9m`HOlJnjKR)X$|gojqmGbX#?HiU+*ipn7_b(%#%5ZdecbW9u{7~ zhma!>BQ@+Wbp3ox`JZvu+hGb;cPYDcNpP^A(X$QydbYiW3gWwpr3n_d7Gsi`ZRG4Z z^g~@i9tXeBMaa72G^^qMOm*%o(y3D+x5fnYK{5}-$COF$N7KE!UM0ech1d7r77E>Th5oaE2>I#IqS-Q zAfD;Xdl$Gef`iW7f=m68U9N%5F~kn!465-c+;?xS9coYDp=639lGv(}YGQ@0ehIl=R_B*JEb& zE)Y#;loFvpxJ1jOAFMJ8%+Nh-uB;O$Ua56r!1&te{N8II@farxL-ioG)@_3m(aP#! zNGwSa{TzyyK8>k)Ozvup{`&MG`%@_aQl6HlUr%0x$|ftmcaz_wSdrSOw8%Oy4>xTd zviPy6;JG@x2My!o%w_1n99)Oh%wT6@(F>oA$;Rd5HQ8ek}CS|MoqUyUz^`A>>vU&g?c1s9ms-s&j zL9>8{55Ztm*$e_!M!le{SX68gcq01Djr8qe>7#1t@3Qb{83?HaXZ}NKHc*f{g89y>!=C-}Y3&)eBpiSN?vnfU6{?6rrmh+%JBT(>gQh$*kO^ zb;n1&87CBx@L62J6+0i$K|Vba`nhrIM*v(&FBGf&-1B}fB^mOoV%=U&Ns;0tKj=Ew zpUx<>D`a?iO3mxav>=T#_pz{`0;302=S3Q_=ES$---<%O>EPOeK(p;^QDD7+49*wM z0I@EpfMr$q4OO~g7f49>_49`*Wg)5fTl!IWt=2#(U02O~H z^SgkOsaXi_8Y(4zssnB2>+|ps6IBGdpC^1$(Q6x{y!`ULW1mQ0$$e%LdEf^Mp9NrI zm6kIsSUQAn{l{R!_}OEJ@BFP)AxW``>L`41ruY~mjYIRNPe(AFkzHwKteD?(&Yn!h zt#?{lQ=_gPuKb!pDljU`7@_784Gs6KFH`J1IJDU&QQ3lXv%LP?%{X{^!7m&$285;0ZKxRl)8sbkNHY)fIt1kGxO!xXfDny6 z+iKm*m*sHe?I|UFC#IufRIl8fD^KK0x>F4Q!E3ThM?}oP3s#i^KcWa4Ar}K=Nv)`{N+id*C;jfkru-rgFD^k4S zsDo^<9zH{~O@VcgtB6KnYj@=fiJvd;rcNSTG^zfnSuFkq`;Q|-m8|z8+!u|5eOq8RP=#3Xg`#SQ zCY=D0RmJJ~-4p5iI7j5nRHWUz5r;o%(3iJ;4gcbEhpV`6*;OS_f=hyVy-LMGqF~=VY%=F|-RF^bMJ=Lrb&j~T2*`W_iwpb5JE|)zNa6H z{oZEI!Ux5J>!4I*mZ#?b>}B99=4#$k(`nf&+3r(heHxF&-2S3UO=vKf)?6?@`;g#H z7D?fKXT1m?vcRQvzW8=_dNml+ez8UsC`4?pUEnelS72Xi8574eCvw}DD(&qos_QZ6Oi?hrpBWAm(*wJQ18Ky z+bO5J`SO1x=lW0t3&rf$VXtzM98CPl8o2kReti48xV4*JJf2K#gZ@y-$Invgs2^M2 zdHEDeysAZjq>54q)d;v!rgO?`Y^u>1-GLqH{_UnKa2b8e1Zx5uCjsP??0c=-jjR>f z#5+kTA|$UYk$!-G?MO;J9Hva;O7^`EJ;!3;c9g(>PC?v><~>_^NSw8pQeZ66YM*(q zYt$Coa3vz21kY%Wi1;%q4v2v3Pj;f)s&`!QKtB1_g`kS_pL!5-pu}s1kB?^xN3Y$> zv=UPP;f?NI1fxj3%A{I4pgsVuQ9(F)<3Jx?%8TYu9R%nd?Vb|2*xqM%8w}@5P;j#8 zT>TP!gHpp_9u~K~QMD${G$=XQLXpQeCno4WkUP-m zBk$ZnQ2;MGJE?p=`;OmQfDCo?L%!&48QRQby%G(9r|r}yU`Ghza=bpKE@1j8U!?FK zPGte8LV#OW;`b}^3Kx&nZ{J|CgA=N=%@j^tS@Vrq^{o2L9_PuXB+lg{Qn8652sm5! zOW&4JXtvaBR$XY;o=hGXJ&dXirx)65A-`dljlTnHH@$?I9OoCN`EI^<0iJ=uYN~rm zof%zV*XRa$1N!pQMaF0@gcmcq^|MhfHW~tm-=V_^LVp+_*;B zJ!pAOkK8Y{MVM(h&dXcUutbF%Io!ca$R%L5r=QV83XH7mOIh+MQ~sO4c!6Hebvj9l z_-1Fdk@NIDw+6FHR+jjy9ETy7!1y5%uGG~WQs8*4K-KC;c6;LTPZ5VPIC8bSo{@8R z8IeXAGt+5 z6Ssdbmx14T#`K>$hw|s0gFp|c=bf#~rE(R$`N}z4^j&JQBJp>HqFuL(EFcl4XHEWa zf{UN+l0+T-Ou5TjwF7>zKa^zSS7e`>w&2g!t=MNgfmgD3&c|3dy5G*m-bupkpE#BY z&Qk1hXC*zi6RLN+R1j>*D*8Oxlgbb~0hf;sbK;E=i>^29b5gFake$-o7=7cmVw&Qj zQt;|B7FDGr19Ags8dSD5HK*HMls+m}r%J>#%mLdG7TG?oDS=w=+Tz z$)c-#Z{qLM?-takDc_}27}fhhQ$?YXJWwXz%3*8IYoWrtgXUJs0;Fa=7{8Lv+}twa zB&?5@R+J^6MQtcNV1R9Bw~!#g-E9dEciwn=V!3a+=pL zzBvbado3T3md_XGdjVnsU}sbFzG<#qBAsp2A}C{(6%k_wQs*L=r_mJuJ_vpm;5-&_*v}Lydq=h-^>u^PpY&5$ z%YRCnV+UKy``MJV1YH1r5jowgb3dK=V(%$dOL65NUqEu-@v0lglO4B@f(9`dhH&vr zg??(nJLpYMq{EAJ7iDI56;`XdocjT1MP7&lmxM3~pX_+vDAr>kMr&rrHp<{F9)aZL zlob&0tPt|er}u7i91?70H0nczqtxc6&-`o!+azky##VgM`VQH>YpLfMPaRixQb`Fj z&}m4qLe|@H&)=%m_w+oFGceIps;Jll_jNg+-N_T&X6kdO>4^BdgW7uOveFQY|NvtB1C12R1|4vo@;9S&O z3h*sOD60)MTz_?{3W#@~xHcT^1k@Bh|r)g z43mt5)0VjMgrK6~;hszg?0 zN$*F-H)O)MS%aw4lveUum*1ZMRkwGI5!r$eh)`6;X#sCS_@!HJ$byUy|EWc$CC3Yr z0L}dYJoLi%gAcz_mK>|)^G?x9>VCXEoD;XCr2Rs1@PxU9f82Of=J)?zm4?ZPV6Y>k z80?8(B^4fw%2rBQdb$zA3 zQc(lWsTU3oc<0hAckFo~5}Tw(N(8D=5pd8LLkL=3E>jNsb>Ys~IWX4_?cU;d)(?1o z?!jY&5>phjOYHI}9>!8{2)GCa&^XF9~|QB6QCl zuF&T~fmcaZ&b+877jesnCx4(=P#qRe8;L&!p%o&jDYr}e5a>hqyAm0#D1W%DO$5Pr znB3a4VPx2m6pL%J;o+F86ctgy{&zR*Nbm4Xr3ft}{QH-|<-<3Rl*pJ@`Cqql|Bc1I zG>XrBPWn?s+b!3hsbaV)M0M&dos*C5w6F{`^>7n*IqhoECEmBMLRl5r%KsH5vO3ZOi zBSRSZe#GG%-Jq)gz*!Gamz!1$2j|egDdRXcLFwwSW(4v;Cjy zVEkrQT^i0qOikk_*RJcesJ$THwedTF$q_YCet={Z!ZD{7}9;_3URg@^`7n9px5tqju@ z9|lszX3-a(41r~|Uh00G7+aw{6&43NA`6*>ndJM9vy0(zCjZP+_3-z+naIo1TMPic zu(R!t_%F?OhT-IWc&+O@jJA-~A9J9543Dllvv}22X)sm^GTl1WC6w~>9p&$p9+YnBh{uW}7{OJ=yZmpbF|pE{~zf=L2Vjb586w0w$z zu{KC-n|Yv|lkg|2Ya&eM(uB*kQInRRUaa)}4v)?gwtMKqYk`*dB<=X(y|{*Kp4)7r zzRilS$zO3|?^xhPr>D}TfA{q8v$$%7l*j_P!N}CbnvNY%%De+86qdxPoJUObt zyw*WIG8rfP1DZm0)ZdRBG;0&>SOVh1`MqxSsI7O~Mc9Lnbg`sG(qJ8lWOnC*P4*|S z;oAu-2m=qI%gDg1RZ8(CZ^wijC6!^6%>UKguPW(JSIo8OAnMO4JM{yOgBL{fJzv|h zDwyk^Ln@W$K$^mJmb5O_KN4n)N{tnSvMv>$ z20?6VF;xd;)Yo4YRvM*QHF#`>DT%-JV4DjUpBXY~YK-GH2A{%HU6JzZ)`uc!HB`sF zpXXrzxRIhBX!#OyzDctz!_dZUQ{Cx#e&DGl_~*|I+LV(CMT)7N2AZgJw*HVTq&vcRxl`397fT98@5odX+FGBe?r2L-I?nu>Eu2 zw@>Y-ge|J!Yt~VhaOs}gXeOGn_gjA~>*S+i6pg9@g4I$x$ zhQZ=3g|9ld=y<+yyq?Dx6$AK$CEjP=qF+0q(UCoMvqyvS+c^z@5KZE7wQb|&h@`w2E&ws zHQ#?V@O&#@g}c|3;qHk}Y;eC*^_V_gJQj@zKrt%8%r7w9g%$s-20*uA`rS z37VH=+gL~pxYTk){DH3W17YIA)B4W^BwPoK&~K2I83()?KyshM4&0Ci)!nc&h=V=F zQ7Xx;eilwWuP%og5*Ak@z{OP{Ub1HwPx69Dum+V`T0cdLlcN^jK%c;A zs~`5~UD)=OX`ew8R4=ko=^WuA#t`EMhb>CeGxywY5VssMWi;f8MHFhT7uIptX9AWHq0p{G08~| zJ^aa4r#=e$47IS7g5$ZZ)Tna0s_-qHXPxtmM0G7E;S)vT2;xVY*4KZo;-c@Ew7=xQ zwV##f{#x#dJpD~fjhxuTD@xcQrOx|aAxuYXfCfj7aTxlXB`;D@S|(|SX0HrB!+zY?U6kv|~dg;pu)aSh(i&BhO8PJX#P zRmLll)~J>d*BpiCDB6Pf|1b5fg!g~cp>psHB1OQH4yqRoYOLw^`tGNgS0(3}U_WwI z+>ajp0*k}*y$KVqN#utH8V#?~rFq@x506Gl64SZ2NS^l#*p`BS5sp7kKmHFuOZjQc z+{M~9)^v>j7AF|lJCfe`+c0x+%6E&OWzC>{gCHTn=B{fVxWRpWUYjxKu{RBT*P!m_ zwOQN4XolW|wVW$(=afI*&UOgU8lieshUWVngvNlzpwkeA;}~bTq;4@)FXMLiMVaYeDSZfzR<+7=vd#u3em%8FAmu)}#&+uV+^(v%Gv}-bgl9 z4Y3qOfKl`oPHEC=i@}&`iVA58R)b*J-iB$1!DXvW*h3&iG~l%vuw$yNf<{Wr?Z57% z2fST7zfOZj6}17Q2pEutg`;cmLvUiNFrL2+@2u+ej=Zz<9BEOy^YgylrIY=w8|_nf zhXsJ!w7i2K#sDx^nv)tu$&rzwWs>|e?hP3-${ynWjk6fdJB_U2=ue=%ih_HBlW_5P z;w8%hJ=cd2{d}nyzbH&i4qPl5u_#Zez!E>g9RFCmwr9houHzN!$mD59$`N$>h#$ z7dfhhCWWPgu2*m9S3CBr*z^hvhZ?&2_sh|o%ygH0U`LKBtR{P<@X;^)PRc>0_R#Q4 zVKUT0{<{~TD>&S|mkep$$JvuUiNXu44+Rcezh;6xN)T^pHaotGxUBKLX>v|Xc?q;5^q`eo-@h0u4=_`59R{iVn6?u{SR8ASxZQ}V`{e~ z+DsX+zejF>TK&|-qAFr(1;biTng*^_{fia#MmeQ=En_B7GgOuMRm_~4pmyA1inUp> z|9s|joYiaiW?iwz&9~mP^lWep&Cyr?t-)>9`F1tzcG{On1yNS7wE%(jDgZ!`8g7~W z`DK;(tfRxVzEJ(vb>tZK-MzaPYMA^pnELpZV`g*PR2dK98k0$jY-Qhvw9D6b7n5un z{J3bL&~)_k^QzC#*b2IdVRJ4S)<&TZ4fe$$EeecJRIM^6d|9xq5Zx$kaCF5oDYdku zeP`!2RJgof>;S+2k{X4V8ixLCrodZ`+5@*hM5qBh?L#lZ&`(-{+nyIXycU{aN}(x} z)XH-fEL(5GlTTw!ShMi*p{qsKi>P24a;la1D;KNo)!7*%YmPH#-2a>?ZU6vlp-3(3 z6|nR<*`zreA43dh;thZ$6y2bL0KxE>wUX<3=}urC6wR<-d*kABup(Rc zecgB^1+I0PeAzcQJJ`N3OwLSs3iod4IzvSy1zzodli(>Q)!4mq_Xjy@LeM2hir#ZM zT*2<7{)&!vvRzgDybyHa{*1AnWF_D(_Qu+u3rRdd zU@HPED5{pR_jpz(O-;QH~H@yH5t}ucmc2l8j(qlya(AY5grtT z2<}CAR~XlVoMut{#E&P8{2x`fqK7R`m{GoZk~bo7rz=XMdZVoQdW$bg<#V_&BTdb=`Yb zoM51qO}{TdmB4nv%XRzTWU=<&=VQ9bkqphIqs120jK)8N`fJO7Su7bK--22_GP26LK`?Oe#?A>Io07-<$Mhh2Rk!Y8RZ^icwO z6Dl<1kDuvEpTG>oVj>f2JpID)DdsR4^5Sud^Uy-?LWFwn>ZpzG5yX z0i)U=E$I+fb5G{91Aayp1sz5%r0$d+Z5v`!7asyyScda%fqw5Iu0wLnq<6m5ygpY% z``0p3V7bQU|IQIa=k?Ibc-O#1q~5KOJTUEk5`)G69De?=Wkc>)uyAM5EAr)FYh3ec!6h%; zM|Zjr>L15pc6L37Z?6A1I=T=p?l8?8a2q~}k3FSow1}B5lhvWy7=p`TUj zC6@1}|J-wWQbHsn{S<2Uf~m<-#yhiK&2sossnl|5+r9Kg`lh{zbjqK{mzqD9a~W^U zqlr~jLa5&{UBm|XPn=T5w%R48P{kM7wmKx#8bPh3ZYYYAu!~Nr)$A!4ZX}t&?7BrY zMQZhE$?Ji+3NpBFl25CEw;Ie4QEiuCszw1&oe-c@6spt#K>#S=141BZB{?HIag<1s z#<)SLUW_euKYfyPIQ&?dC-={9_NVUSpEekYs$v~nfnn?hjB0kHdk+1M|;RN zT)b+d`-vY#S!lF7d{KG1-2U9usMY{Ua2yCk)uQGE62zBQlD}m_x$0dE9spBy=U>odX4bBcOa*Ez@o8GZ{!`-tv7BM0`Mq=T4Perva4SCCXR zbnJGH%FB&l?r5fq_jcrDBt)!Z%*^{Nz^KQB9S zy$0qi1{3MQ;4U?t;6Ws&2Toy!PND6EAqLT;83)aOsR7tMM2oklM2SZ{0Szw0<2-@Z zW}Egf=mYU_b*9bRH(kTaMFlMt=AYfUC=gMb-@nWeqQ2v_hs8edw0|Rg+oCQAcfr$x z6HpHEE*no{0y{L)r3Sx-7>ufjK(Wea$h7|+%NE?Lk!fIkdkDrsF2xvt-QxFndt9sB zp9|(4_tG5O9YmV&NL2N@1~+t@?R^4xt$yz}gx`)}X-!2W*l1Iu#213{?f4Ao>@>*J zF58wyM{{8?qON}we)-DMVR#Jo=HM!h$CF0!abs>cI3LXm#fidYY?%^nxu9*P_w45( zdtF`Uv#4*&g4b?~d@rH`QhKoELV&=G^wHu3`d`zL!$4!o@v|v>?!>M>Vi|hE9vDB& zFV(%Ebrao~MWSl1PgV5RUWu{s@!DB_Tv(7FWMxR#mwWhTe3t3ioUvG{r|vMOJe6a> zG6y`x3yIoUTvlM)*91QP?T}KrHa6*L zP?COm06uSuykJ;AhAw<-eX0E0K%6ln@rJjQ|Mq@EO!9|4q@N3k0aq$_Z47~O7@0sd zFu3q~&-;u&k;SRM@_q|W(;wU#YH6@ge7vTF1>N^9o|)IMwp;+Ook%YkA~-Zo{hArh zMVCTHsm2-yxgRnEas#_Y#Ufccid|Zo<%N#Cvn3k|d70S6!ta{POywrAHCYCn+^}6G z|LP0~T3n|d3^%<;&CkfkRk$qQp)Xen;rrySuA%0LT3B8)G@VyTeh0~v!btpeHj~}J za6HGl5QS<-=~B7)pNaAR6m>bIK$Cx(|NazC4qICX=9C&EnUrB z>b>_FA0=BAb|==MOXUBHJQ~B!r4Udo!)L~gMg@QP6rkB^vz0$*3u0N7K8m+I90j(? zgU}iP7(!A3aas=Kzp=fkibct9W`CFOI(dVHWv$tP_p7g=gx?}CWB~}`1eLeGaJA2< za2#^!a-e6`oP_-*Ls)GMG#8HE*p8~T!D>LH2RuwSLGgsYln-uJ12y)S75*59;x`_N zemXOlyOy0Gx^-%@>qCGL`oVats^p?Sr_~d=Tf0b**TgerrKWKp_jCN0A+kXK=YUG} z8ApZJQA z;jH9CDS`5xbXG-+MDRiQO763PJ7Tak<;GWPr`xy23-Jrb@HjOA!R&v`$v4-t(6@fA z&LA2BES7Sp2-mGeMh9NbX-X;sv# z!(w$C-V}<$a>w%W4?Lx=Z1F1He|I1U2J|U~%J*PZ4%1Mtl5X^2etF9!S07FTqvd&& z;8ab0yJEVn*(DGaK-b6&0T>n6P>boEWj8%;z5`>eNtNldm%Ky2x*PF>R%mnG-1$Y; zYvHqHnnXn-BNS6YIH#uVj7xm!ErevaOrD{K?e#WTn!qZ1tCfcuV zd~Y|Y6f_78hCTaD3ox)Ey%90NP&OAE95AD@UH`8Z58U=c+|7htS*_+5jRX1eGv$vS zT464$-0*O|Y$Bm%Ve`gW(!kMKzilSn${L|yXwR1HFpIR$`^x@ShNpKxWeTu(ptAl< z(u>2)X%0FX;1JqEB3E8jBk{S8^yn(bA&$9POFkODicHzd3XxV<7ou%{uTJ?oA6}@0 z%{0J|e}77|W-uK6-CPiWbo2%z8Z&IGQ|=92;b9x!9?pBYqP_02#o=Uuysx@B<|ud+KNSlAKZI@ciY z1l3gKY{KwBhn*Paz2bAmZ%p*h32Z9(_T1C7D5x18Wa{?ZatLx76LcwSy~sqbm`B)_ zd+Ii{jZS?HTSo#O$lYgDrK0A7EMfrL>glJv-*jK;zYa(g0oYpy$A9O~d^UZb8(Fkuv9%OWlxFQjIrV$lQ-gJqk{ zwtko|nep<+@snovHGbGWdIa>_w1?CGy0^5ud9O^u*06q!BV+u(?s3Jow0%=2kl zllcxHu>iEjCc>BqFS7?)80F|7+rKv~xZw1>?h`xUqJo#ceIZI>&1f##^}Fna_ia$z z?|5zThi+Q3b+za1mydsp zo|C$p0jClQ||7#T$+gk@|IPw-a1OlSybgpFbKb&yX( zFq^o)O5l_PMK?>@p~DFHJ>R(<6zI0I|zv zIxRTX(#){nIfLFnm9keqIS7=j-ptp#!s&D6H+Hp$);X)SKKe;G_&R}LiuL{Sz_Wq3 zYeRyjn3_7-hBlURrX0w|=__9EN`!`Ujk+B@*TT^Ygv&Ie)Av($G?^b=V>4;-UyQxc)FvtH z>;#Spqldp&@d0a;34df3C$L=V>AC-_UqIF$dvnIMsfo6Mu7IlqK2*h!&BkTWMOax} zg#;P&^Gx469nf358gM_;5PufOVS(nh8XThUmMoVz~ggt^Iqvw54qScaqAC3erTwUY@M3G ze7pY(s)}#o&b)vy)#0}Y`TZ-0Im~b}txZ|M`nhe)I#&cR19GL{7l(eH^8`?jTx!t_ zH{d;vjl6wmP#0J6qV+TtBrh{g z<_cAHL2O~yAzPS@KYRNAbyjM|+QWD8Zq`ej&?A5oK2!mjQrt(K?(l7;P-HObi!u^e zs(fwnsy<;Vije=8v=jg=HIhT#02m1(%!+>CjSSS1K4j(gqQpdrpIKV2!?dazCZmw0 zU%YAdcJl)=7 z*q1rC5SlQ-dJX+x>Rvpt|Cl0F?SQWEzeV(3@mhD|Zt)fJz(=TSFJUZR|36<;pGtV-a;VcrNAo0uh3q<``kx(z&K_AB`kZWa!K;kWsU)k;b(X+hz>3O@@-TP z1l#aMU~t&OT7*)_ptd}C{a3AoE4KVejy<#k;w=_Na>?u(S-WAT|F=1T&w%Ykz%D(O zQo7i}djs6^a0T>oAftphlx(l$gLy$#6}=Zm&cN3L`MusRn#6?#(>79sVNQw_8Wv#0je=+!s#d)8JZm!a~>I5{a3?_eU_^SDSPD_CZngYf4K zMRP8d0kgEnJ#Uf{Z|dSY{Sz~HJ`{KPXIRB0U?YrZP^3#v?}afnOf0S@FxV}2&+;4a zmWJd&A+w#80GULs1Aqtmg~32anLPgA+Q;WeA-xo2O-+(3mb7g1_4GErBLBh{M~{cI zUAiFt79po-vNm$}T9_1n%UxV0x za3uQ1O7t>g&doHALhtj02JVKLCdmHhl=Pm^g#l+P|6OLbBB@B^KBTWZE7Gke{&W4E zO?&9v`>iGIIorkZlF~C<#Zk3$mD*~}Z#vxl`z|rNhTv(ATv~~tEA!AzidtEQ4(a0V zaJAA1FsSI=*pG~=eQhqmw{U$inr{}V8L4C{n({kreP-Pk%hq_`I9I#Q?Z*pKnydij9p;LF6AoULkxV4mQ?eOjgl z)_@R=UK|bY{Wg}ho=UhO@vH0F%)rXQ6S_Y9B^Q}@4tU*3UnHD=3(${Ua=7-mAw*yv zjdbfb-@K(x)lfk>K=U(#V#L%Ew1Gfta~YSndd9F7cZdkIZO~AVUx+A)-a=>#on7Vkn_Y~c5`LU|*XAIJtD+0yGwicN5aEQR8KDaDa+=8@oB6JvBA4A?zk z7buIWP1k~c?Q=%S}LS$4GFoW^sm%NMMB%CWFwpwjcak+4<9F}cDLiPi4 zDO^(pFhJ&dlMDg+@)G6SH&oGCFInmD!pwTlZmAzOAN?v59O*kH*2p#S-M*WH*_kTn- zQ?5YO>f?q}YpB)w@R0#!}}8 z*vyJyw_z)YN4vlC>5Zv67~{Pt7~NR6HgeL1)%rQ5+eg$8?RwDhF{ zv*8U2SSx^(IY!IcxmA_FA53xm*Jb0nOZ&PUU+Hzxj0 zDYme^U4#|F{h-{yd*Dw3*~d?gO1|@1w$QT;hLD%3Z7m%oT9VdXs1+Gq>P` z^e9dkiozH$;K&X18vNNS!a zJxb()PsF7FV8KV}oi+!UG_Qi8V3hboo=g=4>bdM<_4|mdht_)|46j~113`Be8yPo_ zHkR9TL&jccGCMEc__0Sm2}H5ij3HoQ{O~J=x9eot&0P3#X@bw8;q@eL0*(!9<|?T# zwqZ2bT{&-z?CUAtIGsv9w^S(Wpr+RxklBRAv?6DRgx0z-nAo7_rb-z`Ujcegh^`M* zH+~xJXgM(|lrFAYN)>yhA~LkDJxfpb_{9j9!GL~qpUj>vyq=Z28vnGLEHdG$0a|C4 zRGr9xF_0@b+3Whpe|Axrm`Pf}Q|hS;-go|^uAL6l0Czr1CDK?@%hJVl`BpnV%8nLS zEa%?FA;WQ>$l}GUwNMgT<7ZAxwJM(nzPk5chAoA;ViDu(NW*Kd%n)+*RRRHKk=WBBO9syH2mHMh-!$!Qq$OIHHrZ@6m5yp= z$+&aaB;l0lzCB;IXW#t}C7_uon{7ehiD;g0`s)?tiR-4AyxCY0g?_M zzl_l>uXOzF1H?b-U2?V*g&CD5A5(_ealmz~iDBo)OhNpM&||87<4!0tl0-SF zaM?3t%R2i)C(f36NXH=@SAs*K@tz?=bbBXTZNaP{h?1p$jaw zp0)|GlA3D3i?NUivy_(O6gM`#Iw!b+?@zcjIn>$-aew|5arcW*5{a>pE^L%vB`ISz z-5P2u%93_HAFZBLz1o>4&N$59KjMPAr;f`E%roC&Y;wId?9|?dr#8 z0v6+)-j_b^6DC$U+LF?z6g|S1P#(Dj)Xu@_;wy6+E08sZ2HL`Utg9@QKXr?^jqb5g zmU@PkB+hX>mFOpo#L-Nix=UHD8CTHo_IyH}ZUCi!qk<+bmS4O)Y=Oc*knh+}Pp#n9 zYgUn|`?+}TagF4&@__^xc|rf8$DpU8hvS#+64z#|)67wHoDZqQ{Z2nAMQ@$)?S~Sp z4A>9RRuu~rwpRYw#$MAUOD&|+#|nje!Sju+sUv8umOv>)6Jun@d71HEJ}ji82i)Rq zDqg6hi^mZqhaJC`Z^sWjboVmqc)T=GxR9sreAsKcyjc^NM}Ar)pz1i!HbX4nx|(sv zB7E351+M6^awS?m;_@8jbU!*D&NMLdatJ@eaI4`Hi4CHm&q4M0KsH2UDHPtY9Qu*> zw~KfSTT_F_mKKKiZY(ykto+t0e#Esn+zE=Epg#W?bNg1Y(f9t=vC3-vh&bh3yH@Wd%3tfbXLKm_j z&=IcQfKF~~qF)W%mr4*ohg|~5+3Y6X;_zj;B{{U3>TXC1WQZIp8_-AOxgztzgGIbP z{s_;{ix>dkqFMiaox!FvH>GE70ifWE8og(Mj3@8mLw3e>iL zODt&q>j5d|yzLcvd@C67U*O%PjU(C@`_dv14SrH@x5o`ok-dABnz1FC z-FF>UXCB~~LU7!}ZE=R-#}eOHio?z`%`sbtnHymD>efy=?Q>jy*ln72ew!Sh&Xui_ z1DSsGX*>t-QKOdmgO6@$9lg*#>R)S0CS0)$W5}4o$Yl|ckB!6}$%R=8*k`)?lqybr zi!hr^t#FSO`1GYh6pcC{spt zqx&h6BzdzWJ{ZSU$K)D^g;4J}*~pM2H#R*L(`4WOwrl}63Vf0IUV2t`(y2M<{Ao2W zxPfD@Hg+C$lO};5rmj96j9a&_EeHJ>r|n98WJC@{TPD9nF3lr8$7;1rPIwN$m@m&7 z3E;h^Z{SO`mzTR!Wef&JC(x_0js*tRsHaH+R1I z+fjoS!$xu86GBP5lL(e10SDX-&=Kz`hUm_*pYv+kM8(~=0ae;d`H+nc#uXsmsCxx@ zmFUSHH?UPaUoBaz&`E$Tm&A`ujCT@}w3hU83tlvQb{W)(i?4qY=*Mbel>jS5o>Hqf z<2FRepbzI0-9A+qVj(XkyTNcwR*MW?Y4&TKm{c^!>9vEOH|NRMfV$b(2`EAsa`bZ zMxK-OGnIfxO1$tVtya{uW>vRp2H}{onbrpks~3_m_d4Z{`Ohgzg=m<*z0hI*=Yomk z#OHBwgQSs=7x(MewU2I)LsN-uFCbM#j(6_3PE+g5zf0z5AqK{M_9(Nddc0hp>ZU*o z#!`GXz0yeefQwm-3Umd9dq8%IQL%VFjL=}cUs}~cxqR~y_^gt~+)^m0#g^Ye-)sIL z_H(pNxUKZ|gs)R}-@M3qLr#$nV&A!ZHcc0_O`3Ku^F8a&Zi;DT4;K^q>^7t-F7cSr zJ>t3eaO-$Fj!lG``0kIFVqSc-{`a+=U~v?WdU8`cyz6xRc~l`wTWSTHEn2W7TRzXVnNMeDo%nPvY; zQJ+VAp)|3nJMm^Doz{^|~(*1Q6VJ+%65_pPk|o2+&0MoXbD_%T3~#}G$O zHGM$-t1nt8hlL-QI{z7n(M=0It|pxZSJ#t&-|aQ-;3u^02o@=3)t1Wq{Yjp)o)`8{ zOmh1A)5oLxoTZO~*N4DgYEAs)%aE)nu)L?g;5Wk6991229_}2G!ebdvkhc>|={=8HU z0#{IQ%?jK-^}PLE=43AG-9PT&9!+lB1Po)C`lTtSPMBn|A9&a4kVz*;s~%qHAuRXX zf>u}(U-(M`T>Ik=jwa`fb|Vij7Pz+1>;>1whMTpCJ;g5EQuUu-qGeX;v=X7^V(CR_ zfJctwX^}eGSY)F^&IpW$OOv+s3XxAz{SHh%pqWdf>3pVb@I|DTFz|bBg4~g15@nWM zQSnmrF!NKKqz>l8d%3Z#g4-@9_*|9eDAz@-6EKMx$sI*t(4%rw9H|)`0(&R(QXUqi zRoJRHA`b_J#;eW=vqAPRX6UZ0!u(*uH=ehT258y|i>XX@k{UkyIa(_6PGB-#7P}1o zaeG!|0Gce>E5)sHD+Au1eEn;d^b-h|qDOujjT#;DsU*q!pq}sRPh%*q<-ywmEX2`W zk$0u{?57z=ipnHro$BS?5z99m9UYDsqQxl6t@1U|uMTuYnpUkx8%;k5$++gpfI45} zj+6ov0rw`t#|MB*$9L~{GN|d0Tt*#Z5f@WuVjbT=FfWDZNug!-ZNZuYxd(hkh`Z;r zmNw_pDGT|G4n5>ho8^ou>K>Dp?wNA59{GbdjYK#xfj~J!So~CT*YG?pY%>|czIA&k zG(#1Bm3aN&g8(w{OSl#K3Fa3al3*#=8nO@}LuwMa_!Z{u_Lf-nR-9%DRqXE~BQ~zT za;1wv0c2(c?e=PAm1RG|M64|<**u=CDe?X(nSXl(cK1(y8)q!}xMhrelJM7cwNd++ zT>S6&Fz4^ybewiY%P$&Lt%9H`ed_SemO;93mFB%nDy^BTGtXyOl}9^zZ@(+E6bgB6 zHDCu3T$R(lj-$1X;r{3 z9O&~toUr-NMyR;!j7d^1B3~WLf5-0xLj<(C80EJfsLiqDfI-&6EF;WY&9Msm1 z(7koGHlfGYvq&Y5V!K8Fa#o<30U-EsHpP0OB{JvH%HpC@3IrZ<0Y`J5YVF*!&`Lmi za9_c^6V|Tx&CaY(aWfOX`@J7PZ#qYU$JB_ZK?UKr$D@;hh=q(;;^m$Dpxg;|tfVOc zaTdpFn1MVVCV*d#V*AGrsur3Y^MtK1H0PaNAZ23z)_~jTik-6R3-$&IRcHHrr^VS= zm#h_Oo!=SHB3kR$9m%1?nx~6zc*08ZBGOClom5*gqY5to0GTgJ-=SssCiQ8ALh=Jp z&cQRxJuYT2F+z-8jRdpCtbsoh=`UY`U7NKC#)Ksr)tQ;<2X4kHxz|-{fp;~g*KpH0 zMM|$--O*93dvrzEfup8<>e_0iLEgt0DM|2TC2;Qiy_BerzEI_ye23;_PdB^%suXF1 zjt@DxI~lgg+(_$S<2&W?*a`hnxc`u0$G{m@5}MCugR|kB4tv~GxaVpR=!5Hj`%H5% zPi#)-UH~Iw$f@+_oXV5xO8Jxzf!E3tJK}HR2i~dwOIDws-5N;$`kL4l4S~;}y5Ohk zJ0%g)YE}GfTudIN^V*6j84wA5hH$OH#i$zB?$5l=h!l3d^)FiV@dZP%N$GI(13rK;Nz!L5uGd(+1KZA5P_w*!{a9S8xw~ypLt=kz+zze^+DXjiB_ioGQbM z!>84pH~?p1C9$Y`-xg4=p(Am6o?Qw3y@3nx=00H$$m*_7su+k{+Gl2Vd;V($oy*|; z8u$qI77!XsT1~{c_Fw1OEAGkSs$C%UlO*}sZ~I5IIYSnXRy0WP!oHwpcY4y%O~iZ1 zw{C3rJk9RlLwR4W@4|Dt&^sm2W6Fy+_gb`+_kJ25b`JnS=cVv1G%(W)p5{Z-@m2j?AX;!m^kB|!KECTbj(EXeU!PAQI)=r zIJF}a(s~BZpHuoTrUSu+9<%k&zfIOpel+Tpf9rto)cYs6?Wu`)3(HOUPwtrJaU(JQf}-HzW)-Bixh-Gl{EpR&+cnL5 z8Xd1L%&}w#5T;S#OZX2R=WOx=>izf6$XCCAdqh36o*$#X3sIbH|ZOH_17Q%6X)Y9!;(!ZaY|Di_}_;WIj@3NpE*=yo+* zWuq8Om)OMO^+Cs@M&9|>6Oo6&m6cG(+o5nUsqrW-;~kDy^|Osz0mT53-uJt`7ku|T z9a407F>mC&#S$~=Ch8qnE_+=9$*}<*0Z9@Ry=M`Gm6S>30_(W^lDhJJVcZCf z=W&iddxhX0%c!_=PJUj6xJSC^+35Nr7u4=*DWIF@0i*;d_KrW(3l>rxKu;J5Bd@^v zj@D^46VW=~y@25fofd}#%rQNmm*+Cz8=12h64U3zaaPhL9S=N<87#fWXW9~QFwpo-J(yG?00m=9l04CbPQ5DhGe+6PSDp9SL0tSw=}I7T+^} z>%QLjJ^tu6G~<@S#?=c`^+40)r2S<|-4iCZi|OVb(|i{A=kg3RbaWpkI@5w!?kh4* z16tyh&8H{){LmIU^MYC=#^VBjqf`q^>&UGO*@2zK9T{AT^zT|c^LZoKt6n^f$P@-W z)6sgzPOGzfhY*#c@hkjBOJ$<$o3+gwu(Kqaak@`yQ5Q3>S>4F!rD*A*=;vZ6$+SIp zbcIXWu83b#=FVz5X4njCOY&_?u#~)IoX7jstyB&Y_hhNW~RyU_1J78WgSX z6WDU^ulPQ?9>`;Nsg2E5F#?$P;=4wfMAe0e7mr0rH*QYaaO5n7{u22@382%k2lB^D z2a^~~fX|2e(%`LRw?RiDc3xn1$uVRMpX}y*MJ@q$q2-_+n;FgKK3XAa!pcI@XH_0? z?9zvua^V9RUFmaPTjIT{C2KcscK5M&p$a*WEETQ34RdjN=z_F?H+rtBv!|<~?PCti zvIU-0okz6B0!lDn_fXa}ZrZKxRY}_tikIYBO>U4sk(=^LMPf<^Nv2U%d`^n~n|?|L zB5a&Bh!Bk09ydU}C_S%-4wrw77(pk8-dHIqSfh@{9*_lI)iyX~wXi>2>5Y=iBiU*p z09g4)%gp<$bV|dU&;3%w-n`~gXl~_A6n!v#xz$RF!4_j-@ zyxWtYc2tKVdoR5?-=c6dv&g)^Zso`2@E~HUKc)-7t<^YiYkFp)zG3UnM-rHBO|?#5uW-@Bk> z^VEfr^(rJEhXy|KenlXP*a^`|(8?ZmC6~W*XCe`p&)@ZX6xiU3;{!7%1BRHZ?gA=D z>HTYNG1pa|3IS!4&p**rm{wixHR~M3>FJ^AJxd*9CCkYqo+?O z$$bF!;n1jAMI)i{GiZ8_N$3;$BWLJhX21$bJfDY-v07jDP&D{YtP-qOX-L_b7=Ou( zamy`;AB5iX3x|pIWF}qp4??Ab*GzKqOO&k5zImry766K_f@f{Rf%L^Bt&YDWK?!{C z#1d-qHL=2EDYR{NkE~8b)Jy5%mDsUZ6n3Jihyl)N;&iT8Z-Wy zqr1Jbf&Y&$+c+n2?!UzqP;|!4KLe92(q~lt=ILs!QRM5JL$vTj_5-$)hB`Q8J)e!l zjTL`jvOXAo>*oInKC)_MZs8aC&tJg4+^L=pHtz`UcmdgpZGa@P+4fR`H-Bg&mKe?@ zsrP~_vWwHQp1{<;8bMW+m3=2j_XP2!!BZ{@LEwJEy(-8s3e>Kl}|ePeX&!2jCZ>`^#>y1aMx< zD$8G-;{f(i)}d|fYn#*pcHwWRI0$<$x(7{lj)xG0qoK|J zH&Y#`Dd0l% zZ!+_4aTj_Z^vbeObbr12@M5PC3kl&!6j!B14panQWL|#0!_othx3?&qX;Pdd>i~4< z#J*0jQj`KU3%&w%bO+YJjeNml1>xs;dDyFh?)OWKg|kR1Tl5E`2=&MydF`9*;O>hC z_4ywv>sByfm&dlts67fUXLy*W%gCo>_xa+4-CTLPRWz6?EF|j{f5l>mY!89yuCqh% z0}B)o<7*UN+($dmnM)r}n8Qt(NOI@CwmlC1E0%NREuXqU*rokf?2XUZai{UOxi>$k zq)`Qa?ab_aCwX~!^T??^e|LltGuG&NbPI8`A5TNi_ItM;$nqEM6Chi+zEGSWZ)OF5 zobj9e^Xf14Pdup*?L$=h*r0}Xrx;1x^=k>)>WP8R{b9EP7(n$O%Ng`xxsceSzwdAE zt!dLVtu{)A)Ii`&Zlq2uC+$)XCF6ob@L!BB&u5_<3lh`|R+}G0U-5n(xZXQZO*01) zv8&2znhF-H!t#OtoZQ0}a>7?SsEFs(%Fs zzW*`cXQ4||fvZya)zuf?-9YMh(LU-Df-h~L)rGG+Xd0*LvC84}Y`z#mZl=sL)V{Mi zfBTspBR+9?zh@WPlR4O#@yuSPZj?{H<()Vet9tk&5mIl@iKFBw-UA81$jE(f{O&U& zaDpHRDJrx;&0=q`Hf0%c8H9bpK74Ke+SMSvK(d*Ow!<{`nv)^oh&XvCl3Af!h#kxN zHqO@lJF3wHp>a2*my%1}>V}bB_FTDgC7m02Axss`H4H^F%TLLLbGd!(?rf?a0p-dX zWXaZ}dKy3upYSE4u(Ei4yA)r=6+NvL6mK-<+u3XUwcJREoLp3O^91aXkFtd$u|d8P zxiX1S3$a%{bvF=497xrY zqyPX{JtNxq?uZ5U%Ac#gb2ssn`(jVM5gw^46^8b$Sf|fI7f&N=)UzXsAP#@}@mHt_uENQgcgk<~Y91$E!h`!{ONS07_ZYYOZNg7?WdL++eUrU`e7Gz!`Z=FW-ydoUo~?)x+>h0y$< z-*bq12Hb#MMnIb=olJl%Uk%XOapY)Q~T#0iGDL)n@7^@N8CDe zyt6{5A-aa4UThZ5a@qDBnfE_LWrc4hEoy$%yh1tNW&U`-?Px}QD4a*JJHHo!UW;6C7vPHi~H!f6ea; z>;SIc!As4@Gs0z!0R14BK36vq=UVoXJp<>TtBtk^eeL5pU|$I=w>t4Sut8U}4Yp5R z?y>qus&G6ySRD(4vnJi(TMf8Y*W;q#D{s_6D?_qtIFt$V2^x~&_%(sn_w-SQ5(GZ; z;VGHS_}I^}AzSs_NQoDG7fu`zM7aeGkd~Zgim>A+b@uu?zAu@f#qVe&0fuEW1^!aV zd6Ja6ah7^fupeyx4?sh#uV^K@d8}5pv6vG;|ouic7&NH2i2)Af*dWXR*COGQYOZ;Pb&blo57N=gwe zUmalS;%V6Isc=0myUDWjJ7aXbpZa}r5xCh{NYdaWM9w%6H#>#E(KJ~#KUWuaa3J~Q zr?Qq^gW?1+?5F<{8)eWwye}Pjgt%X3SP9~b{=@7{Bn^vquW5%fRnNSz<5FC?jt|5( z@f5gu8*lPumQ8)FeY|wJXu)amm^Ex7nuZ?C1Qacg3(CALy>;%tpVBI}Sx>L- zpYXTaK!Z&sei1THz@)0re|dAn@#!`cDEXv#0F!DNNp^z&lzqmGx@TBOnc_5~_kN8% ze|7dJ_VH2oxl>x^%3|fqz5Au9#1v_}>Zn$Y8KRWume+9G^Y1+rmv9qjY_aUWoS>~g zyX&I;hs_+P9tJM030o9|Wg7pyf2GarC4dZjCt@pcv~A&dr=ytt#2A?8QvUX)f9IE1 zCvWigv7Ft^vjNPZ{4m8=SSu_Cx zVinOttd_e*ykHH=0-F+4-Z~xsy`rn@2 zV6vF{FGG@T2{-s_@enLyL8U@kpF!a4%F%DGSUWTkugan`eB}Gi%B#~N`=Fe2q3v?rMB|N6!y@9222fU0=KP|dLXbO2)iVHVSX%6e7nb^dFFc2a2_985UyK1+W&el*jj~3>l(*FMk;kO1UI*hiY2$ zkWK=Z@urvZ&5a;``%wVSeeB)plR&bP93L)+JG1*XMb5DM!X+{U{KS@yhLfGofN@aF zrEH4F5Z8d40qols__Y@pPte<&(dmc2-f$H=`rL-=KW2h_nx=$?T-dw>M-lM@2bt_3 zJ3_L~y?~6*L}nfc#2kzZ@?Dwg2r~x{pc#St2&wY6ar{ErXVDB_Vi0*x$g>kvZGY|t zdY7b_@*Vf{fBF)k_x&6i=nuObQ2fnpG3wdKasB1c{cVm_=b_g{8nD4Y?`2?qa>;R5 zh1Gd9?DaTy+j*zoTWgv^uZ+fN)ZOTf#ZyH$slv5tpn&cWEg9fFAEzRc~&(F0zZxuJf|fOn_q_??=BqaA~c!+hLd*;+au4K zn<{u1;l)0;|Bl>>(Tii7Jd;;Pr)D_JU*Du-*5=le38VnK!ak=x(OsDmvxXI$|J*47 ze9cP~Ft!Ny;079`E5<8ws0ki`b(0?z9nPapvoq!C5q5g5?f~u$bULZoL*M}hId5yx zDaFSBpvjm9z&vI-Q1#qV4C? zPvd0_+%ijZT;t9n^XX0@7bnn`(9yP=2pt1$`ER2)-j8PzP12t};s~Iwj;an|lXLC#KCA$RJj?PTFz%XFLIBt9_Ig}+B z+a%RIs0ozwmvt)RC6&6+#*j#r^6Y|O+;Bp?9Mo2kEI#R?VA~I06pR@tt@i~Ur>mRl z8swoIuNBQq$s@Xk@7oMIxcfnKe^_70;byDt$)T-*)Q4wWY9sW@Kt+X46S0InI^+?c zLJNOmcxwLinqr-#-RidoZe+#h{kFj+@Ajm7ZpyoZTYSz_S6R+SejESeY`|5og7?e# zLks)STVERkg{_4Y-BCifNGp1r^!JfG-2@nhSUULDr{Ue$w>r#I?)B4=oZB3*;gc{# zYoP+}jk+^jq;P9>#JzHAnJojMv0M4oKiClDM!odE8<3HJ)JVpZXNvrY@^F4b>}%CFy`n5lAPnT;^psA>3FtU==?ZIQjCo?vBvL?1%!=P0scrmqA*h z%E}cwbpzA!T6G=S-GHd5VMEf7`k_Vj)}WBxt>Y4TT*0Tux6k9;BTMf+n{uOkj-i}+ zlydzcOlQGo&(lOmDp5+4jV0gvll? zNq2y^%3FqH3G#w^9A#Jtvm#hK<#O;kKf&wc#ss7;AmiU4fMi0z_W~PUhfj^nH!CRM zcX}uorPZlcP6rbXS=7@a2((F-rD&W&&ZkS`pc9{suO(ot!`3U}5l3c@W1rHVn+DW>e_h8vsL}iQe#GZ4P z7up|tu;zFv+TN>+Qx|?kE?~`&!`hrDEjkobE zGJO?j*U!H!@5^iqap~z#*`siWcrJ;n=Z&}%RB2zgJtv!L_N)tUYnpryxfPTjn&{%Q zf1tdYO`X$}?fxg5Gfg@uiHASQc+ayNI(K5l&wX8a7Bm#K1ylZ}m(s}?WzMO45H;v1 zAyPf8^E0}AQyumzn(oNKs6VI zC?WH_Mt7g>?KKXwhJ$JF_ud)&WB{&!S>D5=L<0mv;Et%qCIrssEJc)P2|xYb(``y( zX)rCs0uPOSWv#}*3Sv;6Y|Z{=F?oFdJ{1|EARW=44_?B5-1Wl$IND; zDABDTS|3eSJ10##6B}EtmsC<=*y*$Z!2vx+F>L}9=HpEcr9&?D%AVQz!Za|(zgfYE zb*e07VBUYmC-02h_LG$_(M~?oT98cfm<$ByQkWt=de3D`8z3_F&g@U6xuGuC zvs_V8))$mM9dZjC@I!0^={jfl7eKACNlzBYB7C_~kM1tX?d7E?+Y4$B08BTEU91fu z|5zzN65kKVp!;{rS01SwM84qZrv$N!_I%t4b8yY&JkQjd5k5Yg{lG6jY>aBDNA&65 zAq6YHP_Ng>u(TZPabazKb+zQ^Fq^d!gfZJ9L;fr-99R82Trs4Nd3Q+()R$YQ$H6?# zLIb{wIlZug^dEl9&Ib+=>Z}6t18+aQbjYKFl*w0z(Z4im9!lQ#>@k0ke+IC}H9&(6 z_R`ygEbw{h)2abc1|Z2H;J}Z!Z_5vRk$VfcK|q)I0XF1LvOyhZJVvU}s(3vE)c1=G z3dzLB)+%K^D(pil2~e*%CMr(el4ZM(UwD%OP&W97)1WQJz&^PsOp-ejU@;iB&#@O^ z%4jA0=0Y3$JuY)p!}~cWz=zL`%hg@l2q+s9sH;6U-fxD@l=Aku^7!*R=59&XWW%Q} zagxB@nQMqG`l%|#8tckINLdOE5Wx_yKFM9Y^>GHt?ORLq+(S*>9%bY7-6leZccIs(m?%7pXFUzTx*4ISrUD1y>5o~@KVpb(L za%J$?(vkRt5{_CZf`O=ri`gHyXbforgiw4!m$zT9&$Yj)4H4vh4?_&pdPc+GtTZRt zJ_y>gbB-XuI+0vfQ7VwWH@qb(1#xaY`C4!vAHOmE*ib99fd|1z4{J_8G}u9SfnXQw?{ zyxsCAMLe0*t6z&m{atzxIsYBRD|0*F8B@MD3CFI^@8pIC-k7csV2IO#3bCyEtKJ%# zRhb)uZ%HmbA^fw?@7^g6YxiwFBm#B;3hoyuILjQLlD*8yl^;Ri9hOS|w($fhY$(wb zeaBGjD(lu0+84uG-};KJ1hP^~An|X`o3ad*(2`CEft#(e>ci;NynHP9o^m6F9;wrL zi~}G0?uo{ICet*d@zW{k?{CsXErhuMhq^Gg02c=NASR0KSk?-Nk-Vf{ zO+D!=(>y9?(EVTt!c-%-C&rgT1ulBKC<3Lj(?vc*DlXlP8%ZdHoKN;?P~T>{wdl(4 zFbEJbY8d@r7-LVi2V$USmr||{U$&z?4(6yoPY!*oBeH+ad@BKP*J=c=CH#O%A#SuN zcn~Dla|@tV^kn^q0C}CrIZoIsldM53q));0PAuSKor;d3j?%$I5`ceRfJQf}*x)(n z0QM_1s05>hwb(fUN9erj(~dtg3;S{Q9)}MgeB>mp+*Lbr=n_LjJtXOZ*A0GFlU3PM zl|56a;PZtprCEoK8}nn9cq{;Ks*yLaPVZfu646=ivXsm~QCl#eVJqm`%j57DJQuG) zZGmqnPyr(dM65?#^pAWyD=;uxYr2ze!1}`-MEBS-M&U7-n}7WBi?J#bpU1@zV+> zCe=N`Q{bqjcPyXIkrxrX2?|P|F}l@5v-f+(1#kVWHxf63o1AX#(1hO}ZTk|d zGd~yq-Ck4VL|Ew%h}bXFK03ZTEZoJX@e$-IPVE~#t~}34hs@09!!Mh8g(4)9bN$GI z@b)&huijblP;~s7%ba}i3!ZjH2UBod0*btRviK0P-1pV#pV1!h{=&Yu2_;X?wE=F4 zlqNN7>7W|(Jic7|LfI&d{7t~!q83RYCZjnv}z-@ zDFuSiN#tGLKMf!U=h#TAjy9AmVE;^@NH^b|1SuJj^SA^%mX6hYi@d{O5qkl<^CWk|is za(wJqr(e^-;uedr(&BU&8<8O>M^yYtA{Ewy1W= zoW#DHj@AvSwCEIHVwI9W*p@E*eV94Z_SGHW;CaNKE~wnnI{+`a;G*Cc za^@3TcBT=uF{6-RAvzf^MvK&Hllt^wNfOP>pXd@7&6dc}Df|2rg2#70of|(bbdg>i zEwjH0(bMluG_gR*8)Rg-C%|;rt3;UMRsf!(h0RlyEql7O=A8)O&QEPUSCGy{J|O!GkR$rMPy=cqjAJY$$+rd*p?82&w%iZ zDNOj7u#Cdp(5iap)}=V;zdq2DoJ>lw2w?8|kgbPnI`b!QE;f zdMQS4rO#C%x5<8KZDqDq!6o=C$#YfAoh!48=sjU2Po#@atYB`Jk zR?G(=orNE1116X#2RIMZz&gcJ+lq#oR!{c*nwc7i$nXuwu0H6T71+~oMl}Mqhq~R8 zO#AqVB4u0UTu>q3?qc%xv~MFf(zZ$kW)1RogMkln3qA&6+4Ral0{ArY6m`J$+_Ms& z#ydGhV=!;)zq-VopjxY#%+NlN_xG$uwnqM=&X?jws>0_vLD(9J!c=&vx&@=yG4#ux zp7->7|Fmt)hO`$pf80bh#hZJe5_M>VlyvL84BE} zI^U7Xmw~QSBweEJ(o>LcP3t3b<2e+VcPCb_SONhSa4^Zu(cJimgXyLL80pIRnv%HU zC6rg{X8cULcXi`ufT#HJK=$;X{cdS9;nY7;B~5y+M_I~67o<**Lj_ggrpuvkjrF|Z zKtWlD?cG}O_dF}eJJCtt+w2nr0?YBa9*BrOh&@Mm`-ERnR0Zy7@rzOwXgP8cWMP!_ zzizGg-s;*n1sBBXsn{HIb7?jsJ87fB+3%@V>lU64F1yzqP37UXeQ z8+IIHWIkM@@(*dn{NlAnw5H(*lnWq}bta@0SY%K;UG4YCJ8K@Sye%gQq$l7PrVYN( zxt`)SxNw^h4}CohbRHGt-A;++O{WA%m43V~rTKc;`!Kq2ShK3Bv~$Q$%`we&;sJsCusHdG>kEBb%5cA$6@V^3ee^4=a1lgja@S^H!cR2ZzdYaHgQZ(rR{?`m^yU zF?AWz&o&|VT_)RHZRJ&+yifdx!UT#pFg#Pi1)x>uZbk{!Cpa`T=`aLE=}VJ3Baf6~ zZA4Xuf7%&>;Onuh2n@%+>KUb@gD!|>6R3*?>D8F}m!3Y}F8(i9uYJlFKp%<@)F_-R zJc5O$3V$%a-Vq#GR~2m?y9Bx?KPj+&$O=L^Emk)@T<4kXzF%`Ml{iojGJl#-5KjH( zav|XBh+P7PnO7lJ2j?=Fh}L82tDQ54`Tgw#$%BOV;KlP1Ans?hT;ZD92$1vH7JQ#y zVsbN2LHy!GwSEjtmn)HB?*=qvEdc?{rfE9l#QcS;{gnMRh>B(fwK*zXt?tqG*GWDb z=ho-y^V2l+>{dE$!N&%#!MO;)@MMqWz33GnuVzppB3sQOPY@u_4u}x8&U-kOsE^b> zz5>GGxd%ZVSEYJGsGh`RuR;V(yVhOIPMKE%j{1O1hZM^b;Nh{dTL0q61CP-?N=KI= z!C(Zb6O;QP8X2&l)Cj9o03-*z>FEF!weAHgdyg)JXjJ<~{u5pb4S)aZ%%kp?Ap1*r z7=wZM7-OB_a1l48a4*ceI#oV88zG@=k?>%pH*v70>16il%#U%BADHjG7hZb6zHhR( zzul~A5uV+B+W>@9nC8~Q-%+w+?55>%DZ5Ii zo_q>%S_od~jY!z#Q&NFS-5N`LBBa&EtMbjd?k8H^-}@D*B;M;^A7o>Dt*s>5Y)g;r z9;Ya<#UGtRtZn+pkcRg?t2;9rKEs}k>m-%j0~R5TTDddeBT5@*%tj}+kHCN_R%yCT zGURiR!R5NyelWSD3w%1;bY^1|j;%InLoy6JJdKS2*jx2%uo&uXWQf85;TQ1JnUgnv z0CL+hozz?OuE4STq+6W^+j4jPZ19Y$o^F+M(Ji(AMXASn&YYOn>INbzV3KOUG#aHz z5yu$|OSvhH*Kf2@S3J4bqLXsJD(XQLV_hWzrw0^qAo&G2Zn5b|;e~pt2_V@lOs-AHc80DS<8 z2*9V4MG=<$cK`07tK??-@Vt{9Jx<1V$&O;l7u2t$9cJ))_$|~}#XR`&bt7!bx(ciY z->(k?CZxVT&Gc1h@nzndG02q&Mz&WF_FWzUh3B(B8X)Z6QG?7`LQ7)xuhhV_^Q_nL#;gogcmcODC^IeZ@|6r$_?DDhM`lF*>FK2 zxmmpbzl=s*QCmS}-S+_k){$K`HxL6>MZE|2Q&P`4|OBBBs%MHxn&BwiW;xYXY!6r_2`oWlY%RANE z{28FG`{@LVStcK$%>!OxFW=W>`-=EjG0ei;7!_yZ@8aU(ScIN!sJNICp}HJuzZOCm z(majq081Z7tYZ)9*mJb}Y7X`xj4S`;icQ2{*{%x1ZCdr5AtJ+Vd`qSod==lzBs|^1 zyuu0IxXszdb(SjN)qpLIg4=h@sb`25plU`$0b3(ZAH-~glyDXXDWc!#>$;#E3G9>0 zH;!JlHE$%YG9La`-xARXY9iS!wa4L&C4(|?{fkrI67k6 zO7C-QqrmmsfU!JhFXbg4?puESV|%^2%k0)EHFp=VKasRTKIw!^hC3{r~t?9)MV{2(W>Ba3Cr z7*j#&TYB_l8nMCWTTN-DwVokx#D`#efBW3;v?RX5G;lQelfQhyc9th01`d6936Lp6 zl#GGWJ(QqDz5@xM$V=#c6~+;(4CCXv-yE0U|j~dRqX37sGkazut99u+R@)^?2wGR@P^g%}~Yn>${4FZdxB6tlZIA zw~I#tyRXQF?fJzXh{u)0iqdF|$XkcX$QQE>ik2XcBqOGbe)D?*>@orMseeRA%D|L4 z#5)S6!nJE@h?K}IVAJtSjCWo|r9FY^))_ZnuJa1T%RAQeZFSKh{r|d5d@ir%iq)c} zqo+@Tz(yC6)aOZOdnp$}T6sO%j@-m>T|!kIk$at;)Q@bQj=~A#n|N^gL2gnK$Qvo5 z*QJkxQKPE>;SDCMgyy%S+^RW5G3PGd`RK11^9#`$XC;S|waCBO%DG+jPasx@Pk+ms zGu+aID*-1+ilGD+Ck)L5<_X=@@c)MhN0T{X$tirivE%{FpJJKZFl5!=wSz)1>%OVq zx<=o*CpW6uzlY#tjD{IX>Q30cTVd>#||0qd_)vf2x{5vD#dE(>cm zSYg_+&y@Hi0M2l@2ooOfB!_}MTPRR5Eki~2;EHKpA!nXo_*NBf0~reWBno6Dt=F+>q|Mk*ccHJ9$p!Hs;Is^bAcW|~8F8**QRR`? z&n(6qqLX6~nGefDFmL%}A~GU`4U8qydOlr&UP9G1n%RLcwIy zei0+Q*Qsy3`3cl&*=i%!=^Ki^eB~>`+Y^mdLv%sfR8m>E9^G0YP)<7CjDQfEC>`xh z%d4${V?2nvVC4QMU}bQxB$Qft-c!WMn`Xd1U1kPRTr02`TW9YQr8r$`rFW)zUh8Si zx&xw>oz(jJWM- zTGH*_5KZ-fg$I;yS&A1}^ftC|D*gU*xqtHYzWu5*>mqD0iQO#A`)8M<;rOcX7+mTE zLhJ5*zWsaQ-`2&)zj5{}G5y-}hno@yLgHOv-?A~0!uRMv-zw5d8_LFg7&<$XF&$;z z2ed+CiT#y*x+h70gn#T9axy*=|LZm(J9XipE-^<#TR_f>&MN4--};}D$mI~BW^X%G zu~_?<$DngN0>r<5XY+1UyRn((%=$M+7GX2xr!47pTrXuE0jP5-i<{$TPBcnVV0GIu zhRS!m5Y5%`A5fBf_DPIR5YGV)16O-uGe9G+v)jSibhhPd}h~(;$ z)B=a=q0{8W&Vu2%)Ar|u!o)*bBbGuf@p(4LwhxW(KXci?0tm#1 zI9%RGpB3X=vY{6GY7n={HY(XehlJ%4E6Yzl6cl+Y&NLn{heatm1Sj59(ulQ5&Et1i ze#!jccE1^dCDkuk?q!Nvhzu!M9A`|ROq|25&q4#L!GcEr;--3t9b^oo98SRSyny60 z$2VY405GaQvS1ekG6&Ym6dJ*~1!Y*ZrTCftEemKp_`ZtoSxuYnIhWKqY9N8QuC>&b z!>J%7GI zneVvDd$Ne`r(f!L;`i_TACx10)8+E8LHV*hwwi)uul@=t{?(jY{O{#a|W>J9xL z>e2YqPn}*N8!Sg_WuIS0Ouh~~{d(Y2iF0!r@;%w1 z$xAiA|CB$W;|JF1SLfn?S-OqO7;)3V$IWj7RQ9%DzMb4VUY>j9W4)IssiX|6WO&aW zi->mq(v8%Z(6}^{SaBlJ6XNGI_XXtfx2^j}FKAV{dHxSbC)M71lV$uZbhy)6@-^1l z)RDT>E+TA~cM4wnIRSrA;!6 zYv4AG^*ozTU+7wT<3hwy%$Z;n7b?yR;)->(FGRFO ziCGygL0r4_6kB@gokk_yeY5*71nJPnWG@JXme8-CN#f{}<+^v778PIv)Dt&gaHtz! zq6eoJ+k0Wqij<#^)kZI$obB`hkbjIr?iENfJbTF#G~xi&iqrinusxTB1IUxx6#Mq3 zr9w550}b95qZ7}E;#0D4PTs$FYAb<9hk1eCfeC31GN+{SGKc1SnRxt{N#C-a@pzP3 z&`N`*BDX-Xa|<7^3EY7QHA2=0fD0Bok>|-0V1NLwuA50q6B)> zu)@tgUf($!!uM1_i>}iq=Gx!|qZfZBX*Etqhlep=>3CF_7@O7N6o~XObimeDLv|MX!0@u}SZ!LHLOz&srGuzwS z>nO>t*~fB%vjTU8Oh4^jZzkfOmRm1t?7)aQqTFg38=J>xQl(m|JntDmumTKfMw>C< z6P97i_{ujpE0?-}81VMpswEB*rE9Rt+{b$(TTTT1?ws_&QBe4kPsJ;yg0P-~Vn?=Y zuJOt8&oz(AUMD}`G3J}&`M<+55Ls{vYZWp3By^-hoHo$rdTVa1~2C7dc}U1P+7mQ~|--U}Ev%w8RjP{28r0tMWcin&n` zi$~*ykgsm@bb*<%2x&7Zp4-iF`t|waCqZA}{gv48lEE$FW@K5F&~=P1w$V1Ar9&&lAI^X9 z*2U3!JD*?!IjQCNC~SLnz;%l!RT!{!5Y^IUreJ|qf-?Uo=7RD-&2$5Hk?$OQXxI;b ztt#qjJe&)#4?+;A1o~h&D}!Tta&OP1Qr!up8JQAVnwhl<<%hc_mnp_exo-*jDj-JA zX|{JbNBFWaLp>Kg4yV`dGh4mFr*26wvw`+s52b$35E`93Z+bJzZCC*FK5~?TwgW2} z@91$FPmi`$5O+}Jl(HU~z?6!@84m1D@t#ca3|5gu_Sf`Jd)RNvMWcLX>&yRs>T%K= zuaI(1hrp;{@nn|VISB#Pb&&UB`15Mt*jcg>ifzy6Izy?*v+V0S;y zY}GAOEJ*H>H|Ae*G8LPYPpa>7E#MoS=qi~>@17d2tnwYA4Gav;^=vL34bwcXR(>ws zQR)gy=j80`N8LZF>vY@Nvorhay2pGG0MO1pARr_ItF7@TEnmc`)*Qc5Zf#Lg<@RAV zn5MFBU8_QO_ZgxzwQ&3Kw_Rhnq_;&#@F=bwrbu$t^4+mW)~*whGbc)=^d|&0t%wN1 zvlER|yhlsVe4h?A{cL}BA{U^uN3wn+r()pOuX z!Wrr_SqFETu#mnOARWO}@-!=$GW?+FLeyc!;s0##^($6A)EuxU7U--{&A^8nnA^l~ zTtqioHtcw=O>B=+DqTgxBNkR*3sG}6Uhiy$w$ELBmVaKOCa1S9OJCd{PtWYT87xmU zbsjLBrWvus<}6j#Tr=$&Q(AsvCCAri6R13yZ5P#!xX08r%k&yo@3c~th0d1AiSeav zd^5Lq_c?I1-jnCU7B(@yB^Hv6y}T60W4NAsz66`m#JesPIN2BeT$5FNgeJTcjurx! zX}o7M@qOy$P0Wv*hv&%mXkac2TCy}3W6k1Vj_ex(4`{vun<$`Z_ro4lD*uAc<@r-r z`If=r?0?lR6tx;*&~b}=$3tiIQg|h{C_$xfvgCZJ zGd6|S@{_kV%nRs)9uUu`Y}vL#-(x)$NArm8`(mdt2m$CIpGZh7#XD#*lJ-hN-&>1Q zMWcdm9Cl!EaTOuHF`uRRpGxK4`#P_%zEeSN&yjYe=vm*0Z#?lH?xs2u^5t_ip1YXf z78d28AA$_g1Lm^AQ+Zlv--4nM)u_~uCqj?WV80)Y){t#%GV1ehrr;y)`45>qtvb4_ z3JT8~p#qczpHSWxp7@_^?1*HYJ^P@MY<;`6dAfvV5tJL_U1Q9>ClbpEvS*HRL?e#! z^F{hvSYZk1@fkP)k=)6Ir!Ro+2&mo(H1tftEe*;y8A)St>hXA_3Tm2LH9O;}ykpfT z^U3-1MuSQ4(N9I5S5-!#+wqswD?pnXrLE}^kv$VJb7 zAc8KZyJD=G3fpk=eQo2yRoP&T6V2CEkn(3KCVt_Ujo=Xcw~S!|YBt*S@0+M-`SO^0 z3)#$I7`!yw%Mchnd+*ET<0!kbqCr#d6n_|~0A7s-gTM-B6AmQsNE&WC!axdyF0^y| zUiq)c>slJSj{o=0`HpTMq!M4V4BJv>2#ez1@k}RoDl9?E$j9{nePiGg$VmjXQ_bwc zQUm4&T6s~8iZ~r*Ll`o(XO~cq8a=zhwaV2OXSe=g#;DJxH58t%9M0**pHqwp8f|;I zKoPWdYcFcQ3vPHlDWeW$xF{c8AfI~XJ1|TdJFszfuu7%}F(~@Z(QH0DU(iYw(9*+O z?Rp*CSPvCLwaCkNpN{#bj@=Bx7G$s|p*YZiEhmPCm+C2SL>BB(pGJA)N3jaRLC0N97%5Ux~hX^*ingaG>At9VkesJQy8!} zA?yP??f;}s;P&gNNseykY@YngI$-27@Z_#ilpj_5b1qn= zjq|eXq})Wsk6WNS2ZzF}sU`e)oHzq*wN@>>3V$ZnBl7aaGEkQu zouK+NjM4)CvM``l4<9$?q7yusY$l*ZE|TjO%<4<1;*{gtKnaO1G>3e1`8Pw_|0xXt z;7mOALTlLWnb1M`#cw~$+GoMbNh9{_q;%isFEdpyb(Kv(vL297LhUeh85sQ?ITCc} zOWXQa%DLCoI3`T{4ixCn8lxz^Q438*@C4yXeT(I=Jfb!=mh^>Qsp$fEK+r1pv0PzN zFnd1YyE{@SzM~n*yqSjZT@wsexgarJC?^OG5CpM*=4$$q%|?Bd#X^~M7YN{_<1~Vx z1AOQ$Mf>3BL7~!#0GBTx_zg`6p86L!V3Qz$BqSEZ0x7D_>vH)GETIcdNdx@>Sd5k7 zU>f49JN>}op4>8wohZow6+WN6ol`gcF@iKVk%s$V z{CEt^-J}4W$qpD34E@jp!npVw-YmgV=Qk@qE}-cx`N@r1L^XY-bx)7|lhIp# zKa4o-fS6T6Qv^XJWP&rXzO4sR!f%F4OC^`3sc8DvG*|)x z^$q?Le0;oKS*GrnRrz~bgrNdOffY2VBi?rdH4-z3^oUR4P*Oi&A$5)GLWsNTd9Dc5R z+hzGpUIxNfSAZ~Mjx49!=I1CV`7yDftdgA}Ia^v;`l%aTOWkF?!0MCvpx*m4=Q0jP zM2vk9T8_)?7QC_k3~&d9mMjc?5JMnP2h%C-rt9eru(V}m@P0`9{Nu!%JR_OlrA~V| zt(s=>26kRD1bbZ$PtPWz#jKW}AoL|0+ph~my$6??5WfEKG?bHM6UPdUiI8kVf7aU^ z9Ef_pgn4nc)dcD0FpMt)s5o#$Jpma-p#*SEm_9A4#TXHlv~#R@-E6DlI){Kn05Dlj zz@1;l7^{(+3c~p0jHypgMDbEB+!$$PWg_KOKRi19M5d53@PonN&&Vy?A#~HK^$oYM&XfFV3$)KX{_U>NIV`^LC2i*TJr1xN$g3l(%w8%I1{?p^U^ab)45j9 zLJ9YbD?ov}rRZcl1rw)a{zjpmntDjr6dq@`Og`XZ;3{ESg~yO^* z!&nRY)jH6xKA$@IjzPL9;^6*+C&2jLK(wwO1D59Em{Fg_qA19(=^&1*aB*{H883NI?gGBT`D;46I*43U*!&$23Q7@Lh;=#F8$Ja6*4P z8S_5N*KLFoEm+ywj*e5#0W%B0Fi+OalHIbR825(qI%GO&`wq%}J|(PyUVXXL82HCk zB(udW6^R4|An%k)ShBaS*BzwrWKAA(@CO9*tt=f!wMGh2RkUe^TJFU5k&m|&7Q?s$ zs}txvsgZBAwo_~dnnC6V2ty!kxXswg0OrlE#R&k}W|ni2uR{(d==`&~LeAg5HT)uQ zbHhA}DjM%)#`5k4Na;75ler&M$8m%07*~SQVQyfXCECaG8NLvtM%SPbK!k~_M%pt( zf7!&SpLqS}dv$wAm@^sR%#q*-QdeEom21ZDja=?q6~SoEun(_C*X;Sfo>_mE#bC8=Ln zHSF*4ib6HRXM--}Z=Kh~nYJS5(--_!`y1z}IquTbds$>Ev?Chb9C3mjkGub-6$mLj z8CN1?BaTYSd~F>*eok9nU{U{EJi@o^?j?Ng>AIC`Z1cwXVfsPsw)fX^sO=oWf$Sk} zxKujYD#g5~7B+XNO=T{uh&p#r0l()pYVQM=_jE*^|3rn^ul-#RSE`zisf9~c&&eH@ z!R>==F@QqXOsmzF6{ddr>kW(_JCU@?8auB*EJh&8-lq=aiTty8N0Efx9WLt1Al@E( zM7$j1mgsj1G}F6Bc`x?(O4~LeAOYY6rGaED;&wuYoBk}Yf`X9C7?0rOyZF-;IHo8) zM$%zj=FI-U4y|BkXA_4mpOLtHdQ#hrqTjJDglY6o#A_XNpErwHT7g*5xVK;cfycP- z2-{l{#?AIg5aEh!W)GR_+?i`XxaVWu?v@db&)|dzoJz8WV%lIcP8*c=P?+;yJXvk~wgtGJ>u%!wshnH+O{D?@V zkD1sT85R1M{<%@b+ba)Ynb-v^R2<*I6w4ptIgo?94=HH9o( z6JmK!p7hTFb`ACy+`{$_tBQg#GNJn)P2E98SS7EjBKhznAC0}(l!M#2*fG}IZLfT$ z$cyb}JDO_O53ybQg!y(-!V(|4L6U5peejO)F1hPF57n8?QB>3QuOR$+{L1~C!k7a^ z?y!j&xdNPSaM*wz&Eg54A!J)7i<#{;IPH^d5>qO};IN^`K|xg=YLn|_HFd^ok+RDM zb`c?*UDm$6PMeD040+`h@`P__TES)>eP!a|{=27`MGMMy?#_~70?2Fdl469zM72S^ zck$=)YYSOmHfMEIer(*_1@~K^r8|Om7?^5*L(+eXw`~3+$bmMRy45{=byY!1-qVxf z&L#@3vL%keUZrA1;E36o-=%{>bl0q5SN@H(+|I35H?n2cHf7lPUikAhGBj8g%_Vo3$0rT&M+xz|mWubVj!+mT3R&$^~YvgIb9XUeLB(69E z(}q+(xiAfk3Pwl-e?~QwspwI9l@!CPn5A@)fR@rEu(qNDscQOGSLBxKf}3PV3e80e zzqFTIFfK|Lk)5NqlU;lg?n^Ley_-HhkXx$P+zpJ~_^>&GD?2?6& zrNK2Fl(!Xjm(50c8B6fYIPY=ZpJI>J0~|oNyLrygcww%dg5O?&)9F7&Y0kJvm`x%$ zVl)U*qZgXv;v0)h(<=(g25cyb_*tV~S$QeiAn6hgbab>Z>KzNox_8har-#g3**Ce4 zbuDuqaGoeqJT;GjhU_(8kMc6+MGGfzX5&rDQ-}xScCQ~eZqA}8JPLu}mU!Zt*=LQE zyLgwi@_!1h$-ZG5pL(zL-=qPnH*d}HZQmBnyfrRl5ILIvH_3^Ed7$h8^}^G$Rd%oc zyj+i1A)KF+TO=ms2GH2TFz5KW9MeFlyKw30h$N-}m21?B zG{$ePa2VPb0^uZzH3_FZ{z~9kY9wCke(*#%3rp^0+1L^TU`Ar`J+hN=z`g>P)hV`d zN@L4@g{ZFKz@q?OGb%i#j-Y|;OM&$V?bf5OlK*}{fi3m$yO`e@haWOk0_?WwgJ>e+ zznyPPrmL1vV(R6shFF$@NaD6y#<=xg{Iiz|_5+i4&2ie`x|wSUzjUX6(QH6A5D*45 z*n?KmtI(mvltfpl3mulo=KmlTlatX&ch4Kpxyh_fB>Is zfP;~qlfGXzJn=*p7XPDJA`=bT@%Xv0Iko5n0K^F=N)JEAwdGmJtrmKGn01taH@ngG zv|#+fLG$hl62Ozw)X8y_k%~qh2L2%epoZw%{gAc!IiC)keqc3K+rJA*UgzHK|NYCF z=IZ;uuD)6W9sU)B_ibojEh-J{CP)&`s#6pklX2?dx>JQ;aaJ*otiaC(!|6|@h@_n7 z;DoRa^Plwum2d^gta z7#?Q0u#iWq8sYfj&R`pG{xXu@lP92xZg}+x8%#caM-?YE%3` z*`7KL(t(<@&YV6hg5Vcgj4%bP!oLxW3b|Zy4fl86`**zSm%lp9%}nB|&S)nll%D=1 z;<1kS>D}Z7L^GW?vvd@u`B5bA;a ze26qOeV##lEG!1qkG}M4O6{YEA<*!60UE<2gl-v0C z{=m-ab?MTn_1u};zJ&Jn%X-r*eNXQ=`VA@kWKJ&46$%jiEuggv>p{A#d4dw7P4nFW z$0N|4If~*tE_0ZB&K;DG6akYg)hSL=@GOdbjzM9`;GaQ*a`!cgNJ5KJ5iA7(ihLii z{RaEdYd|Y5h5in963BuDZZs;dhC6nt*n+35F$5+)#rgMKJlxmH#e?R4N4 zs?qZUIMU3K<;{EB=1lvZzV>5tRa?f)gf?1XGnPsMIxE(U-=oKoU3|KOLN5bB!EQQemyIJJ2G%)=0{xm0A|a&UZ-;!Y*D z)7tTRnl@hteeCY0>)9lqQk(e0cpSxUGZ#KY;rryQq|Qh!AsU|mhcXt$eX%EUP{q(K zpk+B3acUOaje9o#y)*&`<)w9tpYc5(DQ%WJ)AeO#bC9F(V&gw-;kxmg;Hr3G^W6Q1 z#8b54ykW}kKA*6mrGafFJJUSA{Az$|lw{iq+kG?o0L?hiAywwI?)KB@_ z!1>@(3Xy+EIbdhXV&dmo2xCCu$48EvJ>#DIL;hx_fXp@@D$urjux0D}nk+mk*0i&3| zfSUhJ$7EJz`OwIBA8SLQR0(s4Ot_$OD8?Qd0CobjHS>`T+U|odoG!rAmFt)FdiL>R zOYNC6zJDIK<*{|~0?YUPRqBxc#Yqfw5mKx3jT^6&z4O@@!HR?LPTM8%%v!5+E{~{l z*XC1c!jDn#A@FlsRYFT`DL zCRTdG@RzLbqw$XJz=128j`WtEyU}N%lmo3S`uAP~g;FaZ=qQ&#BnCxUp0koA=sx&*?ACDLRKEusn)+)75qzS+Uv+Lr`qEF|ow}I$0N!75;e)7&hN92L zc?f4b*Rn{%H8C&reoN`S1iE{EiFaw;0`u=z7Fvqc`i8^AG)#wJp%eoA^~ zlb1qHQ(6dF_juTV0`BU`lQy?~o-TcgmK~&`yt4V++!T?(>dxz#TLAFwuhX;*2l*)^ zxLtJ}%Zmxea$gG;)EAeiGaw@__=%_#khHOz{OvF^s#ME@GUk%DVrS^JA0lN3pTGEu zwc?@%UYSyz;Zi2VRmWY)qkZHkO}j8|?DjsPADmWvUwLIr4*$wF=x=lu1x*&LifbPI-cmz;a36qtJm_ zI*@82?pjh7DI~o};^Y6fbm7aUhX3cWV+Z2N#E(0Qw%A>5uo;cep(qx`Nw`nDjGHpI zUHx{wqfz3dJ)5c9zzE+4KVN-CF+zK)@WQ^m!c@v`z*@p7Qv0tJ00jOqgyIGt;ixGP z+!9zbhiBXj*k#UBC7@m3P#8kMXI$J5!P%I#uSwzWjh*o)Hrday6n{Z_M0$VlqP0vo znTwKpOXcXdy`0yf^=m)axRhZZ+CKxTsf1fRK@W_s4)}}K{rcxA&% zvMkFcKF3A(BhehG=VJw^{N#E0R3HXeUdq!J;KbAuEgE}ViQNIvBrDcr5&rZ0NPIJ#_15q%N zvP58{J})P%@NT)3=lm`65;ExPl`l-r_ zxY71`qdrM@Q4%dVMB}m|MUs2|yUrWy6Imh}BF9(Se-&r+`{{!4C>T5TcOZ0a{QGI2 zv%@j$rx?eYh+`77dKXK6`I+C7Y&DQzj$@)pUgYo--?bfUSWCC8D{i1i^kLr&1GjVZ6Zpl-Yh3Dl}9lP@)FE-87D^F~p27+#`IBKw!uj3at&&}ctH*l`-+UA9+^6C$(^bgjIPaxK?IiWh5U|C#0ABCy-(K(Sy$j6)=R#ic6e#MzpM z^mkFlC%_q)<^I%tg0d1I(|dyc*=$`1k2C4_<;QpNmRRe!fU|!VD-E%l_YfDW(E4u> zw7T|Kor7bZ zDtWJ|S4TiB^OI>leE%ts)_0aFG8djd@NHN3SynQMzVmir|Obpjof;x)(nd zCwOCQVk}_UFs-1WD9e1SfuGg6QrrUxh0xRHSGa8Aj(&{-RxqURqo3=z$Ia9I({d7Uk)kUoE$L$@z|Kssr#d4wx;Xnkv-{X_3GL@YRvC6~z zl&K7BShJ=6A5xjmwf#_UUuJH`5iu!5Nr9ZS?h^CNxSRnANgWCSJzp zJAXS?@=eVJpvD>`tO=Zb1RVV<*x({C1-y^FxTig&T@}PHa2Ba3s!(%6WDR+Miz)a_cC>Pzhs9nt^H}QMH)6+ zTQzV50isIL8Ebcj7$lsr0 zVXN?0i(dO%{I?ar-=bN4tiaBLDYN>yI8A^GsFGQ(W7b0 zJxD++gCr7-;^g*xF6)*B3v?R6`p$c2;yJXJrD7KBtzMd8o^>~hy0ZF zc_Lc(sjrw-Tip57gZv~CcDh8 zbw$npb=s#vNj3*tWWm2L;2+71MPb&9$}=BylRhe4Wy3-iW7 zYDRrg{^nQWV4U(!RdJ)Hk=ZS?|GuvKMhu2dhW$M_>Ogp6qEE1@3RIb%4!9hR2PzL0 z8CeLs8U5dl4OYN&=R?-wu#=OMgKwYxzLAv_k#yoYF-H9|S>1t9juU@6P)_qMm>6Pb z(9*J3nYB6h)lHhpPGr?qC{Whajo~T@iEI%Br z&z+iE7$)N2t-`%}xQ)s!8De^IT0P#W)XR^WTHK6Rw`miM-0J3e?u>&!#Lr z2v&^|?2+ql+9S9bQlTc%m0*#&Nwt_X7@J0<(AV**WnvcL4@J9FKRfN13Ca|I`S!@& zv8YSk2?fK>wG$Q`&LtB29$a2ByHDG#{gW&kss?Mjyph9UW7q!XGXvyQxJ8RaMRb_2 zc6KEW8o6~@q#!TLKED(@5~y;&{OK1pRbF4kO8yKG;Q%O`PDhm?+My~qq! zWl}>%A=KJ=CuJtHz#{LGBo7%YMEbEBsB-XLG5LVsl=UE2F1W2X3}xM$^cKs>`0#SB z?Ms@e7~bm8y1>w}vP81Ql`B`MzgER8nZPzoud<;2CiXR3co9Rb2DIA_3p^mf-S~oL z`|CUqYq)Obo-gdNh&T{ff9Av4G5ljgS%U?KD+qJcS7BV0Z_hr}Z=$9ZuDga23hg>f z33I$CQcz$}RN#%1J)In@+wjHuZv`NVjRwsaDM`m#x37>`nr3qHDvEUfJ~qwtTtc;M z;{H>m+xM3YK9H{wtfm|ZGfhuJXEJ%#FlSyv&@|r_+cdQD3qU07@cAPLvQ;_HbW`b* z;icZ_7n3pj?IDkwOazI>8*3@v>cfy~s?HE*hf)fDc>pK4lCm}EmhKGsLW`E+@Vkmf zewwVs@BsOvQ6J^Fc+ErD{=5|Wak7O zvj4J~Ywxxp4D0<3sM-w5?{3DZ8|H?^PVGMWlm2_ZARIt(R1Az5Kbz&Cw z*q6X6t-ZzjQh{Zn_NQNlloj5Acyi)dJM%W*t-bPL-BvBO*6T{Pj3id3z9W`kWk^es z$NgZtK|pu1<^!vcPR7D12J=RxDD{v>Htl+VXo&?-rp8ZB-P;uOmzl_w1WK~ za3^p6?RL_Sl*7;=yN6Y;zQB){wr5{R%S)$>4^?C{v6+$ht(w=v$4(mKP-(ZlkKl;4 zl%08>PBdF8jA#@S*RmRjc%0e0M#~ML+CJl-BK!4KS|srLx;qlAUe>2z3B`X%Ln+@@ z7BXFR!M#W8)f()hu$Rij3bz#{>5cX6F+cCt#v)K4Us6+mXSuc{gz?*h*?J< z{qtVZupQLLBV>6)Uv*Tm-jn}EZMO_{oX?Knmdpx}Jbifa@@FOwYnqA_?Ya>Ojk2td!GkEqj-xLWq!E`dIk9 zPVjZ|DTYQl9MNdWz&iU@QIHBNS|oFV<|~#@`QqLzlR=qoN5994;s!>1!n>rHNd4W< zt@U6)`8p>~T$ey}POY{98pZla<(!LZ(6SAzVOk`v-V48Qi!fUxxo#YG^EzxC7NAFq z6-`_XSc6^^9)c9FetQUaVr+`o4VjYNsoHgBT$qi0l^emh{gt*wyDN8Jx3yAE!Vm*J z{Zm=9Mq&zfcZz*?cE6d|xBc!_;C$p0y5@8Er1)iu^*F8)#Do2xHt%Kq?X(OXJ0sal zMY1iPp=b90GO-~U=Ed4oNtok1zENONeCdMWA-2~1nrmavE(_eZ zx%Q1yB6N9JSSdK@(`rsuM3Mc#d;k1P?p;-goAhWsK%6Xp^?VFe(Y?{gB4*_}kTuil z32evMymTE4lV@TCYf(?oK#J#NUkG7jMZeJR_b^tT7g)ytb%uZ?P~8Wxq#)_yNgOfj zNu!Uj_Ez_>lVyWxK5(5wlGI%a^CFf!9liTFa86IJg1LI8g6ISvwMIZ6-m&p8>6Mv# zm(<|FxO`=hr9w1XSH11BKxkK>iY1kCQj1rY*dL<$dsqVIvtk)Ph%vUuI*4&`Zk)e3 zdb)8GnClSM!Uk={{LHG|i-@YKUW6w@FNkxuc5mx^(bc&|_)_$der)imNZ=>hTs%A7 zd0e^l6UAF!1U#J*Gs;vw9M|}2*!3PyYjR>?Fykz9#niV z!`+sb=_NGr!E&C=k1;|axkw3a)+HZJnjwyy_d#=e%KemJ#rl{vn$E_X- zIxO`9t-~yYhcB=)*bH^PYv}LG3aZA9yr^zjKHR zEuHz66}fb5JyJtuXIn62YyL&!wKWV4ddZ-R+sHQlimZ{no?EH;6|sBImoH@23KT8k ztm-hQoL@=?saz4CHhnXvc72N6ur-Bu+4yyz*SBaLf}hjwo3^7D_mZvL98>BG{R14K z|F%@9{w@wKi1x7()(g6QA;7sChN=60#4<;~wI9&*-|IQSV?O%}ec z#CPd6cHEOw!dgOk{?Jj~#VqzmfhwD|1utJ#SLeW9+QP?=0$)}tlZqM)JCDL!L@V(L z8Y|oO@}abMORQcE*tkAkRt-oiBHpU7Me~l5;gMnTUJ&WJm_~xn8`7PTUY+lMwGNMw z@+7~Sf z-=Jb+=kd!6Bn6-8w_~A7^TSTZ=2WN13X1C(v=@O#j}T36C6k7fw_19`ZQ9@aTjQa! zs$gk>U-YBi#k)&Y0fBxQ6{k%Y&C+>tkE^eA$ea=~0Ry_rgoHUVG_$=ILq6~Pj?roG z-U>9S)dbVNqs2tB5&PWz3pNT#+63`P{3IAMR>rSk`ZfDvKjES~ho1;c#@*E_B;E?% zvTP2T`+5R$nU)tJ?6|URtHnl-$;QLL7TeWUA$S*=NP%TT@ajZFZ{WVwLf61#zj;en zLYJy;(j;uG)0*bYU_g+H$hY4y34<}}c~4F($M9~=$(Dx3bDojDK^sogBH!H{_wkvt zZ{lQZ+Wj)PB4xYxb)@igl{LQG|K~_j%X0sdd;dzh-oIhuG;LOyoBr}MKDJ$M7{@8< zP6L8bCvG-|HjwK*`(^Pcyb&v%dVrZJh)skUfmL$nH<yRQ0L!*ZbiOsj<))wJSQd$zujW7*TdBqdd@)+U{a)jK}6c+l!-=df( zt9bREioz%vs()E#lD4v8U|_{Z+btALh;`uBYC=zT?9W{R-Uq&hPWhn2(;*Uow8oe&RUfBk?bYwoZ<1XzX5~ z4WtE*w#JUOgVv^)-X=0Evkp22ZLDan8BjVUV7j*Fe;(2 zQNHg4PR?`m`50TISo~doWq@v= zvIwH%?mNY{#1g(9SG-Mjhin1$H{09Qm~p5r0_HF&`dzPiQ_OH#Y7)kPm zTGVU}P$?s!VqUTBV0O8hWnM9Ldw(N%+N?UA5=!Ajo1|V@(!HH@7it0Ut*=!O%Bn|2 zK_j!lTVC4nv?#Ep6RYU?!+IUl(wRaC-5Yn$kBEpFnapgxp@OD(2k{ zEOxXhYQIr*X^Qo+XcB(2tBjKy`WQkTbh9;#Sv<7u#xF4fLVsZVn*nxgl>FlnRuSTi z%Tn5@=R`@XC|C|TS@kFCav?FQm==)btToK$FEJSg&r~NLSuDyYFHmL5)Pq3ug9FpZYOKi)zZQ8ns-9_r+`uq~c+sH)*gkLmxysL(=xO4SkoRbNsTOIzRbDm0 z9&;ExWy1ePv%?Oi&#LET;n*2Ow){&e$-%ClfB*beKjdBfnQ{hgTh9cK0n4G)fG+;m zta5)F!El-}awVBFg{@(*cQ)K2|K`r2)xe-2@A(#!HOv$lXn)#j^ULMynCHaSps&lK zznx_yR!vwfQ52?0UPQ~7XiY=gpUVg|?13uJ0&3A3=Iza^6GibhWaNpD9*#m_iM#pa zpW8s+6W`YFdSL`h?v_WL;2k456SkaR7`8mb_qg2HRw4FZTml-ryDainbwHme_*caY z#zP7qX8j%>BHlISDxa)K=atqaJTdn*h5oFo={wJVgaSJm^i%8#qiHniApgh4j4)_C z%ntXZ7lFqOR_j0ly@sh>gbtiELhd`(0XPh#T4meF7C2o)-qm9Nt|qUXW$llMi}=m? zOTRAN`AzsseEoYZd$J95Ba2SjL#;!%%&6L^!fBL#=YE|;vmfvI&7L?d>ZL24&eX_2-7PHLefEr6Sz()=q|^VS;S1qn~VD^CfH^ev4CQKqOsFC9bZ_z z~X!8?hc=^MhRFo(4)Icg9_~)>R5D5Ycy+HSo!)w&FA%rcNPu%WzEOu4I7EN z`Wu)e{p<^LbqpmoFN1hh;VB7U&p6^5{y5Xo+fRjMNISmbA%K**J-2r+X$U_I^m9MN zLO-P@7GJD-lE+Qvez60g`M(=Xb4rY}CxhUsK@ma~KB-Mfic)sJWX+<(9N*o+mlrRu z7wTL}WQV-?wvCfI{8)N4!~U~N+q@!!6&C1-Mxv_9$5K}zl1u!s{IHRyr(v=M6OMgD z{pvqN7xHxt2b+2ih(ivBQXB}@?!t`A2-UMPWE=JmP8jy6Sp1C*G}SL?Em9IvmKW=j$8*5d~E z?|~}o7%OP{c#r<7j9ZF>jKls?L77A=aEow$;)e$fi4}T*aJ#=$UHISGL0j{c?b8y1 zRzJ)oxF(C!UJ}>Bj+mchEQAmKzb7%Y2g^u?TE)$zGG4Z#dH#I9qksBW{W6E~yCf*N zsP_aSw{rIRFgs-7lKyOE-}dPw&Z!Y)aGO-f4pUqh9ZbP9ZRU=U^{=gALty`O}!f3Hf(HVj+x@y8oeYI z+YABqi}K1OBR3Pveh-=868>SSi)t(r*N&b<8p|R@WB1NADvpw;iw3W6VESF^#V5cw zEWArwne<|44g0VlT{ytB(V*n?R$?-?*uuvuFRn05V_pz-d+hf>j$9JEb!V8ozz!ce zsAbr=1vnf33i%icq!m+EL@D6S+7OuEe}5ko?MkgWk3+M`_$IS@@V2BOKr`0t(VW9ljK5s=ezY{AT5scFwE0 zsHR#HY4+CO!M)8RtFNAxN3xF626j$g=mW(}8kR5<`O;d+maPwvNlXZ-?*n}K%7qtk zil@9}%+?$DmHCnwzY}Xi32PYOyNqf01DSHeFwVE3Y|T%}c2u_Ugh){wpEcBe08a5C zUzShL0I)5Wu!cF-aqG*(UlvI*d<=UD3w9;10hKu^_ z-#y9N>-slkq_tiU$00Zxw2=S5;P|#W*p&ND6K8xCH)m4)LGzt&zJEvW{H(rpP~E^8 zf%msTs^`7fVqs;)-raPjUXZlO6@MnEnW|nsOMA{}n>UH>xEaGOEm_~C1V3r)OR!;sDaPO2y-dY2ay+2Ts##BP5& ziKk?vaV_*juWf75N1WA%DvJF5MQEOzR^f@}&&3t0P+GoR!~Bl!O7tR>Q$k+I3RZ!?QlWFfMxv+S^jc$;832K`4t__h*Xw z!#BQPp%l8R4L8=+OToJXS^@+VXR01IrGVj4qi_*{B2k3|e(%CEG?dSf`Mjpd+1N%0 z!AhCX(B1c{ghQFy7Cf;QJWIMLaTXH%IgA50%Eu{b`)lZ)mc{ioK0q0@PCko!kbrry zfk8|Yc|8eCF?W~XVyn$t8QInwh;THqo!RozoP0{jhVR>Uzps9T%>@A)|8BTq&oArY zR%Q0>ntI3P=vgmSrhSmbD?fF)n}ho<=ZoG*5yJ0Pg(g`gMB!5LTo-xt0#}B%s@)6N*K?-)x>DGZc@p%rX=PU9}vs zcoT|ARu#acjrao{Wtx(gcI;0m>1`&88R?onyyJF!q{ZB!_<_!gx=D~s=sK|=T9U}1 zOtf?rE4qNll33{P&@?H3=MhjKk9j|x6J;~1UYbM9V0Dtm+*3xP(MF=IglscH1*@GZ zF#SOMo-ULNOh&w#NM&&vb9Hv~H(bue11lK$F;0F}h9x?*e*td)$wMX_M{eTI8`|y9 zvTT_&vVdRRoJlnOzY&Ef*ZkevT(knXmOIEh$NEBw*OkOo{`xDMUv{>;?9*+IybV0} zD^L7~6bUgOrQvoKP7y_xODysZ_`dG9tM~~Xy7}|PmkW&m;OjV%?jq^7bv+$J(~{Un zy!lNI!$s}n?$j9vjakshvvw6nC}>BpI03}r@`BYN8>nJ!OrmJEN_*`yiWLcP&;5cn zHUK||x!p@N*ZuwBothh8G=mi-m7;~{!p_=cclHf_%yr+YV&%H)9jt>dwdrWu7u@sV zbC2EupZYxU7(!bO<)6AEx&C}k%%OHmR(|vd;e1}5X5()qc^(CPMk>cvL2wuLNx-wDVmw1w9yCH?{O+7_4(%uOyO^x6{u4mq|dfy1iC6M!|ElLAb^Ki zT=G+>XEE=llQ;mPGR|*4=3Ym^&2$ccn-!#E5v_E!Q;G}YkO195T3`Tj*$oWf+5QR~ zZ}I57xXKsg)(3PfY*;{&!o(6W?;i z!*7t4r9Rp*Yy8ef0f(%oR?J~ljJb`;1pyj%7dnUzDxX&#fnCS=OARYIqMAF{rv*2k zmIwpy(XOmvMNBLK#P}7Mzfh!o#A?@&@jxMZU=8*o4&Vep#cWkZdG=h96Aml{fmE+&*i^f#}oGeeTG#9a!8JjjATdA1!y$!(w=v+bYbV$ zESHyiKjq>)LO<5{8PP4WmfHSKX|j>W`~c!Rz>{`KQcUjC#sgWCCsu3q=1*v373bRM5XLd-Ofou*)XS?ALG8Vh{EL85onmcmcA7T&kzm4cgZW zYoMK143W77YzMkZu7K(jk|NFH`iMeB!$F^9^xo#Z^PuIYzB5)1(2`G$hkaWSm7`(Q zqm=6rVbm@6@M zOje(MK?VMK1}oWVDMN;dEKM}uTv@LI!AJS}K)|0cSI?>mWr)#f?qu>lNI8qb=r_Lw zG)&<^NjtwZ5p#y^CBfya$2~Y{xN;S~Qx>5cXcTr+N@_ao=k~Wem%HxifV`oLjdxuD zcD2H*0Vqw8ioi_D8%+E~uwGS;Cs2d|S+lWM@j4vt{;TPUi08tTQ+MkZ4q#dVfcFpL z+T{rRu1hx*F+YAQ4=twqegJ0I6>HP)bZdVGGM*ZH3k~3q?pAMa(*m*smEfN+5!29# zFcFA3c@CwAZT64dFUW4$-0mKxFLloKD>wSA=EDBCi6j~5?SOmGW1>FD!G3AaZKVv2 zs(Y?~mSMam>Yb0nsxTmL$HgvuZ?C2pfbuHL?7Evn96Msm97I{eZN5%_Al`M?OLGpF>>eQk z6nHVLbwdXTBEdjHW4^SJqY3Ez(RBc_uZVw=TrSInvR{{9niz)8Z`h@t@%Z|2?!wS5 z4j|-HO;Pr}snDP>uz7oSJv0;_v?Rvboo7Rs0EsP3IkYV_$dKnxG66b0{*Cy=>^q5x z5=#x5+0=EHp#m(7H0MV-NL0W13xJ*oR;QMi$Zuhqi!jlJ<4AN#vn}_fPfKysCDU?& zw*&+QWsD)8&2I(kEmkOoOlz}Bj*xCQT|a{7u0`LUn)z}1=`3OWztcDgNfT-@AVG8|FU+eMr{s4BOOK5CXw^j7U)k(~^7% z@w!1z;UfyEX{lD6OG%=;Vnxzh_s<2df8IDP`qJSP!#m%E*yeebf|Gzi5600 zKG8oz@e<@9IRmo~&l<2~^tsFpbQ;dN%1guT99cLMz|qQ2SI4?$jYh40C^2AeORz z<|;;J?jwH~?~?|B$dZF35rM z;q(3-JzVW-Yp8glC4mT21gBV z$dpl}yNu7sRb0h5<=HJpp$|qC=iW?-)(}pvcwI2CQ!H@|yWM=}dH7Q+#VE>IbIWq%1TDZ8U`dyAV9y7fYLF>M0X1)${NCrmNhEp$uRZl$ zn~ht;LwnO~bz$>n5epZK8=VkI0z*XD#oS)Ff5Oeb%>X)J)r(1G=G(+*hycE|~Lf z@Eu>T&Mu{HLUglM>?o72EXR;_N3E7V_ibnh7;D0uXWl8RYn+f1V7yOH*ONO@CQ&f0x4L9kH>ePoPLGg9zNQX{ z`&SGEbdH-q@J+4QOI3)0UFWZ!8X={YIYQOmj-K9ob>E|)-c?hYQK<=V5y^TM zWN@&id7oXl zTYK~dSTBC2i=p@NbmR+yj^}}@a(gn_mBg=Pv7o4a*OEMz&zXb*desj$dgE*s{ zBq^ZuS9V`SI-N0q#Ih5-oRr!hIWNGDHg|yx?ILL9?rI;QTz4d>`5eKc$=`$>zzA2?4B^tS(&@(!S`g`17@`#v8VH)Ik4o zAC*a94IYZb^_qo6-^PC@tMAnUjN+#%i2@3A7a|--(C^f*>+fIfs|x0XOw78xct`UK zc=P-!W4LVx@yf<)C+Yi&9CJ`43=oAZ#olHW`9mgkuw_nhR6P?9t%nk$`>M>L$7jG% zT;4RvH064SF#%)r*BdaN+LEOAQ}6+I1JWS9$GiC#c9*;dyu>estDNyg)(5**2{Y0s zVZNE2UQlRzdV%>0&2BG>sb6X`K3~}ydtmY#goE7Pr2}p7y0!wZV=n^!#A^l1T%CQ(&AP?Ex_rY1FR_6*tS zCv!D)NE^O@fkz|Z2ft=tbt;T?kWgwhj9!+ZnAx*jkS%viSklbLFzVRg=vaVMX;EN> zg;4`~%Yv(vV%AF7&3r&A?C*#4}itE8j=#vCX%VUHJDgsE(w zUiWNDBEOhprw2@^W?I4T z_XlZ4K2G~ECRV`hPo1JG1<|#*Ksnj>N!x#-oR^n3I0u#;-#9k7n*O$FWuY@(BvPZM z-<~#=_UURwaG)5VtGXEf!1O_ttv}LC6b46kOfDR+2TEU8 zCOWbcKKdUGp@+6_@>Xh@#wc&80X_gEZy(Bjuuq2vGP<6LvpWt-z>Y(>AcIW#b?BeA zB>9-xd6|jhl?j;S@j|>EWXLq8QmdhGfPL`{=LAA#V(%d!chcagpQ(5=tvA(Icw)x{ zUg#5^<-q|<6CbU`hiX2m!qZ-BVB{U_`zu0@v7bQXuuK7jBh=7|2SJKR8gv#%PmC9E zL2B`g{FoK?btsJ+ya4V8p)JYz>dpx|4PXDa(0JP5CwemJD)fMR%jd#+qyVoywL$HEgQ*ZGpOy{@e?v`&B;G;1^dt@r7726D zf&2Z@D@CQF1Il7&KZY^I%ra^bDNYR@&$OQIYnQw-phgM^TK7>KW#MD2J(1P+V{F#F z`O{dvq&*WIz)d!V78W2tQd8hSA8JXN8nt+;5GcVmR-I`P+#Z9nG#lm{L2&+`_?vs9_m~uwmTSaYe4;c^)!-0iJ z2?#~xd_&eiKiZaQohKjOV~C|uw-vhWS%~i(T<;W_+!Dd8;FCEz^)hBm7GRe(MT-kK z=6)LsEGrXJ^fdu(&{Jg9;?FF=_fSmZ<@jqwz;%Nk!-lGDooXKC!&qN{8uH|;fdu-) z#F3qE<&n%pX8V=_0GY{YB`#yH-QZZjCf$Y?=-T>sX3#i`UEN?dtf%)g6YY|*kci&H z8t-(nq%GB2-_&Y46P5tClVA`v79!fqaxa4N=sycS| ziH>Q}3RSub7;s?Z$+u_$3?&8XH04Sk6T@>C;M2(_MR@%RTgbixp+NX*?VnDCWF4=v zKR(!-`M{@05oCwO)i40@;)6a81c2ebOX06)i7;s>!BXPM+&t}hKP}SvpZ(h@=S5LK zs;s2~nkL;leJqX39?3P0D5h;yl8Y{}rFR>E5)?@yK$mB0)s?~tePi!dP9TpOSd@Bn`{euqPi{ZpytYB% z1Ii{tl08hj_R7vqxrM)^tGJV70N2++CjgWI0GtyeSsM^Pf9#Ng!t5Ec&+Y-ipuCP@Lwu=XB^yTe z%p<738HLYf@>4eRK$V(SSaubYXMVqCBxI3s90dh#!dd)iDK-3s1Pn3_V1U_hX)hQI zcD}rC&7%OtF=r#+V#G{t+6|b13h5X#p)Z=g!TW*b#O|G;_Rq3v@=xM7ex}%^Vy?MU zvumCy26ky{Z@5TcuWL8aY&as~s)&e4a7w98{_eS|iiZvSb4I#1s@hD6=9h0Re$G zbwA|OS5{VL43?b5<1$*qXJ%%$+|jAtyB^u8{8C?{VD7Ni*p?1dD;T|QiDlTLR-jo; zyd(anCC7}On{Nm_tyod$VSa_BlBK@tEZZKv%jCk)5cpXWWjzZ3L4ckBS7*B5VPRpB zHsj{z#sg#vjojSaG*X0JMq1j<(APar{%pTJb1(c6^O#h%NG$CTbqMS7WyT@2T~T^P zFjVpI%$Cz$t#)5PG!8)-O(|+MWu(0W_O+u1_OYS{Fi@_BloU<==f)&ZpP)u8f?4+O}p;Z3g*q-d|Aed zCwkZt?#RC%d8#F=c1`oa5}%S8udgvDXjR)otF2wdd>GD4>0<9m$zdC8c&)vR|3@wL zV5in+eC+JL*TJq_8**M=QW%Gn+0P{tT5{I(L2z#q2)F8^c8w~`){P~0C7kK@*&r`e z*UMM-M`3$*a*9JN1#egXPHcW!Hov2Ot2gO^G!t)g@3PM);t_S2pdRZl=?ila`!mKa zv(-#EP`7Yk_9atW*flmVbN8Dijr}pHDlsJ*LBshId0nFK@Akd*7)jdcdQ}ehsmEL+T=2+( zg&Ed$Ga+F>hgSY#pcf!=r??3YWB3GEP7jIQ#7AabuZn|DkGb$UwF$2YcFc|1k%V&( z4|7Gts!d^HF^@tC5=>HBB_k4b?iM`_haMB>d0X zZ|N|C*z^-2+o8ZdDyP@g?Pt8eKzXOTiALVq&|>C5!YIhz5BPqxrY3WIyk%#{@a{PX zF<7&vc27Qx#?ky+>a55hxG;gQjH!{T_ZmGtpBO`|wse`@73*al?tCZIQ^B|C-`>Bq zULF=Cb$|`byMmQf1Y*A$rZ@)fxJ67Mha?_ZIUJJP(+G?9{6p7ed^5&NE37(ytg;Bs4HGBvmujRvFCdt6tvE;h+3Mg5fBH_M=k8?E{w1C#=JOqiPMh3-SmP!x`V!Vrr1j~B zJhkP%EpoOreXj6=3~_M)`H&6&s7AGYGc-3Fj)RmIz)zrn;dfnj3vr5>J#$**;6OM; zeKZ^QAbR%fv#bX3^5kr(GhxYv;|{i=6CDNO(a<;rz_t?mnl=pM#}TZ|TkP z@js>-fSC-ptyX5i+PwcG$Jnmk~L|Uf&(VzheJi@JiK==^@~tAiuxu% z+E7ve)j?{hnYGaGyp@E;#>2E@+^eej)8Q`3tnu=I zyhi@66&s$&>xC>=We>(;B-rF499|;a`#agUVnx>~t7Xj3q8o$p1pCWg2{4Q3%us** zCBa)9t+h<$zu$c@vLY1i!JL!7_N9%tdri)deOwtoH>lwvb#V8+An0?xYe~t%Sfvd( zUQ3X%B`Q;IqHb_xaCCIgE%YS)esT(~=@VD&AuIjM91!UPwf9lkU5#6_hmwD6U!LDb zUC0S5Ssw1YMukaxZS7pHXZdk-Q9htL86$270G9jalvRZzDHG0=Ue=@Z(SBi3I~0D zeOH*GQHa->Q#0>e)V!33H5_|eSDV&7}H~#xL*T1aP^3H8$$K1 zW0<}bW7Ma!I(YwqPo6!7dvIuY+em<)Qt{-Qw68TA+A$%sUCbkfQTZNjgG0?E)q<2A zl-Wo8?d$sYXRpt9{~3?g6(yiIb^a93e08$g%e|N5VyJ+(WvZkGKQ`7<)VKz3ku7{I zV31sf-{UpFGai?Inbvwp7^L%+(HeN{7)kHCF=Ww!e=MNrCWiM`Rlm$QlhQHn=>ChR z28Wpp8UeH7K=&<@?q6kK*eu6iRUbWQ2I_4VJ`GwjP{dT5BaEs!Bk~ zYV4oueQ;tC7T%X5uvhr1E=uyqw#)Ta!HwXzCk_GbJnog_MwQ60PMTQ5w9K#}m%UdO z+d+}dtUCyiQq6;?fY&yiUI^TEmiNt$;@>l=-ip{533J@n?|NQ>ma)~Z=&5w&3wxi! z0mT~ox!B!>(sMa6#+ucvoi$8P5Rw|Un2p59j%y;?RSQijgmvwzb-QW}NE)K7Z;eGC z$aQ!zlV&X(3ohxpJN-y!3#Ay;A#sD1OwGGZmyKFylw4FqcM>#M&K z+v!BF9S$%#GU}{MRI_SL=XV}uVS2YL$nYw!IENYOD6<&dt4bR~-^Ab*_-> z2O_{-1*y3i7a{e8D+{ae$4YUqzy8M@!4n+Hka|2Cm6>DpnWw7AVb8I)z91k!ascNP zdkIg;w)!B1{u(S>_1DaR1>bXJmd-7c#O-N9sNn=c60IcIS2A2s!-Zj4`C&jKq~@W+#&^NlD@>P~lQ6(LwDtjE5e- z9~VtY$9uNbGIpO`*b$n$wG$(>EbHgqk3OLNn-#+WLF=yT@Ji|@?`g; zM*s{_Pyk^)^}q-Q+x6DLI=M~`rElh;M*G^oX;0F-i2ovT+80k_aERy9-GYll9k>3L zl|?uNP8j7=8h&1_F4M0IKy|SE?Q9&*dKZ1nknj4^^hu5wLz}MqdFg|uR!h1lwD)0k z_xGlPqt<%+j)|>9_!twdkPX&y>by>HhNAmG4p?cjgGkq4!GSzZJI*yUE=%+dnLvol z(n-9-jTNP<#23_cKs?1Z-{Ec{W2NKEg)K*tyU$_n$*Emb&rCBDH8=XCXEUjLkprA@ zVmvzfcX+N^#p5JPwOpKk0*Zev=WuvzO_g~+Wb+`l%Wx{-T6pdUGuY7{gZ3>ogz5ceG$mZs)C#IeO-7e!NgWlQYTL?xy?(S^K{UDu>cd%Yg1=BfW(Pu3NprjePy#5|@_k6Ez?T^c=6(s$NG@Y_*=!Go zam=7}03;Vy_=Diat^TJc<5w;a;Mv!b@lPec&RPUIkO9hW3Y75cM#9C~Nc=-vjoXj?_@zyAr}*4?y~ws0+6LWC*#5(# zhaHL1o?l|GhMWEEo3TcuAfQT<#{F~CHWrzK4-+$~jUS6b{}?%iZf{9kjx{SXK7QfE zOweCskY`MID15SRE&jTiibH;Qw7X6wTG0kY|4Ynn->2(*X;KB0;04x!g7~4w2`XTn z-tN~8hjtenv)y#$;Hj# zgFLk-B&4e$3I!WhBJ{;&PI}2tDTtvN%8KjG90`4>MTex$*F5nYC2hkVO;6>fN(?Kf zQzH1lmr9#@Mxv0crBBPYqq1-by%kr}zu!@@)xY_%Cv;+MmZ7O1iC~xUYc}sC-@_^2h|ZFFGL$c&I&~Y( zp|3ukCUQ=HDe~i(>fClNd_R$!4?T@jjg8;93+(Cev8^Qa1<(HNjVu;-u!{71mBRu# zA-W;Ub)4+Hb>iZrDKR#VK3lTnua;7`z2P(4?Z<*7eR#R@(Ip&I>40$j7^<|hf@8b9 zrL*Ny^AnN%6SPdc=Q%EV^44DxItk;9m7K-TuDQIH0{PEgwqR4$Q{~K=;p~5pQp;?6n(G| zfpJwMy}G*j*6kYmohnL_0&YpaO+z2!7$0S|ai z!VeB>mN%|*yB0QiZ=a4YDC{Y0YvUg0LtZXMl_$R{eg9%Zd%j0NNqb8eNcP$e;ymK+FqMmTaIFy@5}T@JU3|f`4VEuJE`EgSw8!O z>Ip_eam7OIY1+~||Le8oQ&Ti$rqw{*VlRLBUMfLH9~xd;NUILOd5YV$K#&IRjZBIN zoqdoav=A&?3sBL(@MXc%)9sFr2v>78sT^KfO{I>2adZi7^1q&;Pr`0o;;J>q8igqF z3QZHg%38bgPG87H;X(Nb^|f|EZ4cDf`3pa4pq1>%W2n-;0M5ZBozo-eJ*646H&bg# z_vxia-PP77sZY8KE1Fs_2i!BL!#@_us7SJ2k+lrLg&M+KMo7s8--0-n^+;Gd*RMYB%nEET}3t#sevhdM_{6 zn#Z+vM3PQzYvWWVNqr{MfLZW!P~;gIh@s8xJ<$ni{0uHX!y$gjn-_K5FZhkZD^fkrLG#r;d2e*S_g?N%6SX`$c@tgS`CC{gcBk zpQ07e6N7C0RiZxAXrx)cRWUZ_DX9H*Ou3N2+(1A0&r3H_as{n8Z9*07_uF{CWkr#w40=4tl%rO&9j%ee^_?KC%Az!MfM8UhOx2tg55>X~FF+ ziIJCHWhmL8W+WSdei5YX8Y$!1wI1UT}TvS$?BX3!`-f# ziBP(UsaA^90Ot3|6wCL>NIPqxWLc8i@-nc+?`Uf2P{#J$5HduRV)wq7n18;GVw$OD zH?>Vdyl#tyFTiD;njMf3USPgu(#@Xo=%FR}h}G4zr~+x8o^-4A0r5uJik_qj^XI&s zSJ>CiEP;0WAMTcdmzXo<;hh=4@SGthn1(=lXcoNF1gH~Oxe(%~wF0mR7l=3?>^CzS zoRODNA^66NUCt4FsN*4D%Ej^Vo!(c!m*}b_(LK)j=>fq7PNKRQDqEK?3Wvy6|Yak~sWDv-v5m9-rB4=?GT%~M#^b|xadPpm#`4~dnS zy0MCRymQK+r*N(d;WgQ^=o`1_l<=Hgdakr2>#hu6ckth$RdP*Vd?la_ z5HOD);jU3rS}MdU17QGR?)~yUEoR89BtY;2|Gm+N5{j-h6W=t1p8}zO7oDMy%xe&g z#8`qPVfLE~oq(uugnu^%B>mUMB3eiKpWpes)&y=xzNIfgmko38-_c#;EO{it6J$}5*s7YUX%jRvhJ;mRfit89eINeea(w z_j3=|m8wR@zQ!_OY*_?h>)j8<2f@qj?{{R}!;512>PlW?@8!MVjm}n+TwgjtH{@Rm z;{jI{HgxlfY}^umwxgXpk#Wd%m+l!5D>^yX@*(Ka!NGFz^{UEBZk3Jo^>1(Pzde!@ z=-So7yK5!yw6(v73?8I#E@z7_7l!Pq=CYC|xU6TGFyo!k+>`FrdANbL1Xe#+dozlYH&T~80#lQg5HEL^VF4cbZ)jr}0E7Py5 zy+ysQp?kmCKM*!PqQzrlwr)Na-528g(Da2M5nsBt(VpU2r(sW_16at9(hA^{K@1#< z+$t&c(Z7Bv`GyDVUZSD7wXugo#OFo_t~IahslHCXE7jQ4KIZ9PjF&6EJE-LzAl3Sq zDdaO%?8TlSmB{|R_b7yy^AMzz;RtQc~>%4EvHA?^yATLvBjUp!J(WcL8^XIg~}0<66D#&dXk zr)%)Y=xu|IsARTm_}jz%=lanJ1rv!p=n_XQyy^n~Ze@Mj-LQIQ@?!KkC zd-8bek_~hWS65YKRNcxMn>&h9xT511he!Mdfs9;-yz}x8{EN(7_C$wAFC=Ij7${~i zWWO_c>vI$(SP^dRSWz-FhO(1jJ`unznbK2R)kgl9{GD}(Gm!haJ+*F154WuNII3nx zG1jk@QHSpV7V>t{_$u|UtO{MVjKt#OY#EZ2sf~E3t|!m?wt;^1pb^Q0^C$c#3u3^% ze&4JZ#}Hh)w%?FrV8TLMIAa_% zy!_U%ORIKJ&S1JVv*|`pWYsnjzQH6R3r%2&QD>lMj164ay1n4Q6FqJGs^^Tt{*I2j zxKeT++=eM3XX@u?*~L=U#b4TJ8mIPJ-IGX_%hX9!I7o>CeDuZ~4nmR)&(ug`*|xvv z&70F^A3azV&{*f@sjW^jKbVvV2>kXxvVJhZ7$$nj2D zel8max;_LUS+9OFKt13HmPNY1QpeOtnR`t`kO4CQ?wMEepa4h8XXgP zH0oK4B0cOa(4+?_D!WYThRlk1x604?7M|M2v!gtc`YQV5%551)=E|gRJI>i~4s_np zzzX8!25y`)kg{ifW~)yM0esL&wG5T1s{IWHMaD;VFRK-e7PT30K(OhC4EJ}Q7l)s4n8Yq>j8HeK@e_u?t_L5~#Tle&pjzdBbd(zgWu=VcvlcWmxgVg)11 zm#f(ix6eMTU@Lz7Jfpm2s7kY9FPZNpH=66~BzVBt#~=Y%oaGGU@y~sTA3yqtvlwZo z(R;lq%<;Qcd~WR*2B)&%UXlknJB?5@|+NJZb_EY&JJdOBodF?`v` zbTB_&oAfIK1yU-Q69v|i`vC<2X_sgu57#ZXE-EV<_`c(Oho`bcW~%V%T`A2+QD1`l z*aG&o;J;uhtyx3plOk6pn@|%sie~AS7RPZYc;iVk;|jCjHSTjX8lR%ctI+Ux#lO#5 z(2J$l7BVCx<(?#W;*P*4>S1@hUA+CG zXarg#SU5a6E-uM*ft996V``OloYt%klF>MD;QDHdR61+xDGY}Vt@Ru-2^ER=kZkUg15V|P9R(DDAgQ&4*i8-j@rM| z13kLw0gat2h?tsX&vv*C_apx+*T}jZR3WvscVDx-9vdI&WYg+*D8A`85MV07FPDz&2^$ zpi5UFKXMZORnH3Kvr-)%EjYMa+MXFuD=qTZ`{8oM_Wh61~TNZY;&x4+a45aL`R0Lh3)qQdCIKutxvW zcRx5F8SlAG_1YkzphfN}bLc~>k)vDe(kWr%+^XM$2}|^^wQkka@paq2acfV|a4&X| zk0g$5c|lRrr9%m-JH~P?j|_`ebkxh$lUoU^_SX4-p{*n zX3iZ`r?u*_ zVQB7#|LyWX1FLH@Zszcd?XU5d7|%kivil^5aZHSto~?rPD2^U{eMw@m=;t`-y@~bj z=A(tJJ}}Pxy|tH~^wpc_?^Z$Tq|%@js^*+UuPVhgNxUOyMOnnUa=KI0V{rjLu2%AU zszrJ?t!}XkA(=Unq&2Qyv9B>RdTOt_udtNR@MORpN{LofJNiR-7H*en)%Su5VUi%a zmMca5?m`mY`K?qCwO2#nlfI2F)MaJ-rde)`-^7n#0qFfIK2i6QVGVl|{zvz$z3O7Z z^+}C$?~tn7cUk`Q7cc;yMs#`Vh*@pFEjv0Ll^%&G0gZK0|A_Ml{cs{yVWX62(89k4 zg(}%d6%JmfE?eg#*;lJN4si(gqdzqocej?ispklG=h(YYZ*Cu8UkwHNsW#`p4R;{f z#j`!1F4URhU6PA8i7DSAqN)|E)+T!O;H{l1>b6(hybqyD%(Zh*)+{cNL~N$?qTCFO z_;H5OxoJXuD%)@C1mm=DqKPZq@atjT@k8hV&8PAc14Zi-k&BV?$J-7zMp%W%HBZy) z4%dlY*Gc}*dGyZb-!j`Tt=u8oPW_Gl`Ww2u!Q~*r<*D8rLh}*T5XKBKWQ?zrNN#=V zfOa8R79{Tvadl!EqWKhjy>l1X*f}`3GsQ^!0L>K%~zYSjJmfV98j{MR;Oskn)bh@%V0IosztPxYgrFz z`2Eh6TU4{D`D&G;@xVGWkBTRupx8yo%N7vpW#q<{J zf8q3^u9gP9!%wE+TL%^>%jqTJW8g`3uUuxar1CMR9ahd_IFjyFwD^-rM@~MQgY8-q zc4#~>DaLs_7qWXVE(IZT515|{sed@nTW}gL3!jo-NxO*yL6w4IWlhTSWY`K_=_Vq$ z^(jtd5s}76X`baaG}D|n2FursZJI(>n-}iHUg#6-RG}G|+%gs)TjA(9=sHT&xvyS< zIxk!2WQWDEBkRTEce;aqxuU|i1@0#cs-X-w4jJ@CXBp4QZXfedTk=1@E;iN^E7!hh zW9ysQiMi3(Ek4+3P_@?dv{ei~HhvaT#s0ub^GDABQDpdJzY6X#>94P=RBCQgKQV~C zWx?Eb9(^`YWWMu@fhvoT@$<@Qg=3VqS0PNhcOX#`_Ww$|&ZwrEc56YTs0fOP*ysv` z7CM56fYM*2x6nbP*8m|PQU#HsNDtC`?+F3vB|zvUkRZJWP%t3Hd%$;n-@U)@S?eUH z%sMl9&NG>rJ+t>?gD+uR#q=jAV)-F_n3*mjr8}k^gu?tjq9%jw#I|{dN>(B2rP{ea z4Y?Vj=lnYW`0C&7Ek5(7P6Bbiy7ejXgJ7gmStAPh6e~B}YeGIMyz31(S;$FKHSB%A ziF&25T5z29$2gGjbd8a({fYq>Pda1%`RlSpx{kJcRy=M&!BzULe#JUu$%ondGosX< zG#iKznd&qGzoeCtk&*9M1zgxuO~||`WfAqUPc6l*2>i9p7j7lFl&hM0QdELE*9l4r8vJj6-}TXZ)X zT;{v8J*n2KY~+j#Ws;U%{n561C@~#RGwS_Fa!r>tW@qY7J<}wbx#>Y~uiXy$QW*}e z44&g`S5-?wm%mg#I&_-++nAmjr3^+=*_tw(7t;)0L~I;N^tq1C%YL6IZsO!>B# zpKy}XC*H8OGYr6AMEz}R&+PvVNQOr_cgd~`_KWPB0b)y+DXF;J{4pcKnlHB)9aj>BA790PydsA~_BfzKU!LwAU(L;?8 z@h4-uT_1@043w8!uY4h?gw^!F0dGjY{^J?Dx@kc+JHyuTBwNY<+g?j|%?U#Wh|*_| zcT{TMPo?uXBBaQjf9boyPqZ7k;mSZIOtET)s2>rwUQiy&08VBiyOCc;myyy!K<|_F zB-nUsBv2*1OHn)m3iuLM<)2D@%op;>SS=NJ3a&Y!w z+vkkw?+1_ujA5jZJ_ul^7Sv!5zZ<`p)V92;b$Jo`q=VZe6By&(2Z;f>Q zS10X!xYN~H(-q~*lC2iS0-X13l2hxwjpu>5<-$Udk~thnh^fF&D%TCmK`b?P4x-N) zHwlp~iZ-ueSKE)9o$UfZ_Tk>W3q<_$XR`@k%ze!G)I!XyN?6ksW8f_vs{JnGy&p}M zrF7T3aSDDFDLwgdWcmh`a@30U3h(-kD;zUfmXJ(r?Edkd2YA+XUlB#y#;&8fcl%~( zrExEc584t6=}1F&OE;EY>f@@$4qAAY-4c`9VfLA&FJ2jN8vv9x6RU3F(#KB7P!5DK5b~GfI`mg4FbMt+*ZTigib(7r3 zpJ{9n{dP9-OByD8tSsu=L|Hm-~xr}jQZrxJQq7iebKsI1^e-J*;p!mz+Xf^23p*#z~#%Qm}e=PbNn>o@vO!aqi>e!L3-py zG|zHLdy7q7&n2xShK+dvpWxaTU!X-DC1^coGa7TI)g5G$rW~_P$KoXY#e&*kZ=REx zCg>J1?M=Uk-HgyP*{3|USN{CK$Xh=s-S_uSANBZCTJ5~`FF9m)i|UsB9H`;d{ne*^)g(7C|<)nduM_USlnMi3c(>u22y6d+)I1JgBBAYWSnvsEb% zdlPl15Pr{g)8`|hTFUL}brGi)S)LV~NLdh%lfH}hac*`++kT_!6`a&EyK9y7-ZV2n zY{}36J;%0oJCut?qV?iobVZe4zBGM;)SRZ|QH=m0hVapMv(>6=B7WIwaQ0Yi$45K_ z6y{`ge{d5awBU{XC+nzPT%QGQ!Vw~;8wvBz2idvh7jSVu@-)`%#i=Qd5f}+uA9{4nzuF_EGc;W*+ z!4dh;GW>AobLzzTI<8&h%oVRZPTe|@QOdrACkwBfYg?G{MAcTmf`5YiNKBN!!h#VZ ziv83#6GO1>+TC2Qv?lqZGgfPor_kGsCo)<|>-@O#JOj2jQFRdPw6xO*)!Z=sNDgG7 z90?g5|1i_N^HTf6Wf?B>$-FF6%HraMA6Emh_vy%Z`LhpEnRg4GWTC(9NQyyjEn`J` zR9(3P$ooH?*f(}U-5dk3y*r`Nl8-HUDTv}eP{R8pTOXrlB;*AH5_8&#y)aGdel26nQ2HKDNT>?bS zx{qe#Wfo(?R)1v|vqKVB6A~h^f+mTmP;Y7e1SS8WG&!Fp3VKv-WLX!|pzy`jXlTE8 zCruLW|8#Gd$tI+HzMb@04qxV^h^@c&Ssv4*EctX_KgIhEJG_rWlqOf*NhB1ss@x|4 zhsX>Xut{@H?Gk@A)|wZC4H;9f*TN=jvSSy19Vfi@KhApeV>;{RVOO;~13R9$T5k`^ zU5z`=D@?d;RVN+gXw5-T(u#!4w_4inWnheuwmC{5qbTkawHp)fU zr(i>#sU%jMwk535ge3-B4P7eI3AJm0VtFyBant68mOH_l&Z>_;iK9_nd2xhB40YAJ z#l>UY1>)maew(o_vu*9bg4_cM5>Y-&awaJ__;S>Omqnw6(Ke_BVzlDRHoH{`!%;*P zNNOq_Tl0@`J!nQ8YqVHfz+91M~TIrY1K}9nL2!M`zM;~Ep7jJ9?i;a40?~u-RcIdd8%(IHA`mS@AfK2jDc&FWtSw>*KYlosvgNg z6G8I37zNJk_&EsO2tr~!3iG~{!A_8vJ_?D*tJ12=(79pa=(@R~BNrZtX#^JRZ0nZ@ zs%_TGNavAy_o!SIW4IkJ9^lC(4)UOfek^mONhyakl3KXqGYRjM6YJnH)7lS!;M;f? zHDgmiyH|dMEPeByfwpV*TLY!;WzCKGitRdcv*;#4C^mN&dgv+=lUAHzt)nQdk1JnF zLe%f{-v!GWOqSLxFE3j%cGufgTiqaSO9vHHbsob#v0~r;JCr#mvvS^3Jurv&)-D{} zD#%eYkI?(sHi-xG#@xKo=HB7yZ`rAdO5GPuo)%15yZ2ixXC5&b*!SDBA4hnRDWOo> zOrCJP8fG>*60VSr$#xFsQtmN*+T`|hN6(j^mJb=UwacRa4CwYbf@5$+w>KeeEb5^d zN@(JE>1U{VvC9@%`P#K^K>(51`Lyt9XFSH;iD;I5n@vecol#hg=80+C%kw)$(<3YI zlZy3=4JV~GMYj;N-ik(*H<|jE4!zP!-DN!A7qC5oOHGFq_ixWQkgDL))5|FSEHCy2 ztE||{Uc>wj4yFZ1CHV_!2n#Ry`bI8UTKZ8;Sgv|>+Fkkva@06N-LEdHI5YZ@-B#`& zt;{{3X>^m*?&8heT6T9>+iSfrOM8pw3LA~%_FmbKX3$4|pqH}bzcGED{KB)l?XxJd z^T=ni=LUr@NXUdzmMv4frC@G37a8O)I&qHUHtNF{-!y3W1H>6#_-R}UH!cM}o8tI~ zG$N%5?0}Q!oifz`wWw2%Kc%hpo?ZQ_1|0t9DnN7tC}XG45by;)OZxU{32Y4kaOzIG z1g9*!9AG~?ly6IxmHUtfI}Ckmb#|9uACD1_4^YQp#7TjDp3nfSpFR+y@~j|KYY?SX z1?KD#ni^>%ZsrdAYOz|pwYSD;X}(9ypar)TVVQm;xbZ);4igj?5 zbGh3-P^@d=ppw+^^gbF98?aHgKP7d*9R3lYrk{9j2zD z`r!0)8T-Io6o9tlxOK-yMiP2cC83TxbL|2sOgx{iwszuI0HBeid*8+r9ucuOq7ATL zPcyg#51*G0TwtR6)jFR*n&SFM-dMi&iuilez4{Hyj zWxX%$TL;~OIC*RVc_U+tQJ##Fmz3hfZlnNWvh|-)At51ynJ=Q4MEmt=PqR3im8&pq zBD6;^bbeq2vt30d@D>&BzQ!3=T1P?-OJNbWK(6XAC~n>W{Z`iF7`nhnTzBsLXtKxkaZC8r3cOZoWG-rWZEe$iR*%QJVJPSm3c59B*Z?Cr4rM7mZv#|?fb9%c7Znp0 z7S6wHd#!c6gYypAjs;yXVKDT!rHxH4FTVp$2>wb}AaOX1(yE%)6Hu|#`VO9vXQ6e{ z6u!wKOi9XWk70e`zEHZT;+ZJ!0Yn@>VBfZt=~P3F7V2`hdK<>v|EY#D8Ajw0tp>HO zo@NSEH2{4_gxyJ#jWs}s47A_#SspLpL;yNxQ`dE=d~x(EO~lo~f|tmY6vx9~n^GF2 ztc;A73EL9|V`Jm*+_Bz2m#jR_40Yy|nZ#rK{>a{LKcBJFw-G=?R;X?b0hj*^>;KJ+ zFykm5B1W!*AD;Z(GVA=?!|Bh-G2vRms7oW`C>jq8y~f7K>ses<$`XpxBA&h15h*9| zqlyON=42(Xq7S(Gko(Mm@?f=2GdiPd!AQVQ>UB#Y-cylz;>^coMAbyW_SW#z2Ryv} zH)9A_oP^&|-Hx2(N!1o#9}>E^HVR0x+$j}e)6H}R_&`nE72{~YNnd1YoPp5SPHO?- z;rQTSxyyXV?m8hyHQAj$4g6?&olt3meUdBHjm4^05*HU1Uh|gi*sKm^Q~9orpn=tL zKwaB6ihjR?K*C5uh-B}f>Tye_y;Y;oU7PMM; z*vZiW;7T9%fhE)pOArzd!_U`)8S*}B7m8uO=qJ|+c^a8L7|hw5+ogdL3GgHpKk~O% zRt-ZN1AxC5kw%ks0w6I2GR6*Hp@QLINBia2Do#LIqFk>RO{Ax%50+)Vad%Hx%8BR! z1Ym}bj*bSDzFg`}%(N-3tD88rmQ0g|v8JXz{gBD(>ely*-%6z5!vnR~;1|=0-tkJ= zpMN?^ZW#0J|0LSVw$HYPMmk9lbV&5&kGQ!F%S;2aVI)Ftg}6 z5D0|Z`0|Iw1Xuo?mEzs?bMFp1<uaa^q}87d&%gg|=!t(P%KrCB-P!%Oe{r?HC;#un{(K!?-|AglADoszQC>~1MAr1( F{{Z7cb+G^d From 4163bc240001c6ad1be74afe583b899babff7d4b Mon Sep 17 00:00:00 2001 From: "p.kuiper" Date: Thu, 4 Nov 2021 15:41:06 +0100 Subject: [PATCH 133/135] Undo PP-29: apply zigzag pattern to top/bottom layers. These layer lead to more sagging of bridging patterns. We will undo the chance (for the 4.12 release). --- resources/definitions/ultimaker2.def.json | 3 --- resources/definitions/ultimaker3.def.json | 1 - resources/definitions/ultimaker_s3.def.json | 1 - resources/definitions/ultimaker_s5.def.json | 1 - 4 files changed, 6 deletions(-) diff --git a/resources/definitions/ultimaker2.def.json b/resources/definitions/ultimaker2.def.json index ca44f154e2..22054b3fe7 100644 --- a/resources/definitions/ultimaker2.def.json +++ b/resources/definitions/ultimaker2.def.json @@ -95,9 +95,6 @@ }, "skin_monotonic" : { "value": true - }, - "top_bottom_pattern" : { - "value": "'zigzag'" } } } diff --git a/resources/definitions/ultimaker3.def.json b/resources/definitions/ultimaker3.def.json index 5d974cb4e3..310ffba992 100644 --- a/resources/definitions/ultimaker3.def.json +++ b/resources/definitions/ultimaker3.def.json @@ -168,7 +168,6 @@ "support_z_distance": { "value": "0" }, "switch_extruder_prime_speed": { "value": "15" }, "switch_extruder_retraction_amount": { "value": "8" }, - "top_bottom_pattern" : {"value": "'zigzag'"}, "top_bottom_thickness": { "value": "1" }, "travel_avoid_distance": { "value": "3 if extruders_enabled_count > 1 else machine_nozzle_tip_outer_diameter / 2 * 1.5" }, "wall_0_inset": { "value": "0" }, diff --git a/resources/definitions/ultimaker_s3.def.json b/resources/definitions/ultimaker_s3.def.json index da11ddf0d5..f27240d00a 100644 --- a/resources/definitions/ultimaker_s3.def.json +++ b/resources/definitions/ultimaker_s3.def.json @@ -160,7 +160,6 @@ "support_z_distance": { "value": "0" }, "switch_extruder_prime_speed": { "value": "15" }, "switch_extruder_retraction_amount": { "value": "8" }, - "top_bottom_pattern" : {"value": "'zigzag'"}, "top_bottom_thickness": { "value": "1" }, "travel_avoid_supports": { "value": "True" }, "travel_avoid_distance": { "value": "3 if extruders_enabled_count > 1 else machine_nozzle_tip_outer_diameter / 2 * 1.5" }, diff --git a/resources/definitions/ultimaker_s5.def.json b/resources/definitions/ultimaker_s5.def.json index 9493a25add..b36e9726b7 100644 --- a/resources/definitions/ultimaker_s5.def.json +++ b/resources/definitions/ultimaker_s5.def.json @@ -161,7 +161,6 @@ "support_z_distance": { "value": "0" }, "switch_extruder_prime_speed": { "value": "15" }, "switch_extruder_retraction_amount": { "value": "8" }, - "top_bottom_pattern" : {"value": "'zigzag'"}, "top_bottom_thickness": { "value": "1" }, "travel_avoid_supports": { "value": "True" }, "travel_avoid_distance": { "value": "3 if extruders_enabled_count > 1 else machine_nozzle_tip_outer_diameter / 2 * 1.5" }, From c7c052e51c17cc336924780570a1c40e25cd44ff Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 5 Nov 2021 15:50:24 +0100 Subject: [PATCH 134/135] Fix crash when profile referenced unavailable extruder CURA-8584 --- cura/Settings/MachineManager.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/Settings/MachineManager.py b/cura/Settings/MachineManager.py index d8e17ec305..b172d92d00 100755 --- a/cura/Settings/MachineManager.py +++ b/cura/Settings/MachineManager.py @@ -1191,7 +1191,7 @@ class MachineManager(QObject): self.setIntentByCategory(quality_changes_group.intent_category) self._reCalculateNumUserSettings() - + self.correctExtruderSettings() self.activeQualityGroupChanged.emit() self.activeQualityChangesGroupChanged.emit() From a613a7075805b087353c2c0e06a131b4e8eb678a Mon Sep 17 00:00:00 2001 From: Jaime van Kessel Date: Fri, 5 Nov 2021 16:31:35 +0100 Subject: [PATCH 135/135] Don't disable group nodes if it's extruder is disabled Group nodes don't really have an extruder, so exclude them from that check CURA-7710 Fixes #8336 --- cura/BuildVolume.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/BuildVolume.py b/cura/BuildVolume.py index e0c43c4876..72e7d539ce 100755 --- a/cura/BuildVolume.py +++ b/cura/BuildVolume.py @@ -289,7 +289,7 @@ class BuildVolume(SceneNode): # Mark the node as outside build volume if the set extruder is disabled extruder_position = node.callDecoration("getActiveExtruderPosition") try: - if not self._global_container_stack.extruderList[int(extruder_position)].isEnabled: + if not self._global_container_stack.extruderList[int(extruder_position)].isEnabled and not node.callDecoration("isGroup"): node.setOutsideBuildArea(True) continue except IndexError: # Happens when the extruder list is too short. We're not done building the printer in memory yet.